@font-face{font-family:Cabinet Grotesk;src:url(/assets/CabinetGrotesk-Regular-CsLkCdiI.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:Cabinet Grotesk;src:url(/assets/CabinetGrotesk-Medium-pUr7ULKA.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:Cabinet Grotesk;src:url(/assets/CabinetGrotesk-Medium-pUr7ULKA.woff2) format("woff2");font-weight:600;font-style:normal}@font-face{font-family:Cabinet Grotesk;src:url(/assets/CabinetGrotesk-Medium-pUr7ULKA.woff2) format("woff2");font-weight:700;font-style:normal}@font-face{font-family:Gelica;src:url(/assets/fonnts.com-Gelica-Regular-w3tLW7D0.otf) format("opentype");font-weight:400;font-style:normal}:root{--fraidei-primary: #ff8f45;--fraidei-secondary: #271e16;--fraidei-bg: #f1efe6;--fraidei-bg-soft: #ece8de;--fraidei-panel: #ffffff;--fraidei-panel-strong: #f7f4ed;--fraidei-cream-1: #e4d6ba;--fraidei-cream-2: #e6d6bb;--fraidei-neutral: #bca88c;--fraidei-blue: #a0c8ff;--fraidei-yellow: #ffe8ac;--fraidei-mint: #d0eddb;--fraidei-mint-2: #d0e0db;--fraidei-violet: #66374c;--fraidei-gray: #ced6d5;--fraidei-forest: #263d21;--fraidei-green: #d9fba1;--font-heading: "Gelica", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-body: "Cabinet Grotesk", "Avenir Next", "Segoe UI", sans-serif;--h1-size: 2.75rem;--h4-size: 1.75rem;--body1-size: 1.125rem;--button2-size: .9375rem;--button3-size: .75rem;--chip-size: .8125rem;--content-max-width: 78.75rem;--spacing-1: 8px;--spacing-2: 16px;--spacing-3: 24px;--spacing-4: 32px;--spacing-6: 48px;--radius-pill: 999px;--radius-input: 12px;--radius-dialog: 36px;--input-height: 52px;--text-soft: rgba(39, 30, 22, .82);--surface-border: rgba(39, 30, 22, .1);--surface-border-strong: rgba(255, 143, 69, .7)}[data-theme=dark]{--fraidei-bg: #0d1a2a;--fraidei-bg-soft: #111f33;--fraidei-panel: #162438;--fraidei-panel-strong: #1b2d44;--fraidei-secondary: #dceeff;--fraidei-cream-1: #1c2d40;--fraidei-cream-2: #223348;--fraidei-blue: #a0c8ff;--text-soft: rgba(220, 238, 255, .78);--surface-border: rgba(160, 200, 255, .12);--surface-border-strong: rgba(160, 200, 255, .52)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}html{scrollbar-gutter:stable}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,var(--fraidei-bg-soft) 0%,var(--fraidei-bg) 100%);color:var(--fraidei-secondary);font-family:var(--font-body);font-size:var(--body1-size);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}a:hover{color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}img,svg{display:block;max-width:100%}#root{min-height:100vh}table{width:100%;border-collapse:collapse}button:disabled{opacity:.6;cursor:not-allowed;transform:none}.app-shell{min-height:100vh}#app-header{position:sticky;top:0;z-index:100;background:var(--fraidei-primary);border-bottom:0;box-shadow:none}.header-inner{width:min(100%,calc(var(--content-max-width) + 96px));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px clamp(16px,3vw,48px)}.header-branding{display:flex;align-items:center;gap:16px;min-width:0}.brand-logo{width:clamp(148px,15vw,196px);height:auto;flex-shrink:0}.brand-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.panel-eyebrow{color:#271e16b8;font-size:var(--button3-size);font-weight:600;letter-spacing:.14em;text-transform:uppercase}.brand-subtitle{color:var(--fraidei-secondary);font-size:.9rem;font-weight:500;white-space:nowrap}.header-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:flex-end}.btn-icon,.admin-nav-btn,.select-all-btn,.segment-select-all-btn,.export-btn,.admin-toolbar button,.admin-category-actions button,.admin-segment-actions button,.admin-add-btn,.admin-inline-form-actions button,.editor-footer button{border:1px solid rgba(39,30,22,.14);border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--button2-size);font-weight:600;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.btn-icon{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 14px;background:transparent;color:var(--fraidei-secondary)}.btn-icon:hover,.admin-nav-btn:hover{background:transparent}.btn-icon svg,.admin-nav-btn svg{width:18px;height:18px}.admin-nav-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;background:transparent;color:var(--fraidei-secondary)}.header-actions .btn-icon,.header-actions .admin-nav-btn{background-image:none;border-color:transparent;font-size:1rem;font-weight:500}.header-actions .btn-icon:focus-visible,.header-actions .admin-nav-btn:focus-visible{outline:2px solid rgba(39,30,22,.28);outline-offset:2px}.header-icon-btn{min-width:44px;padding:0}.user-avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-width:28px;border-radius:50%;background:#271e161f;color:var(--fraidei-secondary);font-size:11px;font-weight:700;letter-spacing:.02em}[data-theme=dark] .user-avatar{background:#a0c8ff26;color:var(--fraidei-blue)}.header-pill-btn{min-height:44px;padding:0 14px;border:none!important;border-radius:10px;gap:8px}.header-pill-btn:hover{background:#271e1612}#user-view,#admin-view{width:min(100%,calc(var(--content-max-width) + 96px));margin:0 auto;padding:28px clamp(16px,3vw,48px) 56px}.title-row{margin-bottom:20px}.workspace-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:24px;align-items:start}.workspace-column{display:grid;gap:20px}.surface-panel,.category-card,.admin-category,.doc-page,.editor-card{border:1px solid var(--surface-border);background:var(--fraidei-panel);box-shadow:none}.surface-panel{padding:20px;border-radius:8px}.section-strip-panel{margin-top:20px}.preview-shell{margin-top:20px;padding:clamp(18px,2vw,24px)}.section-panel{display:grid;gap:18px}.panel-heading,.preview-header,.admin-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.panel-heading h2,.preview-header h2,.admin-header h2,.general-sections-strip h2,.panel-heading h1{margin:6px 0 0;color:var(--fraidei-secondary);font-family:var(--font-heading);font-size:var(--h4-size);font-weight:400;line-height:1}.select-all-btn,.export-btn,.admin-toolbar button,.admin-category-actions button,.admin-segment-actions button,.admin-inline-form-actions .btn-save,.admin-defaults-actions .btn-save,.editor-footer .btn-save,.admin-add-btn{min-height:44px;padding:0 18px}.select-all-btn,.export-btn-primary,.admin-inline-form-actions .btn-save,.admin-defaults-actions .btn-save,.editor-footer .btn-save{background:var(--fraidei-primary);color:#fff8f1;border-color:var(--fraidei-primary)}.select-all-btn:hover,.export-btn-primary:hover,.admin-inline-form-actions .btn-save:hover,.admin-defaults-actions .btn-save:hover,.editor-footer .btn-save:hover{background:#f88335}#selection-area{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.category-card{border-radius:8px;overflow:hidden}.category-card.expanded{grid-column:1 / -1}.category-card.has-selected{border-color:var(--surface-border-strong);background:var(--fraidei-panel)}.category-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:16px;cursor:pointer;background:var(--fraidei-panel)}.category-icon{width:44px;height:44px;min-width:44px;border-radius:12px;background:var(--fraidei-primary);color:#fff8f1;display:flex;align-items:center;justify-content:center}.category-icon svg{width:20px;height:20px}.category-info{min-width:0}.category-info strong{display:block;color:var(--fraidei-secondary);font-size:1rem;font-weight:700}.category-badge{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:30px;padding:0 10px;border-radius:var(--radius-pill);background:var(--fraidei-panel-strong);color:var(--fraidei-primary);font-size:var(--chip-size);font-weight:700}.category-chevron{color:#271e168f;transition:transform .16s ease}.category-chevron svg{width:16px;height:16px}.category-card.expanded .category-chevron{transform:rotate(180deg)}.segment-list{padding:0 16px 16px;background:var(--fraidei-panel-strong);border-top:1px solid rgba(255,143,69,.18)}.segment-list-toolbar{display:flex;justify-content:flex-end;padding-top:4px;margin-bottom:10px}.segment-select-all-btn,.export-btn,.admin-toolbar button,.admin-category-actions button,.admin-segment-actions button,.admin-inline-form-actions .btn-cancel,.admin-defaults-actions .btn-cancel,.editor-footer .btn-cancel,.admin-add-btn{background:var(--fraidei-panel);color:var(--fraidei-secondary)}.segment-select-all-btn{min-height:34px;padding:0 12px;font-size:var(--button3-size)}.segment-select-all-btn:hover,.export-btn:hover,.admin-toolbar button:hover,.admin-category-actions button:hover,.admin-segment-actions button:hover,.admin-inline-form-actions .btn-cancel:hover,.admin-defaults-actions .btn-cancel:hover,.editor-footer .btn-cancel:hover,.admin-add-btn:hover{background:var(--fraidei-panel-strong);border-color:#ff8f457a}.segment-list-inner{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.segment-item{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid rgba(39,30,22,.1);border-radius:10px;background:#ffffff73;cursor:pointer}.segment-item:hover{border-color:#ff8f456b}.segment-item.selected{border-color:var(--surface-border-strong);background:#f4efe6}.segment-check{display:flex;align-items:center;justify-content:center;width:22px;height:22px;min-width:22px;margin-top:2px;border:1px solid rgba(39,30,22,.18);border-radius:6px;background:#ffffffb3}.segment-item.selected .segment-check{background:var(--fraidei-primary);border-color:var(--fraidei-primary)}.segment-check svg{display:none;width:12px;height:12px;color:var(--fraidei-secondary)}.segment-item.selected .segment-check svg{display:block}.segment-info strong{display:block;color:var(--fraidei-secondary);font-size:.95rem;font-weight:700}.general-sections-strip{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.gs-label{margin-right:6px;color:var(--fraidei-secondary);font-size:.95rem;font-weight:700}.gs-chip{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border:1px solid rgba(255,143,69,.7);border-radius:var(--radius-pill);background:transparent;color:var(--fraidei-primary);font-size:var(--chip-size);font-weight:600;cursor:pointer}.gs-chip:hover{background:#ff8f450f}.gs-chip.active{background:#ff8f451f;color:var(--fraidei-primary)}.gs-dot{width:8px;height:8px;border-radius:50%;background:#ff8f4580}.gs-chip.active .gs-dot{background:var(--fraidei-primary)}#preview-area{display:grid;gap:18px}.customer-name-row{display:grid;gap:8px}.customer-name-row label{color:var(--fraidei-secondary);font-size:var(--button2-size);font-weight:700}.customer-name-row input,.admin-inline-form input,.admin-inline-form textarea{width:100%;min-height:var(--input-height);padding:12px 14px;border:1px solid rgba(39,30,22,.12);border-radius:var(--radius-input);background:#faf8f3;color:var(--fraidei-secondary);font:inherit}.customer-name-row input:focus,.admin-inline-form input:focus,.admin-inline-form textarea:focus{outline:2px solid transparent;border-color:#ff8f456b;box-shadow:0 0 0 4px #ff8f4529}.export-toolbar,.admin-toolbar,.admin-category-actions,.admin-segment-actions,.admin-inline-form-actions,.editor-footer{display:flex;gap:10px;flex-wrap:wrap}.preview-header .export-toolbar{gap:10px;justify-content:flex-end}.preview-header .export-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 20px;border:2px solid #f38f3c;border-radius:14px;background:#f7f3eb;color:#f38f3c;box-shadow:none;font-size:15px;font-weight:600;line-height:1}.preview-header .export-btn svg{width:15px;height:15px}.preview-header .export-btn:hover{background:#f7f3eb;border-color:#f38f3c;color:#f38f3c}.preview-header .export-btn.export-btn-primary,.preview-header .export-btn.export-btn-primary:hover{background:#f38f3c;color:#fffaf4;border-color:#f38f3c}.preview-empty{padding:64px 24px;border:1px dashed rgba(39,30,22,.14);border-radius:8px;background:#f6f2ea;color:var(--text-soft);text-align:center}#preview-content-inner{display:grid;gap:24px}.doc-page{width:100%;max-width:794px;margin:0 auto;border-radius:10px;overflow:hidden;page-break-after:always}.doc-cover{aspect-ratio:210 / 297;display:flex;flex-direction:column;padding:40px 48px 28px;background:#ced6d5}.doc-cover-logo{margin-bottom:12px}.doc-cover-logo img,.doc-page-header-left img{display:block;height:auto}.doc-cover-logo img{max-height:36px}.doc-page-header-left img{max-height:18px}.doc-page-header-left{display:flex;align-items:center}.doc-cover-body{display:flex;flex-direction:column;justify-content:flex-start;padding-top:80px}.doc-cover-subtitle,.doc-page-header-center,.doc-page-header-right,.toc-page{color:#271e16b8;font-size:.78rem}.doc-cover-title,.doc-toc-title,.doc-content-category>h2,.doc-content-category>h3,.pk-rich-content h1,.pk-rich-content h2,.pk-rich-content h3,.pk-rich-content h4{color:var(--fraidei-secondary);font-family:var(--font-heading);font-weight:400}.doc-cover-title{margin:0 0 12px;font-size:2.25rem;line-height:1.05}.doc-cover-subtitle{font-size:.95rem;font-family:var(--font-body)}.doc-cover-illustration{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:8px 0}.doc-cover-illustration img{max-width:100%;max-height:100%;object-fit:contain}.doc-cover-footer{display:flex;align-items:flex-end;justify-content:space-between;margin-top:auto;font-size:.7rem;font-family:var(--font-heading);color:#271e16b8}.doc-cover-footer-company{font-weight:700;font-size:.78rem;margin-bottom:2px;color:var(--fraidei-secondary)}.doc-cover-footer-address{font-size:.65rem}.doc-cover-footer-center{flex:1;text-align:center;font-size:.7rem}.doc-cover-footer-right{text-align:right}.doc-cover-footer-url{font-size:.7rem;font-weight:600;color:var(--fraidei-secondary)}.doc-toc{padding:36px 48px}.doc-toc-title{margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid var(--fraidei-primary);font-size:1.55rem}.doc-toc-segment{display:flex;align-items:baseline;gap:8px}.doc-toc-category{margin-bottom:8px}.doc-toc-category-name{padding:6px 0 2px;color:var(--fraidei-secondary);font-size:.95rem;font-weight:700}.doc-toc-segment{padding:4px 0 4px 20px;color:var(--text-soft);font-size:.83rem}.toc-dots{flex:1;border-bottom:1px dotted rgba(39,30,22,.3);transform:translateY(-2px)}.doc-page-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 24px;background:#e6d6bb}.doc-page-header-left{font-size:.78rem}.confidential{color:var(--fraidei-violet);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.doc-content{padding:28px 48px 36px}.doc-content-category{margin-bottom:30px}.doc-content-category>h2,.doc-content-category>h3{margin-bottom:16px;padding-bottom:10px;border-bottom:2px solid var(--fraidei-primary);font-size:1.45rem}.doc-content-segment{margin-bottom:24px;padding-left:14px;border-left:3px solid rgba(255,143,69,.56)}.doc-content-segment>h3,.doc-content-segment>h4{margin-bottom:10px;color:var(--fraidei-secondary);font-size:.98rem}.doc-content-segment>p,.pk-rich-content,.pk-rich-content p,.pk-rich-content li,.pk-rich-content td,.pk-rich-content th{color:var(--text-soft);font-size:.88rem;line-height:1.7}.pk-rich-content ul,.pk-rich-content ol{padding-left:20px}.pk-rich-content table{width:100%;margin:12px 0;border-collapse:collapse}.pk-rich-content th,.pk-rich-content td{border:1px solid rgba(39,30,22,.14);padding:8px}.pk-rich-content thead tr,.pk-rich-content table tr:first-child{background:var(--fraidei-primary)}.pk-rich-content thead th,.pk-rich-content thead td,.pk-rich-content table tr:first-child th,.pk-rich-content table tr:first-child td{color:var(--fraidei-secondary)}.admin-page{display:grid;gap:20px}.admin-header{padding:0;margin-bottom:12px;background:transparent;border:0;box-shadow:none}.admin-category{margin-bottom:14px;border-radius:8px;overflow:hidden}.admin-category-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:16px 18px;cursor:pointer}.admin-category-toggle{display:flex;align-items:center;color:#271e168a;transition:transform .16s ease}.admin-category.open .admin-category-toggle{transform:rotate(90deg)}.admin-category-name,.admin-segment-info strong{color:var(--fraidei-secondary);font-weight:700}.admin-category-count{padding:0 12px;min-height:30px;border-radius:var(--radius-pill);background:var(--fraidei-panel-strong);color:var(--fraidei-primary);display:inline-flex;align-items:center;font-size:var(--chip-size);font-weight:700}.admin-segments-list{display:none;padding:0 16px 16px;background:var(--fraidei-panel-strong)}.admin-category.open .admin-segments-list{display:block}.admin-segment-item{display:flex;align-items:center;gap:12px;margin-bottom:10px;padding:14px;border:1px solid rgba(39,30,22,.1);border-radius:10px;background:#ffffff73}.admin-drag-handle{display:flex;align-items:center;color:#271e167a;cursor:grab}.admin-drag-handle:active{cursor:grabbing}.admin-segment-info{flex:1;min-width:0}.admin-segment-info small{color:var(--text-soft);font-size:.84rem;display:-webkit-box;line-clamp:1;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.admin-add-btn{width:100%;border-style:dashed}.admin-inline-form{display:grid;gap:10px;padding:14px;border:1px solid rgba(255,143,69,.22);border-radius:8px;background:#f6f1e7}.admin-dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:200;min-width:180px;background:var(--fraidei-panel);border:1px solid var(--surface-border-strong);border-radius:12px;box-shadow:0 8px 24px #271e1624;overflow:hidden;display:flex;flex-direction:column}.admin-dropdown-menu button{width:100%;text-align:left;border-radius:0!important;border:none!important;padding:10px 16px!important;min-height:unset!important;font-size:.9rem;background:transparent;color:var(--fraidei-secondary)}.admin-dropdown-menu button:hover{background:var(--fraidei-panel-strong)!important;border-color:transparent!important}.admin-defaults-editor{margin-bottom:20px;padding:18px;border:1px solid rgba(255,143,69,.3);border-radius:8px;background:#f6f1e7}.admin-defaults-section-group{margin-bottom:18px}.admin-defaults-section-group-title{font-family:var(--font-heading);font-size:.9rem;font-weight:600;color:var(--fraidei-secondary);margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(255,143,69,.2)}.admin-defaults-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.admin-defaults-header h3{margin:0;font-family:var(--font-heading);font-size:1rem;font-weight:400;color:var(--fraidei-secondary)}.admin-defaults-actions{display:flex;gap:8px}.admin-defaults-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:6px}.admin-defaults-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff9;border:1px solid rgba(255,143,69,.15);border-radius:10px}.admin-defaults-name{flex:1;font-size:.88rem;color:var(--fraidei-secondary);font-weight:500;min-width:0}.admin-defaults-item button{flex-shrink:0;min-height:unset!important;padding:5px 11px!important;font-size:.82rem!important;white-space:nowrap}.admin-defaults-edit-btn{white-space:nowrap}.admin-defaults-add-btn{width:100%;border-style:dashed;margin-top:4px}.admin-form-field{display:grid;gap:6px;color:var(--fraidei-secondary);font-size:.88rem;font-weight:600}.admin-form-field span{line-height:1.2}.admin-inline-form textarea{min-height:112px;resize:vertical}#quill-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:#271e1657;opacity:0;pointer-events:none;transition:opacity .2s ease}#quill-modal.active{opacity:1;pointer-events:auto}.editor-card{width:min(100%,960px);max-height:90vh;border-radius:12px;overflow:hidden}.editor-header,.editor-footer{padding:18px 22px;background:var(--fraidei-panel-strong)}.editor-header{border-bottom:1px solid rgba(39,30,22,.1)}.editor-header h3{margin:0;color:var(--fraidei-secondary);font-family:var(--font-heading);font-size:1.7rem;font-weight:400}.editor-body{overflow:auto;background:var(--fraidei-panel)}#quill-editor-container{min-height:360px}#quill-editor-container .ql-toolbar.ql-snow{border:0;border-bottom:1px solid rgba(39,30,22,.08);background:var(--fraidei-panel-strong)}#quill-editor-container .ql-container.ql-snow{border:0}#quill-editor-container .ql-editor{min-height:360px;color:var(--text-soft);font-family:var(--font-body);font-size:.98rem;line-height:1.7}.sortable-ghost{opacity:.4}.sortable-chosen{background:#ff8f4514!important}#admin-import-file{display:none}@media(max-width:760px){.header-inner{align-items:flex-start;flex-direction:column}.brand-subtitle{white-space:normal}.header-actions{width:100%;justify-content:flex-start}#selection-area{grid-template-columns:1fr}.category-header,.admin-category-header{grid-template-columns:auto minmax(0,1fr) auto}.category-chevron,.admin-category-actions,.category-badge,.admin-category-count{grid-column:2 / -1;justify-self:start}.admin-segment-item{align-items:flex-start;flex-direction:column}.admin-segment-actions{width:100%}.doc-page{border-radius:10px}.doc-cover,.doc-toc,.doc-content{padding-left:24px;padding-right:24px}}@media(max-width:1080px){#selection-area{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){#user-view,#admin-view,.header-inner{padding-left:14px;padding-right:14px}.surface-panel{padding:16px;border-radius:8px}.btn-icon,.admin-nav-btn,.select-all-btn,.export-btn,.admin-toolbar button,.admin-segment-actions button,.admin-category-actions button,.admin-inline-form-actions button,.editor-footer button{width:100%;justify-content:center}.header-actions,.export-toolbar,.admin-toolbar,.admin-category-actions,.admin-segment-actions,.admin-inline-form-actions,.editor-footer{width:100%}.panel-heading h1{font-size:2rem}}@media print{#app-header,#user-view>:not(.workspace-grid),.workspace-column-selection,.export-toolbar,.customer-name-row{display:none!important}#user-view,.workspace-grid,.workspace-column-preview,.preview-shell,#preview-area{width:100%;margin:0;padding:0;box-shadow:none;background:transparent;border:0}.doc-page{box-shadow:none;margin:0;max-width:100%;border:0}}[data-theme=dark] #app-header{background:#0d1a2a;border-bottom:1px solid rgba(160,200,255,.12)}[data-theme=dark] .header-actions .btn-icon:focus-visible,[data-theme=dark] .header-actions .admin-nav-btn:focus-visible{outline-color:#a0c8ff52}[data-theme=dark] .header-pill-btn:hover{background:#a0c8ff1a}[data-theme=dark] .btn-icon,[data-theme=dark] .admin-nav-btn,[data-theme=dark] .select-all-btn,[data-theme=dark] .export-btn,[data-theme=dark] .admin-toolbar button,[data-theme=dark] .admin-category-actions button,[data-theme=dark] .admin-segment-actions button,[data-theme=dark] .admin-add-btn,[data-theme=dark] .admin-defaults-add-btn,[data-theme=dark] .admin-inline-form-actions button,[data-theme=dark] .editor-footer button{border-color:#a0c8ff2e}[data-theme=dark] .segment-select-all-btn:hover,[data-theme=dark] .export-btn:hover,[data-theme=dark] .admin-toolbar button:hover,[data-theme=dark] .admin-category-actions button:hover,[data-theme=dark] .admin-segment-actions button:hover,[data-theme=dark] .admin-inline-form-actions .btn-cancel:hover,[data-theme=dark] .editor-footer .btn-cancel:hover,[data-theme=dark] .admin-add-btn:hover{border-color:#a0c8ff61}[data-theme=dark] .admin-dropdown-menu{background:#162438;border-color:#a0c8ff38;box-shadow:0 8px 24px #0006}[data-theme=dark] .admin-defaults-editor{background:#0f1e30;border-color:#a0c8ff2e}[data-theme=dark] .admin-defaults-section-group-title{color:#a0c8ffb3;border-bottom-color:#a0c8ff1f}[data-theme=dark] .admin-defaults-item{background:#a0c8ff0d;border-color:#a0c8ff1f}[data-theme=dark] .category-chevron,[data-theme=dark] .admin-category-toggle{color:#a0c8ff73}[data-theme=dark] .admin-drag-handle{color:#a0c8ff61}[data-theme=dark] .segment-list{border-top-color:#a0c8ff24}[data-theme=dark] .segment-item{border-color:#a0c8ff1f;background:#a0c8ff0a}[data-theme=dark] .segment-item:hover{border-color:#a0c8ff52}[data-theme=dark] .segment-item.selected{border-color:var(--surface-border-strong);background:#a0c8ff1a}[data-theme=dark] .segment-check{border-color:#a0c8ff38;background:#a0c8ff0f}[data-theme=dark] .gs-chip{border-color:#a0c8ff66;color:var(--fraidei-blue)}[data-theme=dark] .gs-chip:hover{background:#a0c8ff14}[data-theme=dark] .gs-chip.active{background:#a0c8ff24;color:var(--fraidei-blue)}[data-theme=dark] .gs-dot{background:#a0c8ff73}[data-theme=dark] .gs-chip.active .gs-dot{background:var(--fraidei-blue)}[data-theme=dark] .customer-name-row input,[data-theme=dark] .admin-inline-form input,[data-theme=dark] .admin-inline-form textarea{border-color:#a0c8ff29;background:#12213a;color:var(--fraidei-secondary)}[data-theme=dark] .customer-name-row input:focus,[data-theme=dark] .admin-inline-form input:focus,[data-theme=dark] .admin-inline-form textarea:focus{border-color:#a0c8ff80;box-shadow:0 0 0 4px #a0c8ff1f}[data-theme=dark] .admin-inline-form{border-color:#a0c8ff2e;background:#12213a}[data-theme=dark] .admin-segment-item{border-color:#a0c8ff1f;background:#a0c8ff0a}[data-theme=dark] .preview-header .export-btn{border-color:#a0c8ff80;background:#a0c8ff0f;color:var(--fraidei-blue)}[data-theme=dark] .preview-header .export-btn:hover{background:#a0c8ff1a;border-color:#a0c8ffa6;color:var(--fraidei-blue)}[data-theme=dark] .preview-header .export-btn.export-btn-primary{background:#1e4a7a;color:#dceeff;border-color:#a0c8ff8c}[data-theme=dark] .preview-header .export-btn.export-btn-primary:hover{background:#265a92;color:#dceeff;border-color:var(--fraidei-blue)}[data-theme=dark] .preview-empty{border-color:#a0c8ff24;background:#a0c8ff08}[data-theme=dark] #quill-modal{background:#070e1a8c}[data-theme=dark] #quill-editor-container .ql-toolbar.ql-snow,[data-theme=dark] .editor-header{border-bottom-color:#a0c8ff1a}[data-theme=dark] .sortable-chosen{background:#a0c8ff14!important}[data-theme=dark] .toc-dots{border-bottom-color:#271e164d}[data-theme=dark] #preview-area{--fraidei-secondary: #271e16;--fraidei-bg: #f1efe6;--fraidei-bg-soft: #ece8de;--fraidei-panel: #ffffff;--fraidei-panel-strong: #f7f4ed;--fraidei-primary: #ff8f45;--fraidei-violet: #66374c;--fraidei-blue: #a0c8ff;--text-soft: rgba(39, 30, 22, .82);--surface-border: rgba(39, 30, 22, .1);--surface-border-strong: rgba(255, 143, 69, .7);color:#271e16}[data-theme=dark] .category-badge,[data-theme=dark] .admin-category-count{color:var(--fraidei-blue)}[data-theme=dark] .panel-eyebrow{color:#dceeff8c}.main-tab-nav{display:flex;gap:.25rem;align-items:center;margin:0 auto}.main-tab-btn{padding:.4rem 1.1rem;border-radius:999px;border:2px solid transparent;background:#ffffff2e;color:var(--fraidei-secondary, #271E16);font-weight:600;font-size:.9rem;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.main-tab-btn:hover{background:#ffffff59}.main-tab-btn.active{background:var(--fraidei-secondary, #271E16);color:#fff;border-color:var(--fraidei-secondary, #271E16)}[data-theme=dark] .main-tab-btn{color:#fff;background:#ffffff1a}[data-theme=dark] .main-tab-btn.active{background:#fff;color:var(--fraidei-secondary, #271E16);border-color:#fff}#hinnoittelija-view{width:min(100%,calc(var(--content-max-width) + 96px));margin:0 auto;padding:28px clamp(16px,3vw,48px) 56px}.hinnoittelija-layout{display:grid;grid-template-columns:240px 1fr 320px;gap:20px;align-items:start}.pricing-tab-nav-col{display:flex;flex-direction:column;background:var(--fraidei-panel);border:1px solid var(--surface-border);border-radius:8px;overflow:hidden;position:sticky;top:90px;max-height:calc(100vh - 110px);overflow-y:auto}.pricing-tab-nav{flex:1;padding:8px 0}.pricing-section-group{margin-bottom:4px}.pricing-section-label{font-size:var(--button3-size);font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:6px 14px 4px;color:var(--fraidei-secondary);opacity:.6;margin-top:4px}.pricing-tab-btn{display:flex;align-items:center;justify-content:space-between;width:calc(100% - 16px);margin:1px 8px;text-align:left;padding:9px 10px;background:transparent;border:none;cursor:pointer;font-family:var(--font-body);font-size:var(--button3-size);font-weight:500;color:var(--text-soft);transition:background .12s,color .12s;border-radius:8px;gap:6px}.pricing-tab-btn-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pricing-tab-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:14px;height:14px;padding:0 4px;border-radius:99px;background:var(--fraidei-primary);color:var(--fraidei-secondary);font-size:.55rem;font-weight:800;line-height:1;font-family:var(--font-body)}.pricing-tab-btn.active .pricing-tab-badge{background:var(--fraidei-primary);color:var(--fraidei-secondary)}.pricing-tab-btn:hover{background:var(--fraidei-bg-soft);color:var(--fraidei-secondary)}.pricing-tab-btn.active{background:var(--fraidei-secondary);color:#fff;font-weight:700;border-radius:8px}.pricing-controls{padding:12px 14px;border-top:1px solid var(--surface-border);display:flex;flex-direction:column;gap:8px}.pricing-save-btn{font-size:var(--button3-size);padding:6px 14px;min-height:36px;border:1px solid var(--fraidei-primary);border-radius:var(--radius-pill);background:var(--fraidei-primary);color:#fff;font-family:var(--font-body);font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}.pricing-save-btn:hover{background:var(--fraidei-secondary);border-color:var(--fraidei-secondary)}.pricing-open-btn{font-size:var(--button3-size);padding:6px 14px;min-height:36px;border:1px solid var(--surface-border);border-radius:var(--radius-pill);background:transparent;color:var(--fraidei-secondary);font-family:var(--font-body);font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}.pricing-open-btn:hover{background:var(--fraidei-bg-soft);border-color:var(--fraidei-secondary)}.pricing-reset-btn{font-size:var(--button3-size);padding:6px 14px;min-height:36px;border:1px solid var(--surface-border);border-radius:var(--radius-pill);background:transparent;color:var(--text-soft);font-family:var(--font-body);font-weight:600;transition:background .12s,border-color .12s}.pricing-reset-btn:hover{background:var(--fraidei-bg-soft);border-color:var(--surface-border-strong)}.pricing-confirm-reset{display:flex;align-items:center;gap:6px}.pricing-confirm-text{font-size:.75rem;font-weight:600;color:var(--text-soft);flex:1}.pricing-confirm-yes,.pricing-confirm-no{font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:var(--radius-pill);border:1px solid;cursor:pointer;font-family:var(--font-body)}.pricing-confirm-yes{background:#dc2626;border-color:#dc2626;color:#fff}.pricing-confirm-yes:hover{background:#b91c1c}.pricing-confirm-no{background:transparent;border-color:var(--surface-border);color:var(--text-soft)}.pricing-confirm-no:hover{background:var(--fraidei-bg-soft)}.pricing-save-msg{font-size:.72rem;font-weight:600;color:var(--fraidei-primary);padding:4px 0}.pricing-sessions{border-top:1px solid var(--surface-border);padding-top:10px;margin-top:2px}.pricing-sessions-hd{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-soft);margin-bottom:6px}.pricing-sessions-loading{font-size:.72rem;color:var(--text-soft)}.pricing-sessions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:3px;max-height:220px;overflow-y:auto}.pricing-session-item{display:flex;align-items:center;gap:4px}.pricing-session-load{flex:1;min-width:0;background:transparent;border:1px solid var(--surface-border);border-radius:8px;padding:5px 8px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:1px;transition:background .1s,border-color .1s}.pricing-session-load:hover{background:var(--fraidei-bg-soft);border-color:var(--fraidei-primary)}.pricing-session-name{font-size:.72rem;font-weight:600;color:var(--text-main, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px;display:block}.pricing-session-date{font-size:.65rem;color:var(--text-soft)}.pricing-session-del{background:transparent;border:1px solid var(--surface-border);border-radius:6px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-soft);cursor:pointer;flex-shrink:0;transition:background .1s,color .1s}.pricing-session-del:hover{background:#fee2e2;border-color:#dc2626;color:#dc2626}.pricing-adm-label{display:flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:var(--button3-size);font-weight:500;cursor:pointer;color:var(--text-soft)}.pricing-main-col{min-height:400px}.sq-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.sq-box{background:#fff;border-radius:14px;padding:28px 28px 24px;width:min(440px,calc(100vw - 32px));box-shadow:0 12px 40px #0000002e}.sq-title{font-size:1.25rem;font-weight:800;color:var(--fraidei-secondary);margin-bottom:4px}.sq-sub{font-size:.8rem;color:var(--text-soft);margin-bottom:18px}.sq-name-input{width:100%;padding:10px 14px;border:1px solid var(--surface-border);border-radius:8px;font-family:var(--font-body);font-size:.95rem;box-sizing:border-box;margin-bottom:16px;transition:border-color .15s}.sq-name-input:focus{outline:none;border-color:var(--fraidei-primary);box-shadow:0 0 0 3px #dd6b201f}.sq-error{font-size:.78rem;color:#dc2626;font-weight:600;margin:-8px 0 10px;padding:6px 10px;background:#fef2f2;border-radius:6px;border:1px solid #fecaca}.sq-actions{display:flex;gap:10px}.sq-btn-save{flex:1;padding:10px 20px;background:var(--fraidei-primary);border:1px solid var(--fraidei-primary);border-radius:var(--radius-pill);color:#fff;font-family:var(--font-body);font-size:.9rem;font-weight:700;cursor:pointer;transition:background .12s}.sq-btn-save:hover:not(:disabled){background:var(--fraidei-secondary);border-color:var(--fraidei-secondary)}.sq-btn-save:disabled{opacity:.5;cursor:default}.sq-btn-cancel{padding:10px 18px;background:transparent;border:1px solid var(--surface-border);border-radius:var(--radius-pill);color:var(--text-soft);font-family:var(--font-body);font-size:.9rem;font-weight:600;cursor:pointer;transition:background .12s}.sq-btn-cancel:hover:not(:disabled){background:var(--fraidei-bg-soft)}.oq-box{max-width:520px;width:min(520px,calc(100vw - 32px))}.oq-loading,.oq-empty{font-size:.85rem;color:var(--text-soft);padding:20px 0;text-align:center}.oq-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;max-height:360px;overflow-y:auto}.oq-item{display:flex;align-items:center;gap:8px}.oq-load-btn{flex:1;min-width:0;background:transparent;border:1px solid var(--surface-border);border-radius:10px;padding:10px 14px;cursor:pointer;text-align:left;display:flex;justify-content:space-between;align-items:baseline;gap:12px;transition:background .1s,border-color .1s}.oq-load-btn:hover{background:var(--fraidei-bg-soft);border-color:var(--fraidei-primary)}.oq-name{font-size:.88rem;font-weight:700;color:var(--fraidei-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px;display:block}.oq-date{font-size:.72rem;color:var(--text-soft);white-space:nowrap;flex-shrink:0}.oq-del-btn{background:transparent;border:1px solid var(--surface-border);border-radius:8px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-size:15px;color:var(--text-soft);cursor:pointer;flex-shrink:0;transition:background .1s,color .1s}.oq-del-btn:hover:not(:disabled){background:#fee2e2;border-color:#dc2626;color:#dc2626}.hdr-unsaved-badge{color:#dc2626;font-size:.55rem;margin-left:8px;vertical-align:middle;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.hdr-save-msg{font-size:.78rem;font-weight:600;color:var(--fraidei-primary);margin:2px 0 0}.pricing-sidebar-col{background:var(--fraidei-panel);border:1px solid var(--surface-border);border-radius:8px;overflow:hidden;position:sticky;top:90px;max-height:calc(100vh - 110px);overflow-y:auto}.product-list-title{font-family:var(--font-heading);font-size:var(--h4-size);font-weight:400;margin:0 0 20px;color:var(--fraidei-secondary);line-height:1}.product-search-input{display:block;width:100%;box-sizing:border-box;padding:10px 14px;margin-bottom:20px;font-family:var(--font-body);font-size:.875rem;color:var(--fraidei-secondary);background:var(--fraidei-panel);border:1.5px solid var(--fraidei-cream-1);border-radius:10px;outline:none;transition:border-color .15s}.product-search-input:focus{border-color:var(--fraidei-primary)}.product-search-input::placeholder{color:var(--text-soft);opacity:.6}.product-group{margin-bottom:16px;background:var(--fraidei-panel);border:1px solid var(--surface-border);border-radius:12px;padding:16px 20px}.tyohinnasto-tab-section{margin-bottom:4px}.product-group-name{font-family:var(--font-body);font-size:var(--button3-size);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--fraidei-primary);margin-bottom:10px;padding:0}.kc-sr-section{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.kc-sr{background:var(--fraidei-bg-soft);border:1.5px solid var(--surface-border);border-radius:8px;padding:16px 20px;transition:border-color .2s,background .2s}.kc-sr.on{border-color:#ff8f4559;background:#ff8f4508}.kc-sr-hd{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.kc-sr-name{font-size:.9375rem;font-weight:600;color:var(--fraidei-secondary)}.kc-sr.on .kc-sr-name{font-weight:700}.kc-sr-right{display:flex;align-items:center;gap:10px}.kc-sr-input{background:var(--fraidei-panel);color:var(--fraidei-secondary);border:1.5px solid var(--surface-border);border-radius:10px;padding:6px 10px;font-size:.9375rem;font-weight:700;font-family:var(--font-body);width:72px;text-align:center;outline:none;transition:box-shadow .15s;-moz-appearance:textfield}.kc-sr-input::-webkit-inner-spin-button{-webkit-appearance:none}.kc-sr-input:focus{box-shadow:0 0 0 3px #ff8f4559}.kc-sr-unit{font-size:.75rem;color:var(--text-soft);white-space:nowrap}.kc-range{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:99px;outline:none;cursor:pointer;margin:4px 0;transition:opacity .1s}.kc-range::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#ffb07a,var(--fraidei-primary));border:3.5px solid #fff;box-shadow:0 1px 4px #271e1626,0 3px 10px #ff8f4540;cursor:pointer;transition:transform .15s,box-shadow .15s}.kc-range::-webkit-slider-thumb:hover{transform:scale(1.18);box-shadow:0 2px 6px #271e1626,0 4px 14px #ff8f4566}.kc-range::-moz-range-thumb{width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#ffb07a,var(--fraidei-primary));border:3.5px solid #fff;box-shadow:0 1px 4px #271e1626,0 3px 10px #ff8f4540;cursor:pointer}.kc-sr-total{display:flex;justify-content:flex-end;margin-top:8px;font-size:.875rem;font-weight:700;color:var(--fraidei-primary);min-height:1.2em}.kc-sr-buy{font-size:.72rem;color:var(--text-soft);opacity:.65;margin-top:4px;text-align:right}.sr-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.sr{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:4px 12px;padding:10px 0;border-bottom:1px solid rgba(39,30,22,.04)}.sr.on{background:var(--fraidei-bg-soft);margin:0 -10px;padding:10px;border-radius:10px;border-bottom:none}.sr-name{font-size:.875rem;font-weight:500;color:var(--fraidei-secondary);grid-column:1;grid-row:1}.sr.on .sr-name{font-weight:700}.sr-meta{font-size:.7rem;color:var(--text-soft);opacity:.7;margin-top:2px;grid-column:1;grid-row:2}.sr-buy{color:var(--fraidei-primary);opacity:.8}.sr-price{font-size:.8125rem;color:var(--text-soft);text-align:right;grid-column:2}.sr.on .sr-price{color:var(--fraidei-secondary);font-weight:600}.sr-line-total{font-size:.75rem;font-weight:700;color:var(--fraidei-primary);text-align:right;grid-column:2}.ctr{display:flex;align-items:center;background:var(--fraidei-panel);border:1.5px solid var(--surface-border);border-radius:10px;overflow:hidden;height:34px;grid-column:3}.ctr-b{width:32px;height:34px;border:none;font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--font-body);padding:0;transition:background .1s;flex-shrink:0}.ctr-b:disabled{cursor:not-allowed;opacity:1}.ctr-m{background:var(--fraidei-bg-soft);color:var(--text-soft)}.ctr-m.can{background:var(--fraidei-bg-soft);color:var(--fraidei-secondary)}.ctr-p{background:var(--fraidei-primary);color:var(--fraidei-secondary)}.ctr-p:hover{background:#f88335}.ctr-v{width:44px;background:transparent;border:none;color:var(--text-soft);font-family:var(--font-body);font-size:.875rem;font-weight:600;text-align:center;outline:none;-moz-appearance:textfield}.ctr-v::-webkit-inner-spin-button{-webkit-appearance:none}.ctr-v.has{color:var(--fraidei-secondary);font-weight:700}.item-once-badge{display:inline-block;font-size:.65rem;background:var(--fraidei-secondary);color:#fff;border-radius:4px;padding:1px 5px;margin-left:4px;vertical-align:middle;font-weight:700;letter-spacing:.04em}.price-override-input{width:72px;border:1px solid var(--fraidei-primary);border-radius:6px;padding:4px;font-size:.82rem;font-family:var(--font-body);background:#ff8f450d;color:var(--fraidei-secondary)}.pricing-sidebar{padding:14px;display:flex;flex-direction:column;gap:10px}.sb-hero{background:var(--fraidei-bg-soft);border:1px solid var(--surface-border);border-radius:8px;padding:24px 16px;text-align:center}.sb-hero-price{font-size:2.5rem;font-weight:900;color:var(--fraidei-primary);font-family:var(--font-body);line-height:1}.sb-hero-currency{font-size:1.75rem}.sb-hero-sub{font-size:.72rem;color:var(--text-soft);margin-top:6px;text-transform:uppercase;letter-spacing:.08em}.sb-hero-once{margin-top:10px;font-size:.875rem;font-weight:700;color:var(--fraidei-violet)}.sb-card{background:var(--fraidei-panel);border:1px solid var(--surface-border);border-radius:8px;padding:14px 16px}.sb-empty{font-size:.875rem;color:var(--text-soft);font-style:italic;text-align:center;opacity:.7}.sb-section-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px dashed var(--surface-border);font-size:.82rem;gap:8px}.sb-section-row:last-of-type{border-bottom:none}.sb-section-label{display:flex;align-items:center;gap:6px;color:var(--text-soft)}.sb-section-val{font-weight:700;color:var(--fraidei-primary);font-family:var(--font-body);font-size:.82rem;white-space:nowrap}.sb-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.sb-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:12px}.sb-stat{background:var(--fraidei-bg-soft);border:1px solid var(--surface-border);border-radius:10px;padding:10px;text-align:center}.sb-stat-val{font-size:.875rem;font-weight:700;color:var(--fraidei-secondary);font-family:var(--font-body)}.sb-stat-label{font-size:.65rem;color:var(--text-soft);text-transform:uppercase;letter-spacing:.08em;margin-top:2px}.sb-stat-hl{background:var(--fraidei-bg-soft);border-color:var(--surface-border-strong)}.sb-stat-hl .sb-stat-val{color:var(--fraidei-primary)}.sb-stat-dark{background:var(--fraidei-secondary);border-color:var(--fraidei-secondary)}.sb-stat-dark .sb-stat-val{color:var(--fraidei-primary)}.sb-stat-dark .sb-stat-label{color:#ffffff73}.sb-stat-once{background:var(--fraidei-violet);border-color:var(--fraidei-violet)}.sb-stat-once .sb-stat-val{color:#fff}.sb-stat-once .sb-stat-label{color:#fff9}.sb-disc-info{font-size:.72rem;color:var(--fraidei-primary);font-weight:600}.sb-card-once{border-color:#66374c4d}.sb-li-header-once{color:var(--fraidei-violet)}.sb-controls{display:flex;flex-direction:column;gap:12px}.sb-ctrl-row{display:flex;flex-direction:column;gap:6px}.sb-ctrl-label{font-size:var(--button3-size);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-soft)}.sb-ctrl-val{color:var(--fraidei-primary)}.sb-slider{-webkit-appearance:none;appearance:none;width:100%;height:5px;border-radius:99px;background:var(--fraidei-cream-1);outline:none;cursor:pointer;accent-color:var(--fraidei-primary)}.sb-slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--fraidei-primary);border:3px solid #fff;box-shadow:0 1px 4px #271e1626;cursor:pointer}.sb-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--fraidei-primary);border:3px solid #fff;cursor:pointer}.sb-pills{display:flex;gap:4px}.sb-pill{flex:1;padding:6px 0;border-radius:8px;border:1px solid var(--surface-border);background:var(--fraidei-bg-soft);color:var(--text-soft);font-size:.72rem;font-weight:700;font-family:var(--font-body);cursor:pointer;transition:background .1s,border-color .1s,color .1s}.sb-pill:hover:not(.on){border-color:var(--fraidei-primary);color:var(--fraidei-primary)}.sb-pill.on{background:var(--fraidei-primary);color:var(--fraidei-secondary);border-color:var(--fraidei-primary)}.sb-li-header{font-size:var(--button3-size);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-soft);margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--surface-border)}.sb-li{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px solid rgba(39,30,22,.03);font-size:.78rem;gap:6px}.sb-li-name{display:flex;align-items:center;gap:5px;color:var(--fraidei-secondary);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-li-qty{font-size:.68rem;color:var(--text-soft);margin-left:3px;flex-shrink:0}.sb-li-total{font-weight:700;color:var(--fraidei-primary);font-family:var(--font-body);font-size:.78rem;white-space:nowrap;flex-shrink:0}.sb-alv{display:flex;justify-content:space-between;padding:5px 0;font-size:.75rem;color:var(--text-soft);border-top:1px solid var(--surface-border);margin-top:4px}.sb-alv-total{font-weight:700;color:var(--fraidei-secondary);border-top:none;margin-top:0}.tarjous-btn{width:100%;padding:12px 18px;font-family:var(--font-body);font-size:var(--button2-size);font-weight:700;border:none;border-radius:var(--radius-pill);background:var(--fraidei-primary);color:#fff8f1;cursor:pointer;transition:background .15s;letter-spacing:.01em}.tarjous-btn:hover:not(:disabled){background:#f88335}.tarjous-btn:disabled{opacity:.4}.backup-configurator{margin-top:24px}.bk-tb-row{margin-bottom:16px;font-size:.875rem;color:var(--text-soft);display:flex;align-items:center;gap:8px}.bk-tb-input{width:80px;border:1px solid var(--surface-border);border-radius:8px;padding:5px 8px;font-family:var(--font-body);font-size:.875rem;background:var(--fraidei-bg);color:var(--fraidei-secondary)}.bk-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.bk-option{border:2px solid var(--surface-border);border-radius:8px;padding:14px;cursor:pointer;transition:border-color .15s,background .15s;background:var(--fraidei-bg-soft)}.bk-option:hover{border-color:var(--surface-border-strong)}.bk-option.selected{border-color:var(--fraidei-primary);background:#ff8f4514}.bk-option-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.bk-name{font-weight:700;font-size:.875rem;flex:1;color:var(--fraidei-secondary)}.bk-price{font-weight:800;font-size:.875rem;color:var(--fraidei-primary)}.bk-desc{font-size:.78rem;color:var(--text-soft);margin:0;line-height:1.4}.rauta-desc{font-size:.875rem;color:var(--text-soft);margin-bottom:16px;line-height:1.5}.rauta-name-input,.rauta-unit-input{border:1px solid var(--surface-border);border-radius:8px;padding:5px 10px;font-family:var(--font-body);font-size:.82rem;background:var(--fraidei-bg);color:var(--fraidei-secondary);width:100%}.rauta-add-btn{margin-top:12px;padding:8px 18px;min-height:40px;border:1px solid var(--surface-border);border-radius:var(--radius-pill);background:transparent;font-family:var(--font-body);font-size:var(--button3-size);font-weight:700;color:var(--fraidei-secondary);cursor:pointer;transition:background .12s,border-color .12s}.rauta-add-btn:hover{background:var(--fraidei-bg-soft);border-color:var(--surface-border-strong)}.rauta-total{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding:14px 18px;background:var(--fraidei-bg-soft);border-radius:8px;border:1px solid var(--surface-border);font-size:.9rem;color:var(--text-soft)}.rauta-total strong{font-size:1.1rem;color:var(--fraidei-primary);font-weight:800}.tyohinnasto-group-badge{font-size:.75rem;font-weight:700;color:var(--fraidei-secondary);background:var(--fraidei-cream-2);border-radius:6px;padding:5px 12px;margin-bottom:6px;margin-top:14px}.tyohinnasto-empty{color:var(--text-soft);font-size:.875rem;padding:16px 0}.setup-section{margin-top:24px;padding-top:24px;border-top:2px solid var(--surface-border)}.setup-rows{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.setup-row{display:grid;grid-template-columns:1fr 80px 90px 90px 32px;align-items:center;gap:8px;font-size:.82rem}.setup-role-select{border:1px solid var(--surface-border);border-radius:8px;padding:6px 8px;font-family:var(--font-body);font-size:.82rem;background:var(--fraidei-bg);color:var(--fraidei-secondary)}.setup-rate{color:var(--text-soft)}.setup-line-total{font-weight:700;text-align:right;color:var(--fraidei-secondary)}.setup-total{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding:14px 18px;background:var(--fraidei-bg-soft);border-radius:8px;border:1px solid var(--surface-border);font-size:.9rem;color:var(--text-soft)}.setup-total strong{font-size:1.05rem;color:var(--fraidei-primary);font-weight:800}.tarjous-view{width:100%}.tv-header-card{background:var(--fraidei-panel);border:1px solid var(--surface-border);border-radius:12px;padding:24px}.tv-header-title{font-family:var(--font-body);font-size:1.75rem;font-weight:900;font-style:italic;color:var(--fraidei-secondary);line-height:1;margin:0 0 6px}.tv-header-meta{font-size:.8125rem;color:var(--text-soft);margin-bottom:16px}.tv-header-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.btn-print{display:inline-flex;align-items:center;height:36px;padding:0 18px;border:1.5px solid var(--fraidei-primary);border-radius:var(--radius-pill);background:transparent;font-family:var(--font-body);font-size:var(--button3-size);font-weight:700;color:var(--fraidei-primary);cursor:pointer;transition:background .12s}.btn-print:hover{background:#ff8f4514}.btn-print-filled{background:var(--fraidei-primary);color:#fff;border-color:var(--fraidei-primary)}.btn-print-filled:hover{background:#e67e3a}.btn-sm{height:32px;padding:0 12px;font-size:.72rem}.tarjous-toolbar{display:none}.tarjous-header,.tarjous-table{display:none}.tarjous-doc{display:flex;flex-direction:column;gap:12px}.tv-card{background:var(--fraidei-panel);border:1px solid var(--surface-border);border-radius:12px;padding:20px 24px}.tv-section-hd{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-body);font-size:1rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--fraidei-primary);padding:0 0 10px;gap:12px}.tv-section-totals{display:flex;align-items:baseline;gap:14px;font-size:.875rem;font-weight:700;font-family:var(--font-body)}.tv-section-mo{color:var(--fraidei-primary)}.tv-section-yr,.tv-section-once{font-size:.75rem;font-weight:600;color:var(--text-soft)}.tv-group-hd{display:flex;justify-content:space-between;align-items:center;background:var(--fraidei-panel-strong);padding:8px 12px;border-radius:6px;margin-bottom:6px;gap:12px}.tv-group-label{font-size:.875rem;font-weight:700;color:var(--fraidei-secondary);flex:1}.tv-group-prices{display:flex;align-items:baseline;gap:10px;flex-shrink:0}.tv-group-annual,.tv-group-once{font-size:.75rem;font-weight:600;color:var(--text-soft);white-space:nowrap}.tv-group-price{font-size:.875rem;font-weight:700;color:var(--fraidei-primary);white-space:nowrap}.tv-item{display:grid;grid-template-columns:56px 1fr auto auto auto;gap:0 12px;align-items:baseline;padding:6px 12px;border-bottom:1px solid rgba(39,30,22,.04);font-size:.8125rem}.tv-item:last-child{border-bottom:none}.tv-code{color:var(--text-soft);font-size:.72rem;font-family:var(--font-body);opacity:.8}.tv-name{color:var(--fraidei-secondary);font-weight:600}.tv-qty,.tv-price{color:var(--text-soft);font-size:.75rem;text-align:right;white-space:nowrap}.tv-total{font-weight:700;color:var(--fraidei-secondary);text-align:right;white-space:nowrap;min-width:60px}.tv-setup-row{display:block;margin:14px 0 0;padding:12px 16px;background:#fff7ec;border:1px dashed var(--fraidei-primary);border-radius:8px}.tv-setup-hd{display:flex;justify-content:space-between;align-items:center;gap:12px}.tv-setup-title{font-size:.875rem;font-weight:700;color:var(--fraidei-secondary)}.tv-setup-sub{font-size:.72rem;color:var(--text-soft);margin-top:2px}.tv-setup-note{font-size:.72rem;font-style:italic;color:var(--text-soft);margin-top:4px}.tv-setup-price{font-size:1.125rem;font-weight:800;color:var(--fraidei-secondary);white-space:nowrap}.tv-setup-item{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}.tv-setup-role-select{flex:1;min-width:180px;padding:6px 10px;border:1px solid var(--surface-border);border-radius:6px;font-family:inherit;font-size:12px;background:#fff}.tv-setup-mult,.tv-setup-eq{color:var(--text-soft);font-size:13px;flex-shrink:0}.tv-setup-hours-wrap{display:flex;align-items:center;gap:4px}.tv-setup-hours-input{width:72px;padding:6px 8px;border:1px solid var(--surface-border);border-radius:6px;font-family:DM Mono,monospace;font-size:13px;text-align:right}.tv-setup-unit{font-size:12px;color:var(--text-soft)}.tv-setup-line-total{font-size:13px;font-weight:800;color:var(--fraidei-secondary);min-width:68px;text-align:right}.tv-setup-del-btn{background:none;border:1px solid var(--surface-border);border-radius:6px;padding:4px 8px;font-size:11px;cursor:pointer;color:var(--text-soft);flex-shrink:0}.tv-setup-del-btn:hover{border-color:var(--fraidei-primary);color:var(--fraidei-primary)}.tv-setup-add-btn{display:inline-block;margin-top:10px;background:none;border:1px dashed var(--fraidei-primary);border-radius:6px;padding:6px 12px;font-size:12px;font-weight:700;color:var(--fraidei-primary);cursor:pointer}.tv-setup-add-btn:hover{background:#dd6b200f}.tv-summary{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;background:var(--fraidei-panel-strong);border:1px solid var(--surface-border);border-radius:12px;padding:20px 24px}.tv-sum-block{display:flex;flex-direction:column}.tv-sum-label{font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--text-soft);margin-bottom:4px}.tv-sum-big{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:var(--fraidei-secondary);line-height:1.1}.tv-sum-sub{font-size:.72rem;color:var(--text-soft);margin-top:4px}.tv-sum-row{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:baseline;font-size:.875rem;color:var(--fraidei-secondary);padding:6px 0;border-top:1px solid var(--surface-border)}.tv-sum-contract{font-weight:800;color:var(--fraidei-primary)}.tv-sum-discount{grid-column:1 / -1;font-size:.72rem;color:var(--text-soft);padding-top:4px}.tv-terms-card{background:var(--fraidei-panel);border:1px solid var(--surface-border);border-radius:12px;padding:20px}.tv-terms-hd{font-size:var(--button3-size);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-soft);margin-bottom:12px}.tarjous-terms-textarea{width:100%;border:1px solid var(--surface-border);border-radius:12px;padding:12px 16px;font-size:.875rem;font-family:var(--font-body);resize:vertical;background:var(--fraidei-bg);color:var(--fraidei-secondary);transition:border-color .12s}.tarjous-terms-textarea:focus{outline:none;border-color:var(--fraidei-primary)}.print-only{display:none}.pricing-loading,.pricing-error{display:flex;align-items:center;justify-content:center;height:300px;font-size:.95rem;color:var(--text-soft)}.pricing-error{color:var(--color-error, #c0392b)}@media print{#app-header,.pricing-tab-nav-col,.pricing-sidebar-col,.no-print,.tarjous-toolbar{display:none!important}#hinnoittelija-view{padding:0;max-width:100%}.hinnoittelija-layout{display:block}.pricing-main-col,.tarjous-doc{border:none;border-radius:0;padding:0;background:transparent}.print-only{display:block}.tarjous-terms-textarea{display:none}.tarjous-table{page-break-inside:auto}.tarjous-table tr{page-break-inside:avoid}}@media(max-width:1024px){.hinnoittelija-layout{grid-template-columns:200px 1fr}.pricing-sidebar-col{display:none}}@media(max-width:680px){#hinnoittelija-view{padding:12px 12px 40px}.hinnoittelija-layout{grid-template-columns:1fr;gap:12px}.pricing-tab-nav-col{position:static;max-height:none}.pricing-tab-nav{display:flex;flex-wrap:wrap;gap:4px;padding:8px}.pricing-tab-btn{width:auto;padding:5px 12px;border-radius:var(--radius-pill);border:1px solid var(--surface-border)}.pricing-section-label{display:none}.main-tab-nav{margin:0}}
