.notif-bell{position:relative;background:transparent;border:1px solid var(--border);border-radius:8px;cursor:pointer;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);transition:background .12s,color .12s,border-color .12s}.notif-bell:hover{background:var(--bg-elevated);color:var(--text);border-color:var(--accent)}.notif-bell-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;background:#c47a7e;color:#fff;border-radius:9px;font-size:10.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--bg-card);line-height:1}.page-info-bell{position:relative;display:inline-flex}.page-info-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:50%;color:var(--text-muted);cursor:pointer;transition:var(--transition)}.page-info-btn:hover{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent)}.page-info-btn.is-open{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.page-info-popover{position:absolute;top:calc(100% + 10px);right:0;width:360px;max-width:90vw;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 32px #00000038,0 2px 6px #0000001a;padding:14px 16px;z-index:1000;display:flex;flex-direction:column;gap:10px}.page-info-popover-arrow{position:absolute;top:-6px;right:14px;width:12px;height:12px;background:var(--bg-card);border-top:1px solid var(--border);border-left:1px solid var(--border);transform:rotate(45deg)}.page-info-popover-header{display:flex;align-items:center;justify-content:space-between;font-size:13px}.page-info-popover-header strong{color:var(--text);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.page-info-close{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:14px;padding:2px 6px;border-radius:4px}.page-info-close:hover{color:var(--text);background:var(--bg-elevated)}.page-info-content{font-size:13px;line-height:1.55;color:var(--text);white-space:pre-wrap;max-height:320px;overflow-y:auto}.page-info-empty{font-size:13px;margin:0}.page-info-textarea{width:100%;font:inherit;font-size:13px;line-height:1.5;padding:10px 12px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;color:var(--text);resize:vertical;min-height:140px;outline:none}.page-info-textarea:focus{border-color:color-mix(in srgb,var(--accent) 50%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.page-info-actions{display:flex;gap:8px;align-items:center}@media(max-width:768px){.page-info-popover{position:fixed;top:64px;left:3vw;right:3vw;width:auto;max-width:none;max-height:calc(100vh - 80px)}.page-info-popover-arrow{display:none}.page-info-content{max-height:calc(100vh - 220px)}}.proj-admin-fab{position:fixed;left:24px;bottom:24px;z-index:900;display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 80%,#ffffff),color-mix(in srgb,var(--accent) 100%,#000000));color:#fff;border:1px solid color-mix(in srgb,var(--accent) 80%,transparent);font-weight:700;font-size:13px;cursor:pointer;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 35%,transparent),0 0 0 4px color-mix(in srgb,var(--accent) 15%,transparent);transition:all .2s ease}.proj-admin-fab:hover{transform:translateY(-2px);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 50%,transparent),0 0 0 6px color-mix(in srgb,var(--accent) 20%,transparent)}.proj-admin-fab svg{flex-shrink:0}.proj-admin-fab.is-star-only{width:44px;height:44px;padding:0;justify-content:center}@media(max-width:720px){.proj-admin-fab{left:12px;bottom:12px;padding:10px 14px;font-size:12px}}.sw-fab{position:fixed;right:20px;bottom:20px;width:56px;height:56px;border-radius:50%;border:none;background:#095872;color:#fff;font-size:24px;font-weight:700;cursor:pointer;box-shadow:0 4px 12px #09587266;z-index:9998;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}.sw-fab:hover{transform:scale(1.05);box-shadow:0 6px 18px #00000038}.sw-fab.is-open{font-size:30px;line-height:1}.sw-fab-badge{position:absolute;top:4px;right:4px;min-width:20px;height:20px;padding:0 6px;background:#b00020;color:#fff;border-radius:10px;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0003}.sw-panel{position:fixed;right:20px;bottom:90px;width:380px;max-width:calc(100vw - 40px);height:550px;max-height:calc(100vh - 120px);background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px #0000002e;display:flex;flex-direction:column;z-index:9998;overflow:hidden}.sw-header{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border);background:var(--bg-elevated)}.sw-title{margin:0;font-size:15px;font-weight:700;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sw-back,.sw-close{background:none;border:none;color:var(--text);font-size:20px;cursor:pointer;padding:0 4px;line-height:1;opacity:.7}.sw-back:hover,.sw-close:hover{opacity:1}.sw-body{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px}.sw-body-form{gap:12px}.sw-empty{text-align:center;color:var(--text-muted);font-size:13px;margin:20px 12px}.sw-btn-new{background:var(--accent, #16a34a);color:#fff;border:none;border-radius:6px;padding:8px 12px;font-weight:600;font-size:13px;cursor:pointer}.sw-btn-new:hover{filter:brightness(1.05)}.sw-tickets{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.sw-ticket-item{width:100%;text-align:left;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:10px 12px;cursor:pointer;color:var(--text)}.sw-ticket-item:hover{background:color-mix(in srgb,var(--accent, #16a34a) 8%,var(--bg-elevated))}.sw-ticket-item-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.sw-ticket-status{font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:2px 6px;border-radius:3px}.sw-ticket-status.is-open{background:color-mix(in srgb,#16a34a 18%,transparent);color:#166534}.sw-ticket-status.is-closed{background:color-mix(in srgb,#64748b 20%,transparent);color:#475569}.sw-ticket-subject{font-weight:600;font-size:13px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sw-ticket-item-meta{font-size:11px;color:var(--text-muted)}.sw-label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--text-muted)}.sw-label-grow{flex:1}.sw-input{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg-card);color:var(--text);font-size:13px;font-family:inherit}.sw-textarea{resize:none;min-height:80px;flex:1}.sw-label-grow .sw-textarea{min-height:0;height:100%}.sw-btn-send{background:var(--accent, #16a34a);color:#fff;border:none;border-radius:6px;padding:10px 14px;font-weight:600;font-size:13px;cursor:pointer;align-self:flex-end}.sw-btn-send:disabled{opacity:.5;cursor:not-allowed}.sw-thread{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px;background:color-mix(in srgb,var(--text) 3%,transparent)}[data-theme=light] .sw-thread{background:#f9fafb}.sw-msg{max-width:85%;padding:8px 12px;border-radius:10px;background:var(--bg-elevated);border:1px solid var(--border);align-self:flex-start}.sw-msg.is-mine{align-self:flex-end;background:color-mix(in srgb,var(--accent, #16a34a) 12%,var(--bg-elevated));border-color:color-mix(in srgb,var(--accent, #16a34a) 35%,transparent)}.sw-msg.is-admin:not(.is-mine){background:color-mix(in srgb,#3b82f6 10%,var(--bg-elevated));border-color:color-mix(in srgb,#3b82f6 35%,transparent)}.sw-msg-meta{font-size:10px;color:var(--text-muted);margin-bottom:4px}.sw-admin-tag{color:#1e40af;font-weight:600}.sw-msg-body{font-size:13px;line-height:1.4;white-space:pre-wrap;word-wrap:break-word}.sw-composer{padding:10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px;background:var(--bg-elevated)}.sw-composer .sw-textarea{min-height:60px}.sw-closed{padding:12px;text-align:center;font-size:12px;color:var(--text-muted);border-top:1px solid var(--border);background:var(--bg-elevated)}@media(max-width:500px){.sw-panel{right:10px;left:10px;width:auto;bottom:80px}.sw-fab{right:12px;bottom:12px}}.lang-dropdown{position:relative}.lang-dropdown-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.95rem;font-weight:600;color:var(--header-bar-muted);font-family:var(--font);transition:var(--transition)}.lang-dropdown-btn:hover{background:var(--header-bar-hover);color:var(--header-bar-text)}.lang-dropdown-label{color:inherit;white-space:nowrap}.lang-dropdown-arrow{width:14px;height:14px;color:var(--header-bar-muted);transition:transform .2s ease}.lang-dropdown.active .lang-dropdown-arrow{transform:rotate(180deg)}.lang-dropdown-content{display:none;position:absolute;top:100%;right:0;margin-top:6px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);min-width:140px;z-index:1002;overflow:hidden}.lang-dropdown.active .lang-dropdown-content{display:block}.lang-dropdown-item{display:block;width:100%;padding:10px 16px;background:none;border:none;text-align:left;font-size:.95rem;font-weight:500;font-family:var(--font);color:var(--text);cursor:pointer;transition:background .2s ease}.lang-dropdown-item:hover{background:#32947c1f}.lang-dropdown-item.active{background:#32947c14;font-weight:600}.app-layout{min-height:100vh;display:flex;flex-direction:column}.app-header{position:fixed;top:0;left:0;right:0;z-index:1001;height:64px;background:var(--header-bar-bg);border-bottom:1px solid var(--header-bar-border);box-shadow:var(--header-shadow);display:flex;align-items:center;justify-content:space-between;padding:0 20px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.header-left{display:flex;align-items:center;gap:12px;padding-left:130px}.header-right{display:flex;align-items:center;gap:6px}.app-logo{position:absolute;top:0;left:20px;height:45px;width:auto;border-bottom-left-radius:12px;border-bottom-right-radius:12px;flex-shrink:0;cursor:pointer}.app-logo-helexia{width:113px;height:45px;background:#fff;object-fit:contain;padding:5px 10px;box-sizing:border-box}.app-title{font-size:16px;font-weight:700;color:var(--header-bar-text);letter-spacing:.02em}.nav-dropdown{position:relative}.nav-dropdown-btn{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--header-bar-muted);cursor:pointer;padding:6px 10px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;font-family:var(--font);transition:var(--transition)}.nav-dropdown-btn:hover{background:var(--header-bar-hover);color:var(--header-bar-text)}.nav-dropdown-content{position:absolute;top:calc(100% + 8px);left:0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);min-width:220px;padding:6px;z-index:1010;max-height:80vh;overflow-y:auto}.nav-dropdown-group{padding:4px 0}.nav-dropdown-group+.nav-dropdown-group{border-top:1px solid var(--border);margin-top:4px;padding-top:6px}.nav-dropdown-group-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);padding:4px 12px;margin-bottom:2px}.nav-scope-btn{background:transparent;border:none;color:var(--header-bar-muted);font-weight:500}.nav-scope-btn:hover{background:var(--header-bar-hover);color:var(--header-bar-text)}.nav-scope-content{min-width:180px;padding:6px}.nav-scope-content .nav-dropdown-item{width:100%;background:transparent;border:none;cursor:pointer;text-align:left;font:inherit;display:flex;align-items:center;gap:8px}.nav-dropdown-item{display:block;padding:8px 12px;border-radius:var(--radius-sm);color:var(--text-muted);font-size:14px;font-weight:500;transition:var(--transition);text-decoration:none}.nav-dropdown-item:hover{background:var(--bg-input);color:var(--text)}.nav-dropdown-item.active{background:#32947c1a;color:var(--accent)}.nav-dropdown-item.is-sub{padding-left:30px;font-size:13px;color:var(--text-dim);position:relative}.nav-dropdown-item.is-sub:before{content:"";position:absolute;left:18px;top:50%;width:8px;height:1px;background:var(--border)}.nav-dropdown-item.is-sub:hover{color:var(--text)}.user-badge{font-size:12px;font-weight:600;color:var(--header-bar-muted);padding:3px 8px;background:var(--header-bar-hover);border-radius:var(--radius-pill)}.header-btn{background:none;border:none;color:var(--header-bar-muted);cursor:pointer;padding:6px;border-radius:var(--radius-sm);display:flex;align-items:center;transition:var(--transition)}.header-btn:hover{background:var(--header-bar-icon-hover);color:var(--header-bar-text)}.app-main{padding-top:80px;flex:1}.scroll-top-btn{position:fixed;bottom:24px;right:24px;z-index:1000;width:42px;height:42px;border-radius:50%;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow);transition:var(--transition);opacity:.85}.scroll-top-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent);opacity:1;transform:translateY(-2px);box-shadow:var(--shadow-glow)}@media print{.scroll-top-btn{display:none!important}}.brand-switcher{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;font-size:12px;font-weight:600;color:var(--text);padding:5px 8px;cursor:pointer;transition:border-color .12s}.brand-switcher:hover{border-color:var(--accent)}.brand-switcher:focus{outline:2px solid var(--accent);outline-offset:1px}.view-as-picker{position:fixed;left:12px;bottom:12px;z-index:90;display:inline-flex;align-items:center;gap:4px;padding:3px 6px 3px 8px;background:var(--bg-card);border:1px dashed var(--accent);border-radius:var(--radius-pill, 999px);font-size:11px;color:var(--text-dim);cursor:pointer;box-shadow:0 2px 6px #00000014;opacity:.55;transition:opacity .15s}.view-as-picker:hover{opacity:1}.view-as-picker-brand{bottom:48px;border-style:dotted}.view-as-label{font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:9px}.view-as-select{background:transparent;border:none;color:var(--text);font-size:11px;font-weight:600;padding:1px 3px;cursor:pointer;outline:none}.view-as-select:focus{outline:1px solid var(--accent);outline-offset:1px;border-radius:4px}@media(max-width:768px){.app-header{height:56px;padding:0 12px}.header-left{padding-left:120px;gap:4px;flex:1;min-width:0}.header-right{gap:2px}.app-title,.user-badge{display:none}.nav-dropdown-btn{padding:6px 8px;gap:0}.nav-dropdown-btn>span,.nav-scope-btn>span{display:none}.nav-scope-btn>svg:last-child{display:none}.nav-dropdown-content{position:fixed;top:60px;left:3vw;right:3vw;min-width:0;width:auto;max-width:94vw;max-height:calc(100vh - 80px)}.header-btn{padding:4px}.header-btn svg{width:18px;height:18px}.app-main{padding-top:68px}.view-as-picker{bottom:8px;left:8px;padding:2px 5px;font-size:10px}.view-as-picker-brand{bottom:38px}}@media(max-width:438px){.app-header{height:auto;min-height:90px;flex-wrap:wrap;padding:6px 8px;align-items:center;row-gap:6px}.app-logo{position:static;left:auto;top:auto;order:-1;margin-right:auto;border-radius:8px}.header-left{padding-left:0;flex:1 1 auto;order:1}.header-right{flex:0 0 auto;order:2}.app-main{padding-top:100px}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-base);padding:20px;position:relative}.login-top-actions{position:fixed;top:16px;right:16px;display:flex;align-items:center;gap:4px;z-index:10}.login-card{background:var(--bg-elevated);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:40px;width:100%;max-width:380px;display:flex;flex-direction:column;align-items:center;gap:0}.login-logo{width:64px;height:64px;border-radius:var(--radius-lg);background:var(--accent-gradient);display:flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:var(--shadow-glow)}.login-logo-text{color:#fff;font-size:22px;font-weight:700;letter-spacing:.05em}.login-title{font-size:1.4rem;font-weight:700;color:var(--text);margin:0 0 4px}.login-subtitle{font-size:13px;color:var(--text-muted);margin:0 0 24px;text-align:center}.login-hint{font-size:12px;color:var(--text-dim);margin-bottom:20px;text-align:center}.login-form{width:100%;display:flex;flex-direction:column;gap:14px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:12px;font-weight:600;color:var(--text-muted);letter-spacing:.02em}.login-error{font-size:13px;color:var(--danger);text-align:center;padding:8px;background:var(--danger-muted-bg);border-radius:var(--radius-sm)}.login-btn{width:100%;justify-content:center;padding:10px;font-size:15px;margin-top:4px}.login-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-password-wrap{position:relative;display:flex;align-items:center}.login-password-input{padding-right:42px;width:100%}.login-password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;padding:6px;cursor:pointer;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;border-radius:6px;transition:color .18s ease,background .18s ease}.login-password-toggle:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}*{box-sizing:border-box}.public-art-page{min-height:100vh;background:#fff;color:#0f172a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;display:flex;flex-direction:column}.public-art-header{position:sticky;top:0;z-index:100;height:64px;background:#ffffffeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #f1f5f9;display:flex;align-items:center;padding:0 48px;box-shadow:0 1px 3px #00000008}.public-art-logo{position:absolute;top:0;left:20px;height:45px;width:auto;border-bottom-left-radius:12px;border-bottom-right-radius:12px;display:block}.public-art-main{flex:1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:56px;padding:48px;max-width:1240px;margin:0 auto;width:100%}.public-art-gallery{display:flex;flex-direction:column;gap:12px}.public-art-main-img{display:block;width:100%;height:540px;padding:0;border:none;background:transparent;cursor:zoom-in;overflow:hidden}.public-art-main-img img{width:100%;height:100%;object-fit:contain;display:block}.public-art-main-empty{display:flex;align-items:center;justify-content:center;cursor:default;color:#cbd5e1}.public-art-thumbs{display:flex;gap:8px;overflow-x:auto}.public-art-thumb{flex:0 0 64px;width:64px;height:64px;padding:0;border:1px solid transparent;background:transparent;cursor:pointer;overflow:hidden;opacity:.5;transition:border-color .15s ease,opacity .15s ease}.public-art-thumb:hover{opacity:1}.public-art-thumb.is-active{opacity:1;border-color:#0f172a}.public-art-thumb img{width:100%;height:100%;object-fit:cover;display:block}.public-art-info{display:flex;flex-direction:column;padding-top:8px}.public-art-code{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:#94a3b8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;margin-bottom:18px}.public-art-title{font-size:34px;font-weight:300;letter-spacing:-.6px;line-height:1.15;color:#0f172a;margin:0 0 20px}.public-art-price{font-size:22px;font-weight:500;color:#0f172a;font-variant-numeric:tabular-nums;margin-bottom:28px}.public-art-desc{font-size:14px;line-height:1.75;color:#475569;white-space:pre-line;margin:0;padding-top:24px;border-top:1px solid #e2e8f0;max-width:480px}.public-art-footer{display:flex;align-items:center;gap:10px;padding:28px 48px;border-top:1px solid #f1f5f9;margin-top:60px;color:#94a3b8;font-size:11px;letter-spacing:.5px}.public-art-footer img{height:18px;width:auto;opacity:.55}.public-art-loading{text-align:center;padding:120px 32px;color:#94a3b8;font-size:14px}.public-art-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#fffffffa;display:flex;align-items:center;justify-content:center;cursor:zoom-out;z-index:1000;padding:48px}.public-art-lightbox img{max-width:100%;max-height:100%;object-fit:contain}@media(max-width:900px){.public-art-header{padding:20px 24px}.public-art-main{grid-template-columns:1fr;gap:28px;padding:28px 24px}.public-art-main-img{height:380px}.public-art-title{font-size:26px}.public-art-price{font-size:20px}.public-art-footer{padding:20px 24px;margin-top:32px}}.ppr-page{min-height:100vh;padding:40px 24px;background:linear-gradient(135deg,#0f172a,#1e293b);color:#f1f5f9}.ppr-card{max-width:480px;margin:80px auto;padding:32px;background:#ffffff0f;border:1px solid rgba(255,255,255,.14);border-radius:16px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.ppr-card h1{font-size:1.5rem;margin:0 0 8px}.ppr-sub{color:#ffffffb3;margin:0 0 18px}.ppr-error{background:#ef444426;border:1px solid rgba(239,68,68,.4);color:#fecaca;padding:8px 12px;border-radius:8px;margin:12px 0}.ppr-card .form-input{background:#ffffff1a;border:1px solid rgba(255,255,255,.22);color:#f1f5f9}.ppr-spread{max-width:1500px;margin:0 auto;background:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:24px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ppr-header h1{font-size:1.7rem;margin:0 0 4px}.ppr-hint{color:#ffffffc7;font-size:13px;margin:10px 0 0;line-height:1.6;padding:12px 16px;border-radius:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.ppr-hint strong{color:#fff}.ppr-edit-banner{margin:14px 0 0;padding:12px 16px;border-radius:10px;background:#22c55e26;border:1px solid rgba(34,197,94,.45);color:#f1f5f9;font-size:14px;line-height:1.5}.ppr-edit-banner.ppr-edit-expired{background:#f59e0b2e;border-color:#f59e0b80}.ppr-header-row{display:flex;align-items:flex-end;gap:18px;margin-top:16px;flex-wrap:wrap}.ppr-counter{margin-left:auto;font-size:13px;color:#ffffffd9;display:inline-flex;align-items:center;gap:12px;padding:10px 16px;border-radius:10px;background:#ffffff0f;border:1px solid rgba(255,255,255,.14)}.ppr-counter strong{color:#fff;font-size:15px}.ppr-saved-tag{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;background:#22c55e33;border:1px solid rgba(34,197,94,.45);color:#bbf7d0;font-size:11px}.ppr-table-wrap{margin-top:18px;outline:none;overflow-x:auto;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.ppr-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}.ppr-table th{background:#0f172af2;padding:12px 14px;text-align:left;font-weight:700;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#ffffffd9;border-bottom:2px solid rgba(255,255,255,.2);position:sticky;top:0;z-index:2}.ppr-table th.num,.ppr-table td.num{text-align:right}.ppr-table td{padding:0;border-bottom:1px solid rgba(255,255,255,.06);border-right:1px solid rgba(255,255,255,.04);vertical-align:middle}.ppr-table td:not(.ppr-xcell){padding:8px 12px}.ppr-table tr:hover td{background:#ffffff0a}.ppr-rownum{text-align:center;color:#ffffff80;font-size:11px;background:#0f172a99;font-weight:600;width:50px}.ppr-artname{color:#f1f5f9;font-weight:500}.ppr-table code{background:#ffffff1a;padding:3px 8px;border-radius:4px;font-family:monospace;font-size:11px;color:#cbd5e1}.ppr-xcell{padding:0;position:relative;cursor:cell;-webkit-user-select:none;user-select:none}.ppr-xcell .ppr-xvalue{display:block;padding:10px 12px;min-height:38px;color:#f1f5f9;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ppr-xcell.num .ppr-xvalue{text-align:right;font-variant-numeric:tabular-nums}.ppr-xcell.is-selected{outline:2px solid #3b82f6;outline-offset:-2px;background:#3b82f61f;z-index:1}.ppr-xcell.is-editing{outline:2px solid #22c55e;outline-offset:-2px;background:#22c55e1a;padding:0}.ppr-xinput{width:100%;height:100%;min-height:38px;background:transparent;border:none;color:#fff;font-size:13px;font-weight:500;padding:10px 12px;outline:none;font-family:inherit}.ppr-xcell.num .ppr-xinput{text-align:right;font-variant-numeric:tabular-nums}.ppr-xinput::-webkit-outer-spin-button,.ppr-xinput::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ppr-xinput[type=number]{-moz-appearance:textfield}.ppr-hint kbd{display:inline-block;padding:1px 6px;margin:0 2px;background:#ffffff1a;border:1px solid rgba(255,255,255,.22);border-bottom-width:2px;border-radius:4px;font-family:monospace;font-size:11px;color:#ffffffd9;font-weight:500;line-height:1.4}.ppr-fill-handle{position:absolute;bottom:-3px;right:-3px;width:8px;height:8px;background:#3b82f6;border:1px solid #ffffff;border-radius:1px;cursor:ns-resize;z-index:3;box-shadow:0 1px 3px #0006}.ppr-fill-handle:hover{transform:scale(1.5)}.ppr-xcell.is-fill-target{outline:1px dashed rgba(59,130,246,.7);outline-offset:-1px;background:#3b82f61a}.ppr-actions{margin-top:24px;display:flex;justify-content:flex-end}.pfp-wrap{min-height:100vh;color-scheme:light;--bg: #f6f7fb;--bg-card: #ffffff;--text: #0f172a;--text-muted: #64748b;--border: #e5e7eb;--accent: #32937c;background:#f6f7fb;color:#0f172a;padding:24px 16px;display:flex;justify-content:center}@media(prefers-color-scheme:dark){.pfp-wrap{background:#f6f7fb!important;color:#0f172a!important}}.pfp-wrap input,.pfp-wrap textarea,.pfp-wrap select,.pfp-wrap button{color-scheme:light;background-color:#fff!important;color:#0f172a!important}.pfp-wrap input:-webkit-autofill,.pfp-wrap input:-webkit-autofill:hover,.pfp-wrap input:-webkit-autofill:focus,.pfp-wrap textarea:-webkit-autofill{-webkit-text-fill-color:#0f172a!important;-webkit-box-shadow:0 0 0 1000px #ffffff inset!important;caret-color:#0f172a!important}.pfp-wrap input[type=radio],.pfp-wrap input[type=checkbox]{accent-color:#32937c;background-color:transparent}.pfp-wrap input[type=file]{color:#0f172a}.pfp-wrap button.pfp-btn-primary,.pfp-wrap .pfp-submit,.pfp-wrap .pfp-foot-notify-btn{background-color:var(--accent, #32937c)!important;color:#fff!important}.pfp-wrap .pfp-foot-notify-btn:hover:not(:disabled){background-color:#277564!important}.pfp-card{width:100%;max-width:760px;background:var(--bg-card, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:28px 32px;box-shadow:0 1px 3px #0000000a}.pfp-head h1{margin:0 0 6px;font-size:24px}.pfp-save-line{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:4px 0 8px;font-size:12px}.pfp-save-doing{color:var(--text-muted)}.pfp-save-ok{color:#16a34a}.pfp-save-err{color:#b00020}.pfp-save-link{color:var(--text-muted);font-style:italic}.pfp-draft-banner{background:color-mix(in srgb,#f59e0b 12%,transparent);border:1px solid color-mix(in srgb,#f59e0b 35%,transparent);padding:8px 12px;border-radius:6px;font-size:13px;margin:8px 0}.pfp-notes{color:var(--text-muted);font-size:14px;margin:8px 0 0}.pfp-docs,.pfp-identification,.pfp-section{margin-top:24px;padding-top:16px;border-top:1px solid var(--border, #e5e7eb)}.pfp-docs h2,.pfp-identification h2,.pfp-section h2{font-size:16px;margin:0 0 10px}.pfp-doc-block{margin-bottom:12px}.pfp-doc-intro{margin:0 0 6px;font-size:14px;line-height:1.5}.pfp-doc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-top:8px}.pfp-doc-card{display:flex;flex-direction:column;gap:8px;padding:8px;background:var(--bg, #fff);border:1px solid var(--border, #e5e7eb);border-radius:10px;cursor:pointer;text-align:left;transition:transform .12s,box-shadow .12s,border-color .12s;color:inherit;font:inherit}.pfp-doc-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014;border-color:var(--accent)}.pfp-doc-thumb{position:relative;height:140px;border-radius:6px;overflow:hidden;background:#f3f4f6;border:1px solid color-mix(in srgb,var(--text) 6%,transparent)}.pfp-doc-thumb iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none;pointer-events:none}.pfp-doc-thumb-shield{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent 70%,rgba(0,0,0,.04) 100%)}.pfp-doc-meta{display:flex;flex-direction:column;gap:2px;min-height:38px}.pfp-doc-name{font-size:13px;font-weight:600;line-height:1.3;word-break:break-word;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.pfp-doc-size{font-size:11px;color:var(--text-muted)}.pfp-doc-viewer{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172ac7;z-index:9999;display:flex;flex-direction:column;padding:16px}.pfp-doc-viewer-head{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#fff;border-radius:8px 8px 0 0;border-bottom:1px solid var(--border, #e5e7eb)}.pfp-doc-viewer-title{flex:1;font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#0f172a}.pfp-doc-viewer-action{font-size:12px;color:var(--accent);text-decoration:none;white-space:nowrap}.pfp-doc-viewer-action:hover{text-decoration:underline}.pfp-doc-viewer-close{background:none;border:1px solid var(--border, #e5e7eb);border-radius:6px;padding:4px 10px;cursor:pointer;font-size:16px;color:#0f172a;line-height:1}.pfp-doc-viewer-close:hover{background:#f3f4f6}.pfp-doc-viewer-frame{flex:1;width:100%;border:none;border-radius:0 0 8px 8px;background:#fff}.pfp-id-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pfp-id-row label,.pfp-question{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.pfp-id-row label span,.pfp-q-label{font-size:13px;font-weight:600}.pfp-q-required{color:#b00020}.pfp-q-desc{font-size:12px;color:var(--text-muted);margin:2px 0 4px}.pfp-section-desc{font-size:13px;color:var(--text-muted);margin:0 0 10px}.pfp-input{width:100%;padding:8px 10px;border:1px solid var(--border, #e5e7eb);border-radius:6px;background:var(--bg, #fff);color:inherit;font-size:14px}.pfp-input:focus{outline:none;border-color:var(--accent)}.pfp-yesno,.pfp-multichoice{display:flex;flex-direction:column;gap:4px}.pfp-yesno label,.pfp-multichoice label{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:400}.pfp-yesno{flex-direction:row;gap:16px}.pfp-rating{display:flex;gap:4px;align-items:center}.pfp-star{background:none;border:none;font-size:30px;line-height:1;color:#cbd5e1;cursor:pointer;padding:0 2px;transition:color .12s ease,transform .12s ease}.pfp-star:hover{color:#eab308;transform:scale(1.08)}.pfp-star.is-on{color:#f59e0b;text-shadow:0 1px 2px rgba(245,158,11,.35)}.pfp-rating-value{margin-left:10px;font-size:14px;font-weight:600;color:#b45309}.pfp-scale{display:flex;gap:6px;flex-wrap:wrap}.pfp-scale-btn{min-width:36px;padding:6px 10px;border:1px solid var(--border, #e5e7eb);border-radius:6px;background:var(--bg, #fff);color:inherit;cursor:pointer;font-size:14px}.pfp-scale-btn.is-on{background:var(--accent);color:#fff;border-color:var(--accent)}.pfp-scale{align-items:center}.pfp-scale-value{margin-left:10px;font-size:14px;font-weight:600;color:var(--accent)}.pfp-empty{margin-top:16px;color:var(--text-muted);font-size:14px}.pfp-question.is-missing{background:color-mix(in srgb,#b00020 6%,transparent);border-left:3px solid #b00020;padding:8px 10px;border-radius:4px;margin-left:-12px}.pfp-question.is-blocked{background:color-mix(in srgb,#475569 5%,transparent);border-left:3px solid #475569;padding:8px 10px;border-radius:4px;margin-left:-12px}.pfp-question.has-alert{background:color-mix(in srgb,#f59e0b 6%,transparent);border-left:3px solid #f59e0b;padding:8px 10px;border-radius:4px;margin-left:-12px}.pfp-question.has-change{background:color-mix(in srgb,#8b5cf6 6%,transparent);border-left:3px solid #8b5cf6;padding:8px 10px;border-radius:4px;margin-left:-12px}.pfp-question.has-change-done{background:color-mix(in srgb,#16a34a 6%,transparent);border-left:3px solid #16a34a;padding:8px 10px;border-radius:4px;margin-left:-12px}.pfp-question.pfp-question-edited-post-submit{background:color-mix(in srgb,#eab308 10%,transparent);border-left:3px solid #eab308;padding:8px 10px;border-radius:4px;margin-left:-12px}.pfp-q-post-edit{margin-top:6px;padding:6px 10px;font-size:12px;color:#713f12;background:color-mix(in srgb,#eab308 14%,transparent);border-radius:4px}.pfp-q-post-edit strong{color:#713f12}.pfp-q-post-edit em{font-style:normal;background:#fff;padding:1px 4px;border-radius:3px}.pfp-section-locked-submit{opacity:.85}.pfp-section-editable-submit{border-left:3px solid #eab308;padding-left:10px;margin-left:-13px}.pfp-section-editable-hint{margin:4px 0 10px;padding:6px 10px;font-size:13px;color:#713f12;background:color-mix(in srgb,#eab308 12%,transparent);border-radius:4px}.pfp-section-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:4px 0 12px;padding:8px 12px;border-radius:6px;background:var(--bg-card, #f8fafc);border:1px solid var(--border, #e2e8f0)}.pfp-section-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:700}.pfp-section-badge.is-pending{background:color-mix(in srgb,#eab308 20%,transparent);color:#78350f}.pfp-section-badge.is-approved{background:color-mix(in srgb,#16a34a 20%,transparent);color:#14532d}.pfp-section-status-hint{font-size:12px;color:var(--text-muted, #64748b)}.pfp-section-status-err{font-size:12px;color:#b00020}.pfp-section-approve-btn,.pfp-section-unapprove-btn{border:none;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:600;cursor:pointer}.pfp-section-approve-btn{background:#16a34a!important;color:#fff!important;padding:10px 20px;font-size:14px;font-weight:700;border-radius:8px;box-shadow:0 2px 6px #16a34a59;letter-spacing:.2px;transition:transform .1s,box-shadow .15s}.pfp-section-approve-btn:hover:not(:disabled){background:#15803d!important;box-shadow:0 4px 10px #16a34a73;transform:translateY(-1px)}.pfp-section-approve-btn:active:not(:disabled){transform:translateY(0)}.pfp-section-unapprove-btn{background:transparent;border:1px solid var(--border, #cbd5e1);color:var(--text, #334155)}.pfp-section-unapprove-btn:hover:not(:disabled){background:#f1f5f9}.pfp-section-approve-btn:disabled,.pfp-section-unapprove-btn:disabled{opacity:.6;cursor:not-allowed}.pfp-section-approved{border-left:3px solid #16a34a;padding-left:10px;margin-left:-13px}.pfp-foot-lock{display:flex;flex-direction:column;gap:6px;align-items:flex-start;margin-top:12px;padding-top:12px;border-top:1px dashed var(--border, #e2e8f0)}.pfp-foot-lock-btn{background:#475569;color:#fff;border:none;border-radius:8px;padding:10px 18px;font-size:14px;font-weight:600;cursor:pointer}.pfp-foot-lock-btn:hover:not(:disabled){background:#334155}.pfp-foot-lock-btn:disabled{opacity:.55;cursor:not-allowed}.pfp-foot-lock-btn.is-cta{background:#0f172a;padding:14px 26px;font-size:16px;border-radius:10px;box-shadow:0 4px 14px color-mix(in srgb,#0f172a 22%,transparent)}.pfp-foot-lock-btn.is-cta:hover:not(:disabled){background:#1e293b}.pfp-foot-lock.is-ready{align-items:flex-start}.pfp-foot-status{margin:12px 0;padding:10px 14px;font-size:13px;color:#78350f;background:color-mix(in srgb,#eab308 12%,transparent);border-left:3px solid #eab308;border-radius:6px}.pfp-foot-lock-hint{font-size:12px;color:var(--text-muted, #64748b);margin:0;max-width:620px}.pfp-foot-lock-warn{font-size:12px;color:#b00020;margin:0}.pfp-foot-locked{margin:8px 0;padding:8px 12px;font-size:13px;color:#14532d;background:color-mix(in srgb,#16a34a 12%,transparent);border-left:3px solid #16a34a;border-radius:4px}.pfp-foot-score{display:block;width:100%;box-sizing:border-box;margin:12px 0;padding:14px 16px;border-radius:10px;background:color-mix(in srgb,#32937c 8%,transparent);border:1px solid color-mix(in srgb,#32937c 30%,transparent)}.pfp-foot-score-head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;margin-bottom:6px}.pfp-foot-score-label{font-size:13px;font-weight:700;color:#0f5c47}.pfp-foot-score-hint{font-size:11px;color:var(--text-muted, #64748b)}.pfp-foot-score-main{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.pfp-foot-score-value{font-size:26px;font-weight:700;color:#0f5c47;line-height:1}.pfp-foot-score-max{font-size:16px;font-weight:500;color:var(--text-muted, #64748b)}.pfp-foot-score-pct{font-size:14px;font-weight:600;color:#0f5c47}.pfp-foot-score-sections{list-style:none;padding:0;margin:10px 0 4px;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}@media(max-width:640px){.pfp-foot-score-sections{grid-template-columns:1fr}}.pfp-foot-score-sections li{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:13px;padding:6px 10px;border-radius:5px;background:#ffffff8c;border-left:2px solid color-mix(in srgb,#32937c 40%,transparent)}.pfp-foot-score-sec-title{color:#334155;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pfp-foot-score-sec-value{font-weight:600;color:#0f5c47;flex-shrink:0}.pfp-foot-score-note{margin:6px 0 0;font-size:11px;color:var(--text-muted, #64748b);font-style:italic}.pfp-foot-score-formula{margin:10px 0 6px;padding:8px 12px;background:#ffffff8c;border-radius:6px;border-left:3px solid #32937c}.pfp-foot-score-formula-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#0f5c47;margin-bottom:4px}.pfp-foot-score-formula-body{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:#14532d;line-height:1.7;word-break:break-word}.pfp-foot-score-formula-body strong{color:#0f5c47;font-size:14px}.pfp-foot-score-details{margin-top:10px;border-top:1px dashed color-mix(in srgb,#32937c 30%,transparent);padding-top:8px}.pfp-foot-score-details>summary{cursor:pointer;font-size:12px;font-weight:600;color:#0f5c47;padding:4px 0;-webkit-user-select:none;user-select:none;list-style:revert}.pfp-foot-score-details>summary:hover{color:#0d4a3b}.pfp-foot-score-details-body{margin-top:8px;display:flex;flex-direction:column;gap:10px}.pfp-foot-score-sec-detail{list-style:none;padding:0;margin:6px 0 0;display:flex;flex-direction:column;gap:10px}.pfp-foot-score-sec-detail>li{padding:8px 10px;background:#ffffff8c;border-radius:6px}.pfp-foot-score-sec-header{display:flex;gap:8px;align-items:baseline;font-size:13px;color:#0f5c47}.pfp-foot-score-sec-header strong{flex:1}.pfp-foot-score-sec-mode{font-style:normal;color:var(--text-muted, #64748b);font-size:11px}.pfp-foot-score-sec-formula{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:#14532d;margin-top:4px;word-break:break-word}.pfp-foot-score-sec-items{list-style:none;padding:0;margin:6px 0 0;display:flex;flex-direction:column;gap:3px}.pfp-foot-score-sec-items>li{display:flex;justify-content:space-between;font-size:11px;color:#334155}.pfp-foot-score-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.pfp-foot-score-item-value{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#0f5c47;flex-shrink:0;margin-left:12px}.pfp-q-badge-change{background:color-mix(in srgb,#8b5cf6 18%,transparent);color:#5b21b6}.pfp-q-badge-change-ok{background:color-mix(in srgb,#16a34a 18%,transparent);color:#166534}.pfp-q-change-request{background:color-mix(in srgb,#8b5cf6 6%,transparent);border:1px solid color-mix(in srgb,#8b5cf6 30%,transparent);padding:10px 12px;border-radius:6px;margin:8px 0}.pfp-q-change-request>strong{display:block;margin-bottom:8px;font-size:14px}.pfp-q-change-item{background:#fff;border:1px solid var(--border, #e5e7eb);border-left-width:3px;border-radius:4px;padding:6px 10px;margin-bottom:6px}.pfp-q-change-item.is-open{border-left-color:#8b5cf6}.pfp-q-change-item.is-wait{border-left-color:#f59e0b}.pfp-q-change-item.is-rej{border-left-color:#b00020;background:color-mix(in srgb,#b00020 4%,#fff)}.pfp-q-change-item.is-done{border-left-color:#16a34a;background:color-mix(in srgb,#16a34a 4%,#fff)}.pfp-q-change-item-head{display:flex;align-items:center;gap:8px;font-size:12px}.pfp-q-change-num{font-weight:700;color:var(--text-muted)}.pfp-q-change-status{font-weight:600;font-size:12px}.pfp-q-change-note{margin:4px 0 6px;font-size:13px}.pfp-q-change-actions{display:flex;align-items:center;gap:6px}.pfp-q-change-archive{margin-top:8px}.pfp-q-change-archive-toggle{background:none;border:1px dashed var(--border, #e5e7eb);border-radius:4px;padding:4px 10px;font-size:12px;color:var(--text-muted);cursor:pointer;width:100%;text-align:left}.pfp-q-change-archive-toggle:hover{background:#f3f4f6;color:inherit}.pfp-q-change-archive-list{margin-top:6px;padding-left:12px;border-left:2px solid var(--border, #e5e7eb)}.pfp-q-change-archive-list .pfp-q-change-item{opacity:.85}.pfp-q-history-only{margin-top:6px}.pfp-q-history-btn{background:none;border:none;color:var(--text-muted);font-size:12px;cursor:pointer;padding:2px 0;text-decoration:underline;text-decoration-style:dotted}.pfp-q-history-btn:hover{color:inherit}.pfp-q-history-list{margin-top:6px;padding-left:10px;border-left:2px solid var(--border, #e5e7eb)}.pfp-q-history-item{font-size:12px;padding:4px 0;color:var(--text-muted)}.pfp-q-history-num{font-weight:700;margin-right:6px}.pfp-q-history-status{font-style:italic}.pfp-q-history-note{margin:2px 0 0;font-size:12px}.pfp-q-error{color:#b00020;font-size:12px;margin-top:4px;font-weight:600}.pfp-q-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.pfp-q-badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;padding:2px 6px;border-radius:4px;margin-left:8px;vertical-align:middle}.pfp-q-badge-blocked{background:#e2e8f0;color:#334155}.pfp-q-badge-ok{background:color-mix(in srgb,#16a34a 18%,transparent);color:#166534}.pfp-q-badge-rej{background:color-mix(in srgb,#b00020 18%,transparent);color:#991b1b}.pfp-q-admin-note{background:color-mix(in srgb,var(--accent) 6%,transparent);border-left:3px solid var(--accent);padding:6px 10px;border-radius:4px;font-size:13px;margin:6px 0}.pfp-section-admin-note{margin-top:16px;padding:10px 12px}.pfp-q-admin-alert{background:color-mix(in srgb,#f59e0b 8%,transparent);border-left:3px solid #f59e0b;padding:6px 10px;border-radius:4px;font-size:13px;margin:6px 0}.pfp-q-badge-admin-alert{background:color-mix(in srgb,#f59e0b 18%,transparent);color:#92400e}.pfp-input-disabled{background:#f3f4f6;color:#64748b;padding:8px 10px;border-radius:6px;font-size:14px;border:1px dashed #cbd5e1}.pfp-q-extras{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.pfp-extra-btn{display:inline-block;padding:4px 10px;border:1px solid var(--border, #e5e7eb);border-radius:6px;background:#fff;cursor:pointer;font-size:12px;color:inherit}.pfp-extra-btn:hover{background:#f3f4f6}.pfp-extra-btn.is-on{background:color-mix(in srgb,#f59e0b 14%,transparent);border-color:#f59e0b;color:#92400e;font-weight:600}.pfp-extra-file input[type=file]{display:none}.pfp-q-file-input{display:flex;flex-direction:column;gap:8px}.pfp-q-file-add{cursor:pointer;align-self:flex-start}.pfp-q-file-add input[type=file]{display:none}.pfp-q-file-remove{background:none;border:none;color:#b00020;cursor:pointer;font-size:13px;padding:0 4px}.pfp-q-files-inline{margin-top:0}.pfp-q-note{margin-top:6px}.pfp-q-files{list-style:none;padding:0;margin:6px 0 0;display:flex;flex-direction:column;gap:4px}.pfp-q-files li{display:flex;align-items:center;gap:8px;font-size:13px}.pfp-q-files a{color:var(--accent);text-decoration:none}.pfp-q-files a:hover{text-decoration:underline}.pfp-q-file-rm{background:none;border:none;color:#b00020;cursor:pointer;font-size:13px;padding:0 4px}.pfp-foot{margin-top:24px;padding-top:16px;border-top:1px solid var(--border, #e5e7eb);display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:12px}.pfp-foot-error{color:#b00020;font-size:13px;font-weight:600;margin:0 auto 0 0}.pfp-foot-info{color:var(--text-muted, #64748b);font-size:13px;margin:0;line-height:1.5;flex:1}.pfp-submit{padding:10px 24px;font-size:14px}.pfp-foot-notify{display:flex;flex-direction:column;gap:6px;align-items:flex-start;margin-top:4px}.pfp-foot-notify-btn{background:#32937c;color:#fff;border:none;border-radius:8px;padding:10px 18px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease,opacity .15s ease}.pfp-foot-notify-btn:hover:not(:disabled){background:#277564}.pfp-foot-notify-btn:disabled{opacity:.6;cursor:not-allowed}.pfp-foot-notify-hint{font-size:12px;color:var(--text-muted, #64748b);margin:0}.pfp-foot-notify-ok{font-size:12px;color:#166534;margin:0}.pfp-foot-notify-warn{font-size:12px;color:#92400e;margin:0}.pfp-foot-publish{display:flex;flex-direction:column;gap:6px;align-items:flex-start;margin-top:12px;padding-top:12px;border-top:1px dashed var(--border, #e2e8f0)}.pfp-foot-publish-btn{background:#eab308;color:#1a1200;border:none;border-radius:8px;padding:10px 18px;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s ease,opacity .15s ease}.pfp-foot-publish-btn:hover:not(:disabled){background:#ca8a04}.pfp-foot-publish-btn.is-danger{background:#dc2626;color:#fff;padding:16px 30px;font-size:17px;border-radius:10px;box-shadow:0 6px 18px color-mix(in srgb,#dc2626 30%,transparent)}.pfp-foot-publish-btn.is-danger:hover:not(:disabled){background:#b91c1c}.pfp-foot-publish.is-cta{align-items:flex-start;margin-top:16px}.pfp-foot-publish-btn:disabled{opacity:.6;cursor:not-allowed}.pfp-foot-publish-hint{font-size:12px;color:var(--text-muted, #64748b);margin:0;max-width:620px}.pfp-foot-publish-warn{font-size:12px;color:#92400e;margin:0}.pfp-foot-publish.is-done p{font-size:13px;color:#166534;margin:0}.pfp-thanks{text-align:center;padding:60px 32px}.pfp-thanks h1{font-size:36px;margin:0 0 8px}.pfp-thanks-approved h1{color:#16a34a}.pfp-thanks-rejected h1{color:#b00020}@media(max-width:640px){.pfp-card{padding:20px 18px}.pfp-id-row{grid-template-columns:1fr}}.csl-wrap{position:relative;display:inline-block}.csl-wrap.csl-inline{width:100%}.csl-trigger{display:inline-flex;align-items:center;gap:10px;width:100%;padding:9px 14px 9px 18px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 12%,rgba(255,255,255,.08)),#ffffff1a);border:1px solid color-mix(in srgb,var(--accent) 30%,rgba(255,255,255,.18));border-radius:10px;color:var(--text);font:inherit;font-weight:500;cursor:pointer;text-align:left;transition:all .2s ease}.csl-trigger:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 20%,rgba(255,255,255,.1)),#ffffff24)}.csl-wrap.is-open .csl-trigger{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent)}.csl-wrap.is-disabled .csl-trigger{opacity:.55;cursor:not-allowed}.csl-wrap.is-active .csl-trigger{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 25%,transparent);color:var(--accent)}.csl-wrap.csl-icon{width:auto}.csl-wrap.csl-icon .csl-trigger{width:38px;height:38px;padding:0;border-radius:50%;justify-content:center}.csl-wrap.csl-icon .csl-trigger-label,.csl-wrap.csl-icon .csl-chevron{display:none}.csl-trigger-icon{display:inline-flex;flex-shrink:0;color:var(--accent)}.csl-wrap.csl-icon .csl-trigger-icon,.csl-wrap.csl-icon .csl-trigger{color:var(--accent)}.csl-wrap.csl-icon.is-active .csl-trigger,.csl-wrap.csl-icon.is-active .csl-trigger-icon{color:#fff}.csl-trigger-label{flex:1;display:inline-flex;align-items:center;gap:8px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csl-trigger-placeholder{color:var(--text-muted)}.csl-chevron{flex-shrink:0;transition:transform .2s ease;color:var(--text-muted)}.csl-wrap.is-open .csl-chevron{transform:rotate(180deg)}.csl-popup{background:var(--bg-elevated);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));border-radius:12px;padding:6px;box-shadow:0 12px 36px #00000052,0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);overflow-y:auto;animation:csl-pop .15s ease}@keyframes csl-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.csl-popup.csl-popup-up{animation:csl-pop-up .15s ease}@keyframes csl-pop-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.csl-option{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;background:transparent;border:none;border-radius:8px;cursor:pointer;color:var(--text);font:inherit;text-align:left;transition:background .12s ease,color .12s ease}.csl-option:hover,.csl-option.is-highlight{background:color-mix(in srgb,var(--accent) 14%,transparent)}.csl-option.is-selected{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--text);font-weight:600}.csl-option-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 18%,transparent);margin-left:4px}.csl-option-icon{display:inline-flex;flex-shrink:0;color:var(--text-muted)}.csl-option-text{flex:1;display:flex;flex-direction:column;min-width:0}.csl-option-sub{font-size:11px;color:var(--text-muted);font-weight:400}.csl-option-count{font-size:11px;color:var(--text-muted);background:color-mix(in srgb,var(--text) 8%,transparent);padding:2px 8px;border-radius:999px}.csl-option.is-selected .csl-option-count{background:color-mix(in srgb,var(--accent) 25%,transparent)}.csl-check{color:color-mix(in srgb,var(--accent) 60%,var(--text));flex-shrink:0}.csl-search{padding:8px 10px;position:sticky;top:0;background:inherit;border-bottom:1px solid color-mix(in srgb,var(--text) 8%,transparent)}.csl-search-input{width:100%;padding:6px 10px;border:1px solid color-mix(in srgb,var(--text) 18%,transparent);border-radius:6px;background:color-mix(in srgb,var(--text) 4%,transparent);color:inherit;font-size:13px;outline:none}.csl-search-input:focus{border-color:color-mix(in srgb,var(--accent) 60%,transparent);background:color-mix(in srgb,var(--accent) 4%,transparent)}.csl-empty{padding:10px 12px;font-size:12px;color:var(--text-muted);text-align:center}[data-theme=light] .csl-trigger{color:#1e293b;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 8%,#ffffff),#fff);border-color:color-mix(in srgb,var(--accent) 28%,#cbd5e1)}[data-theme=light] .csl-popup{background:#fff}.qfe-editor{display:flex;flex-direction:column;gap:12px;padding:14px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.qfe-row{display:flex;flex-direction:column;gap:4px}.qfe-row-inline{flex-direction:row;align-items:center;gap:8px;flex-wrap:wrap}.qfe-checkbox{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none}.qfe-options{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:var(--bg-input);border-radius:8px}.qfe-option-row{display:flex;align-items:center;gap:8px}.qfe-option-row .form-input{flex:1}.itm-editor-page:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:#fff}[data-theme=dark] .itm-editor-page:before{background:#0f172a}.itm-editor-page{position:relative;display:block;max-width:1080px;margin:0 auto;padding:24px 32px 80px;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,sans-serif;color:#1a1a1a}[data-theme=dark] .itm-editor-page{color:#f1f5f9}.itm-editor-page,.itm-editor-page *,.itm-editor-page *:before,.itm-editor-page *:after{box-sizing:border-box}.itm-editor-page .itm-sidebar{display:none}.inq-hero-action,[data-theme=light] .page-hero-actions .inq-hero-action{height:40px!important;padding:0 20px!important;display:inline-flex!important;align-items:center!important;gap:6px!important;white-space:nowrap!important;font-size:13px!important;font-weight:500!important;border-radius:999px!important;border:1px solid #d4d4d8!important;background:#fff!important;color:#1a1a1a!important;cursor:pointer!important;transition:all .18s ease!important;box-shadow:0 1px 2px #0000000a!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.inq-hero-action:hover,[data-theme=light] .page-hero-actions .inq-hero-action:hover{border-color:#2563eb!important;color:#2563eb!important;background:#fff!important;transform:translateY(-1px)!important;box-shadow:0 4px 12px #2563eb1f!important}.inq-hero-action.btn-danger-ghost,[data-theme=light] .page-hero-actions .inq-hero-action.btn-danger-ghost{background:#fff!important;color:#991b1b!important;border-color:#fecaca!important}.inq-hero-action.btn-danger-ghost:hover,[data-theme=light] .page-hero-actions .inq-hero-action.btn-danger-ghost:hover{background:#fef2f2!important;border-color:#ef4444!important;color:#7f1d1d!important;box-shadow:0 4px 12px #ef44441f!important}.inq-hero-action.inq-hero-action-back,[data-theme=light] .page-hero-actions .inq-hero-action.inq-hero-action-back{background:#fff!important;border-color:#e5e7eb!important;color:#4b5563!important;margin-right:auto!important}.inq-hero-action.inq-hero-action-back:hover,[data-theme=light] .page-hero-actions .inq-hero-action.inq-hero-action-back:hover{background:#f9fafb!important;border-color:#9ca3af!important;color:#1a1a1a!important;transform:translateY(-1px)!important}.itm-editor-page .itm-editor{background:#fff;border:none;border-top:none;border-radius:0;padding:0;box-shadow:none;overflow:visible}[data-theme=dark] .itm-editor-page .itm-editor{background:#1e293b;box-shadow:0 1px 2px #0003,0 12px 40px #0006}.itm-editor-page .itm-editor-lock-banner{margin:32px auto;max-width:720px;padding:10px 22px;background:transparent;border:1px solid #e5e7eb;border-radius:999px;font-size:12px;color:#6b7280;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:400}.itm-editor-page .itm-editor-lock-banner.is-unlocked{background:transparent;border-color:#d1fae5;color:#047857}.itm-editor-page .itm-editor-lock-banner .btn-primary,.itm-editor-page .itm-editor-lock-banner .btn-ghost{flex-shrink:0;background:#1a1a1a!important;color:#fff!important;border:1px solid #1a1a1a!important;font-weight:500!important;padding:7px 18px!important;font-size:12px!important;border-radius:999px!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.itm-editor-page .itm-editor-lock-banner .btn-primary:hover,.itm-editor-page .itm-editor-lock-banner .btn-ghost:hover{background:#000!important;color:#fff!important;border-color:#000!important;transform:translateY(-1px);box-shadow:0 4px 12px #00000026!important}.itm-editor-page .itm-editor-body,.itm-editor-page .itm-editor-header-fieldset{border:none;background:transparent;padding:0;margin:0;min-width:0}.itm-editor-page .itm-editor.is-locked .itm-editor-body,.itm-editor-page .itm-editor-body[disabled]{opacity:.6;pointer-events:none;-webkit-user-select:none;user-select:none}.itm-editor-page .itm-editor.is-locked input,.itm-editor-page .itm-editor.is-locked textarea,.itm-editor-page .itm-editor.is-locked select,.itm-editor-page .itm-editor.is-locked .itm-editor-body button,.itm-editor-page .itm-editor.is-locked .itm-editor-body .csl-trigger{cursor:not-allowed!important}.itm-editor-page .itm-editor.is-locked .itm-editor-version-bump{cursor:pointer!important;pointer-events:auto!important;opacity:1!important}.itm-editor-page .itm-editor.is-locked .itm-submissions,.itm-editor-page .itm-editor-body[disabled] .itm-submissions{opacity:1!important;pointer-events:auto!important;-webkit-user-select:auto!important;user-select:auto!important}.itm-editor-page .itm-editor.is-locked .itm-submissions input,.itm-editor-page .itm-editor.is-locked .itm-submissions textarea,.itm-editor-page .itm-editor.is-locked .itm-submissions select,.itm-editor-page .itm-editor.is-locked .itm-submissions button,.itm-editor-page .itm-editor.is-locked .itm-submissions a,.itm-editor-page .itm-editor.is-locked .itm-submissions .csl-trigger{cursor:pointer!important}.itm-editor-page .itm-editor-header{background:transparent;border:none;border-radius:0;padding:32px 0 56px;margin:0 0 56px;border-bottom:1px solid #f1f5f9;text-align:center}.itm-editor-page .itm-editor-header-row1{justify-content:center;margin-bottom:24px;flex-direction:column;align-items:center;gap:8px}.itm-editor-page .itm-editor-header-row2{justify-content:center;margin-bottom:18px}.itm-editor-page .itm-editor-notes-row{justify-content:center;max-width:560px;margin:0 auto}[data-theme=dark] .itm-editor-page .itm-editor-header{border-bottom-color:#ffffff0f}.itm-editor-page .itm-editor-header-row1,.itm-editor-page .itm-editor-header-row2,.itm-editor-page .itm-editor-notes-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}.itm-editor-page .itm-editor-notes-row{margin-bottom:0}.itm-editor-page .itm-editor-name-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:#9ca3af;min-width:auto;display:block;width:100%;text-align:center}.itm-editor-page .itm-editor-name-input{flex:none;display:block;width:100%;max-width:900px;margin:0 auto;background:transparent;border:none;border-bottom:2px solid transparent;font-size:56px;font-weight:400;color:#1a1a1a;padding:8px 16px;letter-spacing:-.03em;font-family:Georgia,Cormorant Garamond,Playfair Display,serif;transition:border-color .18s ease;line-height:1.1;text-align:center;resize:none;overflow:hidden;white-space:pre-wrap;word-break:break-word;box-sizing:border-box}[data-theme=dark] .itm-editor-page .itm-editor-name-input{color:#f1f5f9}.itm-editor-page .itm-editor-name-input:hover{border-bottom-color:#e5e7eb}.itm-editor-page .itm-editor-name-input:focus{outline:none;border-bottom-color:#1a1a1a}.itm-editor-page .itm-editor-name-input::placeholder{color:#d1d5db;font-style:italic}.itm-editor-page .itm-editor-version{font-size:11px;font-weight:500;padding:0;border-radius:0;background:transparent;color:#9ca3af;letter-spacing:.08em;text-transform:uppercase}.itm-editor-page .itm-editor-version-bump{margin-left:0}.itm-editor-page .itm-editor-notes-input{flex:none;display:block;width:100%;max-width:560px;margin:0 auto;background:transparent;border:none;border-bottom:1px solid transparent;font-size:15px;color:#334155;padding:8px 0;font-family:inherit;transition:border-color .15s ease;text-align:center;resize:none;overflow:hidden;white-space:pre-wrap;word-break:break-word;line-height:1.4;box-sizing:border-box}[data-theme=dark] .itm-editor-page .itm-editor-notes-input{color:#cbd5e1}.itm-editor-page .itm-editor-notes-input:hover{border-bottom-color:#e2e8f0}.itm-editor-page .itm-editor-notes-input:focus{outline:none;border-bottom-color:#3b82f6}.itm-editor-page .itm-editor-badge{font-size:11px;font-weight:500;padding:0;border:none;border-radius:0;background:transparent;color:#6b7280;display:inline-flex;align-items:center;gap:6px;letter-spacing:.04em;text-transform:uppercase}.itm-editor-page .itm-editor-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.85}.itm-editor-page .itm-editor-badge-status.itm-editor-badge-draft{color:#d97706}.itm-editor-page .itm-editor-badge-status.itm-editor-badge-active{color:#16a34a}.itm-editor-page .itm-editor-badge-status.itm-editor-badge-archived{color:#9ca3af}.itm-editor-page .itm-editor-badge-audience.itm-editor-badge-supplier{color:#6366f1}.itm-editor-page .itm-editor-badge-audience.itm-editor-badge-internal{color:#0891b2}.itm-editor-page .itm-editor-badge-normative{color:#c026d3}.itm-editor-page .itm-editor-badge-locked{color:#991b1b}.itm-editor-page .itm-editor-badge-unlocked{color:#16a34a}.itm-editor-page .itm-editor-header-row2{gap:20px}.itm-editor-page .itm-save-status{position:fixed;top:76px;right:32px;z-index:100;font-size:11px;color:#9ca3af;font-style:italic;letter-spacing:.02em;padding:6px 14px;background:#fff;border-radius:999px;border:1px solid transparent;pointer-events:none;transition:opacity .3s ease,border-color .2s ease}.itm-editor-page .itm-save-status:empty{opacity:0}.itm-editor-page .itm-save-status.saved{color:#16a34a;font-style:normal;font-weight:500;border-color:#d1fae5;background:#f0fdf4}.itm-editor-page .itm-save-status.saving{color:#6b7280;border-color:#e5e7eb}.itm-editor-page .itm-editor-meta,.itm-editor-page .itm-editor-meta-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:32px 48px!important;background:#f9fafb!important;border:none!important;border-radius:0!important;box-shadow:0 0 0 100vmax #f9fafb!important;clip-path:inset(0 -100vmax)!important;padding:56px 0!important;margin:80px 0!important}[data-theme=dark] .itm-editor-page .itm-editor-meta,[data-theme=dark] .itm-editor-page .itm-editor-meta-grid{background:#0f172a!important;box-shadow:0 0 0 100vmax #0f172a!important}[data-theme=dark] .itm-editor-page .itm-editor-meta,[data-theme=dark] .itm-editor-page .itm-editor-meta-grid{border-bottom-color:#ffffff0f}.itm-editor-page .itm-editor-meta-field{display:flex;flex-direction:column;gap:10px;padding:0;min-width:0;border:none}.itm-editor-page .itm-editor-meta-field>span:first-child{font-size:14px;font-weight:500;text-transform:none;letter-spacing:0;color:#1a1a1a;margin:0;padding-left:4px}[data-theme=dark] .itm-editor-page .itm-editor-meta-field>span:first-child{color:#f1f5f9}.itm-editor-page .itm-editor-assigned{margin-top:18px;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;gap:12px}.itm-editor-page .itm-editor-assigned-head h3{margin:0 0 4px;font-size:15px;font-weight:700;color:var(--text)}.itm-editor-page .itm-editor-assigned-chips{display:flex;flex-wrap:wrap;gap:6px}.itm-editor-page .itm-editor-assigned-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,#ec4899 14%,transparent);color:var(--text);font-size:12px;font-weight:500}.itm-editor-page .itm-editor-assigned-chip-x{border:none;background:transparent;color:var(--text-muted);font-size:11px;cursor:pointer;padding:0 2px}.itm-editor-page .itm-editor-assigned-chip-x:hover{color:#b00020}.itm-editor-page .itm-editor-assigned-add{max-width:360px}.itm-editor-page .itm-editor-approvers{display:flex;flex-direction:column;gap:8px}.itm-editor-page .itm-editor-approvers-chips{display:flex;flex-wrap:wrap;gap:6px}.itm-editor-page .itm-editor-approvers-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent, #32937c) 14%,transparent);color:var(--text);font-size:12px;font-weight:500}.itm-editor-page .itm-editor-approvers-chip-email{color:var(--text-muted);font-weight:400}.itm-editor-page .itm-editor-approvers-chip-x{border:none;background:transparent;color:var(--text-muted);font-size:11px;cursor:pointer;padding:0 2px}.itm-editor-page .itm-editor-approvers-chip-x:hover{color:#b00020}.itm-editor-page .itm-editor-meta-field>small{font-size:12px;color:#9ca3af;margin-top:-2px;padding-left:18px}.itm-editor-page .csl-trigger,.itm-editor-page .form-input,.itm-editor-page input[type=text]:not(.itm-editor-name-input):not(.itm-editor-notes-input):not(.itm-section-title),.itm-editor-page input[type=email],.itm-editor-page input[type=number],.itm-editor-page input[type=date],.itm-editor-page select{border-radius:999px;border:1px solid #d4d4d8;background:#fff;padding:14px 22px;font-size:14px;color:#1a1a1a;font-family:inherit;transition:border-color .18s ease,box-shadow .18s ease;width:100%;height:50px;line-height:1.2}.itm-editor-page textarea{border-radius:18px;border:1px solid #d4d4d8;background:#fff;padding:14px 22px;font-size:14px;color:#1a1a1a;font-family:inherit;transition:border-color .18s ease,box-shadow .18s ease;width:100%;line-height:1.5;resize:vertical}[data-theme=dark] .itm-editor-page .csl-trigger,[data-theme=dark] .itm-editor-page .form-input,[data-theme=dark] .itm-editor-page input,[data-theme=dark] .itm-editor-page select,[data-theme=dark] .itm-editor-page textarea{background:#1e293b;border-color:#ffffff26;color:#f1f5f9}.itm-editor-page .csl-trigger:hover,.itm-editor-page .form-input:hover,.itm-editor-page input:hover,.itm-editor-page select:hover,.itm-editor-page textarea:hover{border-color:#1a1a1a}.itm-editor-page .csl-trigger:focus,.itm-editor-page .form-input:focus,.itm-editor-page input:focus,.itm-editor-page select:focus,.itm-editor-page textarea:focus{outline:none;border-color:#1a1a1a;border-width:1.5px;box-shadow:none}.itm-editor-page input::placeholder,.itm-editor-page textarea::placeholder{color:#9ca3af;font-weight:400}.csl-popup{border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 12px 32px #0f172a1f;background:#fff;padding:4px}.csl-popup .csl-option{padding:8px 12px;border-radius:8px;font-size:13px;color:#334155}.csl-popup .csl-option:hover{background:#eff6ff;color:#2563eb}.csl-popup .csl-option.is-selected{background:#dbeafe;color:#1d4ed8;font-weight:600}.itm-editor-page button:not(.csl-trigger),.itm-editor-page .btn-primary,.itm-editor-page .btn-ghost,.itm-editor-page .btn-danger-ghost{font-family:inherit;font-size:13px;font-weight:500;padding:10px 22px;border-radius:999px;border:1px solid transparent;cursor:pointer;transition:all .18s ease;line-height:1.2;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.itm-editor-page .btn-primary{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.itm-editor-page .btn-primary:hover{background:#000;border-color:#000;transform:translateY(-1px);box-shadow:0 4px 14px #00000026}.itm-editor-page .btn-ghost{background:transparent;color:#1a1a1a;border-color:#d4d4d8}.itm-editor-page .btn-ghost:hover{border-color:#1a1a1a;background:transparent}.itm-editor-page .btn-danger-ghost{background:transparent;color:#991b1b;border-color:#fecaca}.itm-editor-page .btn-danger-ghost:hover{background:#fef2f2;border-color:#ef4444;color:#7f1d1d}.itm-editor-page .btn-sm{padding:7px 16px;font-size:12px}.itm-editor-page button:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}[data-theme=dark] .itm-editor-page .btn-ghost{background:#334155;color:#cbd5e1;border-color:#ffffff1a}[data-theme=dark] .itm-editor-page .btn-ghost:hover{background:#475569;border-color:#3b82f6;color:#93c5fd}.itm-editor-page .itm-schema,.itm-editor-page .itm-schema-full{background:#f9fafb!important;border:none!important;padding:80px 0!important;margin:80px 0!important;box-shadow:0 0 0 100vmax #f9fafb!important;clip-path:inset(0 -100vmax)!important}[data-theme=dark] .itm-editor-page .itm-schema,[data-theme=dark] .itm-editor-page .itm-schema-full{background:#0f172a;box-shadow:0 0 0 100vmax #0f172a}.itm-editor-page .itm-section{background:#fff!important;border:1px solid #eef0f4!important;border-radius:16px!important;padding:28px 32px!important;margin-bottom:16px!important;scroll-margin-top:16px;transition:border-color .15s ease,box-shadow .15s ease!important;box-shadow:0 1px 3px #0f172a08!important}.itm-editor-page .itm-section:hover{border-color:#d4d4d8!important;box-shadow:0 4px 12px #0f172a0f!important}[data-theme=dark] .itm-editor-page .itm-section{background:#1e293b!important;border-color:#ffffff14!important}.itm-editor-page .itm-section-head{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #f9fafb}.itm-editor-page .itm-section-title{flex:1;background:transparent;border:none;border-bottom:1px solid transparent;font-size:24px;font-weight:400;color:#1a1a1a;padding:4px 0;letter-spacing:-.015em;font-family:Georgia,Cormorant Garamond,serif;width:auto}[data-theme=dark] .itm-editor-page .itm-section-title{color:#f1f5f9}.itm-editor-page .itm-section-title:hover{border-bottom-color:#e5e7eb}.itm-editor-page .itm-section-title:focus{outline:none;border-bottom-color:#1a1a1a}.itm-editor-page .itm-section-actions{display:inline-flex;gap:4px;margin-left:auto}.itm-editor-page .itm-section-actions button,.itm-editor-page .itm-section-actions .btn-ghost,.itm-editor-page .itm-section-actions .btn-danger-ghost{width:34px;height:34px;padding:0;justify-content:center;font-size:13px;background:transparent;border:none;color:#9ca3af;border-radius:50%;transition:all .15s ease}.itm-editor-page .itm-section-actions button:hover,.itm-editor-page .itm-section-actions .btn-ghost:hover{background:#f3f4f6;color:#1a1a1a}.itm-editor-page .itm-section-actions .btn-danger-ghost:hover{background:#fef2f2;color:#dc2626}.itm-editor-page .itm-section-actions button:disabled{opacity:.3;cursor:not-allowed}.itm-editor-page .itm-section-desc{margin-bottom:20px;width:100%;resize:vertical;min-height:56px;border-radius:18px;padding:14px 22px;font-size:14px;line-height:1.5}.itm-editor-page .itm-section-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 32px;margin-bottom:24px;padding:24px 0;border-top:1px solid #f9fafb;border-bottom:1px solid #f9fafb}.itm-editor-page .itm-section-meta-field{display:flex;flex-direction:column;gap:8px;min-width:0}.itm-editor-page .itm-section-meta-field-full{grid-column:1 / -1}.itm-editor-page .itm-section-meta-field>span{font-size:13px;font-weight:500;color:#1a1a1a;padding-left:4px}[data-theme=dark] .itm-editor-page .itm-section-meta-field>span{color:#f1f5f9}.itm-editor-page .itm-section-meta-field>small{font-size:11px;color:#9ca3af;padding-left:18px;margin-top:-2px}.itm-editor-page .itm-section-meta-field>textarea{border-radius:18px;padding:12px 20px;min-height:56px}.itm-editor-page .itm-section-questions{margin-top:8px;display:flex;flex-direction:column;gap:8px}.itm-editor-page .itm-section-empty{padding:28px;text-align:center;color:#9ca3af;background:transparent;border:1px dashed #e5e7eb;border-radius:12px;font-size:13px;font-style:italic}[data-theme=dark] .itm-editor-page .itm-section-empty{border-color:#ffffff1a}.itm-editor-page .itm-question{display:flex;align-items:center;gap:14px;padding:14px 22px;border:1px solid transparent;border-radius:999px;background:#fafafa;transition:all .18s ease}[data-theme=dark] .itm-editor-page .itm-question{background:#1a2333;border-color:#ffffff0f}.itm-editor-page .itm-question:hover{background:#fff;border-color:#e5e7eb;box-shadow:0 2px 8px #0f172a0a}.itm-editor-page .itm-question.is-editing{border-color:#2563eb;background:#eff6ff;box-shadow:0 4px 12px #2563eb14;border-radius:18px}[data-theme=dark] .itm-editor-page .itm-question.is-editing{background:#3b82f61a}.itm-editor-page .itm-q-grip{cursor:grab;color:#d4d4d8;-webkit-user-select:none;user-select:none;font-size:14px;line-height:1;opacity:0;transition:opacity .15s ease,color .15s ease}.itm-editor-page .itm-question:hover .itm-q-grip{opacity:1}.itm-editor-page .itm-q-grip:hover{color:#6b7280}.itm-editor-page .itm-q-type{font-size:14px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:50%;flex-shrink:0;border:1px solid #f1f5f9}[data-theme=dark] .itm-editor-page .itm-q-type{background:#243144;border-color:#ffffff14}.itm-editor-page .itm-q-label{flex:1;min-width:0;font-size:14px;font-weight:500;color:#1a1a1a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-theme=dark] .itm-editor-page .itm-q-label{color:#f1f5f9}.itm-editor-page .itm-q-required{color:#dc2626;font-weight:600;font-size:14px;margin-left:4px;opacity:.7}.itm-editor-page .itm-q-inline-counts,.itm-editor-page .itm-q-inline-weight{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-muted, #64748b);padding:2px 8px;border-radius:12px;background:color-mix(in srgb,#32937c 6%,transparent);border:1px solid color-mix(in srgb,#32937c 22%,transparent);-webkit-user-select:none;user-select:none;cursor:pointer;white-space:nowrap;margin-left:6px}.itm-editor-page .itm-q-inline-counts input[type=checkbox]{margin:0;cursor:pointer}.itm-editor-page .itm-q-inline-weight input[type=number]{width:50px;padding:1px 4px!important;font-size:11px!important;text-align:right;border-radius:4px;margin:0}.itm-editor-page .itm-q-inline-weight input[type=number]:disabled{opacity:.5;cursor:not-allowed}.itm-editor-page .itm-section-weight-sum{margin:10px 0 4px;padding:6px 12px;font-size:12px;border-radius:6px;border-left:3px solid}.itm-editor-page .itm-section-weight-sum.is-ok{background:color-mix(in srgb,#16a34a 8%,transparent);border-left-color:#16a34a;color:#14532d}.itm-editor-page .itm-section-weight-sum.is-warn{background:color-mix(in srgb,#eab308 10%,transparent);border-left-color:#eab308;color:#78350f}.itm-editor-page .itm-section-weight-hint{font-size:11px}.itm-editor-page .itm-section-weight-reset{background:none;border:none;padding:0;color:inherit;text-decoration:underline;cursor:pointer;font:inherit}.itm-editor-page .itm-section-weight-reset:hover{opacity:.75}.itm-editor-page .itm-q-actions{display:inline-flex;gap:4px;opacity:0;transition:opacity .15s ease}.itm-editor-page .itm-question:hover .itm-q-actions,.itm-editor-page .itm-question.is-editing .itm-q-actions{opacity:1}.itm-editor-page .itm-q-actions button,.itm-editor-page .itm-q-actions .btn-ghost,.itm-editor-page .itm-q-actions .btn-danger-ghost{width:32px!important;height:32px!important;padding:0!important;justify-content:center!important;font-size:13px!important;border-radius:50%!important;background:transparent!important;border:1px solid transparent!important;color:#9ca3af!important}.itm-editor-page .itm-q-actions button:hover,.itm-editor-page .itm-q-actions .btn-ghost:hover{background:#fff!important;color:#1a1a1a!important;border-color:#e5e7eb!important}.itm-editor-page .itm-q-actions .btn-danger-ghost:hover{background:#fef2f2!important;color:#dc2626!important;border-color:#fecaca!important}.itm-editor-page .itm-q-edit{padding:18px;background:#fff;border:1px solid #bfdbfe;border-radius:12px;margin-top:6px}[data-theme=dark] .itm-editor-page .itm-q-edit{background:#3b82f60f}.itm-editor-page .itm-q-edit-bank-tag{font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;background:#dbeafe;color:#1d4ed8;display:inline-block;margin-bottom:12px;letter-spacing:.02em}.itm-editor-page .itm-q-edit-bank-cats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.itm-editor-page .itm-q-edit-foot,.itm-editor-page .itm-q-edit-actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.itm-editor-page .itm-add-section{width:100%;margin-top:8px;padding:14px 16px;background:transparent;border:1.5px dashed #cbd5e1;border-radius:12px;color:#64748b;font-weight:600;font-size:13px;cursor:pointer;transition:all .15s ease;text-align:center;font-family:inherit}.itm-editor-page .itm-add-section:hover{border-color:#3b82f6;color:#2563eb;background:#eff6ff}.itm-editor-page .itm-section-add{width:100%;margin-top:12px;padding:10px 14px;background:transparent;border:1px dashed #cbd5e1;border-radius:10px;color:#64748b;font-weight:500;font-size:12px;cursor:pointer;transition:all .15s ease;font-family:inherit}.itm-editor-page .itm-section-add:hover{border-color:#3b82f6;color:#2563eb;background:#eff6ff}.itm-editor-page .itm-add-inline-wrap{position:relative;margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}.itm-editor-page .itm-add-inline-menu{position:absolute;top:100%;margin-top:6px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 12px 28px #0f172a1f;padding:6px;z-index:50;min-width:240px;display:grid;grid-template-columns:1fr 1fr;gap:2px}.itm-editor-page .itm-add-inline-item{padding:8px 12px;border-radius:8px;font-size:13px;color:#334155;cursor:pointer;background:transparent;border:none;text-align:left;width:100%;font-family:inherit}.itm-editor-page .itm-add-inline-item:hover{background:#eff6ff;color:#2563eb}.itm-editor-page .itm-editor-submissions-card,.itm-editor-page .itm-submissions{background:transparent;border:none;border-radius:0;padding:0 0 56px;margin:0 0 56px;border-bottom:1px solid #f1f5f9}[data-theme=dark] .itm-editor-page .itm-editor-submissions-card,[data-theme=dark] .itm-editor-page .itm-submissions{border-bottom-color:#ffffff0f}.itm-editor-page .itm-submissions-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.itm-editor-page .itm-submissions-toggle{display:inline-flex;align-items:center;gap:12px;background:transparent;border:none;padding:4px 0;cursor:pointer;font-family:inherit}.itm-editor-page .itm-submissions-toggle:hover{background:transparent}.itm-editor-page .itm-submissions-toggle:hover h3,.itm-editor-page .itm-submissions-toggle:focus h3,.itm-editor-page .itm-submissions-toggle:active h3{color:#1a1a1a;text-decoration:none}.itm-editor-page .itm-submissions-toggle:hover .itm-submissions-caret{color:#1a1a1a}.itm-editor-page .itm-submissions-caret{color:#9ca3af;font-size:14px;transition:color .15s ease}.itm-editor-page .itm-submissions-toggle h3{margin:0;font-family:Georgia,serif;font-size:26px;font-weight:400;color:#1a1a1a;letter-spacing:-.015em;line-height:1.1;text-decoration:none}[data-theme=dark] .itm-editor-page .itm-submissions-toggle h3{color:#f1f5f9}.itm-editor-page .itm-submissions-head-actions{display:inline-flex;gap:8px}.itm-editor-page .itm-editor-doc-card,.itm-editor-page .itm-docs{background:transparent;border:none;padding:0 0 56px;margin:0 0 56px;border-bottom:1px solid #f1f5f9}[data-theme=dark] .itm-editor-page .itm-editor-doc-card,[data-theme=dark] .itm-editor-page .itm-docs{border-bottom-color:#ffffff0f}.itm-editor-page .itm-docs-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:24px}.itm-editor-page .itm-docs-head h3,.itm-editor-page .itm-docs-head h4{margin:0;font-family:Georgia,serif;font-size:26px;font-weight:400;color:#1a1a1a;letter-spacing:-.015em;line-height:1.1}[data-theme=dark] .itm-editor-page .itm-docs-head h3,[data-theme=dark] .itm-editor-page .itm-docs-head h4{color:#f1f5f9}.itm-editor-page .itm-doc-block{background:transparent;border:1px solid #f1f5f9;border-radius:16px;padding:28px 32px;margin-bottom:16px}[data-theme=dark] .itm-editor-page .itm-doc-block{border-color:#ffffff14}.itm-editor-page .itm-doc-block-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f9fafb}.itm-editor-page .itm-doc-block-label{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.12em}[data-theme=dark] .itm-editor-page .itm-doc-block-label{color:#94a3b8}.itm-editor-page .itm-doc-block-head button{color:#dc2626;background:transparent;border:none;padding:4px 8px;font-size:12px;font-weight:500;cursor:pointer}.itm-editor-page .itm-doc-block-head button:hover{color:#991b1b;background:#fef2f2;border-radius:6px}.itm-editor-page .itm-doc-files{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin-top:14px;list-style:none;padding:0}.itm-editor-page .itm-doc-file{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px 18px 18px;border-radius:14px;background:#fafafa;font-size:14px;border:1px solid transparent;transition:all .18s ease;cursor:pointer;min-height:160px;text-align:center}[data-theme=dark] .itm-editor-page .itm-doc-file{background:#1a2333;border-color:#ffffff0f}.itm-editor-page .itm-doc-file:hover{background:#fff;border-color:#d4d4d8;transform:translateY(-2px);box-shadow:0 8px 20px #0f172a0f}.itm-editor-page .itm-doc-file:before{content:"📄";font-size:38px;line-height:1;opacity:.85}.itm-editor-page .itm-doc-file-name{width:100%;color:#1a1a1a;font-weight:500;font-size:13px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;word-break:break-all;text-decoration:none;text-align:center}.itm-editor-page .itm-doc-file-name:hover{text-decoration:none;color:#2563eb}[data-theme=dark] .itm-editor-page .itm-doc-file-name{color:#f1f5f9}.itm-editor-page .itm-doc-file-size{color:#9ca3af;font-size:11px;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.itm-editor-page .itm-doc-file button{position:absolute;top:8px;right:8px;color:#d4d4d8;background:transparent;border:none;padding:0;font-size:13px;cursor:pointer;border-radius:50%;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:all .15s ease}.itm-editor-page .itm-doc-file:hover button{opacity:1;color:#9ca3af}.itm-editor-page .itm-doc-file button:hover{color:#dc2626;background:#fef2f2}.itm-editor-page .itm-doc-upload{margin-top:12px;padding:14px 28px;border:1.5px dashed #d4d4d8;border-radius:999px;text-align:center;color:#6b7280;font-size:13px;font-weight:500;cursor:pointer;transition:all .18s ease;background:transparent;display:inline-flex;align-items:center;gap:6px}.itm-editor-page .itm-doc-upload:hover{border-color:#2563eb;color:#2563eb;background:#eff6ff}.itm-editor-page .itm-docs-head button,.itm-editor-page .itm-docs-head a{font-size:13px;font-weight:500;color:#2563eb;background:transparent;border:none;padding:8px 16px;border-radius:999px;cursor:pointer;transition:all .15s ease}.itm-editor-page .itm-docs-head button:hover{background:#eff6ff}.itm-editor-page .itm-editor-lock-history{background:transparent;border:none;padding:0 0 24px;margin:0 0 24px;border-bottom:1px solid #f1f5f9;font-size:13px}[data-theme=dark] .itm-editor-page .itm-editor-lock-history{border-bottom-color:#ffffff0f}.itm-editor-page .itm-editor-lock-history>summary{cursor:pointer;font-weight:600;color:#64748b;padding:8px 0 8px 24px;list-style:none;-webkit-user-select:none;user-select:none}.itm-editor-page .itm-editor-lock-history>summary::-webkit-details-marker{display:none}.itm-editor-page .itm-editor-lock-history>summary:before{content:"▸ ";color:#94a3b8;display:inline-block;margin-right:6px;transition:transform .15s ease}.itm-editor-page .itm-editor-lock-history[open]>summary:before{content:"▾ "}.itm-editor-page .itm-editor-lock-history ul{list-style:none;padding:0 0 0 24px;margin:8px 0 0}.itm-editor-page .itm-editor-lock-history li{padding:8px 0;border-bottom:1px dashed #e2e8f0}.itm-editor-page .itm-editor-lock-history li:last-child{border-bottom:none}.itm-editor-page .itm-editor-lock-note{margin-top:4px;margin-left:16px;color:#64748b;font-style:italic;font-size:12px}.itm-editor-page .itm-editor-lifecycle-help{background:linear-gradient(135deg,#eff6ff,#eef2ff);border:1px solid #bfdbfe;border-radius:14px;padding:24px 28px;margin:0;font-size:13px;line-height:1.65;color:#475569}[data-theme=dark] .itm-editor-page .itm-editor-lifecycle-help{background:#3b82f614;border-color:#3b82f633;color:#cbd5e1}.itm-editor-page .itm-editor-lifecycle-help h4{margin:20px 0 10px;font-size:14px;font-weight:700;color:#0f172a;letter-spacing:-.01em}.itm-editor-page .itm-editor-lifecycle-help h4:first-child{margin-top:0}[data-theme=dark] .itm-editor-page .itm-editor-lifecycle-help h4{color:#f1f5f9}.itm-editor-page .itm-editor-lifecycle-help ol,.itm-editor-page .itm-editor-lifecycle-help ul{padding-left:22px;margin:6px 0}.itm-editor-page .itm-editor-lifecycle-help li{margin-bottom:6px}.itm-editor-page .itm-editor-lifecycle-help code{background:#fff;color:#2563eb;padding:1px 6px;border-radius:4px;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;border:1px solid #bfdbfe}.itm-editor-page .itm-editor-lifecycle-help strong{color:#0f172a}[data-theme=dark] .itm-editor-page .itm-editor-lifecycle-help strong{color:#f1f5f9}.itm-editor-page .itm-editor-lifecycle-help em{color:#64748b;font-style:italic}.itm-editor-page .itm-editor-lifecycle-help p{margin:8px 0}.modal-backdrop{background:#0f172a73!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-content{border-radius:16px;box-shadow:0 24px 64px #0f172a40;border:none}.itm-editor-page h2,.itm-editor-page h3,.itm-editor-page h4{color:#0f172a;letter-spacing:-.01em}[data-theme=dark] .itm-editor-page h2,[data-theme=dark] .itm-editor-page h3,[data-theme=dark] .itm-editor-page h4{color:#f1f5f9}.itm-editor-page p{line-height:1.55}.itm-editor-page a{color:#2563eb;text-decoration:none;font-weight:500}.itm-editor-page a:hover{text-decoration:underline}.itm-editor-page .form-label{font-size:12px;font-weight:600;color:#64748b;margin-bottom:6px;display:block}.itm-editor-page .itm-empty{color:#94a3b8;font-style:italic;font-size:13px}.itm-editor-page .itm-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:600;padding:2px 8px;border-radius:5px;background:#f1f5f9;color:#64748b}.itm-editor-page .itm-recommended-banner,.itm-editor-page .itm-recommended-info{background:linear-gradient(135deg,#eff6ff,#eef2ff);border:1px solid #bfdbfe;border-radius:12px;padding:14px 16px;font-size:13px;color:#1d4ed8;margin-bottom:14px}.itm-editor-page .itm-recommended-warning{background:#fef3c7;border-color:#fcd34d;color:#92400e}.itm-editor-page .itm-import-tree{max-height:60vh;overflow-y:auto;padding-right:4px}.itm-editor-page .itm-import-super{margin-bottom:14px}.itm-editor-page .itm-import-super-head,.itm-editor-page .itm-import-cat-head{font-weight:700;padding:8px 12px;background:#f8fafc;border-radius:8px;margin-bottom:6px;cursor:pointer;font-size:13px}.itm-editor-page .itm-import-cat{margin-left:16px;margin-bottom:8px}.itm-editor-page .itm-import-q{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:13px}.itm-editor-page .itm-import-q:hover{background:#eff6ff}.itm-editor-page .itm-group-title{font-size:13px;font-weight:700;color:#0f172a}.itm-editor-page .itm-group-count{font-size:11px;color:#94a3b8}.itm-editor-page .itm-recommended-link{color:#2563eb;font-weight:500}.itm-editor-page .itm-recommended-star{color:#f59e0b}.itm-editor-page .itm-submission{background:transparent;border:1px solid #eef0f4;border-radius:14px;margin-bottom:8px;overflow:hidden;transition:border-color .15s ease}.itm-editor-page .itm-submission:hover{border-color:#d4d4d8}[data-theme=dark] .itm-editor-page .itm-submission{border-color:#ffffff14}.itm-editor-page .itm-submission-head{display:flex;align-items:center;gap:8px;padding:6px}.itm-editor-page .itm-submission-head-main{flex:1;display:flex;align-items:center;gap:12px;padding:8px 14px;background:transparent;border:none;cursor:pointer;text-align:left;border-radius:10px;transition:background .15s ease;font-family:inherit;font-size:13px;color:#1a1a1a;min-width:0}.itm-editor-page .itm-submission-head-main:hover{background:#f9fafb}.itm-editor-page .itm-submission-status{font-size:10px;font-weight:700;padding:3px 9px;border-radius:999px;letter-spacing:.06em;text-transform:uppercase;flex-shrink:0}.itm-editor-page .itm-submission-status.is-submitted{background:#dcfce7;color:#166534}.itm-editor-page .itm-submission-status.is-draft{background:#fef3c7;color:#92400e}.itm-editor-page .itm-submission-decision-group{display:inline-flex;align-items:center;gap:4px}.itm-editor-page .itm-submission-decision{font-size:10px;font-weight:700;padding:3px 9px;border-radius:999px;letter-spacing:.04em;text-transform:uppercase;flex-shrink:0;display:inline-flex;align-items:center;gap:4px}.itm-editor-page .itm-submission-decision.is-ok{background:#dcfce7;color:#166534}.itm-editor-page .itm-submission-decision.is-cond{background:#fef3c7;color:#92400e}.itm-editor-page .itm-submission-decision.is-rej{background:#fee2e2;color:#991b1b}.itm-editor-page .itm-submission-revert{display:inline-flex;align-items:center;padding:3px 8px;font-size:10px;font-weight:500;color:#9ca3af;border-radius:999px;cursor:pointer;transition:all .15s ease;letter-spacing:.02em;-webkit-user-select:none;user-select:none;text-transform:none}.itm-editor-page .itm-submission-revert:hover{background:#f3f4f6;color:#1a1a1a}.itm-editor-page .itm-submission-revert:focus{outline:2px solid #2563eb;outline-offset:2px}.itm-editor-page .itm-submission-lock{font-size:13px;flex-shrink:0;opacity:.7}.itm-editor-page .itm-submission-who{font-weight:500;color:#1a1a1a;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-theme=dark] .itm-editor-page .itm-submission-who{color:#f1f5f9}.itm-editor-page .itm-submission-supplier{font-size:12px;color:#475569;background:#eef2ff;padding:2px 8px;border-radius:999px;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}[data-theme=dark] .itm-editor-page .itm-submission-supplier{color:#cbd5e1;background:color-mix(in srgb,#6366f1 20%,transparent)}.itm-editor-page .itm-submission-date{font-size:12px;color:#9ca3af;flex-shrink:0;font-variant-numeric:tabular-nums}.itm-editor-page .itm-submission-toggle{color:#9ca3af;font-size:12px;flex-shrink:0}.itm-editor-page .itm-submission-head>.btn-ghost,.itm-editor-page .itm-submission-head>.btn-danger-ghost,.itm-editor-page .itm-submission-head>a.btn-ghost{flex-shrink:0;padding:6px 14px!important;font-size:12px!important}.itm-editor-page .itm-submission.is-open .itm-submission-head{border-bottom:1px solid #f1f5f9}[data-theme=dark] .itm-editor-page .itm-submission.is-open .itm-submission-head{border-bottom-color:#ffffff0f}.itm-editor-page .itm-submission-body{padding:18px 20px;background:var(--bg-card);border-top:1px solid color-mix(in srgb,var(--text) 6%,transparent)}.itm-editor-page .itm-submission-meta{font-size:12px;color:var(--text-muted);margin-bottom:14px;padding:6px 12px;background:color-mix(in srgb,var(--text) 4%,transparent);border-radius:999px;display:inline-block}.itm-editor-page .itm-submission-answers{display:flex;flex-direction:column;gap:14px}.itm-editor-page .itm-sub-section{display:flex;flex-direction:column;gap:6px}.itm-editor-page .itm-sub-section>h4{font-family:inherit;font-size:14px;font-weight:700;color:var(--text);margin:0 0 4px;letter-spacing:0;display:flex;align-items:center;gap:8px;padding-bottom:0;border-bottom:none}.itm-editor-page .itm-submission-body .itm-sub-answer,.itm-editor-page .itm-sub-answer{display:grid;grid-template-columns:minmax(160px,1fr) 2fr;gap:12px;padding:6px 10px;background:var(--bg-card);border-radius:6px;font-size:12px;border-left:3px solid transparent}.itm-editor-page .itm-sub-answer.is-approved{border-left-color:#16a34a}.itm-editor-page .itm-sub-answer.is-rejected{border-left-color:#dc2626}.itm-editor-page .itm-sub-q{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--text);font-weight:500}.itm-editor-page .itm-sub-a{color:var(--text-muted);word-break:break-word}.itm-editor-page .itm-sub-a em{color:var(--text-muted);font-style:italic;opacity:.7}.itm-editor-page .itm-sub-badge{display:inline-flex;align-items:center;gap:3px;font-size:9px;font-weight:700;padding:2px 6px;border-radius:999px;letter-spacing:.02em;background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--text-muted)}.itm-editor-page .itm-sub-badge-ok{background:#dcfce7;color:#166534}.itm-editor-page .itm-sub-badge-rej{background:#fee2e2;color:#991b1b}.itm-editor-page .itm-sub-badge-alert{background:#fef3c7;color:#92400e}.itm-editor-page .itm-sub-badge-change{background:#dbeafe;color:#1d4ed8}.itm-editor-page .itm-sub-badge-locked{background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--text-muted)}.srp{padding:16px;display:flex;justify-content:center}.srp-with-bar{position:relative;display:flex;width:100%;max-width:1020px;gap:0}.srp-card{flex:1;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:24px 28px;min-width:0;overflow:visible}.srp-resp-bar{display:flex;align-items:center;justify-content:center;border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 18%,transparent),color-mix(in srgb,var(--accent) 6%,transparent));border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);color:color-mix(in srgb,var(--accent) 80%,var(--text));font-size:12px;flex-shrink:0}.srp-resp-bar-global{width:44px;margin-right:52px;align-self:stretch}.srp-resp-bar-section{position:absolute;left:0;top:17px;bottom:0;width:28px;background:linear-gradient(180deg,color-mix(in srgb,#16a34a 18%,transparent),color-mix(in srgb,#16a34a 6%,transparent));border-color:color-mix(in srgb,#16a34a 35%,transparent);color:#fff}.srp-resp-bar-section .srp-resp-text,.srp-resp-bar-section .srp-resp-prefix,.srp-resp-bar-section .srp-resp-name,.srp-resp-bar-section .srp-resp-email{color:#fff}.srp-resp-text{writing-mode:vertical-rl;transform:rotate(180deg);display:inline-flex;align-items:center;gap:10px;padding:12px 4px;white-space:nowrap;font-weight:600;letter-spacing:.2px;text-overflow:ellipsis;overflow:hidden;max-height:100%}.srp-resp-prefix{font-weight:600;font-style:italic;font-size:11px}.srp-resp-name{font-weight:700}.srp-resp-email{font-weight:400;font-size:11px}[data-theme=light] .srp-resp-bar-global,[data-theme=light] .srp-resp-bar-global .srp-resp-text,[data-theme=light] .srp-resp-bar-global .srp-resp-prefix,[data-theme=light] .srp-resp-bar-global .srp-resp-name,[data-theme=light] .srp-resp-bar-global .srp-resp-email{color:#fff}.srp-section-wrap{position:relative;margin-top:24px;padding-top:16px;border-top:1px solid transparent;margin-left:-64px;padding-left:64px}.srp-section-wrap>.srp-section{margin-top:0;padding-top:0;border-top:none;min-width:0}.srp-section-wrap.is-highlighted>.srp-section{border-radius:12px;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent, #32937c) 45%,transparent);animation:srp-section-halo 3s ease-out .6s forwards}@keyframes srp-section-halo{to{box-shadow:0 0 0 0 transparent}}.srp-head-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.srp.is-finalized .srp-section-actions,.srp.is-finalized .srp-q-actions,.srp.is-finalized .srp-q-change-list,.srp.is-finalized .srp-q-note{pointer-events:none;opacity:.55;filter:grayscale(20%)}.srp-head-pending{margin-top:8px;padding:8px 12px;font-size:13px;font-weight:600;color:#92400e;background:color-mix(in srgb,#f59e0b 14%,transparent);border:1px solid color-mix(in srgb,#f59e0b 40%,transparent);border-radius:6px;display:inline-block}.srp-scope-notice{margin-top:10px;padding:10px 14px;font-size:13px;color:var(--text);background:color-mix(in srgb,#3b82f6 10%,transparent);border:1px solid color-mix(in srgb,#3b82f6 35%,transparent);border-radius:6px}.srp-scope-switch{color:var(--accent, #32937c);text-decoration:underline;font-weight:700;font-size:15px;margin-left:4px}.srp-scope-switch:hover{text-decoration:none}.srp-head h1{margin:0 0 8px;font-size:22px}.srp-head-actions{display:flex;gap:6px;flex-wrap:wrap}.srp-head-actions .srp-btn{text-decoration:none;display:inline-flex;align-items:center}.srp-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--text-muted)}.srp-err{color:#b00020}.srp-internal-notice{max-width:640px;margin:60px auto;padding:32px 36px;background:var(--bg-card);border:1px solid var(--border);border-radius:14px}.srp-internal-notice h2{font-size:20px;font-weight:700;color:var(--text);margin:0 0 12px}.srp-internal-notice p{color:var(--text);font-size:14px;line-height:1.55;margin:0 0 10px}.srp-internal-notice p:last-child{margin-bottom:0}.srp-section{margin-top:24px;padding-top:16px;border-top:1px solid var(--border)}.srp-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.srp-section-head h2{margin:0;font-size:17px}.srp-section-actions{display:flex;gap:6px}.srp-section-by{font-size:11px;margin:4px 0 0}.srp-btn.is-locked{opacity:.55;cursor:help}.srp-btn.is-locked:hover{opacity:.7}.srp-section-gate{font-size:12px;margin:6px 0 0;padding:4px 8px;background:transparent;border-radius:4px;display:inline-block}.srp-section-info{margin-top:10px;padding:10px 12px;background:color-mix(in srgb,var(--text) 3%,transparent);border-left:3px solid var(--accent, var(--border));border-radius:6px}[data-theme=light] .srp-section-info{background:#fafafa}.srp-section-resp{font-size:13px;line-height:1.4}.srp-section-resp-prefix{color:var(--text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.srp-section-resp-email{color:var(--text-muted);font-size:12px}.srp-section-resp-list{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:2px}.srp-section-resp-item{line-height:1.5}.srp-section-resp-notified{color:color-mix(in srgb,#16a34a 90%,transparent);font-size:12px}.srp-section-resp-not-notified{font-size:12px;font-style:italic}.srp-section-desc{margin:6px 0 0;font-size:13px;line-height:1.5;color:var(--text);white-space:pre-wrap}.srp-section-resp-desc{margin:4px 0 0;padding-left:10px;border-left:2px solid color-mix(in srgb,var(--text) 15%,transparent);font-size:13px;line-height:1.5;color:var(--text-muted);white-space:pre-wrap;font-style:italic}.srp-section-history{margin:8px 0 12px;padding:8px 12px;background:transparent;border-radius:6px;font-size:12px}.srp-section-history summary{cursor:pointer;font-weight:600;color:var(--text-muted)}.srp-section-history ul{list-style:none;padding-left:0;margin:8px 0 0}.srp-section-history li{padding:4px 0;border-bottom:1px dashed color-mix(in srgb,var(--text) 8%,transparent)}.srp-section-history li:last-child{border-bottom:none}.srp-section-history-actors{margin:8px 0 10px;padding:8px 10px;background:color-mix(in srgb,var(--text) 3%,transparent);border-radius:6px}.srp-section-history-actors-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.srp-section-history-actors-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}.srp-actor-chip{display:inline-flex;align-items:center;gap:4px;padding:7px 16px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent;line-height:1.3}.srp-actor-tag,.srp-actor-count{margin-left:2px}.srp-actor-chip.is-responsible{background:color-mix(in srgb,#16a34a 14%,transparent);color:#166534;border-color:color-mix(in srgb,#16a34a 40%,transparent)}[data-theme=dark] .srp-actor-chip.is-responsible{color:#4ade80}.srp-actor-chip.is-other{background:color-mix(in srgb,#d97706 14%,transparent);color:#92400e;border-color:color-mix(in srgb,#d97706 40%,transparent)}[data-theme=dark] .srp-actor-chip.is-other{color:#fbbf24}.srp-actor-tag,.srp-actor-count{font-weight:500;opacity:.85}.srp-section-history-warn{margin:8px 0 0;padding:6px 10px;font-size:12px;color:#92400e;background:color-mix(in srgb,#d97706 10%,transparent);border-left:3px solid #d97706;border-radius:0 4px 4px 0}[data-theme=dark] .srp-section-history-warn{color:#fbbf24}.srp-section-history-warn.srp-section-history-warn-muted{color:var(--text-muted);background:color-mix(in srgb,var(--text) 5%,transparent);border-left-color:var(--text-muted)}.srp-section-note{display:flex;gap:6px;margin:8px 0;align-items:flex-start}.srp-section-note .srp-input{flex:1}.srp-questions{margin-top:12px;padding:16px;background:color-mix(in srgb,var(--text) 10%,transparent);border:1px solid color-mix(in srgb,var(--text) 18%,transparent);border-radius:10px;box-shadow:inset 0 1px #0000000a}[data-theme=light] .srp-questions{background:#e5e7eb;border-color:#cbd5e1}.srp-questions>.srp-question:first-child{margin-top:0}.srp-questions>.srp-question:last-child{margin-bottom:0}.srp-question{margin:10px 0;padding:10px 12px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px}.srp-question.has-alert{border-color:#f59e0b;background:color-mix(in srgb,#f59e0b 4%,var(--bg-elevated))}.srp-question.is-blocked{border-color:#475569;background:color-mix(in srgb,#475569 4%,var(--bg-elevated))}.srp-question.is-approved{border-color:color-mix(in srgb,#16a34a 55%,transparent);background:color-mix(in srgb,#16a34a 7%,var(--bg-elevated))}.srp-question.is-rejected{border-color:color-mix(in srgb,#b00020 55%,transparent);background:color-mix(in srgb,#b00020 7%,var(--bg-elevated))}.srp-q-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:4px}.srp-q-label{font-weight:600;font-size:14px;flex:1;min-width:0}.srp-q-badges{display:inline-flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;flex-shrink:0}.srp-q-req{color:#b00020}.srp-q-badge{display:inline-block;margin-left:8px;font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;padding:2px 6px;border-radius:4px;vertical-align:middle}.srp-q-badge-alert{background:color-mix(in srgb,#f59e0b 18%,transparent);color:#92400e}.srp-q-badge-blocked{background:#e2e8f0;color:#334155}.srp-q-badge-ok{background:color-mix(in srgb,#16a34a 18%,transparent);color:#166534}.srp-q-badge-rej{background:color-mix(in srgb,#b00020 18%,transparent);color:#991b1b}.srp-q-badge-change{background:color-mix(in srgb,#8b5cf6 18%,transparent);color:#5b21b6}.srp-q-badge-change-ok{background:color-mix(in srgb,#16a34a 18%,transparent);color:#166534}.srp-question.has-change{border-color:#8b5cf6;background:color-mix(in srgb,#8b5cf6 5%,var(--bg-elevated))}.srp-question.has-change-done{border-color:#16a34a;background:color-mix(in srgb,#16a34a 5%,var(--bg-elevated))}.srp-btn.is-change{background:color-mix(in srgb,#8b5cf6 14%,transparent);border-color:#8b5cf6;color:#5b21b6;font-weight:600}.srp-btn.is-alert{background:color-mix(in srgb,#f59e0b 14%,transparent);border-color:#f59e0b;color:#92400e;font-weight:600}.srp-q-admin-alert-note{margin:6px 0;padding:6px 10px;background:color-mix(in srgb,#f59e0b 8%,transparent);border-left:3px solid #f59e0b;border-radius:4px;font-size:13px}.srp-q-change-list{margin:10px 0;padding:10px 12px;background:color-mix(in srgb,#8b5cf6 5%,transparent);border:1px solid color-mix(in srgb,#8b5cf6 30%,transparent);border-radius:6px;font-size:13px}.srp-q-change-head{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:13px}.srp-q-change-item{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:8px 10px;margin-bottom:6px}.srp-q-change-item-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.srp-q-change-note{margin:4px 0;font-size:13px}.srp-q-change-verdict-row{display:flex;gap:6px;margin-top:6px}.srp-q-change-verdict-done{margin-top:6px;padding:4px 8px;background:color-mix(in srgb,var(--text) 4%,transparent);border-radius:4px;font-size:12px;display:flex;align-items:center;gap:8px}.srp-q-change-add{display:flex;gap:6px;align-items:flex-start;margin-top:8px}.srp-q-change-add .srp-input{flex:1}.srp-btn-mini{font-size:11px;padding:2px 8px}.srp-q-change-archive{margin-top:8px}.srp-q-change-archive-toggle{background:none;border:1px dashed var(--border);border-radius:4px;padding:4px 10px;font-size:12px;color:var(--text-muted);cursor:pointer;width:100%;text-align:left}.srp-q-change-archive-toggle:hover{background:color-mix(in srgb,var(--text) 4%,transparent);color:inherit}.srp-q-change-archive-list{margin-top:6px;padding-left:12px;border-left:2px solid var(--border)}.srp-q-change-item.is-archived{opacity:.85}.srp-q-answer{display:flex;gap:8px;align-items:baseline;margin:4px 0;font-size:13px}.srp-q-answer-label{color:var(--text-muted)}.srp-q-answer-value{font-weight:500}.srp-q-supplier-note{margin:6px 0;padding:6px 10px;background:color-mix(in srgb,#f59e0b 8%,transparent);border-left:3px solid #f59e0b;border-radius:4px;font-size:13px}.srp-q-files{list-style:none;padding:0;margin:4px 0;display:flex;flex-direction:column;gap:2px;font-size:13px}.srp-q-files a{color:var(--accent);text-decoration:none}.srp-q-files a:hover{text-decoration:underline}.srp-q-actions{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap;justify-content:flex-end}.srp-q-actions .srp-btn:disabled{opacity:.45;cursor:not-allowed}.srp-q-history{margin-top:10px;padding:8px 12px;background:transparent;border-radius:6px;font-size:12px}.srp-q-history summary{cursor:pointer;font-weight:600;color:var(--text-muted)}.srp-q-history ul{list-style:none;padding-left:0;margin:8px 0 0}.srp-q-history li{padding:4px 0;border-bottom:1px dashed color-mix(in srgb,var(--text) 8%,transparent)}.srp-q-history li:last-child{border-bottom:none}.srp-q-history-note{margin-left:12px;margin-top:2px;color:var(--text-muted);font-style:italic}.srp-q-note{display:flex;gap:6px;margin-top:8px;align-items:flex-start}.srp-q-note .srp-input{flex:1}.srp-q-by{font-size:11px;margin:4px 0 0}.srp-input{width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:inherit;font-size:13px;resize:vertical}.srp-btn{padding:4px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:inherit;cursor:pointer;font-size:12px}.srp-btn:hover{background:color-mix(in srgb,var(--text) 4%,transparent)}.srp-btn.is-ok{background:color-mix(in srgb,#16a34a 14%,transparent);border-color:#16a34a;color:#166534;font-weight:600}.srp-btn.is-rej{background:color-mix(in srgb,#b00020 14%,transparent);border-color:#b00020;color:#991b1b;font-weight:600}.srp-btn.is-blocked{background:#e2e8f0;border-color:#475569;color:#334155;font-weight:600}.srp-finalize{margin:24px 0;padding:16px 20px;border:1px solid var(--border);border-radius:10px;background:var(--bg-card)}[data-theme=light] .srp-finalize{background:#fff}.srp-finalize.is-done{border-left:4px solid #16a34a;background:color-mix(in srgb,#16a34a 6%,var(--bg-card))}[data-theme=light] .srp-finalize.is-done{background:color-mix(in srgb,#16a34a 6%,#ffffff)}.srp-finalize.is-done.is-cond{border-left-color:#d97706;background:color-mix(in srgb,#d97706 6%,var(--bg-card))}[data-theme=light] .srp-finalize.is-done.is-cond{background:color-mix(in srgb,#d97706 6%,#ffffff)}.srp-finalize.is-done.is-rej{border-left-color:#b00020;background:color-mix(in srgb,#b00020 6%,var(--bg-card))}[data-theme=light] .srp-finalize.is-done.is-rej{background:color-mix(in srgb,#b00020 6%,#ffffff)}.srp-finalize-result{font-size:14px;margin:0}.srp-final-icon{font-size:18px;font-weight:700}.srp-final-note{margin:10px 0 0;padding:8px 12px;border-left:3px solid color-mix(in srgb,var(--text) 25%,transparent);background:color-mix(in srgb,var(--text) 4%,transparent);font-style:italic;white-space:pre-wrap;border-radius:0 6px 6px 0}.srp-final-choices{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 12px}.srp-final-choice{padding:8px 14px;font-size:13px;font-weight:600;border-width:2px}.srp-final-choice.is-ok.is-active{background:#16a34a;color:#fff;border-color:#16a34a}.srp-final-choice.is-cond.is-active{background:#d97706;color:#fff;border-color:#d97706}.srp-final-choice.is-rej.is-active{background:#b00020;color:#fff;border-color:#b00020}.srp-final-note-label{display:block;font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:10px}.srp-final-note-label .srp-input{margin-top:4px;width:100%}.srp-finalize-btn.is-primary{background:var(--accent, #2563eb);color:#fff;border-color:var(--accent, #2563eb)}.srp-finalize h3{margin:0 0 6px;font-size:15px}.srp-finalize-stats{font-size:13px;margin:4px 0 8px}.srp-finalize-hint{color:#b00020;font-size:12px;margin:0 0 10px}.srp-finalize-actions{display:flex;gap:10px;flex-wrap:wrap}.srp-finalize-btn{padding:8px 16px;font-size:13px}.srp-finalize-btn:disabled{opacity:.4;cursor:not-allowed}.srp-log{margin-top:24px;padding-top:16px;border-top:1px solid var(--border);font-size:13px}.srp-emails{margin-top:24px;padding-top:16px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:12px;font-size:13px}.srp-emails-block>summary{cursor:pointer;font-weight:600;color:var(--text-muted);padding:4px 0}.srp-emails-empty{margin:8px 0 0}.srp-emails-list{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-direction:column;gap:6px}.srp-emails-item{padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg-card)}.srp-emails-detail>summary{cursor:pointer;line-height:1.5}.srp-emails-kind{font-weight:600}.srp-emails-to{color:var(--text-muted)}.srp-emails-when{font-size:12px}.srp-emails-subject{margin-top:8px;font-size:12px;color:var(--text)}.srp-emails-body{margin:6px 0 0;padding:8px 10px;border-radius:6px;background:color-mix(in srgb,var(--text) 4%,transparent);white-space:pre-wrap;font-family:inherit;font-size:12px;color:var(--text);max-height:260px;overflow:auto}.srp-log>summary{cursor:pointer;font-weight:600;color:var(--text-muted)}.srp-log-empty{margin:10px 0 0}.srp-log-list{list-style:none;padding-left:0;margin-top:10px}.srp-log-item{padding:8px 0;border-bottom:1px dashed color-mix(in srgb,var(--text) 8%,transparent)}.srp-log-item:last-child{border-bottom:none}.srp-log-line{line-height:1.5}.srp-log-icon{display:inline-block;min-width:22px}.srp-log-when{font-size:11px;margin-top:2px}.srp-log-note{margin-top:4px;margin-left:22px;padding:4px 8px;background:color-mix(in srgb,var(--text) 4%,transparent);border-radius:4px;font-style:italic;font-size:12px;color:var(--text)}.srp-summary-row{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;margin:0 0 14px;background:color-mix(in srgb,var(--text) 3%,transparent);border-radius:999px;font-size:13px;flex-wrap:wrap}.srp-summary-status{font-size:10px;font-weight:700;padding:3px 9px;border-radius:999px;letter-spacing:.06em;text-transform:uppercase}.srp-summary-status.is-submitted{background:#dcfce7;color:#166534}.srp-summary-status.is-draft{background:#fef3c7;color:#92400e}.srp-summary-decision{font-size:10px;font-weight:700;padding:3px 9px;border-radius:999px;letter-spacing:.04em;text-transform:uppercase}.srp-summary-decision.is-ok{background:#dcfce7;color:#166534}.srp-summary-decision.is-cond{background:#fef3c7;color:#92400e}.srp-summary-decision.is-rej{background:#fee2e2;color:#991b1b}.srp-summary-lock{font-size:13px;opacity:.7}.srp-summary-who{font-weight:600;color:var(--text)}.srp-summary-date{font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}.srp-summary-collapsible{margin:0 0 16px;padding:10px 14px;background:color-mix(in srgb,var(--text) 3%,transparent);border-radius:10px;font-size:13px}.srp-summary-collapsible>summary{cursor:pointer;font-weight:600;color:var(--text);list-style:none;-webkit-user-select:none;user-select:none}.srp-summary-collapsible[open]>summary{margin-bottom:12px}.srp-summary-collapsible .itm-submission-answers{display:flex;flex-direction:column;gap:14px}.srp-summary-collapsible .itm-sub-section>h4{font-size:14px;font-weight:700;margin:0 0 4px;display:flex;align-items:center;gap:8px;color:var(--text)}.srp-summary-collapsible .itm-sub-answer{display:grid;grid-template-columns:minmax(160px,1fr) 2fr;gap:12px;padding:6px 10px;background:var(--bg-card);border-radius:6px;font-size:12px;border-left:3px solid transparent}.srp-summary-collapsible .itm-sub-answer.is-approved{border-left-color:#16a34a}.srp-summary-collapsible .itm-sub-answer.is-rejected{border-left-color:#dc2626}.srp-summary-collapsible .itm-sub-q{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--text);font-weight:500}.srp-summary-collapsible .itm-sub-a{color:var(--text-muted);word-break:break-word}.srp-summary-collapsible .itm-sub-badge{display:inline-flex;align-items:center;gap:3px;font-size:9px;font-weight:700;padding:2px 6px;border-radius:999px;letter-spacing:.02em;background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--text-muted)}.srp-summary-collapsible .itm-sub-badge-ok{background:#dcfce7;color:#166534}.srp-summary-collapsible .itm-sub-badge-rej{background:#fee2e2;color:#991b1b}.srp-summary-collapsible .itm-sub-badge-alert{background:#fef3c7;color:#92400e}.srp-summary-collapsible .itm-sub-badge-change{background:#dbeafe;color:#1d4ed8}.srp-summary-collapsible{margin:14px 0 0}.srp-summary-collapsible>summary{list-style:none;cursor:pointer;-webkit-user-select:none;user-select:none}.srp-summary-collapsible>summary::-webkit-details-marker{display:none}.srp-summary-collapsible>summary.srp-summary-row{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;background:color-mix(in srgb,var(--text) 3%,transparent);border:1px solid color-mix(in srgb,var(--text) 6%,transparent);border-radius:999px;font-size:13px;flex-wrap:wrap;transition:background .15s ease,border-color .15s ease}.srp-summary-collapsible>summary.srp-summary-row:hover{background:color-mix(in srgb,var(--text) 5%,transparent);border-color:color-mix(in srgb,var(--text) 12%,transparent)}.srp-summary-caret{color:var(--text-muted);font-size:12px;transition:transform .18s ease;margin-left:4px}.srp-summary-collapsible[open] .srp-summary-caret{transform:rotate(90deg)}.srp-summary-collapsible[open]>summary.srp-summary-row{border-radius:18px 18px 0 0;margin-bottom:0}.srp-summary-collapsible[open] .itm-submission-answers{border:1px solid color-mix(in srgb,var(--text) 6%,transparent);border-top:none;border-radius:0 0 14px 14px;padding:18px 20px;background:var(--bg-card)}.srp-help{margin-top:28px;padding:22px 26px;background:var(--bg-card);border:1px solid var(--border);border-radius:14px}.srp-help-title{font-size:16px;font-weight:700;color:var(--text);margin:0 0 14px}.srp-help-list{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:10px;color:var(--text);line-height:1.55;font-size:14px}.srp-help-list li strong{font-weight:700}.srp-help-chip{display:inline-block;padding:1px 8px;border-radius:999px;background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--text);font-size:12px;font-weight:600;white-space:nowrap}.srp-btn-needs-action{border-color:#f59e0b!important;color:#92400e;background:color-mix(in srgb,#f59e0b 12%,transparent);font-weight:600}.srp-btn-needs-action:hover{background:color-mix(in srgb,#f59e0b 20%,transparent)}.srp-btn-pulse{display:inline-block;animation:srp-pulse 1.6s ease-in-out infinite}@keyframes srp-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(1.15)}}.srp-scores{margin-top:24px;padding:16px 18px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.srp-scores-title{margin:0 0 4px;font-size:15px}.srp-scores-hint{margin:0 0 12px;font-size:12px}.srp-scores-global{display:flex;gap:10px;align-items:baseline;font-size:15px;margin-bottom:8px}.srp-scores-label{color:var(--text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.srp-scores-value{font-family:ui-monospace,SFMono-Regular,monospace;font-weight:600;color:var(--accent, #32937c)}.srp-scores-sections{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:4px;font-size:13px}.srp-scores-section-name{font-weight:600}.srp-scores-section-mode{font-size:11px}.price-requests-page{max-width:var(--page-max-width);margin:0 auto;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom)}.pr-table{width:100%;border-collapse:collapse}.pr-table th{text-align:left;padding:10px 12px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--text);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.pr-table th.num,.pr-table td.num{text-align:right}.pr-table td{padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.pr-row{cursor:pointer}.pr-row:hover td{background:color-mix(in srgb,var(--accent) 6%,transparent)}.pr-badge{display:inline-block;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:700}.pr-badge.has{background:#22c55e40;color:var(--text);border:1px solid rgba(34,197,94,.5)}.pr-badge.none{background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text-muted)}.pr-new-modal,.pr-detail-modal,.pr-sub-modal{max-width:1100px;width:96vw;max-height:92vh;display:flex;flex-direction:column}.pr-new-modal .modal-body,.pr-detail-modal .modal-body,.pr-sub-modal .modal-body{overflow-y:auto}.pr-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:14px}.pr-articles-list{max-height:50vh;overflow-y:auto;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:10px;padding:8px}.pr-article-row{display:grid;grid-template-columns:24px 80px 1fr auto;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;cursor:pointer}.pr-article-row:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.pr-article-row.is-selected{background:color-mix(in srgb,var(--accent) 18%,transparent)}.pr-article-code{font-family:var(--font-mono, monospace);font-size:11px;color:color-mix(in srgb,var(--accent) 60%,var(--text))}.pr-article-name{font-weight:500;color:var(--text)}.pr-article-sup{color:var(--text-muted);font-size:12px}.pr-detail-meta{display:flex;flex-direction:column;gap:6px;padding:14px;border-radius:10px;background:color-mix(in srgb,var(--accent) 6%,transparent);border:1px solid color-mix(in srgb,var(--accent) 18%,transparent);margin-bottom:18px}.pr-detail-meta code{background:color-mix(in srgb,var(--text) 12%,transparent);padding:2px 8px;border-radius:4px;font-family:var(--font-mono, monospace)}.pr-detail-items{padding-left:18px;max-height:200px;overflow-y:auto}.pr-detail-items li{padding:3px 0;font-size:13px}.pr-detail-subs{padding:0;list-style:none}.pr-detail-subs li{padding:6px 0}.pr-sub-table{width:100%;border-collapse:collapse;font-size:13px}.pr-sub-table th,.pr-sub-table td{padding:8px 10px;text-align:left;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.pr-sub-table th.num,.pr-sub-table td.num{text-align:right}.pr-sub-table th{background:color-mix(in srgb,var(--accent) 14%,transparent);font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:.06em}[data-theme=light] .price-requests-page .pr-table{background:#ffffff14;border-radius:var(--radius);overflow:hidden;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}[data-theme=light] .price-requests-page .pr-table th{background:#ffffff29;color:#fff}[data-theme=light] .price-requests-page .pr-table td{color:#fffffff2;border-bottom-color:#ffffff24}[data-theme=light] .price-requests-page .pr-row:hover td{background:#ffffff1a}[data-theme=light] .price-requests-page .pr-badge.has{background:#22c55e4d;color:#fff;border-color:#fff6}[data-theme=light] .price-requests-page .pr-badge.none{background:#ffffff1f;color:#ffffffd9}.projects-page{max-width:var(--page-max-width);margin:0 auto;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom)}.projects-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:48px;flex-wrap:wrap}.projects-hero-text{display:flex;flex-direction:column;gap:6px}.projects-hero-title{font-size:1.875rem;font-weight:700;letter-spacing:-.025em;margin:0;background:linear-gradient(100deg,color-mix(in srgb,var(--accent) 25%,#ffffff),color-mix(in srgb,var(--accent) 55%,#ffffff),color-mix(in srgb,var(--accent) 25%,#ffffff));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:projects-title-shimmer 8s linear infinite}@keyframes projects-title-shimmer{0%{background-position:0% 50%}to{background-position:200% 50%}}.projects-hero-subtitle{font-size:13px;color:var(--text-muted);margin:0;font-weight:500}.projects-hero-cta{white-space:nowrap;border-radius:999px;padding:10px 20px;position:relative;overflow:hidden;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .3s ease}.projects-hero-cta:hover{transform:translateY(-2px);box-shadow:0 8px 24px -8px color-mix(in srgb,var(--accent) 60%,transparent),var(--shadow-glow, 0 0 20px rgba(50, 148, 124, .25))}.projects-hero-cta:active{transform:translateY(0)}.projects-view-btn,.projects-filter-icon{transition:var(--transition),transform .2s ease}.projects-view-btn:hover{transform:scale(1.08)}.projects-filter-icon:hover{transform:scale(1.06)}.projects-view-btn.is-active{background:color-mix(in srgb,var(--accent) 14%,transparent)}.projects-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:32px;flex-wrap:wrap}.projects-search{position:relative;flex:1;min-width:220px;max-width:340px;display:inline-flex;align-items:center}.projects-search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:color-mix(in srgb,var(--text) 55%,transparent);pointer-events:none}.projects-search-input{width:100%;height:40px;padding:4px 16px 4px 40px;border:1px solid color-mix(in srgb,var(--text-muted) 22%,transparent);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);color:var(--text);font:inherit;font-size:13px;outline:none;transition:var(--transition);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.projects-search-input::placeholder{color:color-mix(in srgb,var(--text) 50%,transparent)}.projects-search-input:hover{border-color:color-mix(in srgb,var(--text-muted) 40%,transparent)}.projects-search-input:focus{border-color:var(--accent);background:var(--bg-card)}.projects-filter-icon{position:relative;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid color-mix(in srgb,var(--text-muted) 22%,transparent);background:color-mix(in srgb,var(--bg-card) 60%,transparent);color:color-mix(in srgb,var(--text) 65%,transparent);cursor:pointer;transition:var(--transition);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.projects-filter-icon:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.projects-filter-icon.is-active{color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.projects-filter-icon.is-active:after{content:"";position:absolute;top:5px;right:5px;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--bg-base, var(--bg-card))}.projects-filter-icon-select{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;border:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;font:inherit}.projects-view-toggle{display:inline-flex;border:1px solid color-mix(in srgb,var(--text-muted) 22%,transparent);border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--bg-card) 70%,transparent);margin-left:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.projects-view-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:none;background:transparent;cursor:pointer;color:var(--text-muted);transition:var(--transition)}.projects-view-btn:hover{color:var(--text)}.projects-view-btn.is-active{color:var(--accent)}.projects-flat{display:flex;flex-direction:column;gap:10px}.projects-flat-row{display:grid;grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:16px;padding:18px 20px;border-radius:14px;border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);background:var(--bg-card);cursor:pointer;transition:background .25s ease,transform .25s cubic-bezier(.4,0,.2,1),padding .25s ease,border-color .25s ease,box-shadow .25s ease;position:relative;opacity:0;animation:projects-row-in .45s cubic-bezier(.4,0,.2,1) forwards}.projects-flat-row:before{content:"";position:absolute;left:0;top:10%;bottom:10%;width:3px;border-radius:0 3px 3px 0;background:var(--accent);opacity:0;transform:scaleY(.4);transition:opacity .25s ease,transform .25s cubic-bezier(.4,0,.2,1)}.projects-flat-row:hover{background:color-mix(in srgb,var(--accent) 8%,var(--bg-card));border-color:color-mix(in srgb,var(--accent) 40%,transparent);transform:translate(4px);padding-left:26px;box-shadow:0 4px 14px -6px #0003}.projects-flat-row:hover:before{opacity:1;transform:scaleY(1)}.projects-flat-row:hover .projects-flat-delete{opacity:1}.projects-flat-row:hover .projects-flat-dot{transform:scale(1.6);box-shadow:0 0 0 4px color-mix(in srgb,currentColor 18%,transparent)}@keyframes projects-row-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.projects-flat-row:nth-child(1){animation-delay:.02s}.projects-flat-row:nth-child(2){animation-delay:.05s}.projects-flat-row:nth-child(3){animation-delay:.08s}.projects-flat-row:nth-child(4){animation-delay:.11s}.projects-flat-row:nth-child(5){animation-delay:.14s}.projects-flat-row:nth-child(6){animation-delay:.17s}.projects-flat-row:nth-child(7){animation-delay:.2s}.projects-flat-row:nth-child(8){animation-delay:.23s}.projects-flat-row:nth-child(9){animation-delay:.26s}.projects-flat-row:nth-child(n+10){animation-delay:.29s}.projects-flat-dot{width:6px;height:6px;border-radius:50%;background:currentColor;color:var(--text-muted);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s ease}.projects-flat-dot.color-gray{color:#334155}.projects-flat-dot.color-blue{color:#3b82f6}.projects-flat-dot.color-green{color:var(--accent)}.projects-flat-dot.color-red{color:#ef4444}.projects-flat-dot.color-orange{color:#f59e0b}.projects-flat-dot.color-muted{color:#475569}.projects-flat-name{font-size:15px;font-weight:600;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em}.projects-flat-client{font-size:13px;color:var(--text-muted);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.projects-flat-phase{font-size:12px;font-weight:600;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);padding:4px 10px;border-radius:999px;transition:background .25s ease,color .25s ease,box-shadow .25s ease}.projects-flat-row:hover .projects-flat-phase,.project-card:hover .projects-flat-phase{background:color-mix(in srgb,var(--accent) 25%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent)}.projects-flat-delete{border:none;background:transparent;color:color-mix(in srgb,var(--text) 50%,transparent);width:24px;height:24px;border-radius:50%;font-size:16px;line-height:1;cursor:pointer;opacity:0;transition:var(--transition)}.projects-flat-delete:hover{color:var(--danger, #c47a7e);background:color-mix(in srgb,var(--danger, #c47a7e) 15%,transparent)}.projects-list-scroll{overflow-x:auto}.projects-list-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}.projects-list-table{background:#fff;border:1px solid #e2e8f0;border-radius:var(--radius);overflow:hidden;box-shadow:0 6px 20px -10px #00000059}.projects-list-table thead th{color:#475569;font-weight:700;font-size:11px;padding:14px 16px;text-align:left;background:#fff;border-bottom:1px solid #d8e0e8;white-space:nowrap;text-transform:uppercase;letter-spacing:.08em}.projects-list-table tbody td{padding:16px;border-bottom:1px solid #e2e8f0;color:#1e293b;vertical-align:middle;font-size:14px;background:#fff}.projects-list-table tbody tr:last-child td{border-bottom:none}.projects-list-row{cursor:pointer;opacity:0;animation:projects-row-in .4s cubic-bezier(.4,0,.2,1) forwards}.projects-list-row td{transition:background .2s ease,color .2s ease}.projects-list-row:hover td{background:color-mix(in srgb,var(--accent) 10%,#ffffff)}.projects-list-row:hover .projects-list-name{color:var(--accent-teal, #095872)}.projects-list-row:nth-child(1){animation-delay:.02s}.projects-list-row:nth-child(2){animation-delay:.05s}.projects-list-row:nth-child(3){animation-delay:.08s}.projects-list-row:nth-child(4){animation-delay:.11s}.projects-list-row:nth-child(5){animation-delay:.14s}.projects-list-row:nth-child(6){animation-delay:.17s}.projects-list-row:nth-child(7){animation-delay:.2s}.projects-list-row:nth-child(8){animation-delay:.23s}.projects-list-row:nth-child(n+9){animation-delay:.26s}.projects-list-name{font-weight:600;color:#0f172a}.projects-list-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;--status-color: var(--text);color:var(--status-color);background:color-mix(in srgb,var(--status-color) 14%,transparent)}.projects-list-status.color-gray{--status-color: #334155}.projects-list-status.color-blue{--status-color: #3b82f6}.projects-list-status.color-green{--status-color: var(--accent)}.projects-list-status.color-red{--status-color: #ef4444}.projects-list-status.color-orange{--status-color: #f59e0b}.projects-list-status.color-muted{--status-color: #475569}.projects-list-status.color-gray,.projects-list-status.color-muted{background:color-mix(in srgb,var(--status-color) 22%,transparent)}.projects-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.project-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:18px 18px 16px;background:var(--bg-card);border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);border-radius:var(--radius);cursor:pointer;transition:transform .35s cubic-bezier(.4,0,.2,1),border-color .3s ease,background .3s ease,box-shadow .35s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:hidden;opacity:0;animation:projects-card-in .5s cubic-bezier(.4,0,.2,1) forwards}.project-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 30%,color-mix(in srgb,var(--accent) 18%,transparent) 50%,transparent 70%);transform:translate(-110%);transition:transform .7s cubic-bezier(.4,0,.2,1);pointer-events:none}.project-card:after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--accent-gradient, linear-gradient(90deg, #095872, #32947c, #4f9b8f));transform:scaleX(0);transform-origin:left center;transition:transform .4s cubic-bezier(.4,0,.2,1)}.project-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--bg-card);transform:translateY(-4px);box-shadow:0 14px 32px -14px #0000008c,0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent),var(--shadow-glow, 0 0 24px rgba(50, 148, 124, .18))}.project-card:hover:before{transform:translate(110%)}.project-card:hover:after{transform:scaleX(1)}.project-card:active{transform:translateY(-2px)}.project-card:hover .project-card-delete{opacity:1}.project-card:hover .project-card-name{color:var(--accent)}.project-card-name{transition:color .25s ease}@keyframes projects-card-in{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.project-card:nth-child(1){animation-delay:.02s}.project-card:nth-child(2){animation-delay:.06s}.project-card:nth-child(3){animation-delay:.1s}.project-card:nth-child(4){animation-delay:.14s}.project-card:nth-child(5){animation-delay:.18s}.project-card:nth-child(6){animation-delay:.22s}.project-card:nth-child(7){animation-delay:.26s}.project-card:nth-child(8){animation-delay:.3s}.project-card:nth-child(9){animation-delay:.34s}.project-card:nth-child(n+10){animation-delay:.38s}.project-card>*{position:relative;z-index:1}.project-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.project-card-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;display:inline-block}.project-card-delete{border:none;background:transparent;color:color-mix(in srgb,var(--text) 50%,transparent);width:24px;height:24px;border-radius:50%;font-size:16px;line-height:1;cursor:pointer;opacity:0;transition:var(--transition)}.project-card-delete:hover{color:var(--danger, #c47a7e);background:color-mix(in srgb,var(--danger, #c47a7e) 15%,transparent)}.project-card-name{margin:4px 0 0;font-size:16px;font-weight:700;color:var(--text);letter-spacing:-.01em;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.project-card-client{margin:0;font-size:13px;font-weight:500;color:color-mix(in srgb,var(--text) 78%,transparent)}.project-card-location{margin:0;font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--text-muted) 14%,transparent)}.project-card-ref{font-family:var(--font-mono, monospace);font-size:11px;color:var(--text-dim, var(--text-muted));letter-spacing:.02em}.modal-form{display:flex;flex-direction:column;gap:14px}.form-error{color:var(--danger);font-size:13px;padding:8px;background:var(--danger-muted-bg);border-radius:var(--radius-sm)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}@media(max-width:768px){.projects-page{padding:32px 16px 56px}}.projects-filter-icon.is-active:after{animation:projects-pulse 1.8s ease-in-out infinite}@keyframes projects-pulse{0%,to{box-shadow:0 0 0 2px var(--bg-base, var(--bg-card)),0 0 color-mix(in srgb,var(--accent) 60%,transparent)}50%{box-shadow:0 0 0 2px var(--bg-base, var(--bg-card)),0 0 0 5px color-mix(in srgb,var(--accent) 0%,transparent)}}@media(prefers-reduced-motion:reduce){.projects-hero-title,.project-card,.projects-flat-row,.projects-list-row,.projects-filter-icon.is-active:after{animation:none!important}.project-card,.projects-flat-row,.projects-list-row{opacity:1!important}.project-card:before,.project-card:after{transition:none!important}}.hxp-eval-flag-inline{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;background:var(--bg-card);border:1px solid var(--border);border-radius:999px;margin-left:6px;font-size:11px}.hxp-eval-flag-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:1px 6px;border-radius:999px;font-size:11px;font-weight:700;color:#fff;letter-spacing:.02em}.docs-collapse-list{display:flex;flex-direction:column;gap:10px}.docs-item{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.docs-item:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 6px 16px #0000000f}.docs-item.is-open{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 8px 24px #00000014}.docs-item-header{width:100%;display:flex;align-items:center;gap:12px;padding:16px 18px;background:transparent;border:none;cursor:pointer;text-align:left;color:var(--text);font:inherit;transition:background .12s ease}.docs-item-header>.docs-item-summary{flex:1;min-width:0}.docs-item-header:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.docs-item-chevron{font-size:14px;color:var(--accent);font-weight:700;width:16px;text-align:center}.docs-item-title{font-size:15px;font-weight:600;color:var(--text);white-space:nowrap}.docs-item-summary{font-size:13px;color:color-mix(in srgb,var(--text) 65%,transparent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.docs-item-body{border-top:1px solid var(--border);padding:18px 22px 22px 54px;background:color-mix(in srgb,var(--accent) 3%,transparent)}.docs-item-content{margin:0;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:13px;line-height:1.6;color:var(--text);white-space:pre-wrap;word-break:break-word}@media(max-width:640px){.docs-item-summary{display:none}.docs-item-body{padding-left:22px}}.project-status-badge{position:relative;display:inline-block;--status-color: #6b7280;--status-bg: rgba(107, 114, 128, .18);--status-border: rgba(107, 114, 128, .4);z-index:1}.project-status-badge.is-open{z-index:9999}.project-status-badge.color-gray{--status-color: #1e293b;--status-bg: rgba(51, 65, 85, .45);--status-border: rgba(51, 65, 85, .7)}.project-status-badge.color-blue{--status-color: #1d4ed8;--status-bg: rgba(37, 99, 235, .28);--status-border: rgba(37, 99, 235, .55)}.project-status-badge.color-green{--status-color: #15803d;--status-bg: rgba(22, 163, 74, .28);--status-border: rgba(22, 163, 74, .55)}.project-status-badge.color-red{--status-color: #b91c1c;--status-bg: rgba(220, 38, 38, .28);--status-border: rgba(220, 38, 38, .55)}.project-status-badge.color-muted{--status-color: #334155;--status-bg: rgba(71, 85, 105, .38);--status-border: rgba(71, 85, 105, .6)}.project-status-badge-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border:1px solid var(--status-border);border-radius:999px;background:var(--status-bg);color:var(--status-color);font-size:12px;font-weight:700;cursor:pointer;transition:filter .15s ease,transform .15s ease;line-height:1.4}.project-status-badge-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.project-status-badge.is-saving .project-status-badge-btn{opacity:.5;cursor:progress}.project-status-badge-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--status-color)}.project-status-badge-caret{font-size:10px;opacity:.7;margin-left:2px}.project-status-badge-dropdown{position:absolute;bottom:calc(100% + 4px);left:0;z-index:9999;background:#136875;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius);box-shadow:0 12px 28px -14px #00000080;min-width:160px;overflow:hidden}@keyframes project-status-dropdown-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.project-status-badge-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;text-align:left;font-size:13px;color:#e2e8f0;cursor:pointer;font-family:inherit;--opt-color: #6b7280;--opt-bg: rgba(107, 114, 128, .18)}.project-status-badge-option.color-gray{--opt-color: #334155;--opt-bg: rgba(51, 65, 85, .3)}.project-status-badge-option.color-blue{--opt-color: #3b82f6;--opt-bg: rgba(59, 130, 246, .2)}.project-status-badge-option.color-green{--opt-color: #16a34a;--opt-bg: rgba(22, 163, 74, .22)}.project-status-badge-option.color-red{--opt-color: #ef4444;--opt-bg: rgba(239, 68, 68, .22)}.project-status-badge-option.color-muted{--opt-color: #475569;--opt-bg: rgba(71, 85, 105, .25)}.project-status-badge-option .project-status-badge-dot{background:var(--opt-color)}.project-status-badge-option:hover{background:#ffffff0f;color:#fff}.project-status-badge-option.is-current{font-weight:700;color:var(--opt-color);background:var(--opt-bg)}[data-theme=light] .project-status-badge-btn{background:#fff;color:var(--status-color);border-color:var(--status-border);box-shadow:0 1px 3px #00000014}[data-theme=light] .project-status-badge-btn:hover{background:#fff;filter:brightness(.98)}[data-theme=light] .project-status-badge-dropdown{background:#fff;border:1px solid var(--border);box-shadow:0 12px 28px -14px #00000040}[data-theme=light] .project-status-badge-option{color:var(--text)}[data-theme=light] .project-status-badge-option:hover{background:var(--bg-input);color:var(--text)}[data-theme=light] .project-status-badge-option.is-current{color:var(--opt-color);background:var(--opt-bg)}.settings-page{max-width:var(--page-max-width);margin:0 auto;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom)}.settings-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:24px;display:flex;flex-direction:column;gap:16px}.settings-section-title{font-size:1rem;font-weight:700;color:var(--text);margin:0}.settings-field{display:flex;flex-direction:column;gap:8px}.settings-field-row{display:flex;align-items:center;gap:8px}.settings-input{width:100px!important}.settings-signatories{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.settings-signatory-row{display:flex;align-items:center;gap:10px;width:100%;max-width:520px}.settings-signatory-default{margin:0;cursor:pointer}.settings-signatory-default:disabled{cursor:not-allowed}.settings-section-hint{font-size:12px;margin-top:-8px}.settings-save-status{font-size:11px;font-weight:600;margin-left:auto}.settings-gantt-templates{display:flex;flex-direction:column;gap:16px}.settings-gantt-template{border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;background:var(--bg-elevated);display:flex;flex-direction:column;gap:10px}.settings-gantt-template-header{display:flex;gap:8px;align-items:center}.settings-gantt-tasks{display:flex;flex-direction:column;gap:3px;margin-top:8px}.settings-gantt-task-head,.settings-gantt-task-row{display:grid;grid-template-columns:minmax(140px,240px) 56px 140px 32px;gap:10px;align-items:center}.settings-gantt-task-row .form-input,.settings-gantt-task-row input[type=text],.settings-gantt-task-row input[type=number]{background:transparent;border:none;border-radius:0;padding:4px 6px;font-size:13px;height:auto;transition:background .12s}.settings-gantt-task-row .form-input:focus,.settings-gantt-task-row input[type=text]:focus{background:var(--bg-elevated);outline:none;box-shadow:none}.settings-gantt-task-row .settings-color-swatch{width:22px;height:22px;border:1px solid var(--border)}.settings-gantt-task-row .settings-color-hex{background:transparent!important;border:none!important;border-radius:0!important;padding:2px 4px!important;height:24px!important;font-size:11px!important}.settings-gantt-task-row .settings-color-hex:focus{background:var(--bg-elevated)!important}.settings-gantt-task-actions{display:flex;justify-content:flex-end}.settings-gantt-task-row .btn-danger-ghost{background:transparent;border:none;padding:0 6px;opacity:.5;transition:opacity .15s,color .15s}.settings-gantt-task-row:hover .btn-danger-ghost{opacity:1}.settings-gantt-task-desc-row{margin-top:-2px;margin-bottom:4px}.settings-gantt-task-desc{width:100%;resize:vertical;font-size:12px}.settings-gantt-after-previous{display:flex;align-items:center;justify-content:center;cursor:pointer}.settings-gantt-after-previous input[type=checkbox]{margin:0;cursor:pointer}.settings-gantt-after-previous input[type=checkbox]:disabled{cursor:not-allowed;opacity:.3}.settings-gantt-task-head{font-size:10px;text-transform:uppercase;font-weight:600;color:var(--text-muted);letter-spacing:.05em;padding:0 4px 4px;border-bottom:1px solid var(--border);margin-bottom:4px}.settings-gantt-color{padding:2px!important;height:32px!important}.settings-color-picker{display:flex;gap:4px;align-items:center}.settings-color-swatch{width:28px;height:28px;padding:1px;border:1px solid var(--border);border-radius:4px;cursor:pointer;background:transparent;flex-shrink:0}.settings-color-hex{flex:1;font-family:monospace;font-size:11px;padding:4px 6px!important;height:28px!important;text-transform:lowercase;min-width:0}.settings-tpl-gantt{margin:12px 0 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;overflow:hidden}.settings-tpl-gantt-header{display:grid;grid-template-columns:22px 200px 1fr 32px;border-bottom:1px solid var(--border);background:var(--bg-elevated);font-size:11px}.settings-tpl-gantt-header:before{content:""}.settings-tpl-gantt-header-label{padding:6px 10px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;border-right:1px solid var(--border);display:flex;align-items:center;gap:8px}.settings-tpl-gantt-add-root{width:18px;height:18px;border-radius:4px;border:none;background:transparent;color:var(--text-dim);cursor:pointer;font-size:14px;line-height:1;padding:0;transition:color .15s,background .15s}.settings-tpl-gantt-add-root:hover{color:var(--accent)}.settings-tpl-gantt-ruler{position:relative;height:28px}.settings-tpl-gantt-day{position:absolute;top:50%;transform:translate(-50%,-50%);font-size:10px;color:var(--text-dim);font-variant-numeric:tabular-nums}.settings-tpl-gantt-row{display:grid;grid-template-columns:22px 200px 1fr 32px;border-bottom:1px solid var(--border);min-height:32px;align-items:center;position:relative}.settings-tpl-gantt-grip{display:flex;align-items:center;justify-content:center;height:100%;cursor:grab;color:var(--text-dim);font-size:11px;letter-spacing:-2px;-webkit-user-select:none;user-select:none;opacity:0;transition:opacity .15s,color .15s}.settings-tpl-gantt-row:hover .settings-tpl-gantt-grip{opacity:.45}.settings-tpl-gantt-grip:hover{opacity:1!important;color:var(--text)}.settings-tpl-gantt-grip:active{cursor:grabbing}.settings-tpl-gantt-row.is-drop-before:before,.settings-tpl-gantt-row.is-drop-after:after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--accent);z-index:10;pointer-events:none}.settings-tpl-gantt-row.is-drop-before:before{top:-1px}.settings-tpl-gantt-row.is-drop-after:after{bottom:-1px}.settings-tpl-gantt-desc-toggle{width:24px;height:24px;border:none;background:transparent;color:var(--text-dim);cursor:pointer;font-size:12px;line-height:1;padding:0;border-radius:4px;margin:0 auto;transition:color .15s,background .15s}.settings-tpl-gantt-desc-toggle:hover{color:var(--text);background:var(--bg-input, var(--bg-elevated))}.settings-tpl-gantt-desc-toggle.has-content{color:var(--accent)}.settings-tpl-gantt-desc{padding:8px 16px 12px;border-bottom:1px solid var(--border);background:var(--bg-elevated)}.settings-tpl-gantt-desc-input{width:100%;resize:vertical;font-size:12px}.settings-tpl-gantt-footer{display:flex;justify-content:flex-end;padding:6px 12px;font-size:11px;font-weight:600;color:var(--text-dim);background:var(--bg-elevated);border-top:1px solid var(--border);font-variant-numeric:tabular-nums;letter-spacing:.02em}.settings-tpl-gantt-row:last-child{border-bottom:none}.settings-tpl-gantt-row:nth-child(2n){background:var(--bg-elevated)}.settings-tpl-gantt-name-cell{border-right:1px solid var(--border);display:flex;align-items:center;min-width:0}.settings-tpl-gantt-tree-glyph{flex-shrink:0;color:var(--text-dim);font-family:monospace;font-size:11px;margin-left:2px;margin-right:2px;-webkit-user-select:none;user-select:none;line-height:1}.settings-tpl-gantt-add-sub{width:18px;height:18px;border-radius:4px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:13px;line-height:1;padding:0;margin-right:6px;flex-shrink:0;opacity:0;transition:opacity .15s,color .15s}.settings-tpl-gantt-row:hover .settings-tpl-gantt-add-sub{opacity:.55}.settings-tpl-gantt-add-sub:hover{opacity:1!important;color:var(--accent)}.settings-tpl-gantt-name-text{flex:1;min-width:0;padding:4px 10px;font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:text;-webkit-user-select:none;user-select:none}.settings-tpl-gantt-name-text.is-empty{color:var(--text-dim);font-style:italic}.settings-tpl-gantt-name{flex:1;min-width:0;padding:4px 10px;font-size:13px;font-family:inherit;color:var(--text);background:transparent;border:none;outline:none;box-sizing:border-box}.settings-tpl-gantt-name::placeholder{color:var(--text-dim);font-style:italic}.settings-tpl-gantt-track{position:relative;height:22px;margin:0 8px}.settings-tpl-gantt-bar{position:absolute;top:0;height:100%;border-radius:3px;cursor:grab;box-shadow:0 1px 1px #00000014,inset 0 -1px #00000014}.settings-tpl-gantt-bar:active{cursor:grabbing}.settings-tpl-gantt-bar-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:500;color:#00000073;font-variant-numeric:tabular-nums;pointer-events:none;-webkit-user-select:none;user-select:none}.settings-tpl-gantt-bar-handle{position:absolute;top:-2px;bottom:-2px;width:10px;cursor:ew-resize;z-index:6}.settings-tpl-gantt-bar-handle.is-start{left:-5px}.settings-tpl-gantt-bar-handle.is-end{right:-5px}.settings-tpl-gantt-bar-handle:after{content:"";position:absolute;top:25%;bottom:25%;left:50%;width:3px;margin-left:-1.5px;background:#ffffffd9;border-radius:2px;box-shadow:0 0 0 1px #0003;opacity:0;transition:opacity .15s}.settings-tpl-gantt-bar:hover .settings-tpl-gantt-bar-handle:after{opacity:1}.catalog-table{width:100%;border-collapse:collapse;font-size:13px}.catalog-table th{background:var(--bg-input);color:var(--text-muted);font-weight:600;padding:10px 16px;text-align:left;border-bottom:1px solid var(--border)}.catalog-table td{padding:10px 16px;border-bottom:1px solid var(--border);color:var(--text)}.settings-notify-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:12px}.settings-notify-phase{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 16px;box-shadow:0 1px 3px #0000000a}.settings-notify-phase-title{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--border)}.settings-notify-users{display:flex;flex-wrap:wrap;gap:6px}.settings-notify-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:16px;font-size:12.5px;color:var(--text-muted);cursor:pointer;transition:all .12s}.settings-notify-chip:hover{border-color:var(--accent);color:var(--text)}.settings-notify-chip.is-selected{background:var(--accent);color:#fff;border-color:var(--accent)}.settings-notify-chip-check{font-size:10px;line-height:1}.settings-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:24px}.settings-tab{background:none;border:none;padding:10px 18px;font-size:14px;font-weight:600;color:#ffffffb3;cursor:pointer;border-bottom:2px solid transparent;transition:var(--transition)}.settings-tab:hover{color:#fff}.settings-tab.is-active{color:#fff;border-bottom-color:#fff}.settings-supplier-levels{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.settings-supplier-level{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.settings-supplier-level-header{display:flex;gap:8px;align-items:center}.settings-supplier-level-rules{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px}.settings-supplier-level-rules-title{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.settings-supplier-level-rule-row{display:grid;grid-template-columns:200px 1fr;gap:12px;align-items:center}.settings-supplier-level-rule-flag{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text);cursor:pointer}@media(max-width:640px){.settings-supplier-level-rule-row{grid-template-columns:1fr}}.settings-supplier-levels-table{width:auto;border-collapse:separate;border-spacing:0;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden;font-size:13px}.settings-supplier-levels-table thead th{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding:10px;text-align:left;background:var(--bg-elevated);border-bottom:1px solid var(--border)}.settings-supplier-levels-table tbody td{padding:10px;vertical-align:top;border-bottom:1px solid var(--border)}.settings-supplier-levels-table tbody tr:last-child td{border-bottom:0}.settings-supplier-level-desc{margin-top:6px;font-size:12px}.settings-supplier-level-cell{min-width:0;width:110px;max-width:130px}.settings-supplier-levels-table{table-layout:fixed}.settings-supplier-level-cell .form-input-sm{font-size:12px;padding:4px 6px;margin-top:4px;width:100%}.settings-supplier-level-cell .csl-wrap{margin-top:4px}.settings-supplier-level-cell .csl-trigger{font-size:11px;padding:4px 6px;min-height:24px;gap:4px}.settings-supplier-level-cell .csl-chevron{width:12px;height:12px}.settings-supplier-level-cell .csl-option-text,.settings-supplier-level-cell .csl-trigger-placeholder{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-supplier-evaluators{display:flex;flex-direction:column;gap:8px;max-width:480px}.settings-supplier-evaluator-row{display:flex;gap:8px;align-items:center}.settings-supplier-evaluator-row .form-input{flex:1}.settings-supplier-password-row{display:flex;gap:8px;align-items:center;max-width:420px}.settings-supplier-password-row .form-input{flex:1}.settings-supplier-score-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px 14px}.settings-field{display:flex;flex-direction:column;gap:4px}.settings-field .form-label{font-size:12px;font-weight:600;color:var(--text-muted)}@media(max-width:768px){.settings-page{padding:16px}}.settings-team-filters{display:flex;gap:6px;margin-bottom:14px;flex-wrap:wrap}.settings-team-filters .btn-ghost.is-active{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--text)}.settings-team-table{width:100%;border-collapse:collapse;font-size:13px}.settings-team-table thead th{text-align:left;font-size:11px;font-weight:600;color:var(--text-muted);padding:8px 12px;border-bottom:1px solid var(--border)}.settings-team-table tbody td{padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 12%,transparent)}.settings-team-table tbody tr:last-child td{border-bottom:none}.settings-team-name{font-weight:600;color:var(--text)}.settings-team-brand{display:inline-block;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:700;text-transform:capitalize}.settings-team-brand.brand-ewen{background:color-mix(in srgb,var(--accent) 18%,transparent);color:color-mix(in srgb,var(--accent) 30%,#ffffff);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}.settings-team-brand.brand-helexia{background:#506ec82e;color:#b9c8ff;border:1px solid rgba(80,110,200,.4)}[data-theme=light] .settings-team-brand.brand-ewen{color:color-mix(in srgb,var(--accent) 75%,#000000);background:color-mix(in srgb,var(--accent) 12%,#ffffff);border-color:color-mix(in srgb,var(--accent) 30%,#ffffff)}[data-theme=light] .settings-team-brand.brand-helexia{color:#3a4fa3;background:#506ec81a;border-color:#506ec859}.settings-team-email-btn{border:1px dashed transparent;background:transparent;font:inherit;color:var(--text);cursor:pointer;padding:4px 8px;border-radius:6px;text-align:left;width:100%}.settings-team-email-btn:hover{border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.settings-team-email-edit{display:flex;gap:6px;align-items:center}.settings-team-email-edit .form-input{flex:1;height:32px}.settings-team-brand-btn{background:none;border:none;padding:0;cursor:pointer;display:inline-flex;align-items:center}.settings-team-brand-btn:hover .settings-team-brand{filter:brightness(1.08)}.settings-team-brand-edit{display:flex;gap:6px;align-items:center}.settings-team-brand-edit .csl-wrap{min-width:130px}.proj-admin-page{padding:28px 32px 64px;max-width:960px;margin:0 auto}.proj-admin-noaccess{max-width:480px;margin:100px auto;text-align:center;padding:36px;border-radius:16px;background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent)}.proj-admin-noaccess h1{margin:0 0 12px}.proj-admin-section{margin-top:28px;padding:22px 24px;background:color-mix(in srgb,var(--accent) 5%,transparent);border:1px solid color-mix(in srgb,var(--accent) 16%,transparent);border-radius:14px}.proj-admin-section-title{margin:0 0 14px;font-size:1.05rem;font-weight:700;color:color-mix(in srgb,var(--accent) 50%,#ffffff);text-transform:uppercase;letter-spacing:.04em}.proj-admin-page .text-muted{color:#ffffffc7}.proj-admin-page .text-dim{color:#ffffff9e}.proj-admin-page label.form-label{color:#fff;font-weight:600}.proj-admin-page .projects-hero .btn-ghost{background:#ffffff2e;border:1px solid rgba(255,255,255,.32);color:#fff;font-weight:600}.proj-admin-page .projects-hero .btn-ghost:hover{background:#ffffff4d;border-color:#ffffff80}.proj-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:720px){.proj-admin-grid{grid-template-columns:1fr}}.proj-admin-locks{display:flex;flex-direction:column;gap:10px}.proj-admin-lock{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;border-radius:10px;background:#ffffff0f;border:1px solid rgba(255,255,255,.16);color:#fff}.proj-admin-lock strong{color:#fff}.proj-admin-lock .text-dim{color:#ffffffa6}.proj-admin-lock.is-locked{background:#ef44441a;border-color:#ef444459}.proj-admin-lock-info{display:flex;align-items:center;gap:14px}.proj-admin-lock-icon{font-size:22px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:color-mix(in srgb,var(--text) 6%,transparent)}.proj-admin-info-grid{display:grid;grid-template-columns:200px 1fr;gap:8px 16px;margin:0;font-size:13px}.proj-admin-info-grid dt{color:#ffffffb8;font-weight:600}.proj-admin-info-grid dd{margin:0;color:#fff}.proj-admin-lock-card{flex-direction:column;align-items:stretch;padding:14px 18px;background:#ffffff0d}.proj-admin-lock-card.is-locked{background:#ef444414;border-color:#ef44444d}.proj-admin-lock-card-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.proj-admin-lock-card-header strong{color:#fff;font-size:14px}.proj-admin-lock-card-rows{display:flex;flex-direction:column;gap:6px}.proj-admin-lock-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-radius:8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1)}.proj-admin-lock-row.is-locked{background:#ef44441a;border-color:#ef44444d}.proj-admin-lock-row-info{display:flex;align-items:center;gap:10px;min-width:0}.proj-admin-lock-row-icon{font-size:16px}.proj-admin-lock-row-label{color:#085872;font-weight:500;font-size:13px}.proj-admin-lock-row-since{color:#ffffff8c;font-size:11px;font-variant-numeric:tabular-nums}[data-theme=light] .proj-admin-lock-row-since{color:var(--text-dim)}.proj-admin-lock-row.is-locked .proj-admin-lock-row-since{color:var(--danger)}.proj-admin-lock-row-hint{color:#ffffff8c;font-size:11px}.proj-admin-settings-embed{padding-bottom:32px}.proj-admin-settings-embed .settings-section{background:#ffffff0f;border:1px solid rgba(255,255,255,.16);border-radius:12px;margin:14px 0;padding:18px 20px;color:#fff}.proj-admin-settings-embed .settings-section h2,.proj-admin-settings-embed .settings-section-title{color:color-mix(in srgb,var(--accent) 50%,#ffffff);text-transform:uppercase;letter-spacing:.04em;font-size:.95rem;margin-top:0}.proj-admin-settings-embed .settings-section .text-muted,.proj-admin-settings-embed .settings-section .text-dim,.proj-admin-settings-embed .settings-section .settings-section-hint{color:#ffffffb8}.proj-admin-settings-embed .form-input{background:#ffffff14;border-color:#fff3;color:#fff}.proj-admin-settings-embed .form-input::placeholder{color:#ffffff73}.proj-admin-settings-embed .form-input:focus{border-color:#ffffff8c;background:#ffffff1f}.proj-admin-settings-embed .form-label{color:#fff;font-weight:600}.proj-admin-settings-embed .settings-notify-chip{background:#ffffff1a;border:1px solid rgba(255,255,255,.22);color:#fff}.proj-admin-settings-embed .settings-notify-chip.is-selected{background:color-mix(in srgb,var(--accent) 65%,#ffffff);color:#fff;border-color:transparent}.proj-admin-save-indicator{display:inline-block;padding:4px 10px;border-radius:var(--radius-pill);font-size:12px;color:#fff;background:#ffffff24;margin-bottom:8px}.proj-admin-settings-embed,.proj-admin-settings-embed .text-muted,.proj-admin-settings-embed .text-dim,.proj-admin-settings-embed .settings-section-hint,.proj-admin-settings-embed dt,.proj-admin-settings-embed small,.proj-admin-settings-embed em{color:#fff}.proj-admin-settings-embed .text-muted,.proj-admin-settings-embed .text-dim,.proj-admin-settings-embed .settings-section-hint,.proj-admin-settings-embed dt,.proj-admin-settings-embed small,.proj-admin-settings-embed em,.proj-admin-settings-embed .help-text{color:#475568!important}.proj-admin-settings-embed .settings-gantt-template,.proj-admin-settings-embed .settings-signatory-row,.proj-admin-settings-embed .settings-notify-phase{background:#ffffff0d;border-color:#ffffff29;color:#fff}.proj-admin-settings-embed .settings-supplier-level,.proj-admin-settings-embed .settings-supplier-level *,.proj-admin-settings-embed .settings-supplier-level-rules,.proj-admin-settings-embed .settings-supplier-level-rules *{color:var(--text)}.proj-admin-settings-embed .settings-supplier-level-rules-title{color:var(--text-muted)}.proj-admin-settings-embed .settings-notify-phase-title,.proj-admin-settings-embed h3,.proj-admin-settings-embed h4{color:#fff}.proj-admin-settings-embed input,.proj-admin-settings-embed textarea,.proj-admin-settings-embed select{background:#ffffff14;border:1px solid rgba(255,255,255,.22);color:#fff}.proj-admin-settings-embed input::placeholder,.proj-admin-settings-embed textarea::placeholder{color:#ffffff73}.proj-admin-settings-embed input:focus,.proj-admin-settings-embed textarea:focus,.proj-admin-settings-embed select:focus{border-color:#ffffff8c;background:#ffffff1f}.proj-admin-settings-embed select option{background:#1f2937;color:#fff}.proj-admin-settings-embed .btn-ghost,.proj-admin-settings-embed .btn-secondary{background:#ffffff1a;border:1px solid rgba(255,255,255,.24);color:#fff}.proj-admin-settings-embed .btn-ghost:hover,.proj-admin-settings-embed .btn-secondary:hover{background:#ffffff2e;border-color:#fff6}.proj-admin-settings-embed .btn-danger-ghost{background:#ef444426;border:1px solid rgba(239,68,68,.4);color:#ffe4e4}.proj-admin-settings-embed .btn-danger-ghost:hover{background:#ef444447;color:#fff}.proj-admin-settings-embed .settings-tpl-gantt-task,.proj-admin-settings-embed .settings-tpl-gantt-bar{filter:brightness(.95)}[data-theme=light] .proj-admin-section{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow)}[data-theme=light] .proj-admin-section-title{color:var(--accent-teal)}[data-theme=light] .proj-admin-page .text-muted{color:var(--text-muted)}[data-theme=light] .proj-admin-page .text-dim{color:var(--text-dim)}[data-theme=light] .proj-admin-page label.form-label{color:var(--accent-teal)}[data-theme=light] .proj-admin-notif-item{background:var(--bg-input);border-color:var(--border)}[data-theme=light] .proj-admin-notif-item:hover{background:color-mix(in srgb,var(--accent) 8%,#ffffff);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}[data-theme=light] .proj-admin-notif-name{color:var(--text)}[data-theme=light] .proj-admin-notif-email{color:var(--text-muted)}[data-theme=light] .proj-admin-notif-actions{border-top-color:var(--border)}[data-theme=light] .proj-admin-lock,[data-theme=light] .proj-admin-lock-card{background:var(--bg-input);border-color:var(--border);color:var(--text)}[data-theme=light] .proj-admin-lock.is-locked,[data-theme=light] .proj-admin-lock-card.is-locked{background:color-mix(in srgb,var(--danger) 10%,#ffffff);border-color:color-mix(in srgb,var(--danger) 35%,var(--border))}[data-theme=light] .proj-admin-lock strong,[data-theme=light] .proj-admin-lock-card-header strong{color:var(--text)}[data-theme=light] .proj-admin-lock .text-dim{color:var(--text-dim)}[data-theme=light] .proj-admin-lock-row{background:#fff;border-color:var(--border)}[data-theme=light] .proj-admin-info-grid dt{color:var(--text-muted)}[data-theme=light] .proj-admin-info-grid dd,[data-theme=light] .proj-admin-settings-embed .form-label,[data-theme=light] .proj-admin-settings-embed h3,[data-theme=light] .proj-admin-settings-embed strong{color:var(--text)}[data-theme=light] .proj-admin-settings-embed .form-input,[data-theme=light] .proj-admin-settings-embed input,[data-theme=light] .proj-admin-settings-embed select,[data-theme=light] .proj-admin-settings-embed textarea{background:#fff;border-color:var(--border);color:var(--text)}[data-theme=light] .proj-admin-settings-embed .form-input::placeholder{color:var(--text-dim)}[data-theme=light] .proj-admin-settings-embed .settings-section,[data-theme=light] .proj-admin-settings-embed .settings-gantt-template,[data-theme=light] .proj-admin-settings-embed .settings-signatory-row,[data-theme=light] .proj-admin-settings-embed .settings-notify-phase{background:var(--bg-input)!important;border:none!important;color:var(--text)!important}[data-theme=light] .proj-admin-settings-embed,[data-theme=light] .proj-admin-settings-embed .settings-section .text-muted,[data-theme=light] .proj-admin-settings-embed .settings-section .text-dim,[data-theme=light] .proj-admin-settings-embed .settings-section .settings-section-hint,[data-theme=light] .proj-admin-settings-embed dt,[data-theme=light] .proj-admin-settings-embed small,[data-theme=light] .proj-admin-settings-embed em,[data-theme=light] .proj-admin-settings-embed .help-text{color:var(--text-muted)!important}[data-theme=light] .proj-admin-settings-embed .settings-section h2,[data-theme=light] .proj-admin-settings-embed .settings-section-title,[data-theme=light] .proj-admin-settings-embed .settings-notify-phase-title{color:var(--accent-teal)!important}[data-theme=light] .proj-admin-settings-embed input,[data-theme=light] .proj-admin-settings-embed textarea,[data-theme=light] .proj-admin-settings-embed select{background:#fff!important;border-color:var(--border)!important;color:var(--text)!important}[data-theme=light] .proj-admin-settings-embed input::placeholder,[data-theme=light] .proj-admin-settings-embed textarea::placeholder{color:var(--text-dim)!important}[data-theme=light] .proj-admin-settings-embed input:focus,[data-theme=light] .proj-admin-settings-embed textarea:focus,[data-theme=light] .proj-admin-settings-embed select:focus{border-color:var(--accent)!important;background:#fff!important;box-shadow:0 0 0 3px var(--accent-glow)}[data-theme=light] .proj-admin-settings-embed select option{background:#fff;color:var(--text)}[data-theme=light] .proj-admin-settings-embed .settings-notify-chip{background:#fff!important;border-color:var(--border)!important;color:var(--text)!important}[data-theme=light] .proj-admin-settings-embed .settings-notify-chip.is-selected{background:color-mix(in srgb,var(--accent) 18%,#ffffff)!important;border-color:var(--accent)!important;color:var(--accent-teal)!important}[data-theme=light] .proj-admin-settings-embed .btn-ghost,[data-theme=light] .proj-admin-settings-embed .btn-secondary{background:#fff!important;border:1px solid var(--border)!important;color:var(--text)!important}[data-theme=light] .proj-admin-settings-embed .btn-ghost:hover,[data-theme=light] .proj-admin-settings-embed .btn-secondary:hover{background:var(--bg-input)!important;border-color:var(--accent)!important;color:var(--accent-teal)!important}[data-theme=light] .proj-admin-settings-embed .btn-danger-ghost{background:color-mix(in srgb,var(--danger) 10%,#ffffff)!important;border-color:color-mix(in srgb,var(--danger) 45%,transparent)!important;color:var(--danger)!important}[data-theme=light] .proj-admin-settings-embed .btn-danger-ghost:hover{background:color-mix(in srgb,var(--danger) 22%,#ffffff)!important;color:var(--danger)!important}[data-theme=light] .proj-admin-save-indicator{background:var(--bg-input);color:var(--text-muted)}[data-theme=light] .proj-admin-settings-embed .settings-tpl-gantt-task,[data-theme=light] .proj-admin-settings-embed .settings-tpl-gantt-bar{filter:none}.proj-admin-tabs{margin:8px 0 24px}[data-theme=light] .proj-admin-tabs{border-bottom-color:#ffffff47}[data-theme=light] .proj-admin-tabs .obra-tab{color:#ffffffb3}[data-theme=light] .proj-admin-tabs .obra-tab:hover:not(.is-active){color:#fff;background:#ffffff1a}[data-theme=light] .proj-admin-tabs .obra-tab.is-active{color:#fff;background:transparent}[data-theme=light] .proj-admin-tabs .obra-tab.is-active:after{background:#fff;box-shadow:0 0 12px #ffffff80}.proj-admin-phase-locks-wrap{overflow-x:auto}.proj-admin-phase-locks-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;background:var(--bg-input);border:1px solid var(--border);border-radius:10px;overflow:hidden}.proj-admin-phase-locks-table th{text-align:center;padding:10px 12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:color-mix(in srgb,var(--text-muted) 8%,transparent);border-bottom:1px solid var(--border);white-space:nowrap}.proj-admin-phase-locks-table th:first-child{text-align:left}.proj-admin-phase-locks-table td{padding:8px 12px;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 14%,transparent);text-align:center}.proj-admin-phase-locks-table tr:last-child td{border-bottom:none}.proj-admin-phase-locks-name{text-align:left!important;font-weight:600;color:var(--text)}.proj-admin-phase-locks-table tr.is-locked{background:color-mix(in srgb,var(--danger) 6%,transparent)}.proj-admin-phase-locks-table tr.is-locked .proj-admin-phase-locks-name{color:var(--danger)}.proj-admin-lock-cell{display:inline-flex;align-items:center;gap:6px;justify-content:center}.proj-admin-lock-since{font-size:11px;font-variant-numeric:tabular-nums;color:var(--text-muted);white-space:nowrap}[data-theme=light] .proj-admin-lock-since{color:var(--text-dim)}.proj-admin-phase-locks-table tr.is-locked .proj-admin-lock-since{color:var(--danger)}.proj-admin-lock-toggle{background:transparent;border:1px solid transparent;border-radius:8px;font-size:18px;width:36px;height:32px;cursor:pointer;transition:var(--transition);line-height:1;flex-shrink:0}.proj-admin-lock-toggle:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 10%,transparent);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.proj-admin-lock-toggle.is-locked{background:color-mix(in srgb,var(--danger) 12%,transparent);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.proj-admin-lock-toggle.is-locked:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 22%,transparent);border-color:color-mix(in srgb,var(--danger) 55%,transparent)}[data-theme=light] .proj-admin-phase-locks-table{background:#fff;border-color:var(--border)}[data-theme=light] .proj-admin-phase-locks-table th{background:var(--bg-input);color:var(--text-muted);border-bottom-color:var(--border)}[data-theme=light] .proj-admin-phase-locks-table td{border-bottom-color:var(--border)}[data-theme=light] .proj-admin-phase-locks-table tr.is-locked{background:color-mix(in srgb,var(--danger) 8%,#ffffff)}.proj-admin-planning-grid{display:grid;grid-template-columns:1fr;gap:14px}.proj-admin-planning-status{padding:10px 12px;border-radius:8px;background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 18%,transparent);font-size:13px;margin:6px 0 12px}.proj-admin-planning-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:10px}.proj-admin-planning-sep{color:var(--text-dim);padding:0 4px}.proj-admin-planning-custom{display:flex;align-items:center;gap:6px;padding-top:10px;border-top:1px dashed color-mix(in srgb,var(--text-muted) 22%,transparent)}.proj-admin-planning-custom .form-input{width:auto}.proj-admin-planning-custom input[type=number]{width:70px;text-align:center}.proj-admin-planning-custom select{width:auto;min-width:110px}[data-theme=light] .proj-admin-planning-status{background:color-mix(in srgb,var(--accent) 8%,#ffffff);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));color:var(--text)}[data-theme=light] .proj-admin-planning-custom{border-top-color:var(--border)}[data-theme=light] .proj-admin-planning-custom input[type=number],[data-theme=light] .proj-admin-planning-custom select{background:#fff;border-color:var(--border);color:var(--text)}.proj-admin-notif-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px 14px;margin-bottom:14px}.proj-admin-notif-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid var(--border);cursor:pointer;transition:var(--transition)}.proj-admin-notif-item:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--bg-input))}.proj-admin-notif-item input[type=checkbox]{accent-color:var(--accent);cursor:pointer;flex-shrink:0}.proj-admin-notif-name{font-weight:600;color:var(--text)}.proj-admin-notif-email{font-size:11px;color:var(--text-muted);margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proj-admin-notif-actions{display:flex;align-items:center;gap:8px;padding-top:10px;border-top:1px dashed var(--border)}.catalog-suggest{position:relative}.catalog-suggest.is-disabled .catalog-suggest-wrap{opacity:.65;cursor:not-allowed;background:var(--bg-elevated, var(--bg-input))}.catalog-suggest.is-disabled .catalog-suggest-input{cursor:not-allowed}.catalog-suggest-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 10px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:text;min-height:38px}.catalog-suggest-wrap:focus-within{border-color:var(--accent)}.catalog-suggest-input{flex:1;min-width:80px;border:none;background:none;outline:none;font-size:13px;font-family:var(--font);color:var(--text);padding:2px 0;width:100%}.catalog-suggest-input::placeholder{color:var(--text-dim)}.catalog-suggest-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);max-height:180px;overflow-y:auto;z-index:200}.catalog-suggest-dropdown-portal{z-index:9999;max-height:200px}.catalog-suggest-option{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:8px 12px;background:none;border:none;text-align:left;font-size:13px;font-family:var(--font);color:var(--text);cursor:pointer;transition:background .15s ease}.catalog-suggest-extra{color:var(--text-muted);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.catalog-suggest-option:hover{background:#32947c14}.catalog-suggest-create{color:var(--accent);font-weight:600;border-top:1px solid var(--border)}.catalog-suggest-empty{padding:8px 12px;font-size:12px;color:var(--text-dim)}.datepicker{position:relative;display:inline-block;width:100%}.datepicker-trigger{display:inline-flex;align-items:center;gap:10px;width:100%;padding:9px 14px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.12)),#ffffff29);border:1px solid color-mix(in srgb,var(--accent) 35%,rgba(255,255,255,.2));border-radius:var(--radius-sm, 8px);color:#f1f5f9;font:inherit;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer;text-align:left;transition:border-color .25s ease,background .25s ease,box-shadow .25s ease,transform .2s ease}.datepicker-trigger:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 60%,rgba(255,255,255,.3));background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 26%,rgba(255,255,255,.14)),#fff3);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 12%,transparent)}.datepicker.is-open .datepicker-trigger{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent)}.datepicker.is-disabled .datepicker-trigger{opacity:.55;cursor:not-allowed}.datepicker-icon{color:color-mix(in srgb,var(--accent) 75%,#ffffff);flex-shrink:0}.datepicker-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.datepicker-value.is-placeholder{color:#f1f5f98c;font-weight:400}[data-theme=light] .datepicker-trigger{color:#475569;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 8%,#ffffff),#fff);border-color:color-mix(in srgb,var(--accent) 30%,#cbd5e1)}[data-theme=light] .datepicker-trigger:hover:not(:disabled){background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 14%,#ffffff),#f8fafc);border-color:color-mix(in srgb,var(--accent) 50%,#94a3b8)}[data-theme=light] .datepicker-value.is-placeholder{color:#64748b99}.datepicker-clear{border:none;background:transparent;color:#f1f5f999;width:22px;height:22px;border-radius:50%;font-size:16px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.datepicker-clear:hover{background:color-mix(in srgb,var(--danger, #c47a7e) 25%,transparent);color:#fff}.datepicker-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:50;width:280px;padding:14px;background:radial-gradient(80% 60% at 50% 0%,color-mix(in srgb,var(--accent) 14%,transparent) 0%,transparent 60%),#1a2538;border:1px solid color-mix(in srgb,var(--accent) 28%,rgba(255,255,255,.12));border-radius:12px;box-shadow:0 18px 40px -16px #0009,0 0 0 1px #ffffff0a inset;animation:datepicker-pop .18s cubic-bezier(.2,.9,.3,1.15);-webkit-user-select:none;user-select:none}@keyframes datepicker-pop{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.datepicker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.datepicker-nav{border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#cbd5e1;width:30px;height:30px;border-radius:8px;cursor:pointer;font-size:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease}.datepicker-nav:hover{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:#fff;transform:translateY(-1px)}.datepicker-month-label{font-size:14px;font-weight:700;color:#f1f5f9;letter-spacing:.01em}.datepicker-year{color:color-mix(in srgb,var(--accent) 50%,#ffffff);margin-left:4px}.datepicker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.datepicker-weekday{text-align:center;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,var(--accent) 40%,#94a3b8);padding:4px 0}.datepicker-weekday.is-weekend{color:color-mix(in srgb,var(--danger, #c47a7e) 50%,#94a3b8)}.datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.datepicker-day{border:1px solid transparent;background:transparent;color:#e2e8f0;font:inherit;font-size:12.5px;font-weight:500;font-variant-numeric:tabular-nums;padding:8px 0;border-radius:8px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease;position:relative}.datepicker-day:hover{background:#ffffff14;color:#fff}.datepicker-day.is-outside{color:#e2e8f052}.datepicker-day.is-weekend:not(.is-outside){color:color-mix(in srgb,var(--danger, #c47a7e) 25%,#e2e8f0)}.datepicker-day.is-today{border-color:color-mix(in srgb,var(--accent) 60%,transparent);color:color-mix(in srgb,var(--accent) 40%,#ffffff);font-weight:700}.datepicker-day.is-selected{background:var(--accent-gradient, linear-gradient(135deg, #095872, #32947c, #4f9b8f));color:#fff;font-weight:700;border-color:transparent;box-shadow:0 4px 14px -4px color-mix(in srgb,var(--accent) 60%,transparent)}.datepicker-day.is-selected:hover{transform:translateY(-1px)}.datepicker-footer{display:flex;gap:6px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08)}.datepicker-quick{flex:1;border:1px solid color-mix(in srgb,var(--accent) 30%,rgba(255,255,255,.12));background:color-mix(in srgb,var(--accent) 12%,transparent);color:color-mix(in srgb,var(--accent) 40%,#ffffff);border-radius:8px;padding:7px 10px;font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.datepicker-quick:hover{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:color-mix(in srgb,var(--accent) 60%,transparent);color:#fff;transform:translateY(-1px)}.datepicker-quick-clear{background:transparent;border-color:#ffffff1f;color:#f1f5f9a6}.datepicker-quick-clear:hover{background:color-mix(in srgb,var(--danger, #c47a7e) 18%,transparent);border-color:color-mix(in srgb,var(--danger, #c47a7e) 50%,transparent);color:#fff}.quotation-client-modal{max-width:min(880px,92vw);width:100%}.client-locations-list{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.client-location-row,.client-location-add{display:grid;grid-template-columns:200px 1fr 36px;gap:8px;align-items:center}.client-location-add{grid-template-columns:200px 1fr auto}.client-location-add{padding-top:8px;border-top:1px dashed var(--border)}.client-address-fieldset{border:1px solid color-mix(in srgb,var(--text-muted) 22%,transparent);border-radius:var(--radius);padding:10px 14px 12px;margin:0}.client-address-legend{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:color-mix(in srgb,var(--accent) 35%,var(--text-muted));padding:0 6px}.client-address-grid{display:grid;grid-template-columns:1fr 80px 110px;gap:10px 12px}.client-addr-street{grid-column:1 / 2}.client-addr-number{grid-column:2 / 3}.client-addr-fraction{grid-column:3 / 4}.client-addr-postcode{grid-column:1 / 2}.client-addr-locality{grid-column:2 / 4}.client-addr-city{grid-column:1 / 3}.client-addr-country{grid-column:3 / 4}.client-addr-street2,.client-addr-street3{grid-column:1 / -1}@media(max-width:640px){.quotation-client-modal .articles-modal-grid,.client-location-row,.client-location-add{grid-template-columns:1fr}.client-address-grid{grid-template-columns:1fr 1fr}.client-addr-street,.client-addr-postcode,.client-addr-locality,.client-addr-city,.client-addr-country{grid-column:1 / -1}.client-addr-number{grid-column:1 / 2}.client-addr-fraction{grid-column:2 / 3}}.sub-page{max-width:var(--page-max-width);margin:0 auto;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom)}.placeholder-content{background:var(--bg-elevated);border:1px dashed var(--border);border-radius:var(--radius);padding:32px;text-align:center;display:flex;flex-direction:column;gap:8px}.note-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.note-tag{background:#32947c1f;color:var(--accent);font-size:11px;font-weight:600;padding:2px 8px;border-radius:var(--radius-pill)}.budget-config{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding:16px 20px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius)}.budget-config-input{width:80px!important}.budget-section{margin-bottom:24px}.budget-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.budget-section-header h3{font-size:1rem;font-weight:700;color:var(--text)}.budget-table{width:100%;border-collapse:collapse;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;font-size:13px}.budget-table th{background:var(--bg-input);color:var(--text-muted);font-weight:600;padding:10px 14px;text-align:left;border-bottom:1px solid var(--border)}.budget-table td{padding:10px 14px;border-bottom:1px solid var(--border);color:var(--text)}.budget-table tr:last-child td{border-bottom:none}.budget-table tr:hover td{background:var(--bg-elevated)}.obra-input{width:100px!important;padding:4px 8px!important}.btn-sm{padding:4px 10px;font-size:12px}.budget-totals{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px;margin-top:16px;display:flex;flex-direction:column;gap:8px;max-width:360px;margin-left:auto}.budget-total-row{display:flex;justify-content:space-between;font-size:13px;color:var(--text-muted)}.budget-total-final{font-size:15px;font-weight:700;color:var(--text);padding-top:8px;border-top:1px solid var(--border);margin-top:4px}.analysis-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:32px}.analysis-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px;display:flex;flex-direction:column;gap:6px}.analysis-label{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.analysis-value{font-size:1.4rem;font-weight:700;color:var(--text)}.analysis-chart-section h3{font-size:1rem;font-weight:700;color:var(--text);margin-bottom:16px}.analysis-chart{display:flex;flex-direction:column;gap:16px}.chart-row{display:flex;align-items:center;gap:12px}.chart-label{font-size:13px;font-weight:600;color:var(--text-muted);min-width:140px;text-align:right}.chart-bars{flex:1;display:flex;flex-direction:column;gap:4px}.chart-bar-wrap{display:flex;align-items:center;gap:8px}.chart-bar{height:14px;border-radius:4px;min-width:4px;transition:var(--transition-smooth)}.chart-bar-budgeted{background:var(--accent)}.chart-bar-real{background:var(--success)}.chart-bar-over{background:var(--danger)}.chart-bar-val{font-size:11px;color:var(--text-dim);white-space:nowrap}.project-client-row{display:flex;align-items:flex-start;gap:8px}.project-client-row .catalog-suggest{flex:1;min-width:0}.project-client-edit-btn{flex-shrink:0;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-muted);cursor:pointer;transition:color .15s ease,border-color .15s ease}.project-client-edit-btn:hover{color:var(--accent);border-color:var(--accent)}@media(max-width:768px){.sub-page{padding:16px}.analysis-summary{grid-template-columns:1fr 1fr}.chart-label{min-width:80px;font-size:11px}}.project-dashboard{max-width:var(--page-content-max);margin:0 auto;padding:56px 24px 80px}.project-dashboard-header{position:relative;margin-bottom:56px;opacity:0;animation:project-dash-fade-in .5s cubic-bezier(.4,0,.2,1) .05s forwards}@keyframes project-dash-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.btn-back{margin-bottom:24px;font-size:13px;transition:transform .2s ease,color .2s ease}.btn-back:hover{transform:translate(-3px)}.project-title{font-size:2rem;font-weight:700;margin:0 0 20px;line-height:1.2;background:linear-gradient(100deg,color-mix(in srgb,var(--accent) 25%,#ffffff),color-mix(in srgb,var(--accent) 55%,#ffffff),color-mix(in srgb,var(--accent) 25%,#ffffff));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:project-title-shimmer 8s linear infinite}@keyframes project-title-shimmer{0%{background-position:0% 50%}to{background-position:200% 50%}}.project-title-editable{cursor:text;border-radius:var(--radius-sm);padding:2px 6px;margin-left:-6px;transition:background .15s ease}.project-title-editable:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.project-title-input{font-size:2rem;font-weight:700;color:var(--text);background:var(--bg-input);border:1px solid var(--accent);border-radius:var(--radius-sm);padding:2px 6px;margin:0 0 8px -6px;width:100%;outline:none;box-shadow:0 0 0 3px var(--accent-glow);font-family:inherit}.project-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;color:var(--text-muted);margin-bottom:16px;row-gap:10px}.project-meta>span:not(.project-meta-ref):not(.badge):not(.project-intervention-badge){display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;background:transparent;border:1px solid color-mix(in srgb,var(--text-muted) 22%,transparent);font-weight:500;transition:border-color .2s ease,background .2s ease}.project-meta>span:not(.project-meta-ref):not(.badge):not(.project-intervention-badge):hover{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 6%,transparent)}.project-meta strong{color:#e2e8f0;font-weight:600}.project-meta-ref{font-family:var(--font-mono, monospace);font-size:12px;color:var(--text-dim);letter-spacing:.03em;padding:4px 10px;border-radius:6px;background:transparent;border:1px dashed color-mix(in srgb,var(--text-muted) 28%,transparent)}.project-description{font-size:14px;margin:20px 0 0;max-width:600px;line-height:1.6}[data-theme=light] .project-dashboard-header>.project-info{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 32px;box-shadow:var(--shadow);margin-top:4px}[data-theme=light] .project-description,[data-theme=light] .project-meta{color:var(--text-muted)}[data-theme=light] .project-meta strong{color:var(--text)}[data-theme=light] .project-meta-ref{color:var(--text-dim)}[data-theme=light] .project-title{background:linear-gradient(100deg,var(--accent-teal) 0%,var(--accent) 50%,var(--accent-teal) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text}[data-theme=light] .btn-back{color:#fffffff2;border:1px solid rgba(255,255,255,.5);background:#ffffff1a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[data-theme=light] .btn-back:hover{color:#fff;background:#ffffff38;border-color:#fffc}.phase-timeline{display:flex;align-items:center;background:transparent;border:none;padding:32px 8px 40px;margin-bottom:48px;overflow-x:auto;gap:0;opacity:0;animation:project-dash-fade-in .5s cubic-bezier(.4,0,.2,1) .15s forwards}.phase-item{display:flex;flex-direction:column;align-items:center;gap:10px;flex:1;min-width:80px;background:none;border:none;cursor:pointer;position:relative;padding:0 8px;transition:transform .25s cubic-bezier(.4,0,.2,1);opacity:0;animation:project-dash-fade-in .4s cubic-bezier(.4,0,.2,1) forwards}.phase-item:nth-child(1){animation-delay:.2s}.phase-item:nth-child(2){animation-delay:.26s}.phase-item:nth-child(3){animation-delay:.32s}.phase-item:nth-child(4){animation-delay:.38s}.phase-item:nth-child(5){animation-delay:.44s}.phase-item:nth-child(6){animation-delay:.5s}.phase-item:hover{transform:translateY(-2px)}.phase-item:hover .phase-label{color:var(--accent)}.phase-item:hover .phase-indicator{border-color:color-mix(in srgb,var(--accent) 60%,transparent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 12%,transparent)}.phase-indicator{width:38px;height:38px;border-radius:50%;background:var(--bg-input);border:2px solid color-mix(in srgb,var(--text-muted) 25%,transparent);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--text-dim);transition:transform .3s cubic-bezier(.4,0,.2,1),border-color .3s ease,box-shadow .3s ease,background .3s ease,color .3s ease;z-index:1;position:relative}.phase-item.done .phase-indicator{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.phase-item.current .phase-indicator{background:var(--accent-gradient);border-color:var(--accent);color:#fff;transform:scale(1.12)}.phase-item.current .phase-indicator:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:50%;border:2px solid color-mix(in srgb,var(--accent) 60%,transparent);animation:phase-pulse 1.8s ease-in-out infinite;pointer-events:none}@keyframes phase-pulse{0%{transform:scale(1);opacity:.9}70%{transform:scale(1.35);opacity:0}to{transform:scale(1.35);opacity:0}}.phase-label{font-size:11px;font-weight:600;color:#f1f5f9;text-align:center;white-space:nowrap;transition:color .2s ease;letter-spacing:.02em}.phase-item.done .phase-label,.phase-item.current .phase-label{color:var(--text)}.phase-item.current .phase-label{color:var(--accent)}[data-theme=light] .phase-timeline{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:36px 20px 30px;box-shadow:var(--shadow)}[data-theme=light] .phase-label{color:var(--text)}[data-theme=light] .phase-item.current .phase-label{color:var(--accent)}.phase-connector{position:absolute;top:19px;left:calc(50% + 19px);width:calc(100% - 38px);height:1px;background:#94a3b8;z-index:0;overflow:hidden}.phase-connector:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent-gradient, linear-gradient(90deg, #095872, #32947c, #4f9b8f));transform:scaleX(0);transform-origin:left center;transition:transform .5s cubic-bezier(.4,0,.2,1)}.phase-connector.done:after{transform:scaleX(1)}.project-quick-actions h2{font-size:1.1rem;font-weight:700;color:var(--text);margin-bottom:16px}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.quick-action-card{position:relative;background:color-mix(in srgb,var(--bg-card) 80%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);border-radius:var(--radius);padding:16px 20px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;overflow:hidden;transition:transform .3s cubic-bezier(.4,0,.2,1),border-color .25s ease,background .25s ease,box-shadow .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.quick-action-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 30%,color-mix(in srgb,var(--accent) 16%,transparent) 50%,transparent 70%);transform:translate(-110%);transition:transform .6s cubic-bezier(.4,0,.2,1);pointer-events:none}.quick-action-card:hover{border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:var(--bg-card);transform:translateY(-3px);box-shadow:0 12px 28px -14px #0000008c,var(--shadow-glow, 0 0 24px rgba(50, 148, 124, .18))}.quick-action-card:hover:before{transform:translate(110%)}.quick-action-card:hover .quick-action-arrow{transform:translate(4px);color:color-mix(in srgb,var(--accent) 80%,#ffffff)}.quick-action-arrow{transition:transform .25s cubic-bezier(.4,0,.2,1),color .25s ease}.quick-action-label{font-size:14px;font-weight:600;color:var(--text)}.quick-action-arrow{color:var(--accent);font-size:16px}.modal-form .form-error{color:var(--danger);font-size:13px;margin:0}@media(max-width:768px){.project-dashboard{padding:16px}.project-title{font-size:1.5rem}.phase-timeline{padding:16px}}.project-parent-link{margin-bottom:20px}.project-parent-link .btn-ghost{background:#ffffff29;color:#fff;border:1px solid rgba(255,255,255,.32);font-weight:600;padding:6px 14px;border-radius:999px;transition:background .18s ease,border-color .18s ease,transform .12s ease}.project-parent-link .btn-ghost:hover{background:#ffffff42;border-color:#ffffff8c;transform:translateY(-1px)}[data-theme=light] .project-parent-link .btn-ghost{background:#ffffffeb;color:#146874;border:1px solid rgba(20,104,116,.4);box-shadow:0 2px 6px #00000014}[data-theme=light] .project-parent-link .btn-ghost:hover{background:#fff;color:#146874;border-color:#146874}.project-intervention-badge{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;margin-right:8px;vertical-align:middle;border-radius:var(--radius-pill);background:#785ab426;color:#7a5fbf;border:1px solid rgba(120,90,180,.35)}.project-quick-actions+.project-quick-actions{margin-top:32px;padding-top:24px;padding-bottom:24px;border-top:1px solid var(--border)}.project-interventions-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.project-interventions-header h2{margin:0}.project-intervention-new-row{display:flex;gap:8px;margin-bottom:12px}.project-intervention-new-row .form-input{flex:1}.project-interventions-list{display:flex;flex-direction:column;gap:8px}.project-intervention-card{position:relative;display:flex;align-items:center;gap:12px;padding:14px 16px;background:color-mix(in srgb,var(--bg-card) 80%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);border-radius:var(--radius);cursor:pointer;overflow:hidden;transition:transform .25s cubic-bezier(.4,0,.2,1),border-color .25s ease,background .25s ease,padding .25s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.project-intervention-card:before{content:"";position:absolute;left:0;top:10%;bottom:10%;width:3px;border-radius:0 3px 3px 0;background:var(--accent);opacity:0;transform:scaleY(.4);transition:opacity .25s ease,transform .25s cubic-bezier(.4,0,.2,1)}.project-intervention-card:hover{border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent);transform:translate(4px);padding-left:22px}.project-intervention-card:hover:before{opacity:1;transform:scaleY(1)}.project-intervention-card:hover .project-intervention-arrow{color:var(--accent);transform:translate(3px)}.project-intervention-name{flex:1;font-weight:600;color:var(--text)}.project-intervention-arrow{color:var(--text-muted);font-size:18px;transition:transform .25s cubic-bezier(.4,0,.2,1),color .25s ease}@media(prefers-reduced-motion:reduce){.project-dashboard-header,.phase-timeline,.phase-item,.project-title,.phase-item.current .phase-indicator:after{animation:none!important;opacity:1!important}.phase-connector:after,.quick-action-card:before,.project-intervention-card:before{transition:none!important}}.phase-lock-banner{display:flex;align-items:center;gap:14px;padding:14px 18px;margin:0 0 18px;border-radius:12px;background:#ef44441a;border:1px solid rgba(239,68,68,.4);color:var(--text)}.phase-lock-banner-icon{font-size:24px;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#ef444433;flex-shrink:0}.phase-lock-banner-text{flex:1;display:flex;flex-direction:column;gap:2px;font-size:13px;line-height:1.4}.phase-lock-banner-text strong{color:#fca5a5;font-size:14px}@media(max-width:768px){.phase-lock-banner{flex-direction:column;align-items:flex-start;gap:10px;padding:14px 16px}.phase-lock-banner-icon{width:36px;height:36px;font-size:20px}.phase-lock-banner-text{width:100%}.phase-lock-banner>.btn-primary,.phase-lock-banner>button{align-self:stretch}}[data-theme=light] .phase-lock-banner{background:#fff;border:1px solid var(--border);border-left:4px solid #dc2626;border-radius:12px;box-shadow:0 4px 14px -6px #00000026;padding:16px 20px 16px 18px}[data-theme=light] .phase-lock-banner-icon{background:#dc26261f;color:#dc2626}[data-theme=light] .phase-lock-banner-text strong{color:#b91c1c}[data-theme=light] .phase-lock-banner-text .text-dim{color:var(--text-muted)}.equipment-map{display:flex;flex-direction:column;gap:12px}.equipment-map-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.equipment-map-toolbar .btn-ghost,.equipment-map-toolbar .btn-primary{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:12.5px;font-weight:600;white-space:nowrap;border:1px solid color-mix(in srgb,var(--text-muted) 25%,transparent);border-radius:8px;background:#ffffff0a;color:#e2e8f0;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.equipment-map-toolbar .btn-ghost:hover{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:#fff;transform:translateY(-1px)}.equipment-map-toolbar .btn-primary{background:var(--accent-gradient, linear-gradient(135deg, #095872, #32947c, #4f9b8f));border-color:transparent;color:#fff}.equipment-map-toolbar .btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px -4px color-mix(in srgb,var(--accent) 60%,transparent)}.equipment-map-search{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 12px;font-size:13px;color:var(--text);min-width:200px;outline:none}.equipment-map-search:focus{border-color:var(--accent)}.equipment-map-error{background:#c0392b1a;color:#c0392b;padding:8px 12px;border-radius:var(--radius-sm);font-size:13px}.equipment-map-scroll{border:1px solid var(--border);border-radius:var(--radius);overflow:auto;min-height:75vh;max-height:calc(100vh - 160px);background:var(--bg-card)}.equipment-map-table{border-collapse:separate;border-spacing:0;width:100%;font-size:12px}.equipment-map-table thead th{position:sticky;top:0;z-index:2;background:var(--bg-card);border-bottom:1px solid var(--border);padding:8px 10px;text-align:left;font-weight:700;color:var(--text);white-space:nowrap}.equipment-map-table tbody td{border-bottom:1px solid var(--border);padding:6px 10px;vertical-align:middle}.equipment-map-table tbody td.is-editable{cursor:cell}.equipment-map-table tbody td.is-editable:hover{background:var(--bg-hover)}.equipment-map-cell-empty{color:var(--text-muted);font-style:italic}.equipment-map-input{width:100%;border:2px solid var(--accent);background:var(--bg-input);color:var(--text);padding:4px 6px;font:inherit;outline:none;border-radius:2px;box-sizing:border-box}.equipment-map-delete{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:14px;padding:2px 6px;border-radius:var(--radius-sm)}.equipment-map-delete:hover{background:#dc26261f;color:#dc2626}.equipment-map-empty{text-align:center;padding:32px;color:var(--text-muted);font-style:italic}.equipment-map.is-readonly .equipment-map-table tbody td.is-editable{cursor:default}.equipment-map.is-readonly .equipment-map-table tbody td.is-editable:hover{background:transparent}.equipment-map-count{font-size:12px;padding:4px 10px;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#cbd5e1}.equipment-map-scroll{border:1px solid #d8e0e8;border-radius:var(--radius);overflow:auto;min-height:75vh;max-height:calc(100vh - 160px);background:#fff;box-shadow:0 8px 22px -10px #00000059}.equipment-map-table thead th{position:sticky;top:0;z-index:2;background:linear-gradient(180deg,#f1f5f9,#e2e8f0);border-bottom:2px solid #cbd5e1;border-right:1px solid #e5e9ee;padding:10px 12px;text-align:left;font-weight:700;color:#1e293b;white-space:nowrap;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em}.equipment-map-table tbody td{border-bottom:1px solid #eef2f6;border-right:1px solid #f1f5f9;padding:8px 12px;vertical-align:middle;color:#1e293b;font-size:13px;background:#fff;position:relative}.equipment-map-table tbody tr:nth-child(2n) td{background:#fafbfc}.equipment-map-table tbody tr:hover td{background:color-mix(in srgb,var(--accent) 8%,#ffffff)!important}.equipment-map-table tbody td.is-editable{cursor:cell;transition:background .1s ease}.equipment-map-cell-empty{color:#1e293b4d;font-style:italic}.equipment-map-input{width:100%;border:2px solid var(--accent);background:#fff;color:#0f172a;padding:4px 6px;font:inherit;font-size:13px;outline:none;border-radius:3px;box-sizing:border-box}.equipment-map-table tbody td.is-selected{outline:2px solid var(--accent);outline-offset:-2px;background:color-mix(in srgb,var(--accent) 6%,#ffffff)!important;z-index:1}.equipment-map-table tbody td.is-fill-target{background:color-mix(in srgb,var(--accent) 12%,#ffffff)!important;outline:1px dashed var(--accent);outline-offset:-1px}.equipment-map-fill-handle{position:absolute;bottom:-3px;right:-3px;width:8px;height:8px;background:var(--accent);border:1px solid #ffffff;border-radius:1px;cursor:ns-resize;z-index:3;box-shadow:0 1px 2px #0000004d}.equipment-map-fill-handle:hover{transform:scale(1.4)}.equipment-map-delete{opacity:.4;transition:opacity .15s ease,background .15s ease,color .15s ease}.project-picker-list{display:flex;flex-direction:column;gap:4px;max-height:50vh;overflow-y:auto}.project-picker-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;border:1px solid rgba(255,255,255,.1);background:#ffffff08;border-radius:var(--radius-sm);cursor:pointer;text-align:left;font:inherit;color:#e2e8f0;transition:background .15s ease,border-color .15s ease,transform .15s ease}.project-picker-item:hover{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);transform:translate(2px)}.equipment-map-custom-th{position:relative}.equipment-map-custom-label{cursor:text}.equipment-map-col-del{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;border:none;background:#ffffff14;color:#cbd5e1;font-size:12px;line-height:1;cursor:pointer;opacity:0;transition:opacity .15s ease,background .15s ease,color .15s ease}.equipment-map-custom-th:hover .equipment-map-col-del{opacity:1}.equipment-map-col-del:hover{background:var(--danger, #c47a7e);color:#fff}.equipment-map-th-icon{display:inline-block;width:18px;height:18px;line-height:18px;text-align:center;font-size:11px;font-weight:700;border-radius:4px;margin-right:6px;background:color-mix(in srgb,var(--accent) 22%,transparent);color:color-mix(in srgb,var(--accent) 35%,#ffffff);vertical-align:-2px}.equipment-map-cell-formula{background:color-mix(in srgb,var(--accent) 6%,#ffffff)!important;font-style:italic;color:#475569}.equipment-map-cell-error{color:#b91c1c;font-weight:600;font-style:normal}.equipment-map-bool-yes{display:inline-block;width:22px;text-align:center;color:var(--accent);font-weight:700}.equipment-map-bool-no{display:inline-block;width:22px;text-align:center;color:#0f172a40}.eq-col-modal{max-width:min(620px,92vw)}.eq-col-formula-input{font-family:var(--font-mono, monospace);font-size:13px;background:#ffffff0a;white-space:pre}.eq-col-formula-hint{font-size:11px;color:var(--text-muted);margin-top:6px;line-height:1.5}.eq-col-formula-hint code{background:#ffffff14;padding:1px 5px;border-radius:3px;font-size:11px;color:color-mix(in srgb,var(--accent) 35%,#ffffff)}.eq-col-chips,.eq-col-fn-grid{display:flex;flex-wrap:wrap;gap:6px}.eq-col-fn-grid{gap:4px}.eq-col-chip,.eq-col-fn{border:1px solid rgba(255,255,255,.14);background:#ffffff0d;border-radius:6px;padding:5px 10px;font-size:12px;color:#e2e8f0;cursor:pointer;font-family:inherit;transition:background .15s ease,border-color .15s ease,color .15s ease}.eq-col-chip:hover,.eq-col-fn:hover{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:#fff}.eq-col-fn{font-family:var(--font-mono, monospace);font-weight:600;letter-spacing:.02em}.equipment-map-rownum-th,.equipment-map-rownum{position:sticky;left:0;z-index:1;width:40px;min-width:40px;text-align:center;font-size:11px;font-weight:600;color:#64748b;background:linear-gradient(180deg,#f1f5f9,#e2e8f0)!important;border-right:1px solid #cbd5e1;padding:4px 6px!important}.equipment-map-rownum-th{z-index:3}.equipment-map-rownum{cursor:pointer;position:relative}.equipment-map-rownum-num{display:inline-block;transition:opacity .15s ease}.equipment-map-rownum-icon{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:13px;opacity:0;transition:opacity .15s ease;pointer-events:none;color:var(--accent)}.equipment-map-rownum.has-note .equipment-map-rownum-icon{opacity:1;font-size:11px;inset:auto 2px auto auto;top:50%;transform:translateY(-50%)}.equipment-map-rownum.has-note .equipment-map-rownum-num{color:var(--accent-teal, #095872)}.equipment-map-table tbody tr:hover .equipment-map-rownum:not(.has-note) .equipment-map-rownum-num{opacity:0}.equipment-map-table tbody tr:hover .equipment-map-rownum:not(.has-note) .equipment-map-rownum-icon{opacity:1}.equipment-map-table tbody tr:hover .equipment-map-rownum{color:#0f172a;background:color-mix(in srgb,var(--accent) 18%,#e2e8f0)!important}.eq-note-modal{max-width:min(720px,94vw)}.eq-note-list{display:flex;flex-direction:column;gap:12px;margin-bottom:14px}.eq-note-item{border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:0;overflow:hidden;background:color-mix(in srgb,var(--bg-card) 55%,transparent);transition:border-color .2s ease,background .2s ease}.eq-note-item:hover{border-color:color-mix(in srgb,var(--accent) 38%,transparent)}.eq-note-item.is-expanded{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--bg-card) 85%,transparent)}.eq-note-card-header{padding:12px 16px;cursor:pointer;display:flex;flex-direction:column;gap:6px}.eq-note-card-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.eq-note-card-title h3{font-size:14px;font-weight:700;color:var(--text);margin:0}.eq-note-card-date{font-size:11px;color:var(--text-dim);white-space:nowrap}.eq-note-card-preview{font-size:12.5px;line-height:1.4;color:var(--text-muted);margin:0}.eq-note-thumbs{display:flex;gap:6px;align-items:center;margin-top:4px}.eq-note-thumb{width:44px;height:44px;border-radius:6px;overflow:hidden;border:1px solid var(--border);cursor:pointer;flex-shrink:0;background:var(--bg-input);transition:border-color .15s ease}.eq-note-thumb:hover{border-color:var(--accent)}.eq-note-thumb img{width:100%;height:100%;object-fit:cover}.eq-note-thumb-doc{display:flex;align-items:center;justify-content:center;font-size:20px}.eq-note-thumb-more{font-size:12px;color:var(--text-dim);font-weight:600}.equipment-map-th-actions{display:inline-flex;align-items:center;gap:2px;opacity:0;transition:opacity .15s ease;position:absolute;right:6px;top:50%;transform:translateY(-50%)}.equipment-map-custom-th:hover .equipment-map-th-actions{opacity:1}.equipment-map-col-edit{width:22px;height:22px;border-radius:50%;border:none;background:#0f172a14;color:#475569;font-size:11px;cursor:pointer;transition:background .15s ease,color .15s ease}.equipment-map-col-edit:hover{background:var(--accent);color:#fff}.equipment-map-col-del{position:static!important;transform:none!important;opacity:1!important}.equipment-map-add-col-th{background:#f8fafc!important;border-bottom:2px solid #cbd5e1;width:44px;min-width:44px;padding:0!important}.equipment-map-add-col-btn{width:100%;height:100%;background:transparent;border:none;color:var(--accent);font-size:22px;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease}.equipment-map-add-col-btn:hover{background:color-mix(in srgb,var(--accent) 14%,#ffffff);color:var(--accent-teal, #095872)}.equipment-map-add-row{cursor:pointer;transition:background .15s ease}.equipment-map-add-row td{border-bottom:none!important;padding:8px 12px!important;font-size:12px;color:var(--accent);font-weight:600;font-style:italic;background:#f8fafc!important}.equipment-map-add-row-num{color:var(--accent)!important;font-size:16px!important;font-weight:700!important;font-style:normal!important}.equipment-map-add-row:hover td{background:color-mix(in srgb,var(--accent) 14%,#ffffff)!important;color:var(--accent-teal, #095872)}.equipment-map-row-actions{width:36px;text-align:center}.equipment-map-delete{width:22px;height:22px;border-radius:50%;border:none;background:transparent;color:#0f172a59;font-size:12px;cursor:pointer;opacity:0;transition:opacity .15s ease,background .15s ease,color .15s ease}tr:hover .equipment-map-delete{opacity:1}.equipment-map-delete:hover{background:color-mix(in srgb,var(--danger, #c47a7e) 16%,#ffffff);color:#b91c1c}.equipment-map-table thead th{z-index:2}.equipment-map-table tbody td.is-editable:focus-within{outline:2px solid var(--accent);outline-offset:-2px}.project-picker-client{font-size:12px;color:var(--text-muted)}[data-theme=light] .equipment-map-toolbar .btn-ghost{color:var(--text);background:#ffffff69;border-color:#fff0}[data-theme=light] .equipment-map-toolbar .btn-ghost:hover{color:var(--accent-teal);background:color-mix(in srgb,var(--accent) 8%,#ffffff)}[data-theme=light] .equipment-map-count{background:#fff;border-color:var(--border);color:var(--text-muted)}[data-theme=light] .project-picker-item{background:var(--bg-input);color:var(--text)}[data-theme=light] .equipment-map-col-del{background:#0000000f;color:var(--text-muted)}[data-theme=light] .eq-col-formula-input{background:var(--bg-input)}[data-theme=light] .eq-col-formula-hint code{background:var(--bg-input);color:var(--accent-teal)}[data-theme=light] .eq-col-chip,[data-theme=light] .eq-col-fn{background:var(--bg-input);border-color:var(--border);color:var(--text)}[data-theme=light] .eq-col-chip:hover,[data-theme=light] .eq-col-fn:hover{color:var(--accent-teal)}[data-theme=light] .eq-note-item{background:var(--bg-card);border-color:var(--border)}.equipment-map.is-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500;background:var(--bg-base);padding:16px;overflow:auto;display:flex;flex-direction:column;gap:12px}[data-theme=light] .equipment-map.is-fullscreen{background:#fff}.equipment-map.is-fullscreen .equipment-map-scroll{flex:1;min-height:0;max-height:none}.equipment-map.is-fullscreen .equipment-map-fullscreen-btn{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:var(--accent)}.equipment-map.is-fullscreen .equipment-map-count,.equipment-map.is-fullscreen .equipment-map-toolbar button:not(.equipment-map-fullscreen-btn){display:none}.equipment-map.is-fullscreen .equipment-map-toolbar{flex-wrap:nowrap}.equipment-map.is-fullscreen .equipment-map-search{flex:1;min-width:0}.phase-dates{display:inline-flex;align-items:stretch;gap:0;padding:14px 22px;background:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:10px;font-size:12.5px}.phase-dates-item{display:flex;flex-direction:column;gap:8px;padding:4px 28px;position:relative}.phase-dates-item+.phase-dates-item:before{content:"";position:absolute;left:0;top:10%;bottom:10%;width:1px;background:#ffffff24}.phase-dates-item:first-child{padding-left:4px}.phase-dates-item:last-child{padding-right:4px}.phase-dates-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb,var(--accent) 35%,#cbd5e1)}.phase-dates-value{font-size:14px;font-weight:500;color:#f1f5f9;white-space:nowrap}.phase-dates-duration .phase-dates-value{color:var(--accent);font-weight:700;font-variant-numeric:tabular-nums}.phase-dates-help{margin-top:14px;display:flex;flex-direction:column;gap:8px;padding:12px 14px;border:1px dashed color-mix(in srgb,var(--text-muted) 25%,transparent);border-radius:var(--radius-sm, 8px);background:#ffffff05;font-size:12.5px;color:#cbd5e1;line-height:1.5}.phase-dates-help-row{display:flex;align-items:center;gap:12px}.phase-dates-help-row>.phase-btn{flex-shrink:0}.phase-dates-help-row strong{color:#f1f5f9}[data-theme=light] .phase-dates{background:var(--bg-input);border-color:var(--border)}[data-theme=light] .phase-dates-item+.phase-dates-item:before{background:var(--border)}[data-theme=light] .phase-dates-label{color:var(--accent-teal)}[data-theme=light] .phase-dates-value{color:var(--text)}[data-theme=light] .phase-dates-help{background:#fff;border-color:var(--border);color:var(--text-muted)}[data-theme=light] .phase-dates-help-row strong{color:var(--text)}@media(max-width:768px){.phase-dates{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:12px 14px;width:100%}.phase-dates-item{padding:8px 0;flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.phase-dates-item:first-child{padding-top:0}.phase-dates-item:last-child{padding-bottom:0}.phase-dates-item+.phase-dates-item{border-top:1px solid rgba(255,255,255,.14)}.phase-dates-item+.phase-dates-item:before{display:none}[data-theme=light] .phase-dates-item+.phase-dates-item{border-top-color:var(--border)}.phase-dates-value{text-align:right}.phase-dates-help-row{align-items:flex-start}}.project-contacts-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);cursor:pointer;transition:var(--transition);padding:0;flex-shrink:0}.project-contacts-icon-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--bg-elevated)}.project-contacts-icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.project-contacts-icon-btn-inline{width:34px;height:34px;align-self:end;margin-bottom:0}.modal.project-contacts-modal{max-width:min(820px,92vw);width:100%}.project-contacts-table-scroll{overflow-x:auto}.project-contacts-table{width:100%;border-collapse:collapse;font-size:13px}.project-contacts-table th,.project-contacts-table td{padding:6px 8px;border-bottom:1px solid var(--border);vertical-align:middle}.project-contacts-table th{color:var(--text-muted);text-transform:uppercase;font-size:11px;font-weight:600;letter-spacing:.03em;text-align:left;white-space:nowrap}.project-contacts-table .form-input{padding:6px 8px;font-size:13px;width:100%;min-width:120px}.project-contacts-table td:last-child{width:48px;text-align:right}.project-contacts-draft td{background:var(--bg-input)}.project-contacts-hint{margin-top:8px;font-size:12px}.project-header-ref{display:inline-flex;align-items:center;justify-content:center;height:36px;min-width:36px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text);font-size:13px;font-family:var(--font-mono, monospace);font-weight:700;letter-spacing:.02em;white-space:nowrap;flex-shrink:0}.proj-switcher{position:relative}.proj-switcher-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff1f;border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:var(--radius-sm, 6px);font-size:13px;font-weight:600;cursor:pointer;max-width:280px;transition:background .15s,border-color .15s}.proj-switcher-btn:hover{background:#ffffff38;border-color:#fff9}.proj-switcher-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.proj-switcher-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:20;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #0657722e;padding:8px;min-width:280px;max-width:360px;max-height:380px;overflow:hidden;display:flex;flex-direction:column;gap:6px}.proj-switcher-search{width:100%}.proj-switcher-empty{padding:8px 10px;font-size:12px}.proj-switcher-list{list-style:none;margin:0;padding:0;overflow-y:auto;display:flex;flex-direction:column}.proj-switcher-list li{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:6px;cursor:pointer;font-size:13px;color:var(--text);transition:background .1s}.proj-switcher-list li:hover{background:var(--bg-elevated)}.proj-switcher-list li.is-current{background:var(--accent);color:#fff}.proj-switcher-list li.is-current .text-dim{color:#ffffffd9}.proj-switcher-item-name{font-weight:600}.proj-switcher-item-client{font-size:11px}[data-theme=dark] .proj-switcher-btn{background:var(--bg-elevated);color:var(--text);border-color:var(--border)}.project-notif-tab{margin-top:24px;display:flex;flex-direction:column;gap:24px;animation:project-notif-fade-in .4s cubic-bezier(.4,0,.2,1)}@keyframes project-notif-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.project-notif-help{margin:0;padding:14px 18px;font-size:13px;color:#cbd5e1;line-height:1.6;border-left:2px solid color-mix(in srgb,var(--accent) 50%,transparent);background:color-mix(in srgb,var(--accent) 5%,transparent);border-radius:0 var(--radius) var(--radius) 0}.project-notif-help strong{color:#f1f5f9}.project-notif-email-toggle{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;margin:0;border:1px solid color-mix(in srgb,var(--accent) 28%,rgba(255,255,255,.1));border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 6%,transparent);cursor:pointer;font-size:13px;color:#f1f5f9;-webkit-user-select:none;user-select:none;transition:border-color .2s ease,background .2s ease,transform .2s ease}.project-notif-email-toggle:hover{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent);transform:translateY(-1px)}.project-notif-email-toggle input[type=checkbox]{width:18px;height:18px;margin-top:1px;accent-color:var(--accent);cursor:pointer}.project-notif-email-hint{display:block;font-size:11px;color:color-mix(in srgb,var(--accent) 25%,#e2e8f0);margin-top:4px;font-weight:400}.project-notif-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.project-notif-phase{position:relative;display:flex;flex-direction:column;gap:14px;padding:18px 20px 16px;border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);border-radius:var(--radius);background:radial-gradient(60% 50% at 50% 0%,color-mix(in srgb,var(--accent) 10%,transparent),#0000001a 70%),#ffffff05;overflow:hidden;transition:border-color .25s ease,transform .25s cubic-bezier(.4,0,.2,1),background .25s ease}.project-notif-phase:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--accent-gradient, linear-gradient(90deg, #095872, #32947c, #4f9b8f));opacity:.6;transition:opacity .25s ease}.project-notif-phase:hover{border-color:color-mix(in srgb,var(--accent) 35%,transparent);transform:translateY(-2px)}.project-notif-phase:hover:before{opacity:1}.project-notif-phase.is-override:before{opacity:1}.project-notif-phase.is-override{border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.project-notif-phase-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.project-notif-phase-title{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(100deg,color-mix(in srgb,var(--accent) 25%,#ffffff),color-mix(in srgb,var(--accent) 60%,#ffffff),color-mix(in srgb,var(--accent) 25%,#ffffff));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:project-notif-shimmer 8s linear infinite}@keyframes project-notif-shimmer{0%{background-position:0% 50%}to{background-position:200% 50%}}.project-notif-events{display:flex;flex-direction:column;gap:10px}.project-notif-event-col{display:flex;flex-direction:column;gap:8px}.project-notif-event-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb,var(--accent) 35%,#cbd5e1)}.project-notif-cell{display:flex;flex-direction:column;gap:10px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--text-muted) 16%,transparent);border-radius:var(--radius-sm, 8px);background:#ffffff05;transition:border-color .2s ease,background .2s ease}.project-notif-cell.is-override{border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:color-mix(in srgb,var(--accent) 6%,transparent)}.project-notif-cell-header{display:flex;justify-content:flex-end}.project-notif-badge{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:999px;border:1px solid transparent}.project-notif-badge-default{background:#ffffff0f;color:#e2e8f0;border-color:#ffffff2e}.project-notif-badge-override{background:color-mix(in srgb,var(--accent) 22%,transparent);color:color-mix(in srgb,var(--accent) 35%,#ffffff);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.project-notif-users,.project-notif-users-readonly{display:flex;flex-wrap:wrap;gap:6px;min-height:28px}.project-notif-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:999px;font-size:12px;color:#cbd5e1;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;font-family:inherit}.project-notif-chip:hover:not(.is-readonly):not(.is-selected){border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:#fff;transform:translateY(-1px)}.project-notif-chip.is-selected{background:var(--accent-gradient, linear-gradient(135deg, #095872, #32947c, #4f9b8f));color:#fff;border-color:transparent;font-weight:600;box-shadow:0 4px 12px -4px color-mix(in srgb,var(--accent) 60%,transparent)}.project-notif-chip.is-selected:hover{transform:translateY(-1px)}.project-notif-chip.is-readonly{cursor:default;opacity:.8}.project-notif-chip-check{font-size:10px;line-height:1}.project-notif-actions{display:flex;justify-content:flex-end;padding-top:8px;border-top:1px dashed color-mix(in srgb,var(--text-muted) 18%,transparent)}.project-notif-actions .btn-ghost{font-size:12px;color:color-mix(in srgb,var(--accent) 35%,#ffffff);transition:color .2s ease,transform .2s ease}.project-notif-actions .btn-ghost:hover{color:#fff;transform:translate(-2px)}[data-theme=light] .project-notif-help{color:var(--text-muted);background:color-mix(in srgb,var(--accent) 8%,#ffffff)}[data-theme=light] .project-notif-help strong{color:var(--text)}[data-theme=light] .project-notif-email-toggle{color:var(--text);background:color-mix(in srgb,var(--accent) 8%,#ffffff);border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}[data-theme=light] .project-notif-email-toggle:hover{background:color-mix(in srgb,var(--accent) 14%,#ffffff);border-color:var(--accent)}[data-theme=light] .project-notif-email-hint{color:var(--text-muted)}[data-theme=light] .project-notif-phase{background:radial-gradient(60% 50% at 50% 0%,color-mix(in srgb,var(--accent) 8%,transparent) 0%,transparent 70%),var(--bg-card);border-color:color-mix(in srgb,var(--accent) 18%,var(--border))}[data-theme=light] .project-notif-phase-title{background:linear-gradient(100deg,var(--accent-teal) 0%,var(--accent) 50%,var(--accent-teal) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text}[data-theme=light] .project-notif-event-label{color:var(--accent-teal)}[data-theme=light] .project-notif-cell{background:var(--bg-input);border-color:var(--border)}[data-theme=light] .project-notif-cell.is-override{background:color-mix(in srgb,var(--accent) 6%,#ffffff);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}[data-theme=light] .project-notif-badge-default{background:#fff;color:var(--text-muted);border-color:var(--border)}[data-theme=light] .project-notif-badge-override{color:var(--accent-teal)}[data-theme=light] .project-notif-chip{background:#fff;border-color:var(--border);color:var(--text)}[data-theme=light] .project-notif-chip:hover:not(.is-readonly):not(.is-selected){color:var(--accent-teal);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,#ffffff)}[data-theme=light] .project-notif-actions .btn-ghost{color:var(--accent-teal)}[data-theme=light] .project-notif-actions .btn-ghost:hover{color:var(--accent)}.survey-project-info .form-label{color:color-mix(in srgb,var(--accent) 40%,#cbd5e1)}.survey-info-field{position:relative}.survey-project-info .form-input,.survey-project-info input,.survey-project-info select,.survey-project-info textarea{background:#ffffff29;border:1px solid rgba(255,255,255,.22);color:#f1f5f9}.survey-project-info .form-input:hover:not(:disabled),.survey-project-info input:hover:not(:disabled),.survey-project-info select:hover:not(:disabled),.survey-project-info textarea:hover:not(:disabled){border-color:#ffffff57;background:#fff3}.survey-project-info .dynamics-ref-input,.survey-project-info input.dynamics-ref-input{background:#fffffff2!important;color:#0f172a!important;border:1px solid rgba(255,255,255,.95)!important;font-weight:600;letter-spacing:.02em}.survey-project-info .dynamics-ref-input::placeholder{color:#0f172a66!important}.survey-project-info .dynamics-ref-input:focus{border-color:var(--accent)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 25%,transparent)!important}.survey-project-info .dynamics-ref-input.is-invalid{border-color:var(--danger, #c47a7e)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--danger, #c47a7e) 22%,transparent)!important}.dynamics-ref-error{display:block;font-size:11px;margin-top:4px;color:var(--danger, #c47a7e);font-weight:600}.dynamics-ref-error code,.survey-project-info .text-dim code{background:#ffffff14;padding:1px 5px;border-radius:3px;font-size:11px;color:color-mix(in srgb,var(--accent) 30%,#ffffff);font-family:var(--font-mono, monospace)}.survey-project-info input[type=date],.survey-project-info input[type=time],.survey-project-info input[type=datetime-local]{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.12)),#ffffff2e);border:1px solid color-mix(in srgb,var(--accent) 35%,rgba(255,255,255,.2));color:#f1f5f9;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em;padding-right:44px;position:relative;cursor:pointer;transition:border-color .25s ease,background .25s ease,box-shadow .25s ease,transform .25s cubic-bezier(.4,0,.2,1)}.survey-project-info input[type=date]:hover:not(:disabled),.survey-project-info input[type=time]:hover:not(:disabled),.survey-project-info input[type=datetime-local]:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 60%,rgba(255,255,255,.3));background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 28%,rgba(255,255,255,.14)),#ffffff38);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 14%,transparent)}.survey-project-info input[type=date]:focus,.survey-project-info input[type=time]:focus,.survey-project-info input[type=datetime-local]:focus{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent)}.survey-project-info input[type=date]::-webkit-datetime-edit,.survey-project-info input[type=time]::-webkit-datetime-edit,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit{color:#f1f5f9;padding:0}.survey-project-info input[type=date]::-webkit-datetime-edit-fields-wrapper,.survey-project-info input[type=time]::-webkit-datetime-edit-fields-wrapper,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit-fields-wrapper{padding:0}.survey-project-info input[type=date]::-webkit-datetime-edit-text,.survey-project-info input[type=time]::-webkit-datetime-edit-text,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit-text{color:color-mix(in srgb,var(--accent) 35%,#cbd5e1);padding:0 2px;font-weight:700}.survey-project-info input[type=date]::-webkit-datetime-edit-month-field,.survey-project-info input[type=date]::-webkit-datetime-edit-day-field,.survey-project-info input[type=date]::-webkit-datetime-edit-year-field,.survey-project-info input[type=time]::-webkit-datetime-edit-hour-field,.survey-project-info input[type=time]::-webkit-datetime-edit-minute-field,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit-month-field,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit-day-field,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit-year-field,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit-hour-field,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit-minute-field{padding:3px 5px;border-radius:5px;transition:background .15s ease,color .15s ease}.survey-project-info input[type=date]::-webkit-datetime-edit-month-field:focus,.survey-project-info input[type=date]::-webkit-datetime-edit-day-field:focus,.survey-project-info input[type=date]::-webkit-datetime-edit-year-field:focus,.survey-project-info input[type=time]::-webkit-datetime-edit-hour-field:focus,.survey-project-info input[type=time]::-webkit-datetime-edit-minute-field:focus,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit-month-field:focus,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit-day-field:focus,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit-year-field:focus,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit-hour-field:focus,.survey-project-info input[type=datetime-local]::-webkit-datetime-edit-minute-field:focus{background:color-mix(in srgb,var(--accent) 35%,transparent);color:#fff;outline:none}.survey-project-info input[type=date]::-webkit-calendar-picker-indicator,.survey-project-info input[type=time]::-webkit-calendar-picker-indicator,.survey-project-info input[type=datetime-local]::-webkit-calendar-picker-indicator{position:absolute;right:10px;width:22px;height:22px;padding:2px;border-radius:6px;cursor:pointer;opacity:.9;filter:invert(.55) sepia(.6) saturate(4) hue-rotate(120deg) brightness(1.05);transition:transform .2s ease,opacity .2s ease,background .2s ease}.survey-project-info input[type=date]:hover::-webkit-calendar-picker-indicator,.survey-project-info input[type=time]:hover::-webkit-calendar-picker-indicator,.survey-project-info input[type=datetime-local]:hover::-webkit-calendar-picker-indicator{opacity:1;transform:scale(1.1);background:color-mix(in srgb,var(--accent) 25%,transparent)}.survey-project-info .form-input::placeholder,.survey-project-info input::placeholder,.survey-project-info textarea::placeholder{color:#f1f5f973}.survey-project-info .form-label{color:#cbd5e1;font-weight:600;font-size:12px}.survey-project-info{background:transparent;border:none;padding:16px 0 0;margin-bottom:48px;display:flex;flex-direction:column;gap:32px;animation:survey-fade-in .45s cubic-bezier(.4,0,.2,1)}[data-theme=light] .survey-project-info{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px 28px;margin-bottom:20px;box-shadow:var(--shadow)}[data-theme=light] .survey-project-info .form-label{color:var(--accent-teal);font-weight:700}[data-theme=light] .survey-project-info .form-input,[data-theme=light] .survey-project-info input:not([type=range]):not([type=checkbox]):not([type=radio]):not([type=file]),[data-theme=light] .survey-project-info select,[data-theme=light] .survey-project-info textarea{background:#fff;border:1px solid var(--border);color:var(--text)}[data-theme=light] .survey-project-info .form-input:hover:not(:disabled),[data-theme=light] .survey-project-info input:not([type=range]):not([type=checkbox]):not([type=radio]):not([type=file]):hover:not(:disabled),[data-theme=light] .survey-project-info select:hover:not(:disabled),[data-theme=light] .survey-project-info textarea:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:#fff}[data-theme=light] .survey-project-info .form-input:focus,[data-theme=light] .survey-project-info input:not([type=range]):not([type=checkbox]):not([type=radio]):not([type=file]):focus,[data-theme=light] .survey-project-info select:focus,[data-theme=light] .survey-project-info textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}[data-theme=light] .survey-project-info .form-input::placeholder,[data-theme=light] .survey-project-info input::placeholder,[data-theme=light] .survey-project-info textarea::placeholder{color:var(--text-dim)}[data-theme=light] .survey-project-info input[type=date],[data-theme=light] .survey-project-info input[type=time],[data-theme=light] .survey-project-info input[type=datetime-local]{background:#fff;border:1px solid var(--border);color:var(--text)}[data-theme=light] .survey-project-info input[type=date]:hover:not(:disabled),[data-theme=light] .survey-project-info input[type=time]:hover:not(:disabled),[data-theme=light] .survey-project-info input[type=datetime-local]:hover:not(:disabled){background:#fff;border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}[data-theme=light] .survey-project-info input[type=date]::-webkit-datetime-edit,[data-theme=light] .survey-project-info input[type=time]::-webkit-datetime-edit,[data-theme=light] .survey-project-info input[type=datetime-local]::-webkit-datetime-edit{color:var(--text)}[data-theme=light] .survey-project-info input[type=date]::-webkit-datetime-edit-text,[data-theme=light] .survey-project-info input[type=time]::-webkit-datetime-edit-text,[data-theme=light] .survey-project-info input[type=datetime-local]::-webkit-datetime-edit-text{color:var(--text-dim)}[data-theme=light] .survey-project-info input[type=date]::-webkit-calendar-picker-indicator,[data-theme=light] .survey-project-info input[type=time]::-webkit-calendar-picker-indicator,[data-theme=light] .survey-project-info input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(.3) sepia(.4) saturate(3) hue-rotate(120deg)}[data-theme=light] .survey-project-info .dynamics-ref-input,[data-theme=light] .survey-project-info input.dynamics-ref-input{background:#fff!important;color:var(--text)!important;border:1px solid var(--accent)!important}[data-theme=light] .survey-project-info .dynamics-ref-input::placeholder{color:var(--text-dim)!important}[data-theme=light] .survey-project-info .text-dim code,[data-theme=light] .dynamics-ref-error code{background:var(--bg-input);color:var(--accent-teal)}[data-theme=light] .client-details{background:radial-gradient(80% 60% at 0% 0%,color-mix(in srgb,var(--accent) 6%,transparent) 0%,transparent 60%),var(--bg-input);border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border))}[data-theme=light] .client-detail-label{color:var(--accent-teal)}[data-theme=light] .client-detail-value{color:var(--text)}[data-theme=light] .client-detail-notes{color:var(--text-muted)}[data-theme=light] .client-detail-link{color:var(--accent);border-bottom-color:color-mix(in srgb,var(--accent) 40%,transparent)}[data-theme=light] .client-detail-link:hover{color:var(--accent-teal)}[data-theme=light] .client-detail-loc-chip{background:#fff;border-color:var(--border);color:var(--text)}[data-theme=light] .client-detail-loc-chip strong{color:var(--accent-teal)}[data-theme=light] .client-detail-loc-addr{color:var(--text-dim)}[data-theme=light] .client-toggle{color:var(--accent-teal);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 8%,#ffffff)}[data-theme=light] .client-toggle:hover{background:color-mix(in srgb,var(--accent) 16%,#ffffff);color:var(--accent-teal);border-color:var(--accent)}[data-theme=light] .survey-distance{color:var(--text)}[data-theme=light] .survey-distance strong{color:var(--accent-teal)}[data-theme=light] .route-col{background:radial-gradient(60% 50% at 50% 0%,color-mix(in srgb,var(--accent) 6%,transparent) 0%,transparent 70%),var(--bg-input);border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border))}[data-theme=light] .route-col-title{background:linear-gradient(100deg,var(--accent-teal) 0%,var(--accent) 50%,var(--accent-teal) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text}[data-theme=light] .survey-notes-list .survey-note-title,[data-theme=light] .survey-notes-list.notes-view-list .survey-note-title{color:var(--text)}[data-theme=light] .survey-notes-list.notes-view-cards .survey-note-date{background:color-mix(in srgb,var(--accent) 8%,#ffffff);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:var(--accent-teal)}[data-theme=light] .survey-notes-list.notes-view-cards .survey-note-card:hover .survey-note-title{color:var(--accent-teal)}[data-theme=light] .survey-notes-list.notes-view-cards .survey-note-title{color:var(--text)}[data-theme=light] .survey-notes-list.notes-view-cards .survey-note-bottom-badge .survey-note-badge-map{color:var(--accent-teal)}[data-theme=light] .survey-notes-list.notes-view-cards .survey-note-bottom-badge .survey-note-badge-label strong{color:var(--text)}[data-theme=light] .survey-notes-list.notes-view-cards .survey-note-bottom-badge .survey-note-badge-plain{color:var(--text-muted)}[data-theme=light] .survey-notes-list.notes-view-cards .survey-note-footer .note-tag{color:var(--accent-teal);background:color-mix(in srgb,var(--accent) 14%,#ffffff);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}[data-theme=light] .survey-note-badge-map{color:var(--accent-teal);background:color-mix(in srgb,var(--accent) 12%,#ffffff);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}[data-theme=light] .survey-note-badge-map svg{color:var(--accent-teal)}[data-theme=light] .survey-note-badge-label strong{color:var(--text)}[data-theme=light] .survey-note-badge-plain{color:var(--text-muted);background:var(--bg-input);border-color:var(--border)}[data-theme=light] .survey-notes-list.notes-view-list .survey-note-title{color:var(--text)}[data-theme=light] .survey-note-expanded .form-label{color:var(--accent-teal)}[data-theme=light] .survey-note-expanded .survey-media-actions .btn-ghost{background:#fff;border-color:var(--border);color:var(--text);-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=light] .survey-note-expanded .survey-media-actions .btn-ghost:hover{background:var(--bg-input);border-color:var(--accent);color:var(--accent-teal)}[data-theme=light] .survey-note-expanded .survey-note-actions .btn-danger-ghost{background:color-mix(in srgb,var(--danger) 12%,#ffffff);border-color:color-mix(in srgb,var(--danger) 50%,transparent);color:var(--danger);-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=light] .survey-note-expanded .survey-note-actions .btn-danger-ghost:hover{background:color-mix(in srgb,var(--danger) 22%,#ffffff);border-color:var(--danger);color:var(--danger)}@keyframes survey-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.survey-info-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px}.survey-client-row{display:flex;align-items:stretch;gap:8px}.survey-distance{margin-top:12px;padding:14px 18px;border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);border-radius:var(--radius-sm);font-size:13px;color:#e2e8f0;line-height:1.6}.survey-distance strong{color:#fff}.survey-distance-hint{font-size:11px;margin-left:6px}.survey-origin{margin-top:32px;padding:24px;border:1px dashed color-mix(in srgb,var(--text-muted) 28%,transparent);border-radius:var(--radius);background:transparent;display:flex;flex-direction:column;gap:20px}.client-toggle{display:inline-flex;align-items:center;gap:6px;padding:0 14px;height:38px;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent) 35%,rgba(255,255,255,.18));background:color-mix(in srgb,var(--accent) 12%,transparent);color:color-mix(in srgb,var(--accent) 40%,#ffffff);font:inherit;font-size:12px;font-weight:700;letter-spacing:.04em;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.client-toggle:hover{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:color-mix(in srgb,var(--accent) 60%,transparent);color:#fff;transform:translateY(-1px)}.client-toggle svg{transition:transform .25s cubic-bezier(.4,0,.2,1)}.client-toggle.is-open svg{transform:rotate(180deg)}.client-details{margin-top:14px;padding:20px 22px;border:1px solid color-mix(in srgb,var(--accent) 22%,rgba(255,255,255,.1));border-radius:var(--radius);background:radial-gradient(80% 60% at 0% 0%,color-mix(in srgb,var(--accent) 12%,transparent) 0%,transparent 60%),#ffffff08;animation:client-details-in .3s cubic-bezier(.4,0,.2,1);overflow:hidden}@keyframes client-details-in{0%{opacity:0;transform:translateY(-4px);max-height:0}to{opacity:1;transform:translateY(0);max-height:1200px}}.client-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px 24px}.client-detail{display:flex;flex-direction:column;gap:4px;min-width:0}.client-detail-wide{grid-column:1 / -1}.client-detail-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb,var(--accent) 35%,#cbd5e1)}.client-detail-value{font-size:14px;font-weight:500;color:#f1f5f9;word-break:break-word}.client-detail-mono{font-family:var(--font-mono, monospace);letter-spacing:.02em}.client-detail-address{display:flex;flex-direction:column;gap:2px;line-height:1.5}.client-detail-notes{white-space:pre-wrap;line-height:1.5;font-size:13px;color:#cbd5e1}.client-detail-link{color:color-mix(in srgb,var(--accent) 40%,#ffffff);text-decoration:none;border-bottom:1px dashed color-mix(in srgb,var(--accent) 40%,transparent);transition:color .2s ease,border-color .2s ease}.client-detail-link:hover{color:#fff;border-color:color-mix(in srgb,var(--accent) 70%,transparent)}.client-detail-locations{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.client-detail-loc-chip{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.14);font-size:12px;color:#f1f5f9;max-width:100%}.client-detail-loc-chip strong{color:color-mix(in srgb,var(--accent) 35%,#ffffff);font-weight:700;margin-right:2px}.client-detail-loc-addr{color:#94a3b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-col{display:flex;flex-direction:column;gap:14px;padding:22px;border:1px solid color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.08));border-radius:var(--radius);background:radial-gradient(60% 50% at 50% 0%,color-mix(in srgb,var(--accent) 14%,transparent) 0%,transparent 70%),#ffffff08;position:relative;overflow:hidden}.route-col:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--accent-gradient, linear-gradient(90deg, #095872, #32947c, #4f9b8f));opacity:.65}.route-col-head{display:flex;align-items:center;gap:10px;margin-bottom:4px}.route-col-dot{width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent);flex-shrink:0}.route-col-dest .route-col-dot{background:color-mix(in srgb,var(--accent) 80%,#ffffff)}.route-col-title{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(100deg,color-mix(in srgb,var(--accent) 25%,#ffffff),color-mix(in srgb,var(--accent) 60%,#ffffff),color-mix(in srgb,var(--accent) 25%,#ffffff));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:survey-shimmer 8s linear infinite}.route-col-field{display:flex;flex-direction:column;gap:8px}.route-col-coords{display:grid;grid-template-columns:1fr 1fr;gap:14px}.route-card{margin-top:32px;display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start;position:relative}@media(max-width:880px){.route-card{grid-template-columns:1fr}}.route-card-km{display:inline-flex;align-items:baseline;gap:4px;padding:6px 14px;border-radius:999px;background:var(--accent-gradient, linear-gradient(135deg, #095872, #32947c, #4f9b8f));color:#fff;font-weight:700;font-variant-numeric:tabular-nums;font-size:14px;letter-spacing:.02em;box-shadow:0 8px 22px -8px color-mix(in srgb,var(--accent) 60%,transparent)}.route-card-km-unit{font-size:10px;font-weight:700;opacity:.85}.route-card-head{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.route-card-title-wrap{display:inline-flex;align-items:center;gap:10px}.route-card-title-icon{color:color-mix(in srgb,var(--accent) 70%,#ffffff)}.route-card-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;background:linear-gradient(100deg,color-mix(in srgb,var(--accent) 25%,#ffffff),color-mix(in srgb,var(--accent) 60%,#ffffff),color-mix(in srgb,var(--accent) 25%,#ffffff));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:survey-shimmer 8s linear infinite}.route-card-pill{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:999px;background:color-mix(in srgb,var(--accent) 22%,transparent);color:color-mix(in srgb,var(--accent) 35%,#ffffff);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}.route-card-reset{border:1px solid rgba(255,255,255,.14);background:transparent;color:#cbd5e1;border-radius:999px;padding:6px 14px;font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.route-card-reset:hover{background:color-mix(in srgb,var(--accent) 16%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:#fff;transform:translateY(-1px)}.route-card-body{display:flex;flex-direction:column;gap:16px}.route-card-field{display:flex;flex-direction:column;gap:8px}.route-card-field-address .survey-with-geo{width:100%}.route-card-body>.route-card-field-address{width:100%}.route-card-body{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;align-content:start}.route-card-field-address{grid-column:1 / -1}.route-card-coord{font-variant-numeric:tabular-nums;letter-spacing:.02em}.route-summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:18px 20px;border-radius:var(--radius);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 10%,rgba(255,255,255,.04)),#ffffff05);border:1px solid color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.08));min-height:100%}@media(max-width:880px){.route-summary{grid-template-columns:1fr;gap:18px}}.route-summary-stop{display:flex;align-items:center;gap:10px;min-width:0}.route-summary-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent)}.route-summary-stop-dest .route-summary-dot{background:color-mix(in srgb,var(--accent) 80%,#ffffff);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent)}.route-summary-stop-text{display:flex;flex-direction:column;gap:2px;min-width:0}.route-summary-stop-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:color-mix(in srgb,var(--accent) 35%,#cbd5e1)}.route-summary-stop-value{font-size:13px;font-weight:600;color:#f1f5f9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-summary-line{display:flex;align-items:center;justify-content:center;gap:8px;position:relative;color:color-mix(in srgb,var(--accent) 70%,#ffffff)}.route-summary-line-track{position:absolute;left:-8px;right:-8px;top:50%;height:1px;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--accent) 50%,transparent) 20%,color-mix(in srgb,var(--accent) 50%,transparent) 80%,transparent 100%);z-index:0}.route-summary-arrow{position:relative;z-index:1}.route-summary-km{display:inline-flex;align-items:baseline;gap:3px;padding:5px 12px;border-radius:999px;background:var(--accent-gradient, linear-gradient(135deg, #095872, #32947c, #4f9b8f));color:#fff;font-weight:700;font-variant-numeric:tabular-nums;font-size:14px;letter-spacing:.02em;box-shadow:0 6px 18px -6px color-mix(in srgb,var(--accent) 60%,transparent);position:relative;z-index:1}.route-summary-km-unit{font-size:10px;font-weight:700;opacity:.85}@media(max-width:880px){.route-summary-line-track{display:none}.route-summary-line{flex-direction:row;justify-content:flex-start}.route-summary-arrow{transform:rotate(90deg)}}.survey-origin-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.survey-origin-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;background:linear-gradient(100deg,color-mix(in srgb,var(--accent) 25%,#ffffff),color-mix(in srgb,var(--accent) 60%,#ffffff),color-mix(in srgb,var(--accent) 25%,#ffffff));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:survey-shimmer 8s linear infinite}@keyframes survey-shimmer{0%{background-position:0% 50%}to{background-position:200% 50%}}.survey-with-geo{display:flex;gap:6px;align-items:stretch}.survey-with-geo .form-input{flex:1}.survey-geo-btn{flex-shrink:0;padding:0 10px!important}.survey-info-field{display:flex;flex-direction:column;gap:8px}.survey-info-client{min-width:0}.survey-readonly{background:#ffffff1a!important;border-color:#ffffff2e!important;cursor:default;color:#f1f5f9!important}[data-theme=light] .survey-readonly{background:var(--bg-input)!important;border-color:var(--border)!important;color:var(--text)!important}.survey-hint{font-size:11px;margin-top:2px}.survey-details{min-height:220px;resize:vertical}.survey-save-status{font-size:11px;font-weight:600}.survey-image-thumb-wrap{position:relative;display:inline-block}.survey-image-delete{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:var(--danger);color:#fff;border:2px solid var(--bg-card);font-size:10px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease}.survey-image-thumb-wrap:hover .survey-image-delete{opacity:1}@media(max-width:640px){.survey-info-row{grid-template-columns:1fr}}.survey-new-note-btn{margin-bottom:16px}.survey-note-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:24px;display:flex;flex-direction:column;gap:14px}.survey-form-status{display:flex;align-items:center;justify-content:flex-end;gap:12px}.survey-saved-indicator{font-size:12px;color:var(--success);font-weight:600}.survey-media-actions{display:flex;gap:8px;flex-wrap:wrap}.survey-file-list{display:flex;flex-direction:column;gap:4px;margin-top:6px}.survey-file-item{display:flex;align-items:center;justify-content:space-between;background:var(--bg-input);padding:6px 10px;border-radius:var(--radius-sm);font-size:12px}.survey-file-name{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.survey-file-remove{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:14px;padding:0 4px}.survey-file-remove:hover{color:var(--danger)}.notes-toolbar .projects-view-toggle{margin-left:auto}.notes-cta-row{display:flex;justify-content:flex-end;margin-bottom:14px}.survey-notes-list.notes-view-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;align-items:start}.survey-notes-list.notes-view-cards .survey-note-card.is-expanded{grid-column:1 / -1}.survey-notes-list.notes-view-cards .survey-note-card{background:var(--bg-card);border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);border-radius:14px;box-shadow:none;transition:transform .5s cubic-bezier(.34,1.56,.64,1),border-color .4s ease,box-shadow .5s ease}.survey-notes-list.notes-view-cards .survey-note-card:after{content:"";position:absolute;left:8%;right:8%;top:0;height:1.5px;background:linear-gradient(90deg,transparent 0%,#095872 25%,#32947c 50%,#4f9b8f 75%,transparent 100%);filter:drop-shadow(0 0 8px color-mix(in srgb,#4f9b8f 70%,transparent));transform:scaleX(.5);opacity:.5;transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .4s ease}.survey-notes-list.notes-view-cards .survey-note-card:has(.survey-note-badge-map){border-left:2px solid color-mix(in srgb,var(--accent) 50%,transparent)}.survey-notes-list.notes-view-cards .survey-note-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,transparent);transform:translateY(-3px);box-shadow:0 14px 32px -14px #00000040}.survey-notes-list.notes-view-cards .survey-note-card:has(.survey-note-badge-map):hover{border-left-color:#4f9b8f}.survey-notes-list.notes-view-cards .survey-note-card:hover:after{transform:scaleX(1);opacity:1}.survey-notes-list.notes-view-cards .survey-note-card:before{content:"";position:absolute;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,#4f9b8f 22%,transparent) 0%,transparent 60%);top:-30%;right:-20%;filter:blur(20px);opacity:0;transition:opacity .5s ease,transform .8s cubic-bezier(.4,0,.2,1);transform:translate(20px,-10px);pointer-events:none}.survey-notes-list.notes-view-cards .survey-note-card:hover:before{opacity:1;transform:translate(0)}.survey-notes-list.notes-view-cards .survey-note-header{padding:18px 20px;gap:12px}.survey-notes-list.notes-view-cards .survey-note-card-top{justify-content:flex-end;min-height:0}.survey-notes-list.notes-view-cards .survey-note-card-top .survey-note-badge{display:none}.survey-notes-list.notes-view-cards .survey-note-date{font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,#095872 20%,transparent),color-mix(in srgb,#4f9b8f 15%,transparent));border:1px solid color-mix(in srgb,#4f9b8f 25%,transparent);color:color-mix(in srgb,#4f9b8f 30%,#f1f5f9);letter-spacing:.04em;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-transform:uppercase;font-variant-numeric:tabular-nums}.survey-notes-list.notes-view-cards .survey-note-title{font-size:17px;font-weight:800;color:color-mix(in srgb,var(--text) 92%,transparent);letter-spacing:-.018em;line-height:1.25;margin:4px 0 0}.survey-notes-list.notes-view-cards .survey-note-card:hover .survey-note-title{color:color-mix(in srgb,var(--accent) 28%,#f1f5f9)}.survey-notes-list.notes-view-cards .survey-note-preview{font-size:13px;line-height:1.55;color:color-mix(in srgb,var(--text) 65%,transparent);-webkit-line-clamp:3;margin:0}.survey-notes-list.notes-view-cards .survey-note-footer{border-top:none;padding-top:6px;margin-top:0}.survey-notes-list.notes-view-cards .survey-note-footer .note-tag{background:color-mix(in srgb,var(--accent) 18%,transparent);color:color-mix(in srgb,var(--accent) 30%,#ffffff);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);font-size:10.5px;padding:2px 9px;font-weight:700;letter-spacing:.02em}.survey-note-bottom-badge{display:none}.survey-notes-list.notes-view-cards .survey-note-bottom-badge{display:flex;align-items:center;justify-content:flex-start;margin:6px 0 0;padding:0;background:transparent;border:none;backdrop-filter:none;-webkit-backdrop-filter:none;text-align:left}.survey-notes-list.notes-view-cards .survey-note-bottom-badge .survey-note-badge-map{background:transparent;border:none;padding:0;margin:0;color:color-mix(in srgb,#4f9b8f 35%,#f1f5f9);font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;gap:6px;max-width:100%}.survey-notes-list.notes-view-cards .survey-note-bottom-badge .survey-note-badge-map svg{color:#4f9b8f}.survey-notes-list.notes-view-cards .survey-note-bottom-badge .survey-note-badge-map svg{width:14px;height:14px;color:var(--accent);flex-shrink:0}.survey-notes-list.notes-view-cards .survey-note-bottom-badge .survey-note-badge-dot{display:none}.survey-notes-list.notes-view-cards .survey-note-bottom-badge .survey-note-badge-label{white-space:normal;line-height:1.4}.survey-notes-list.notes-view-cards .survey-note-bottom-badge .survey-note-badge-label strong{color:#fff;font-weight:700;background:transparent;padding:0;border-radius:0;margin:0}.survey-notes-list.notes-view-cards .survey-note-bottom-badge .survey-note-badge-plain{background:transparent;border:none;padding:0;color:color-mix(in srgb,var(--text-muted) 90%,transparent);font-size:11px;font-weight:700;letter-spacing:.06em;gap:6px}.survey-notes-list.notes-view-cards .survey-note-bottom-badge .survey-note-badge-plain .survey-note-badge-dot{display:inline-block;width:5px;height:5px;background:var(--text-muted)}.notes-table-scroll{overflow-x:auto}.notes-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:var(--radius);overflow:hidden;box-shadow:0 6px 20px -10px #00000059}.notes-table thead th{color:#475569;font-weight:700;font-size:11px;padding:14px 16px;text-align:left;background:#eef2f6;border-bottom:1px solid #d8e0e8;white-space:nowrap;text-transform:uppercase;letter-spacing:.08em}.notes-table tbody td{padding:16px;border-bottom:1px solid #e2e8f0;color:#1e293b;vertical-align:middle;font-size:14px;background:#fff}.notes-table tbody tr:last-child td{border-bottom:none}.notes-table-row{cursor:pointer}.notes-table-row td{transition:background .2s ease,color .2s ease}.notes-table-row:hover td{background:color-mix(in srgb,var(--accent) 10%,#ffffff)}.notes-table-title{font-weight:600;color:#0f172a;max-width:380px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notes-table-row:hover .notes-table-title{color:var(--accent-teal, #095872)}.notes-table-attach,.notes-table-date{font-variant-numeric:tabular-nums;color:#64748b;font-size:13px}.notes-table-expanded-row>td{background:#f1f5f9;padding:0}.notes-table .survey-note-badge{text-transform:none;letter-spacing:.01em;font-size:12px}.notes-table .survey-note-badge-map{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent-teal, #095872);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.notes-table .survey-note-badge-map svg{color:var(--accent-teal, #095872)}.notes-table .survey-note-badge-label strong{color:#0f172a}.notes-table .survey-note-badge-plain{background:#94a3b829;color:#475569;border-color:#94a3b866}.notes-table .note-tag{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent-teal, #095872);font-weight:700}.survey-notes-list.notes-view-list{display:flex;flex-direction:column;gap:10px}.survey-notes-list.notes-view-list .survey-note-card{background:var(--bg-card);border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);border-radius:14px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;overflow:visible;animation:projects-row-in .45s cubic-bezier(.4,0,.2,1) forwards}.survey-notes-list.notes-view-list .survey-note-card:hover{background:color-mix(in srgb,var(--accent) 8%,var(--bg-card));border-color:color-mix(in srgb,var(--accent) 40%,transparent);transform:translate(4px);box-shadow:0 4px 14px -6px #0003;padding-left:6px}.survey-notes-list.notes-view-list .survey-note-card:before{inset:10% auto 10% 0;width:3px;height:auto;background:var(--accent);border-radius:0 3px 3px 0;transform:scaleY(.4);opacity:0;transition:opacity .25s ease,transform .25s cubic-bezier(.4,0,.2,1)}.survey-notes-list.notes-view-list .survey-note-card:hover:before{opacity:1;transform:scaleY(1)}.survey-notes-list.notes-view-list .survey-note-card:after{display:none}.notes-list-dot{display:none}.survey-notes-list.notes-view-list .notes-list-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;color:var(--text-muted);flex-shrink:0;order:0;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s ease}.survey-notes-list.notes-view-list .notes-list-dot.is-map{color:var(--accent)}.survey-notes-list.notes-view-list .notes-list-dot.is-plain{color:#94a3b8}.survey-notes-list.notes-view-list .survey-note-card:hover .notes-list-dot{transform:scale(1.6);box-shadow:0 0 0 4px color-mix(in srgb,currentColor 18%,transparent)}.survey-notes-list.notes-view-list .survey-note-header{padding:16px;flex-direction:row;align-items:center;gap:16px;cursor:pointer;transition:padding .25s ease}.survey-notes-list.notes-view-list .survey-note-card:hover .survey-note-header{padding-left:22px}.survey-notes-list.notes-view-list .survey-note-card-top{display:contents}.survey-notes-list.notes-view-list .survey-note-title{order:1}.survey-notes-list.notes-view-list .survey-note-badge{order:2;max-width:260px;flex-shrink:0}.survey-notes-list.notes-view-list .survey-note-date{order:3}.survey-notes-list.notes-view-list .survey-note-title{font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;-webkit-line-clamp:unset;flex:1;min-width:0;color:#e2e8f0;letter-spacing:-.01em;margin:0}.survey-notes-list.notes-view-list .survey-note-card:hover .survey-note-title{color:var(--accent)}.survey-notes-list.notes-view-list .survey-note-preview,.survey-notes-list.notes-view-list .survey-thumbs-row,.survey-notes-list.notes-view-list .survey-note-footer{display:none!important}.survey-note-card{position:relative;background:color-mix(in srgb,var(--bg-card) 80%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);border-radius:var(--radius);overflow:hidden;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;animation:survey-note-card-in .5s cubic-bezier(.4,0,.2,1) forwards;transition:transform .35s cubic-bezier(.4,0,.2,1),border-color .3s ease,background .3s ease,box-shadow .35s ease}.survey-note-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 30%,color-mix(in srgb,var(--accent) 18%,transparent) 50%,transparent 70%);transform:translate(-110%);transition:transform .7s cubic-bezier(.4,0,.2,1);pointer-events:none}.survey-note-card:after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--accent-gradient, linear-gradient(90deg, #095872, #32947c, #4f9b8f));transform:scaleX(0);transform-origin:left center;transition:transform .4s cubic-bezier(.4,0,.2,1)}.survey-note-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--bg-card);transform:translateY(-3px);box-shadow:0 14px 32px -14px #0000008c,0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}.survey-note-card:hover:before{transform:translate(110%)}.survey-note-card:hover:after{transform:scaleX(1)}.survey-note-card:active{transform:translateY(-1px)}.survey-note-card.is-expanded{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--bg-card)}.survey-note-card.is-expanded:after{transform:scaleX(1)}.survey-note-card>*{position:relative;z-index:1}@keyframes survey-note-card-in{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.survey-note-card:nth-child(1){animation-delay:.02s}.survey-note-card:nth-child(2){animation-delay:.06s}.survey-note-card:nth-child(3){animation-delay:.1s}.survey-note-card:nth-child(4){animation-delay:.14s}.survey-note-card:nth-child(5){animation-delay:.18s}.survey-note-card:nth-child(6){animation-delay:.22s}.survey-note-card:nth-child(7){animation-delay:.26s}.survey-note-card:nth-child(8){animation-delay:.3s}.survey-note-card:nth-child(n+9){animation-delay:.34s}.survey-note-header{padding:20px 22px 18px;cursor:pointer;display:flex;flex-direction:column;gap:10px}.survey-note-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:22px}.survey-note-badge{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:4px 11px 4px 9px;border-radius:999px;max-width:100%;overflow:hidden}.survey-note-badge svg{width:12px;height:12px;flex-shrink:0}.survey-note-badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.survey-note-badge-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.survey-note-badge-label strong{font-weight:800;font-variant-numeric:tabular-nums;color:#fff}.survey-note-badge-map{background:color-mix(in srgb,var(--accent) 22%,transparent);color:color-mix(in srgb,var(--accent) 25%,#ffffff);border:1px solid color-mix(in srgb,var(--accent) 45%,transparent)}.survey-note-badge-map svg{color:color-mix(in srgb,var(--accent) 35%,#ffffff)}.survey-note-badge-plain{background:color-mix(in srgb,var(--text-muted) 12%,transparent);color:var(--text-muted);border:1px solid color-mix(in srgb,var(--text-muted) 24%,transparent)}.survey-note-title{margin:2px 0 0;font-size:17px;font-weight:700;color:var(--text);letter-spacing:-.015em;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .25s ease}.survey-note-card:hover .survey-note-title{color:var(--accent)}.survey-note-date{font-size:11px;font-variant-numeric:tabular-nums;color:var(--text-dim, var(--text-muted));letter-spacing:.02em;white-space:nowrap;flex-shrink:0}.survey-note-preview{font-size:13px;line-height:1.5;margin:2px 0 0;color:color-mix(in srgb,var(--text) 70%,transparent);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.survey-note-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--text-muted) 14%,transparent);min-height:24px}.survey-note-footer .note-tags,.survey-note-footer .survey-thumbs-row{margin-top:0}.survey-note-expanded{border-top:1px solid var(--border);padding:16px 20px;display:flex;flex-direction:column;gap:16px}.survey-note-expanded .survey-media-actions .btn-ghost,.survey-note-expanded .survey-note-actions .btn-danger-ghost{background:color-mix(in srgb,#ffffff 14%,transparent);border:1px solid color-mix(in srgb,#ffffff 28%,transparent);color:#fff;font-weight:600;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.survey-note-expanded .survey-media-actions .btn-ghost:hover{background:color-mix(in srgb,#ffffff 22%,transparent);border-color:color-mix(in srgb,#ffffff 45%,transparent)}.survey-note-expanded .survey-note-actions .btn-danger-ghost{background:color-mix(in srgb,var(--danger, #c47a7e) 18%,transparent);border-color:color-mix(in srgb,var(--danger, #c47a7e) 50%,transparent);color:#fff}.survey-note-expanded .survey-note-actions .btn-danger-ghost:hover{background:color-mix(in srgb,var(--danger, #c47a7e) 30%,transparent);border-color:var(--danger, #c47a7e)}.survey-note-expanded .form-label{color:#fff;font-weight:600}.notes-table-expanded-row .survey-note-expanded .form-label{color:#475569}.notes-table-expanded-row .survey-note-expanded .survey-media-actions .btn-ghost{background:#fff;border-color:#cbd5e1;color:#1e293b}.notes-table-expanded-row .survey-note-expanded .survey-media-actions .btn-ghost:hover{background:#f1f5f9;border-color:#94a3b8;color:#0f172a}.notes-table-expanded-row .survey-note-expanded .survey-note-actions .btn-danger-ghost{background:color-mix(in srgb,var(--danger, #c47a7e) 14%,#ffffff);border-color:color-mix(in srgb,var(--danger, #c47a7e) 50%,transparent);color:var(--danger, #c47a7e)}.survey-note-content{font-size:14px;line-height:1.6;color:var(--text);white-space:pre-wrap;margin:0}.survey-note-actions{display:flex;gap:8px}.survey-images{display:flex;flex-direction:column;gap:10px}.survey-images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.survey-image-thumb{display:block;aspect-ratio:1;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border);background:var(--bg-input);text-decoration:none}.survey-image-thumb img{width:100%;height:100%;object-fit:cover}.survey-file-icon{display:flex;align-items:center;justify-content:center;height:100%;font-size:12px;color:var(--text-muted);padding:8px;text-align:center;word-break:break-all}.survey-thumbs-row{display:flex;gap:6px;align-items:center;margin-top:6px}.survey-thumb-mini{width:48px;height:48px;border-radius:6px;overflow:hidden;border:1px solid var(--border);cursor:pointer;flex-shrink:0;transition:var(--transition)}.survey-thumb-mini:hover{border-color:var(--accent);box-shadow:var(--shadow)}.survey-thumb-mini img{width:100%;height:100%;object-fit:cover}.survey-thumb-doc{display:flex;align-items:center;justify-content:center;font-size:20px;background:var(--bg-input);text-decoration:none}.survey-thumb-more{font-size:12px;color:var(--text-dim);font-weight:600}.lightbox-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;background:#000000d9;display:flex;align-items:center;justify-content:center;padding:24px}.lightbox-content{position:relative;max-width:90vw;max-height:90vh}.lightbox-img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:8px;box-shadow:0 8px 32px #0006}.lightbox-close{position:absolute;top:-12px;right:-12px;width:32px;height:32px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border);color:var(--text);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow);z-index:1}.lightbox-content-doc{display:flex;flex-direction:column;align-items:center;gap:8px}.lightbox-doc-frame{width:85vw;height:80vh;border:none;border-radius:8px;background:#fff;box-shadow:0 8px 32px #0006}.lightbox-filename{color:#ccc;font-size:13px;margin:0}.survey-file-download{text-decoration:none;cursor:pointer}.survey-file-download:hover{border-color:var(--accent)}.lightbox-close:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.tag-picker{position:relative}.tag-picker-input-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 10px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:text;min-height:38px}.tag-picker-input-wrap:focus-within{border-color:var(--accent)}.tag-picker-tag{display:inline-flex;align-items:center;gap:4px;background:#32947c1f;color:var(--accent);font-size:12px;font-weight:600;padding:2px 8px;border-radius:var(--radius-pill)}.tag-picker-tag-remove{background:none;border:none;color:var(--accent);cursor:pointer;font-size:12px;padding:0;opacity:.6}.tag-picker-tag-remove:hover{opacity:1}.tag-picker-input{flex:1;min-width:80px;border:none;background:none;outline:none;font-size:13px;font-family:var(--font);color:var(--text);padding:2px 0}.tag-picker-input::placeholder{color:var(--text-dim)}.tag-picker-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);max-height:180px;overflow-y:auto;z-index:100}.tag-picker-option{display:block;width:100%;padding:8px 12px;background:none;border:none;text-align:left;font-size:13px;font-family:var(--font);color:var(--text);cursor:pointer;transition:background .15s ease}.tag-picker-option:hover{background:#32947c14}.tag-picker-create{color:var(--accent);font-weight:600;border-top:1px solid var(--border)}.tag-picker-empty{padding:8px 12px;font-size:12px;color:var(--text-dim)}@media(max-width:768px){.survey-images-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}}[data-theme=light] .sub-page .obra-tab{color:#ffffffd9}[data-theme=light] .sub-page .obra-tab:hover:not(.is-active){color:#fff;background:#ffffff1a}[data-theme=light] .sub-page .obra-tab.is-active{color:var(--accent);background:var(--bg-card);border-color:var(--border);border-bottom-color:var(--bg-card)}.obra-page{max-width:1400px}.obra-header{display:flex;align-items:center;gap:12px}.obra-header-right{margin-left:auto;display:flex;align-items:center;gap:10px}.obra-save-status{font-size:11px;font-weight:600}.obra-notice{padding:10px 16px;border-radius:var(--radius-sm);font-size:13px;margin-bottom:20px}.obra-notice-info{background:#32947c14;color:var(--text-muted);border:1px solid rgba(50,148,124,.2)}[data-theme=light] .obra-notice-info{background:#ffffff1a;color:#ffffffd1;border-color:#ffffff47}.obra-notice-active{background:#32947c1f;color:var(--accent);border:1px solid rgba(50,148,124,.3);font-weight:600}[data-theme=light] .obra-notice-active{background:#ffffff24;color:#fff;border-color:#fff6}.obra-search{margin-bottom:14px;max-width:400px}.obra-real-cost-card{border-width:2px!important;border-color:var(--accent)!important;box-shadow:0 4px 18px #32947c38!important}[data-theme=light] .obra-real-cost-card{border-color:#fff9!important;box-shadow:0 4px 22px #0003!important}.obra-cost-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;vertical-align:middle;box-shadow:0 0 0 2px #ffffff40,0 0 8px currentColor}.obra-cost-dot.is-good{background:var(--success);color:var(--success)}.obra-cost-dot.is-over{background:var(--danger);color:var(--danger)}.obra-tabs{display:flex;gap:2px;margin:72px 0 32px;border-bottom:2px solid var(--border);flex-wrap:wrap}.obra-tab{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:transparent;border:1px solid transparent;border-bottom:none;border-radius:8px 8px 0 0;font-size:14px;font-weight:600;color:var(--text-dim);cursor:pointer;position:relative;margin-bottom:-2px;transition:var(--transition)}.obra-tab:hover:not(.is-active){color:var(--text);background:var(--bg-elevated)}.obra-tab.is-active{color:var(--accent);background:transparent;border-color:transparent;border-bottom-color:transparent}.obra-tab.is-active:after{content:"";position:absolute;left:12px;right:12px;bottom:-2px;height:3px;border-radius:3px 3px 0 0;background:var(--accent-gradient, linear-gradient(90deg, #095872, #32947c, #4f9b8f));box-shadow:0 0 12px color-mix(in srgb,var(--accent) 45%,transparent);animation:obra-tab-underline .35s cubic-bezier(.4,0,.2,1)}@keyframes obra-tab-underline{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}.obra-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--bg-elevated);border-radius:10px;font-size:11px;font-weight:700;color:var(--text-dim)}.obra-tab.is-active .obra-tab-badge{background:var(--accent);color:#fff}.obra-section{margin:24px 0;scroll-margin-top:80px}.obra-section-title{font-size:1rem;font-weight:700;color:var(--text);margin:0 0 12px;padding-bottom:6px;border-bottom:1px solid var(--border)}[data-theme=light] .obra-section-title{color:#fff;border-bottom-color:#ffffff59}.btn-ghost.obra-dates-toggle{display:flex;align-items:center;margin-bottom:12px;font-size:13px;gap:8px;width:fit-content}.obra-dates-preview{font-size:11px;color:var(--text-dim);font-weight:400;margin-left:4px}.obra-dates{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:20px;padding:14px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.obra-date-field{display:flex;flex-direction:column;gap:4px;min-width:160px}.obra-date-field .form-input{font-size:13px;width:170px}.obra-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px}.obra-summary-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px;display:flex;flex-direction:column;gap:4px}.obra-summary-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.obra-summary-value{font-size:1.2rem;font-weight:700;color:var(--text)}.obra-group{margin-bottom:24px}.obra-groups-wrap{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.obra-group{padding:16px 18px;border-bottom:1px solid var(--border);margin-bottom:0}.obra-group:last-child{border-bottom:none}.obra-group-title{font-size:14px;font-weight:700;color:var(--text);margin:0 0 12px;padding:0;border:none;letter-spacing:.02em}.obra-subgroup{margin-bottom:14px}.obra-subgroup:last-child{margin-bottom:0}.obra-subgroup-title{font-size:12.5px;font-weight:600;color:var(--text-muted);margin:0 0 6px;padding:0;background:transparent;border:none;letter-spacing:.01em;text-transform:uppercase}.obra-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.obra-table{width:100%;min-width:500px;border-collapse:collapse;font-size:13px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.obra-table th{background:var(--bg-input);color:var(--text-muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.03em;padding:8px 10px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.obra-table td{padding:6px 10px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle}.obra-table tr:last-child td{border-bottom:none}.obra-table tr:hover td{background:var(--bg-elevated)}.obra-col-desc{min-width:180px;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.obra-col-num{text-align:right;white-space:nowrap;width:90px}.obra-col-check{width:70px;text-align:center}.obra-col-input{width:130px}.obra-col-unit-cost{width:150px}.obra-unit-cost-cell{display:flex;align-items:center;gap:6px}.obra-manual-check{margin:0;cursor:pointer;flex-shrink:0}.obra-manual-check:disabled{cursor:not-allowed;opacity:.3}.obra-unit-cost-readonly{font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.obra-input-row{display:flex;align-items:center;gap:4px;justify-content:flex-end}.obra-qty-check{width:26px;height:26px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);cursor:pointer;font-size:12px;padding:0;transition:var(--transition)}.obra-qty-check:hover:not(:disabled){background:var(--accent);color:#fff;border-color:var(--accent)}.obra-qty-check:disabled{opacity:.3;cursor:not-allowed}.obra-extras-toolbar{margin:10px 0;display:flex;gap:8px}.obra-extra-picker{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px;margin-bottom:14px}.obra-extra-picker-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.obra-extra-picker-row .form-input{flex:1;min-width:140px}.obra-row-extra td{background:#b482280d}.obra-purchases-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin:24px 0}.obra-purchases-title{font-size:1rem;font-weight:700;color:var(--text);margin:0 0 14px}.obra-purchases-table-scroll{overflow-x:auto;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.obra-purchases-table{width:100%;border-collapse:collapse;font-size:13px}.obra-purchases-table th,.obra-purchases-table td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.obra-purchases-table th{background:var(--bg-input);color:var(--text-muted);text-transform:uppercase;font-size:11px;font-weight:600;letter-spacing:.03em;white-space:nowrap}.obra-purchases-col-amount{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.obra-purchases-total td{font-weight:700;background:var(--bg-elevated)}.obra-extra-badge{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:1px 6px;border-radius:var(--radius-pill);background:#b4822826;color:#b48228;margin-right:6px}.obra-gantt{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px;margin-bottom:20px}.obra-gantt-toolbar{display:flex;gap:4px;align-items:center;flex-wrap:wrap;padding:4px 6px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm, 6px);margin-bottom:8px}.obra-gantt-toolbar-spacer{flex:1}.obra-gantt-toolbar-sep{width:1px;height:20px;background:var(--border);margin:0 2px}.obra-gantt-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid transparent;background:transparent;border-radius:6px;font-size:15px;line-height:1;cursor:pointer;color:var(--text);transition:var(--transition)}.obra-gantt-icon-btn:hover:not(:disabled){background:var(--bg-input, var(--bg-card));border-color:var(--border)}.obra-gantt-icon-btn:disabled{opacity:.35;cursor:not-allowed}.obra-gantt-icon-btn-primary{background:var(--accent);color:#fff;font-weight:700;font-size:18px}.obra-gantt-icon-btn-primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.08);border-color:transparent}.obra-gantt-icon-btn.is-locked{background:var(--accent);color:#fff}.obra-gantt-lock-planned:after,.obra-gantt-lock-real:after{content:"";position:absolute;bottom:2px;right:2px;width:6px;height:6px;border-radius:50%;pointer-events:none}.obra-gantt-lock-planned,.obra-gantt-lock-real{position:relative}.obra-gantt-lock-planned:after{background:var(--accent);opacity:.7}.obra-gantt-lock-real:after{background:var(--danger, #c47a7e);opacity:.85}.obra-gantt-lock-planned.is-locked:after,.obra-gantt-lock-real.is-locked:after{background:#fff;opacity:1}.obra-gantt-template-list{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:6px;max-height:50vh;overflow-y:auto}.obra-gantt-template-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:var(--transition)}.obra-gantt-template-item:hover{background:var(--bg-elevated)}.obra-gantt-template-item.is-selected{border-color:var(--accent);background:var(--bg-elevated)}.obra-gantt-template-name{flex:1;font-weight:600}.obra-gantt-hints{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px;padding:0 4px}.obra-gantt-hint{font-size:12px}.form-input-sm{height:32px!important;padding:4px 8px!important;font-size:13px!important}.obra-gantt-empty{font-size:13px;margin:6px 0}.obra-gantt-body{display:flex;flex-direction:column;gap:0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.obra-gantt-header{display:grid;grid-template-columns:22px 240px 1fr 32px;padding:0 10px;background:var(--bg-elevated);border-bottom:1px solid var(--border);font-size:11px;letter-spacing:.02em}.obra-gantt-header-ruler{margin-left:12px;position:relative}.obra-gantt-header-months{position:relative;height:22px;border-bottom:1px solid var(--border)}.obra-gantt-header-month{position:absolute;top:0;height:100%;display:flex;align-items:center;padding:0 6px;font-weight:600;text-transform:capitalize;border-right:1px solid var(--border);overflow:hidden;white-space:nowrap;color:var(--text);font-variant-numeric:tabular-nums}.obra-gantt-header-month:last-child{border-right:none}.obra-gantt-header-days{position:relative;height:18px}.obra-gantt-header-day{position:absolute;top:50%;transform:translate(-50%,-50%);font-size:10px;color:var(--text-dim);font-variant-numeric:tabular-nums}.obra-gantt-row{display:grid;grid-template-columns:22px 240px 1fr 32px;gap:0;align-items:center;padding:4px 10px;border-bottom:1px solid var(--border);transition:background .12s ease;min-height:34px;position:relative}.obra-gantt-grip{display:flex;align-items:center;justify-content:center;height:100%;cursor:grab;color:var(--text-dim);font-size:11px;letter-spacing:-2px;-webkit-user-select:none;user-select:none;opacity:0;transition:opacity .15s,color .15s}.obra-gantt-row:hover .obra-gantt-grip{opacity:.45}.obra-gantt-grip:hover{opacity:1!important;color:var(--text)}.obra-gantt-grip:active{cursor:grabbing}.obra-gantt-row.is-drop-before:before,.obra-gantt-row.is-drop-after:after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--accent);z-index:8;pointer-events:none}.obra-gantt-row.is-drop-before:before{top:-1px}.obra-gantt-row.is-drop-after:after{bottom:-1px}.obra-gantt-money-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:4px;padding:0;border-radius:50%;background:var(--accent);color:#fff;font-size:10px;font-weight:700;flex-shrink:0;-webkit-user-select:none;user-select:none;line-height:1}.obra-gantt-tree-glyph{flex-shrink:0;color:var(--text-dim);font-family:monospace;font-size:11px;margin-left:2px;margin-right:2px;-webkit-user-select:none;user-select:none;line-height:1}.obra-gantt-row-actions{display:flex;gap:2px;justify-content:flex-end}.obra-gantt-row-del{width:18px;height:18px;border-radius:4px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:14px;line-height:1;padding:0;flex-shrink:0;opacity:0;transition:opacity .15s,color .15s}.obra-gantt-row:hover .obra-gantt-row-del{opacity:.55}.obra-gantt-row-del:hover{opacity:1!important;color:var(--danger)}.obra-gantt-bar-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:500;color:#0000008c;font-variant-numeric:tabular-nums;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:2}.obra-gantt-desc-toggle{width:24px;height:24px;border:none;background:transparent;color:var(--text-dim);cursor:pointer;font-size:12px;line-height:1;padding:0;border-radius:4px;margin:0 auto;transition:color .15s,background .15s}.obra-gantt-desc-toggle:hover{color:var(--text);background:var(--bg-input, var(--bg-elevated))}.obra-gantt-desc-toggle.has-content{color:var(--accent)}.obra-gantt-details-input{width:100%;resize:vertical;font-size:12px}.obra-gantt-notes{margin-top:8px}.obra-gantt-notes .obra-gantt-details-notes li{display:flex;align-items:center;gap:4px}.obra-gantt-note-remove{margin-left:auto;border:none;background:transparent;color:var(--text-dim);cursor:pointer;padding:0 4px;font-size:13px;opacity:.5;transition:opacity .15s,color .15s}.obra-gantt-note-remove:hover{opacity:1;color:var(--danger)}.obra-gantt-note-add{display:flex;gap:6px;align-items:center;margin-top:6px}.obra-gantt-tasklist{margin-top:14px;display:flex;flex-direction:column;gap:3px;overflow-x:auto}.obra-gantt-tasklist-head,.obra-gantt-tasklist-row{display:grid;grid-template-columns:minmax(140px,1fr) 50px 60px 100px 110px 110px 110px 110px 70px 140px 32px;gap:12px;align-items:center;min-width:1140px}.obra-gantt-tasklist-head{font-size:10px;text-transform:uppercase;font-weight:600;color:var(--text-muted);letter-spacing:.05em;padding:0 4px 4px;border-bottom:1px solid var(--border);margin-bottom:4px}.obra-gantt-tasklist-row .form-input{background:transparent;border:none;border-radius:0;padding:4px 6px;font-size:13px;height:auto;transition:background .12s}.obra-gantt-tasklist-row .form-input:focus{background:var(--bg-elevated);outline:none;box-shadow:none}.obra-gantt-tasklist-after{display:flex;align-items:center;justify-content:center;cursor:pointer}.obra-gantt-tasklist-after input[type=checkbox]:disabled{opacity:.3}.obra-gantt-tasklist-color{display:flex;gap:4px;align-items:center}.obra-gantt-tasklist-color-swatch{width:22px;height:22px;padding:1px;border:1px solid var(--border);border-radius:4px;cursor:pointer;background:transparent;flex-shrink:0}.obra-gantt-tasklist-color-hex{flex:1;background:transparent!important;border:none!important;border-radius:0!important;padding:2px 4px!important;height:24px!important;font-size:11px!important;font-family:monospace!important;text-transform:lowercase;min-width:0}.obra-gantt-tasklist-color-hex:focus{background:var(--bg-elevated)!important}.obra-gantt-tasklist-row .btn-danger-ghost{background:transparent;border:none;padding:0 6px;opacity:.5;transition:opacity .15s,color .15s}.obra-gantt-tasklist-row:hover .btn-danger-ghost{opacity:1}.obra-gantt-footer{display:flex;justify-content:flex-end;padding:6px 12px;font-size:11px;font-weight:600;color:var(--text-dim);background:var(--bg-elevated);border-top:1px solid var(--border);font-variant-numeric:tabular-nums;letter-spacing:.02em}.obra-gantt-row:last-child{border-bottom:none}.obra-gantt-row:nth-child(2n){background:var(--bg-elevated)}.obra-gantt-row:hover{background:var(--bg-input, var(--bg-elevated))}.obra-gantt-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.obra-gantt-label{display:flex;flex-direction:column;gap:1px;min-width:0;padding-right:12px;border-right:1px solid var(--border)}.obra-gantt-label-name{display:flex;align-items:center;font-size:13px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.005em}.obra-gantt-label-range{font-size:10.5px;font-variant-numeric:tabular-nums;color:var(--text-dim);letter-spacing:.02em}.obra-gantt-track{position:relative;height:20px;margin-left:12px;background:transparent;border-radius:3px;overflow:visible}.obra-gantt-bar{position:absolute;top:0;height:100%;border-radius:3px;box-sizing:border-box}.obra-gantt-bar-progress{border-radius:3px 0 0 3px}.obra-gantt-bar-solid{box-shadow:0 1px 1px #00000014,inset 0 -1px #00000014}.obra-gantt-grid{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.obra-gantt-grid-line{position:absolute;top:0;bottom:0;width:1px;background:var(--border);opacity:.5}.obra-gantt-grid-line.is-month{opacity:.85}.obra-gantt-today-line{position:absolute;top:50%;width:6px;height:6px;margin-left:-3px;margin-top:-3px;background:#000;border-radius:50%;z-index:100;pointer-events:none}.obra-gantt-bar.is-draggable{cursor:grab}.obra-gantt-bar.is-draggable:active{cursor:grabbing}.obra-gantt-bar-handle{position:absolute;top:-2px;bottom:-2px;width:10px;cursor:ew-resize;z-index:6;background:transparent}.obra-gantt-bar-handle-start{left:-5px}.obra-gantt-bar-handle-end{right:-5px}.obra-gantt-bar-ghost .obra-gantt-bar-handle{pointer-events:auto}.obra-gantt-bar-handle:after{content:"";position:absolute;top:25%;bottom:25%;left:50%;width:3px;margin-left:-1.5px;background:#ffffffd9;border-radius:2px;box-shadow:0 0 0 1px #0003;opacity:0;transition:opacity .15s}.obra-gantt-bar:hover .obra-gantt-bar-handle:after{opacity:1}.obra-gantt-bar-progress{z-index:1}.obra-gantt-name{-webkit-user-select:none;user-select:none}.obra-gantt-name.is-clickable{cursor:pointer;border-bottom:1px dashed transparent;transition:var(--transition)}.obra-gantt-name.is-clickable:hover{border-bottom-color:var(--accent);color:var(--accent)}.obra-gantt-rename-input{font:inherit;background:var(--bg-card);border:1px solid var(--accent);border-radius:4px;padding:1px 6px;outline:none;min-width:140px}.obra-gantt-bar-ghost{background:transparent!important;border:2px dashed currentColor;opacity:.7;z-index:2;background-image:repeating-linear-gradient(45deg,#fff0 0,#fff0 5px,#ffffff2e 5px,#ffffff2e 10px)!important;pointer-events:none}.obra-gantt-bar-progress{position:absolute;top:0;left:0;height:100%;background:#00000059;border-right:2px solid rgba(255,255,255,.6)}.modal.obra-gantt-modal{max-width:min(820px,92vw);width:100%}.obra-gantt-modal .modal-body{display:flex;flex-direction:column;gap:14px}.obra-gantt-modal .modal-body .form-group{display:flex;flex-direction:column;gap:4px}.obra-gantt-modal-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.obra-gantt-color-input{padding:2px!important;height:38px!important}.obra-gantt-modal-end{font-size:13px;margin:0}.obra-gantt-locked .obra-gantt-row{cursor:pointer}.obra-gantt-expand{margin-left:auto;font-size:16px!important;padding:4px 10px!important}.obra-gantt-track-wrap{min-width:0}.obra-gantt-track-planned{position:relative;height:24px}.obra-gantt-row-parent .obra-gantt-label-name{font-weight:700}.obra-gantt-parent-icon{display:inline-block;margin-right:4px;color:var(--text-muted);font-size:10px}.obra-gantt-bar-parent{opacity:.5;border:2px solid rgba(0,0,0,.25)}.obra-gantt-add-sub{width:18px;height:18px;border-radius:4px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:13px;line-height:1;padding:0;margin-left:4px;flex-shrink:0;opacity:0;transition:opacity .15s,color .15s,background .15s}.obra-gantt-row:hover .obra-gantt-add-sub{opacity:.55}.obra-gantt-add-sub:hover{opacity:1!important;color:var(--accent);background:transparent}.obra-gantt-expand-toggle{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-right:4px;padding:0;border:none;background:transparent;color:var(--text-dim);font-size:12px;line-height:1;cursor:pointer;border-radius:4px;transition:var(--transition)}.obra-gantt-expand-toggle:hover{background:var(--bg-elevated);color:var(--text)}.obra-gantt-expand-toggle.has-details,.obra-gantt-expand-toggle.is-parent{color:var(--accent)}.obra-gantt-expand-spacer{display:inline-block;width:22px}.obra-gantt-details{padding:8px 12px 10px 24px;background:var(--bg-subtle, var(--bg-elevated));border-bottom:1px solid var(--border);font-size:13px}.obra-gantt-details-desc{margin-bottom:6px;white-space:pre-wrap}.obra-gantt-details-notes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.obra-gantt-details-notes li{font-size:12px}.obra-gantt-description{resize:vertical}.obra-gantt-notes-list{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.obra-gantt-note{display:flex;align-items:flex-start;gap:8px;padding:6px 8px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px}.obra-gantt-note-meta{font-size:11px;color:var(--text-dim);flex-shrink:0;padding-top:2px;min-width:90px}.obra-gantt-note-text{flex:1;white-space:pre-wrap;font-size:13px}.obra-gantt-note-remove{border:none;background:transparent;color:var(--text-dim);cursor:pointer;font-size:16px;line-height:1;padding:0 4px}.obra-gantt-note-remove:hover{color:var(--danger)}.obra-gantt-note-add{display:flex;gap:6px;align-items:center}.obra-gantt-note-add input{flex:1}.obra-gantt-modal-section{margin:14px 0 6px;padding-top:12px;border-top:1px dashed var(--border)}.obra-gantt-modal-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:8px}.obra-gantt-readonly{background:var(--bg-elevated);cursor:default;font-size:12px;padding:8px 10px;color:var(--text)}.obra-gantt-fullscreen{max-width:96vw;width:96vw;max-height:92vh}.obra-gantt-fs-controls{display:flex;align-items:center;gap:10px}.obra-gantt-scale-group{display:flex;gap:4px;padding:2px;background:var(--bg-input);border-radius:var(--radius-sm)}.obra-gantt-scale-group .active{background:var(--accent);color:#fff}.obra-gantt-fs-body{overflow:hidden;padding:0!important}.obra-gantt-fs-scroll{overflow:auto;max-height:72vh}.obra-gantt-fs-chart{min-width:100%}.obra-gantt-fs-ruler{position:relative;height:28px;border-bottom:1px solid var(--border);background:var(--bg-input);position:sticky;top:0;z-index:2}.obra-gantt-fs-tick{position:absolute;top:0;height:100%;display:flex;align-items:center;border-left:1px dashed var(--border);padding-left:4px;font-size:11px;color:var(--text-muted);white-space:nowrap}.obra-gantt-fs-row{display:flex;align-items:center;gap:0;padding:6px 0;border-bottom:1px solid var(--border);cursor:pointer}.obra-gantt-fs-row:hover{background:var(--bg-elevated)}.obra-gantt-fs-label{width:220px;flex-shrink:0;padding:0 12px;position:sticky;left:0;background:var(--bg-card);z-index:1;border-right:1px solid var(--border)}.obra-gantt-fs-track-wrap{position:relative;display:flex;flex-direction:column;gap:2px}.obra-gantt-fs-track{position:relative;height:22px}.obra-gantt-fs-track-real{height:10px}.obra-gantt-fs-track-real-solo{height:22px}.obra-gantt-fs-track .obra-gantt-bar{position:absolute;top:0;height:100%;margin-left:0!important;width:auto!important}.obra-gantt-after-label{display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none}.obra-gantt-after-label input[type=checkbox]{margin:0;cursor:pointer}@media(max-width:900px){.obra-gantt-row,.obra-gantt-modal-grid{grid-template-columns:1fr}}.obra-col-loc{width:160px}.obra-input{width:90px!important;padding:4px 6px!important;font-size:12px!important;text-align:right}.obra-input:disabled{opacity:.4;cursor:not-allowed}.obra-select{width:100%!important;padding:4px 6px!important;font-size:12px!important}.obra-select:disabled{opacity:.4;cursor:not-allowed}.obra-yn{width:60px!important;padding:3px 4px!important;font-size:11px!important;text-align:center}.obra-yn:disabled{opacity:.4;cursor:not-allowed}.obra-select-project,.obra-location-suggest{margin-top:4px}.obra-location-suggest .catalog-suggest-input{font-size:12px!important;padding:4px 6px!important}.obra-location-suggest .catalog-suggest-wrap{min-height:30px;padding:3px 6px}.obra-location-suggest .catalog-suggest-dropdown{z-index:100}.obra-col-info{width:32px;text-align:center}.obra-info-btn{width:26px;height:26px;border-radius:50%;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-dim);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:var(--transition)}.obra-info-btn:hover{color:var(--accent);border-color:var(--accent);background:#32947c14}.ia-modal{max-width:520px;width:100%}.ia-body{display:flex;flex-direction:column;gap:14px}.ia-section{background:var(--bg-input);border-radius:var(--radius-sm);padding:12px 14px}.ia-section h3{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 8px}.ia-section-highlight{border-left:3px solid var(--accent)}.ia-row{display:flex;justify-content:space-between;align-items:center;padding:3px 0}.ia-label{font-size:13px;color:var(--text-muted)}.ia-value{font-size:13px;font-weight:600;color:var(--text)}.ia-note{font-size:11px;margin-left:6px;font-weight:400}.ia-mandatory{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.ia-mandatory label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-muted);cursor:pointer}.ia-mandatory input[type=checkbox]{width:auto}.ia-mandatory-note{font-size:12px;color:var(--text-dim);font-style:italic;margin:6px 0 0}.obra-notes-section{margin:24px 0}.obra-notes-header{display:flex;align-items:center;justify-content:flex-end;margin-bottom:12px}.obra-notes-header h2{font-size:1rem;font-weight:700;color:var(--text);margin:0}.obra-notes-actions{display:flex;align-items:center;gap:12px}.notes-view-switch{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.notes-view-switch button{background:transparent;border:none;color:var(--text-muted);padding:6px 10px;font-size:14px;cursor:pointer;transition:var(--transition);border-right:1px solid var(--border)}.notes-view-switch button:last-child{border-right:none}.notes-view-switch button:hover{color:var(--text);background:var(--bg-elevated)}.notes-view-switch button.is-active{background:var(--accent);color:#fff}[data-theme=light] .notes-view-switch{border-color:#ffffff59;background:#ffffff0d}[data-theme=light] .notes-view-switch button{color:#ffffffc7;border-right-color:#ffffff40}[data-theme=light] .notes-view-switch button:hover:not(.is-active){background:#ffffff1a;color:#fff}[data-theme=light] .notes-view-switch button.is-active{background:#ffffff40;color:#fff}[data-theme=light] .obra-notes-header h2{color:#fff}.obra-note-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px;margin-bottom:16px;display:flex;flex-direction:column;gap:8px}.obra-note-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;margin-bottom:8px;cursor:pointer}.obra-note-card:hover{border-color:var(--accent)}.obra-note-header{display:flex;justify-content:space-between;align-items:baseline}.obra-note-header h3{font-size:14px;font-weight:600;color:var(--text);margin:0}.obra-note-expanded{margin-top:8px;cursor:default}.obra-note-expanded .survey-image-thumb-wrap{position:relative;display:inline-block}.obra-note-expanded .survey-image-thumb{width:80px;height:80px;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border)}.obra-note-expanded .survey-image-thumb img{width:100%;height:100%;object-fit:cover}.obra-note-expanded .survey-image-delete{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:var(--danger);color:#fff;border:2px solid var(--bg-card);font-size:10px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease}.obra-note-expanded .survey-image-thumb-wrap:hover .survey-image-delete{opacity:1}.obra-col-stock-tag{width:140px;text-align:center}.obra-stock-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap}.obra-stock-tag-yes{background:#32947c1f;color:#1a8a6a;border:1px solid rgba(50,148,124,.3)}.obra-stock-tag-no{background:#dc354514;color:#c0392b;border:1px solid rgba(220,53,69,.2)}@media(max-width:768px){.obra-page{padding:16px}.obra-summary{grid-template-columns:1fr 1fr}}.obra-services-table .obra-col-input{width:110px}.obra-services-table .obra-col-num{width:100px}.obra-services-table th{font-size:12px}.obra-services-table td{font-variant-numeric:tabular-nums}.obra-service-reset{margin-left:6px;padding:2px 6px!important;min-height:auto!important;line-height:1;font-size:13px;vertical-align:middle}.obra-services-summary{margin-top:18px;padding:14px 20px;border-radius:14px;background:color-mix(in srgb,var(--accent) 8%,var(--bg-card));border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);display:flex;flex-direction:column;gap:6px;max-width:460px;margin-left:auto;box-shadow:0 1px color-mix(in srgb,var(--text) 6%,transparent)}.obra-services-summary-row{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;color:var(--text);padding:4px 0}.obra-services-summary-row strong{font-variant-numeric:tabular-nums}.obra-services-summary-row.is-delta{margin-top:4px;padding-top:10px;border-top:2px solid color-mix(in srgb,var(--accent) 35%,transparent);font-size:16px;font-weight:700}.obra-services-summary-row.is-delta.is-over strong{color:#ef4444}.obra-services-summary-row.is-delta.is-under strong{color:#16a34a}.obra-services-summary-row em{font-style:normal;font-weight:600;font-size:13px;opacity:.85;margin-left:6px}[data-theme=light] .obra-services-summary{background:var(--bg-card);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:var(--shadow)}.rich-editor{border:1px dashed transparent;border-radius:var(--radius-sm);transition:var(--transition)}.rich-editor:focus-within{border-color:var(--accent)}.rich-toolbar{display:flex;flex-wrap:wrap;gap:2px;padding:4px 6px;background:#ffffffeb;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.rich-toolbar button,.rich-toolbar .rich-img-btn{background:transparent;border:1px solid transparent;color:#1a1a1a;font-size:13px;font-weight:600;padding:4px 8px;border-radius:3px;cursor:pointer;min-width:28px;text-align:center;display:inline-flex;align-items:center;justify-content:center}.rich-toolbar button:hover,.rich-toolbar .rich-img-btn:hover{background:#0000000d}.rich-toolbar button.is-active{background:var(--accent);color:#fff}.rich-toolbar-sep{width:1px;background:var(--border);margin:2px 4px}.rich-content{padding:12px 16px;min-height:80px;outline:none}.rich-content .ProseMirror{outline:none;min-height:60px}.rich-content .ProseMirror p{margin:0 0 10px}.rich-content .ProseMirror p:last-child{margin-bottom:0}.rich-content .ProseMirror h2{font-size:18px;font-weight:700;margin:14px 0 8px}.rich-content .ProseMirror h3{font-size:15px;font-weight:700;margin:12px 0 6px}.rich-content .ProseMirror ul,.rich-content .ProseMirror ol{padding-left:22px;margin:0 0 10px}.rich-content .ProseMirror img{max-width:100%;height:auto;display:block;margin:8px auto}.rich-content .ProseMirror table{border-collapse:collapse;table-layout:fixed;width:100%;margin:10px 0}.rich-content .ProseMirror th,.rich-content .ProseMirror td{border:1px solid var(--border);padding:6px 10px}.rich-content .ProseMirror th{background:var(--bg-elevated);font-weight:700}.rich-content.is-empty .ProseMirror p:first-child:before{content:attr(data-placeholder);float:left;color:#fff9;pointer-events:none;height:0}@media print{.rich-toolbar{display:none!important}.rich-editor{border:none}.rich-content{padding:0;min-height:0}}.proposal-toolbar{display:flex;align-items:center;gap:12px}.proposal-toolbar-right{margin-left:auto;display:flex;align-items:center;gap:10px}.proposal-save-indicator{font-size:11px;font-weight:600}.proposal-locked-banner{background:#c47a7e1f;color:#c47a7e;border:1px solid rgba(196,122,126,.3);border-radius:8px;padding:10px 16px;font-size:13px;font-weight:600;margin-bottom:16px;max-width:820px;margin-left:auto;margin-right:auto}.prop-doc{background:#fff;color:#1a1a1a;font-family:var(--prop-font-body);font-size:11pt;line-height:1.4;max-width:820px;margin:28px auto 48px;padding:56px 60px 40px;border-radius:3px;box-shadow:0 1px 4px #0000000f,0 8px 32px #0000001a}.prop-logos{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.prop-logo-ewen{height:44px;width:auto}.prop-logo-emonitor{height:36px;width:auto}.prop-header{margin-bottom:16px}.prop-page2-top{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:18px 0 28px}.prop-page2-top .prop-client{margin:0;text-align:left;min-width:240px}.prop-emonitor-logo{height:56px;width:auto;display:block;-webkit-print-color-adjust:exact;print-color-adjust:exact}.prop-client{text-align:right;margin-bottom:24px}.prop-client-name{font-size:12pt;font-weight:700;display:block;margin-bottom:2px}.prop-client p{margin:0;font-size:10.5pt;line-height:1.4}.prop-client-contact,.prop-client-addr{font-style:italic}.prop-ref-line{display:flex;justify-content:space-between;align-items:center;font-size:11pt;margin-bottom:6px}.prop-date-picker{font-family:inherit;font-size:11pt;border:1px solid #ccc;border-radius:3px;padding:2px 6px;color:#1a1a1a;background:#fafafa}.prop-date-picker:focus{border-color:#095872;outline:none;box-shadow:0 0 0 2px #09587226}.prop-subject{margin:16px 0;display:flex;gap:8px;align-items:flex-start}.prop-subject-label{flex-shrink:0;font-size:11pt;padding-top:5px}.prop-subject-text{font-weight:700!important}.prop-body-block{text-align:justify;margin-bottom:12px}.prop-body-block p{margin:0}.prop-toc{margin:18px 0 22px;font-size:11pt}.prop-toc-intro{margin:0 0 10px;font-size:11pt}.prop-toc-list{display:grid;grid-template-columns:1fr 1fr;column-gap:28px;border-left:0;position:relative}.prop-toc-list:before{content:"";position:absolute;left:50%;top:4px;bottom:4px;border-left:1px dotted #999;transform:translate(-14px)}.prop-toc-col{font-style:italic;margin:0;padding-left:26px}.prop-toc-col li{margin:2px 0;padding-left:4px;font-size:10.5pt;line-height:1.45}.prop-toc-col .prop-toc-anexos{list-style:none;margin-left:-22px;margin-top:6px;padding-left:0}.prop-section{margin-bottom:18px}.prop-section-head{margin-bottom:8px}.prop-section h2{font-family:inherit;font-size:13pt;font-weight:700;color:var(--prop-blue-dark);text-transform:uppercase;letter-spacing:.01em;margin:22px 0 10px;border-bottom:1px solid #e0e0e0;padding-bottom:4px}.prop-sub-label{margin:8px 0 4px;font-size:11pt}.prop-bullet-list{margin:4px 0 4px 12px}.prop-bullet{margin:3px 0;padding-left:24px;text-indent:-24px;font-size:11pt;line-height:1.5}.prop-bullet-mark{display:inline-block;width:24px;font-weight:700;text-indent:0}.line-editor{display:flex;flex-direction:column;gap:6px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card)}.line-editor-row{display:flex;align-items:center;gap:8px}.line-editor-type{width:32px;height:34px;flex-shrink:0;border:1px solid var(--border);border-radius:6px;background:var(--bg);cursor:pointer;font-size:14px;color:var(--text-muted, #666);transition:background .15s,border-color .15s}.line-editor-type:hover{background:var(--bg-elevated);border-color:var(--primary, #006cb8)}.line-editor-row.is-bullet .line-editor-type{border-color:#2e7d32;color:#2e7d32}.line-editor-row.is-bullet .line-editor-input{border-left:3px solid #2e7d32;padding-left:10px;background:#f9fdf9}.line-editor-input{flex:1;min-width:0;height:34px}.line-editor-del{flex-shrink:0;width:28px;height:34px;border:none;background:transparent;color:#ccc;cursor:pointer;font-size:18px;line-height:1;padding:0;border-radius:4px;transition:color .15s,background .15s}.line-editor-del:hover{color:#c62828;background:#fff0f0}.line-editor-bold{flex-shrink:0;width:28px;height:34px;border:1px solid var(--border);background:var(--bg);cursor:pointer;border-radius:4px;font-size:13px;color:var(--text-muted, #666);padding:0;transition:background .15s,color .15s,border-color .15s}.line-editor-bold:hover:not(:disabled){background:var(--bg-elevated);color:var(--primary, #006cb8);border-color:var(--primary, #006cb8)}.line-editor-align{display:inline-flex;flex-shrink:0;border:1px solid var(--border);border-radius:4px;overflow:hidden;height:34px}.line-editor-align button{width:26px;height:100%;padding:0;border:none;border-right:1px solid var(--border);background:var(--bg);cursor:pointer;font-size:12px;color:var(--text-muted, #777);display:inline-flex;align-items:center;justify-content:center;transition:background .12s,color .12s;line-height:1}.line-editor-align button:last-child{border-right:none}.line-editor-align button:hover:not(:disabled){background:var(--bg-elevated);color:var(--primary, #006cb8)}.line-editor-align button.is-active{background:var(--primary, #006cb8);color:#fff}.line-editor-align button:disabled{opacity:.4;cursor:not-allowed}.line-editor-row.is-image{padding:6px;background:#fafafa;border-radius:6px;border:1px dashed var(--border)}.line-editor-row.is-image .line-editor-type{background:var(--bg-card);cursor:default}.line-editor-img-preview{flex:1;min-width:0;height:90px;background:#fff;border:1px solid var(--border);border-radius:4px;overflow:hidden;display:flex;align-items:center;justify-content:center}.line-editor-img-preview img{max-width:100%;max-height:100%;object-fit:contain;display:block}.line-editor-img-height{display:inline-flex;align-items:center;gap:3px;flex-shrink:0;height:34px;padding:0 6px;border:1px solid var(--border);border-radius:4px;background:var(--bg);font-size:11px;color:var(--text-muted, #666)}.line-editor-img-height input{width:48px;height:24px;border:none;background:transparent;font-size:12px;text-align:right;padding:0;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield;color:inherit}.line-editor-img-height input::-webkit-outer-spin-button,.line-editor-img-height input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.line-editor-img-height input:focus{outline:1px solid var(--primary, #006cb8);border-radius:2px}.line-editor-move{display:flex;flex-direction:column;gap:1px;flex-shrink:0}.line-editor-move button{width:22px;height:17px;font-size:9px;padding:0;border:1px solid var(--border);background:var(--bg);border-radius:3px;cursor:pointer;color:var(--text-muted, #666);line-height:1}.line-editor-move button:hover:not(:disabled){background:var(--bg-elevated);color:var(--primary, #006cb8)}.line-editor-move button:disabled{opacity:.3;cursor:not-allowed}.line-editor-actions{display:flex;gap:8px;margin-top:8px;padding-top:12px;border-top:1px dashed var(--border)}.line-editor-add{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;padding:7px 14px;border:1px solid var(--border);background:var(--bg);color:var(--text-muted, #555);border-radius:6px;cursor:pointer;transition:all .15s ease;line-height:1}.line-editor-add .le-icon{font-size:14px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#0000000f;color:inherit}.line-editor-add:hover:not(:disabled){background:var(--bg-elevated);color:var(--primary, #006cb8);border-color:var(--primary, #006cb8);transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.line-editor-add:hover:not(:disabled) .le-icon{background:var(--primary, #006cb8);color:#fff}.line-editor-add.is-bullet:hover:not(:disabled){color:#2e7d32;border-color:#2e7d32}.line-editor-add.is-bullet:hover:not(:disabled) .le-icon{background:#2e7d32}.line-editor-add.is-image:hover:not(:disabled){color:#ad6f00;border-color:#ad6f00}.line-editor-add.is-image:hover:not(:disabled) .le-icon{background:#ad6f00}.line-editor-add:disabled{opacity:.5;cursor:not-allowed}.btn-reset-default{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:500;padding:4px 10px;border:1px solid var(--border);background:transparent;color:var(--text-muted, #666);border-radius:5px;cursor:pointer;transition:all .15s ease;line-height:1}.btn-reset-default:hover:not(:disabled){color:var(--primary, #006cb8);border-color:var(--primary, #006cb8);background:#006cb80d}.btn-reset-default:disabled{opacity:.5;cursor:not-allowed}.btn-save-preset{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:7px 14px;border:1px solid #2e7d32;background:#fff;color:#2e7d32;border-radius:6px;cursor:pointer;transition:all .15s ease;line-height:1}.btn-save-preset:hover:not(:disabled){background:#2e7d32;color:#fff;box-shadow:0 2px 6px #2e7d324d;transform:translateY(-1px)}.btn-save-preset:disabled{opacity:.5;cursor:not-allowed}.btn-load-template{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:7px 14px;border:1px solid var(--primary, #006cb8);background:var(--primary, #006cb8);color:#fff;border-radius:6px;cursor:pointer;transition:all .15s ease;line-height:1;box-shadow:0 1px 2px #006cb833}.btn-load-template:hover:not(:disabled){background:#005a9c;border-color:#005a9c;box-shadow:0 2px 6px #006cb84d;transform:translateY(-1px)}.btn-load-template:disabled{opacity:.5;cursor:not-allowed}.btn-import-project{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:7px 14px;border:1px solid #c98a14;background:#fff;color:#c98a14;border-radius:6px;cursor:pointer;transition:all .15s ease;line-height:1}.btn-import-project:hover:not(:disabled){background:#c98a14;color:#fff;box-shadow:0 2px 6px #c98a144d;transform:translateY(-1px)}.btn-import-project:disabled{opacity:.5;cursor:not-allowed}.prop-text-para{margin:0 0 8px;font-size:11pt;line-height:1.55;text-align:justify}.prop-highlight-line{text-align:center;font-size:11pt;font-style:italic;margin:14px 0}.prop-inline-img{margin:14px 0;display:flex;justify-content:center;break-inside:avoid;page-break-inside:avoid}.prop-inline-img img{max-width:100%;max-height:480px;height:auto;border:1px solid #d8d8d8;border-radius:2px;background:#fafafa}.prop-dim{color:#999}.prop-field{display:block;width:100%;font-family:var(--prop-font-body);font-size:11pt;line-height:1.5;color:#1a1a1a;text-align:justify;background:transparent;border:1px solid transparent;border-radius:2px;padding:3px 5px;margin:0;resize:none;overflow:hidden;transition:border-color .15s ease,background .15s ease}.prop-field-print{display:none}.proposal-variant-select{width:auto!important;min-width:0;height:32px;background:transparent!important;border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-sm);color:#ffffffeb;font-size:13px;font-weight:600;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>")!important;background-repeat:no-repeat!important;background-position:right 6px center!important;background-size:12px!important;padding:0 24px 0 10px;transition:var(--transition)}.proposal-variant-select:hover{border-color:#ffffff8c}.proposal-variant-select:focus{outline:none;border-color:#ffffffb3;box-shadow:0 0 0 3px #ffffff1a}.proposal-variant-select option{background:var(--bg-card);color:var(--text)}.proposal-sticky-top{position:fixed;top:64px;left:0;right:0;z-index:30;padding:32px 24px 12px;background:var(--bg-base)}.proposal-sticky-top .page-header{margin-bottom:16px;max-width:var(--page-content-max);margin-left:auto;margin-right:auto}.proposal-sticky-top .obra-tabs{margin:0 auto;max-width:var(--page-content-max)}[data-theme=light] .proposal-sticky-top{background:linear-gradient(135deg,#065772,#248279 55%,#32937c);background-attachment:fixed}.proposal-page{padding-top:0;margin-top:-16px}.prop-field-readonly{background:transparent;border:none;padding:0;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;text-align:justify}.prop-field:hover{border-color:#ddd;background:#fafbfc}.prop-field:focus{border-color:#095872;background:#f5f8fa;outline:none;box-shadow:0 0 0 2px #0958721a}.prop-field::placeholder{color:#aaa;font-style:italic}.prop-price-block{margin:14px 0 18px}.prop-price-label{font-weight:700;font-size:11pt;margin-bottom:4px}.prop-price-table{width:100%;border-collapse:collapse;font-size:10.5pt;margin-top:4px}.ptcol-desc{width:auto}.ptcol-qty{width:50px}.ptcol-price{width:170px}.ptcol-total{width:180px}.prop-price-table th{background:#f2f2f2;border:1px solid #bfbfbf;padding:4px 8px;text-align:left;font-weight:700;font-size:10pt;color:#333}.prop-price-table td{border:1px solid #bfbfbf;padding:3px 8px;vertical-align:top}.ptr-c{text-align:center}.ptr-r{text-align:right}.ptr-group td{font-weight:700;font-size:9.5pt;color:#444;background:#f8f8f8;text-transform:uppercase;letter-spacing:.02em}.ptr-subgroup td{font-weight:600;font-size:10pt;color:#555;background:#fcfcfc;padding-left:16px;font-style:italic}.ptr-total td{font-weight:700;border-top:2px solid #333;font-size:11pt}.prop-price-table-sub .ptcol-total{width:140px}.prop-storage-note{font-size:10pt;margin:10px 0 0;padding:8px 10px;border-top:1px dashed #ccc;color:#555;font-style:italic;line-height:1.4}.prop-storage-delta{font-size:9pt;color:#666;font-weight:400;margin-left:8px}.prop-closing{margin-top:24px}.prop-company-sig{font-size:10.5pt;margin-top:22px}.prop-signature-space{height:60px}.prop-signature-line{width:200px;border-top:1px solid #1a1a1a;margin:0 0 6px 24px}.prop-signatory{font-size:10.5pt;font-style:italic;margin:0 0 0 60px}.prop-footer{margin-top:40px;border-top:1px solid #bfbfbf;padding-top:8px}.prop-footer-table{width:100%;border-collapse:collapse;font-size:8pt;color:#006;line-height:1.35}.prop-footer-table td{vertical-align:top;padding:0;border:none}.prop-footer-left{width:50%;padding-right:16px}.prop-footer-right{width:50%;color:navy}.prop-footer-table p{margin:1px 0}.print-only,.prop-page-footer{display:none}@media print{html,body{background:#fff!important;margin:0!important;padding:0!important}body *{visibility:hidden}#proposal-print,#proposal-print *,#proposal-print-v2,#proposal-print-v2 *{visibility:visible}#proposal-print{position:absolute;left:0;top:0;width:100%;padding-bottom:44px!important;box-sizing:border-box}@page{size:A4;margin:0}@page :first{margin:0}@page :last{margin:0}@page anexos-page{size:A4;margin:0}@page back-page{size:A4;margin:0}#proposal-print-v2 .prop-anexos{page:anexos-page}#proposal-print-v2 .prop-back-cover{page:back-page}#proposal-print-v2{position:absolute;left:0;top:0;width:100%;margin:0!important;padding:0!important;box-shadow:none!important;border:none!important;box-sizing:border-box;background:#fff!important}#proposal-print-v2>.prop-cover,#proposal-print-v2>.prop-back-cover{margin:0!important;width:100%;height:297mm;min-height:297mm;max-height:297mm;padding:0!important;overflow:hidden;page-break-after:always;break-after:page;box-sizing:border-box}#proposal-print-v2>.prop-back-cover{page-break-before:always;break-before:page;page-break-after:auto;break-after:auto}#proposal-print-v2>.prop-anexos{margin:0!important;width:100%;height:297mm;min-height:297mm;max-height:297mm;padding:0!important;overflow:hidden;page-break-before:always;break-before:page;box-sizing:border-box;aspect-ratio:auto}#proposal-print-v2>.prop-anexos-page{width:100%!important;min-height:280mm!important;height:auto!important;box-shadow:none!important;background:transparent!important;padding:15mm 16mm 11mm!important;margin:0!important;page-break-before:always;break-before:page;display:flex!important;flex-direction:column!important}#proposal-print-v2>.prop-anexos-page .rich-editor,#proposal-print-v2>.prop-anexos-page .rich-content{flex:1 1 auto}#proposal-print-v2>.prop-anexos-page.prop-anexos-page-empty{display:none!important}#proposal-print-v2 .prop-anexos-page .rich-toolbar,#proposal-print-v2 .prop-anexos-page-hint{display:none!important}#proposal-print-v2 .prop-anexos-page .rich-content{padding:0!important}#proposal-print-v2>.paginated.prop-doc-v2-body{display:block!important;width:100%!important;gap:0!important;margin:0!important;padding:0!important;box-shadow:none!important;background:transparent!important}#proposal-print-v2 .paginated-page.prop-doc-v2-body-page{display:flex!important;flex-direction:column!important;width:100%!important;min-height:280mm!important;height:auto!important;box-shadow:none!important;padding:15mm 16mm 11mm!important;margin:0!important;page-break-after:always!important;break-after:page!important;page-break-inside:auto;break-inside:auto;background:transparent!important}#proposal-print-v2 .paginated-page.prop-doc-v2-body-page .paginated-content{flex:1 1 auto}#proposal-print-v2 .paginated-page.prop-doc-v2-body-page:last-of-type{page-break-after:auto!important;break-after:auto!important}#proposal-print-v2 .prop-section{page-break-inside:avoid;break-inside:avoid;margin-bottom:14px}#proposal-print-v2 .prop-price-block,#proposal-print-v2 .prop-price-table{page-break-inside:auto;break-inside:auto}#proposal-print-v2 .prop-price-table{width:100%!important;table-layout:fixed}#proposal-print-v2 .prop-price-table tr{page-break-inside:avoid;break-inside:avoid}#proposal-print-v2 .prop-cover-inner,#proposal-print-v2 .prop-back-inner{height:297mm;box-sizing:border-box}.no-print,.no-print *,.no-print-el{display:none!important}.print-only{display:inline!important}.proposal-page{padding:0!important;max-width:none!important;margin:0!important}.prop-doc{background:#fff;box-shadow:none;border-radius:0;margin:0;padding:0;max-width:none;font-size:11pt}.prop-field-edit{display:none!important}.prop-field-print{display:block!important;width:100%;font-family:var(--prop-font-body);font-size:11pt;line-height:1.5;color:#1a1a1a;text-align:justify;white-space:pre-wrap;word-wrap:break-word;margin:0;padding:0}.prop-date-picker{display:none!important}.prop-section h2,.prop-sub-label,.prop-price-label{break-after:avoid}.prop-closing,.prop-footer{break-inside:avoid}@page{size:A4;margin:15mm 18mm 26mm}.prop-page-footer{display:flex!important;position:fixed;bottom:0;left:0;right:0;z-index:2;justify-content:space-between;align-items:flex-end;font-family:Times New Roman,Times,serif;font-size:8pt;line-height:1.3;color:#33f;padding-top:15px;box-sizing:border-box}.pp-text{font-family:Times New Roman,Times,serif;font-size:11pt;line-height:1.5;color:#1a1a1a;text-align:justify;white-space:pre-wrap;margin:0}}@media(max-width:860px){.prop-doc{margin:16px 8px 32px;padding:28px 20px 24px;font-size:10pt}.prop-client{text-align:left}.prop-ref-line,.prop-subject{flex-direction:column;gap:4px}}.prop-img-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin:18px 0 24px}.prop-img-card{margin:0;border:1px solid #ddd;border-radius:3px;overflow:hidden;background:#fff}.prop-img-card img{width:100%;display:block;object-fit:contain;background:#fafafa}.prop-img-card figcaption{font-size:11px;font-weight:600;color:var(--text-muted);text-align:center;padding:8px 10px;background:var(--bg-elevated)}@media print{.prop-img-gallery{grid-template-columns:repeat(2,1fr);break-inside:avoid}.prop-img-card{break-inside:avoid}}.prop-img-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:16px;break-inside:avoid;page-break-inside:avoid}.cap-img-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin-top:8px}.cap-img-thumb{position:relative;border-radius:6px;overflow:hidden;border:1px solid var(--border);background:var(--bg);aspect-ratio:16 / 10}.cap-img-thumb img{width:100%;height:100%;object-fit:contain;display:block;background:#f5f5f5}.cap-img-remove{position:absolute;top:5px;right:5px;width:22px;height:22px;border-radius:50%;border:none;background:#0009;color:#fff;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;opacity:0;transition:opacity .15s}.cap-img-thumb:hover .cap-img-remove{opacity:1}.cap-img-num{position:absolute;bottom:4px;left:5px;background:#00000080;color:#fff;font-size:10px;font-weight:600;padding:1px 5px;border-radius:3px;pointer-events:none}.cap-img-add{aspect-ratio:16 / 10;border-radius:6px;border:2px dashed var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;color:var(--text-dim, #888);font-size:28px;gap:4px;transition:border-color .15s,color .15s}.cap-img-add:hover{border-color:var(--primary, #006cb8);color:var(--primary, #006cb8)}.cap3-feature{margin-top:28px}.cap3-feature-header{display:flex;align-items:center;justify-content:center;gap:7px;margin-bottom:7px}.cap3-globe-icon{width:22px;height:22px;color:#2e7d32;flex-shrink:0}.cap3-feature-title{font-weight:700;text-decoration:underline;font-size:12px}.cap3-feature-desc{margin:0 0 10px;font-size:11.5px;line-height:1.55;text-align:justify}.cap3-feature-img{width:100%;display:block;border:1px solid #d8d8d8;margin-top:6px}.prop-edit-tooltip{position:fixed;background:#006cb8eb;color:#fff;font-size:11px;font-weight:600;padding:4px 10px;border-radius:5px;pointer-events:none;z-index:9999;white-space:nowrap;letter-spacing:.02em;box-shadow:0 2px 8px #0003}.proposal-actions-row{display:flex;justify-content:flex-end;gap:8px;margin:140px 0 16px}.proposal-actions-row--proposta{margin-top:140px}.proposal-data-list{display:flex;flex-direction:column;gap:10px}.proposal-data-list .quotation-info-field{width:100%}.dados-subtabs-wrap{margin-bottom:14px}.dados-cap-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding:0;background:transparent;border:none}.dados-cap-pill{min-width:30px;height:26px;padding:0 8px;background:transparent;border:1px solid var(--border);border-radius:999px;color:var(--text-muted);font-size:12px;font-weight:600;cursor:pointer;transition:var(--transition)}.dados-cap-pill:hover{background:#32947c1a;color:var(--text);border-color:var(--accent)}.dados-cap-pill.is-active{background:var(--accent);border-color:var(--accent);color:#fff}[data-theme=light] .dados-cap-pill{border-color:#ffffff59;color:#ffffffd9}[data-theme=light] .dados-cap-pill:hover{background:#ffffff24;color:#fff;border-color:#ffffffb3}[data-theme=light] .dados-cap-pill.is-active{background:#ffffff47;border-color:#fff;color:#fff}:root{--prop-blue: #0568b5;--prop-blue-2: #0457a0;--prop-blue-dark: #033870;--prop-green: #2E7B5A;--prop-accent: #00b39a;--prop-font-body: "M PLUS Rounded 1c", "Calibri", "Segoe UI", system-ui, sans-serif;--prop-font-display: "M PLUS Rounded 1c", "Quicksand", "Segoe UI", system-ui, sans-serif;--prop-font-script: "Pacifico", "Brush Script MT", "Lucida Handwriting", cursive;--prop-font-tagline: "Plus Jakarta Sans", "Outfit", "Helvetica Neue", sans-serif}.prop-doc.prop-doc-v2{max-width:none;padding:0;background:transparent;box-shadow:none;border-radius:0;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:24px}.prop-doc-v2>.prop-cover,.prop-doc-v2>.prop-back-cover{width:820px;min-height:1160px;box-sizing:border-box;margin:0;flex-shrink:0}.prop-doc-v2>.prop-doc-v2-body{width:820px;background:#fff;box-shadow:0 4px 20px #0000002e;box-sizing:border-box;padding:56px 60px;margin:0;flex-shrink:0}.prop-doc-v2>.prop-cover,.prop-doc-v2>.prop-back-cover{padding:0;overflow:hidden;background:linear-gradient(180deg,#006cb8,#144c73);min-height:1160px}.prop-cover{position:relative;width:100%;aspect-ratio:210 / 297;color:#fff;overflow:hidden;background:linear-gradient(180deg,#006cb8,#144c73);font-family:var(--prop-font-display);-webkit-print-color-adjust:exact;print-color-adjust:exact}.prop-cover-shape{position:absolute;background:#fff;z-index:1;-webkit-print-color-adjust:exact;print-color-adjust:exact}.prop-cover-shape-tr{top:0;right:0;width:22%;height:14%;border-bottom-left-radius:100%}.prop-cover-shape-bl{bottom:0;left:0;width:22%;height:10%;border-top-right-radius:100%}.prop-cover-circles{position:absolute;top:40%;right:5%;width:55%;height:42%;z-index:1}.prop-cover-circle{position:absolute;border-radius:50%;background-size:cover;background-position:center;border:3px solid var(--prop-blue);-webkit-print-color-adjust:exact;print-color-adjust:exact;box-shadow:0 0 0 1px #ffffffe6}.prop-cover-circle-1{top:0;right:0;width:90%;aspect-ratio:1 / 1;z-index:1}.prop-cover-circle-2{bottom:0;left:0;width:52%;aspect-ratio:1 / 1;z-index:2}.prop-cover-circle-3{bottom:-2%;left:46%;width:30%;aspect-ratio:1 / 1;z-index:3}.prop-cover-inner{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;padding:7% 8%}.prop-cover-top{display:flex;justify-content:flex-end;margin-bottom:60px;margin-top:14%;padding-right:20px}.prop-cover-helexia-img{height:32px;width:auto;mix-blend-mode:lighten;-webkit-print-color-adjust:exact;print-color-adjust:exact}.prop-cover-tag{font-size:13px;color:#fff;font-weight:400;letter-spacing:.04em}.prop-cover-tag-helexia{font-family:var(--prop-font-script);font-size:20px;font-weight:400;vertical-align:middle;margin:0 4px;letter-spacing:-.01em;display:inline-block;transform:translateY(2px)}.prop-cover-content{flex:1;max-width:60%}.prop-cover-title{font-size:78px;font-weight:700;margin:0 0 4px;line-height:1;color:#fff;letter-spacing:-.01em;font-family:var(--prop-font-display)}.prop-cover-rule{border:none;height:1px;background:#fffffff2;margin:14px 0 10px;width:100%}.prop-cover-subtitle{font-size:22px;font-weight:400;color:#fff;margin:0 0 60px;line-height:1.2}.prop-cover-subtitle sup{font-size:.7em}.prop-cover-client{font-size:32px;font-weight:700;margin:0 0 12px;color:#fff;line-height:1.1;letter-spacing:.01em;text-transform:uppercase}.prop-cover-meta{font-size:14px;line-height:1.6;color:#fff;margin-top:8px;border-top:1px solid rgba(255,255,255,.6);padding-top:14px;width:60%}.prop-cover-meta p{margin:0}.prop-cover-meta strong{color:#fff;font-weight:700}.prop-cover-meta-ref{margin-bottom:12px!important}.prop-cover-footer{position:absolute;bottom:1.5%;right:4%;display:flex;flex-wrap:nowrap;gap:14px;font-size:9px;font-weight:500;color:#fff;letter-spacing:.01em;z-index:3}.prop-cover-icon{width:14px!important;height:14px!important;font-size:8px!important}.prop-cover-foot-item{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.prop-cover-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;border:1px solid rgba(255,255,255,.85);font-size:10px;font-weight:700;font-style:normal;line-height:1}.prop-anexos{position:relative;width:100%;aspect-ratio:210 / 297;color:#fff;overflow:hidden;background:linear-gradient(180deg,#006cb8,#144c73);font-family:var(--prop-font-body);-webkit-print-color-adjust:exact;print-color-adjust:exact}.prop-doc-v2>.prop-anexos{width:820px;min-height:1160px;box-sizing:border-box;margin:0;flex-shrink:0}.prop-anexos-inner{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;padding:7% 8%}.prop-anexos-title-stack{position:relative;margin-top:4%;pointer-events:none}.prop-anexos-title-stack .prop-anexos-title{font-size:110px;font-weight:800;line-height:.92;letter-spacing:-.02em;margin:0;font-family:var(--prop-font-display)}.prop-anexos-title-1{color:#fff}.prop-anexos-title-2,.prop-anexos-title-3,.prop-anexos-title-4{color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.85);margin-top:-10px!important}.prop-anexos-title-3{-webkit-text-stroke-color:rgba(255,255,255,.55)}.prop-anexos-title-4{-webkit-text-stroke-color:rgba(255,255,255,.3)}.prop-anexos-page{position:relative;background:#fff;box-sizing:border-box;padding:56px 60px;margin:0;flex-shrink:0}.prop-doc-v2>.prop-anexos-page{width:820px;min-height:1160px;box-shadow:0 4px 20px #0000002e}.prop-anexos-page-hint{background:#0568b514;border:1px dashed var(--prop-blue);color:var(--prop-blue);font-size:12px;font-weight:500;padding:8px 12px;border-radius:var(--radius-sm);margin-bottom:12px}.prop-anexos-page-empty .rich-content{min-height:800px}.prop-anexos-toggle{width:820px;margin:24px auto 0;padding:12px 16px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;color:var(--text)}.prop-anexos-toggle-label{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.prop-anexos-toggle-label input[type=checkbox]{margin:0}.prop-back-cover .prop-back-content{display:flex;flex-direction:column;align-items:flex-start;margin-top:0;position:relative;z-index:4}.prop-back-tagline{font-family:var(--prop-font-display);font-size:84px;font-weight:700;line-height:1;letter-spacing:-.01em;margin:0 0 18px;text-transform:uppercase}.prop-back-tagline-outline{color:transparent;-webkit-text-stroke:2px #ffffff}.prop-back-tagline-solid{color:#fff;margin-bottom:28px}.prop-back-logo-ewen{height:56px;width:auto;display:block;margin:0 0 10px;-webkit-print-color-adjust:exact;print-color-adjust:exact}@media print{.prop-doc.prop-doc-v2{display:block;gap:0}.prop-doc-v2>.prop-cover,.prop-doc-v2>.prop-back-cover,.prop-doc-v2>.prop-page,.prop-doc-v2>.prop-section{width:100%;min-height:0;box-shadow:none;margin:0;page-break-after:always;break-after:page}.prop-doc-v2>.prop-page,.prop-doc-v2>.prop-section{padding:16mm 14mm}.prop-doc-v2>.prop-cover,.prop-doc-v2>.prop-back-cover{-webkit-print-color-adjust:exact;print-color-adjust:exact;aspect-ratio:auto;height:100vh}.prop-doc-v2>*:last-child{page-break-after:auto;break-after:auto}}.proposal-import-list{display:flex;flex-direction:column;gap:4px;max-height:360px;overflow-y:auto}.proposal-import-row{display:block;text-align:left;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 12px;font-size:13px;cursor:pointer;width:100%;color:var(--text)}.proposal-import-row:hover{background:var(--bg-card);border-color:var(--accent)}.prop-page-doc{position:relative}.prop-page-doc.has-margin{padding:56px 60px!important}.prop-page-doc.no-margin{padding:0!important}.prop-page-controls{position:absolute;top:-34px;right:0;display:flex;align-items:center;gap:4px;padding:4px;background:#ffffffeb;border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 2px 8px #00000014}.prop-page-num{font-size:11px;font-weight:700;color:var(--text-muted);padding:0 8px}.prop-page-controls .btn-sm{padding:2px 8px;font-size:11px;min-width:auto}.prop-page-add-row{width:820px;display:flex;justify-content:space-between;margin:0 auto;gap:8px}@media print{.prop-page-controls,.prop-page-add-row{display:none!important}}.prop-page-doc.theme-white{background:#fff;color:#1a1a1a}.prop-page-doc.theme-cover,.prop-page-doc.theme-back{background:linear-gradient(160deg,#0a1f3d,#163c6f);color:#fff;position:relative;overflow:hidden}.prop-page-doc.theme-cover .rich-content,.prop-page-doc.theme-back .rich-content{color:#fff;min-height:1080px;padding:70px 70px 50px}.prop-page-doc.theme-cover .ProseMirror,.prop-page-doc.theme-back .ProseMirror,.prop-page-doc.theme-cover .ProseMirror *,.prop-page-doc.theme-back .ProseMirror *{color:#fff!important}.prop-page-doc.theme-cover .rich-toolbar,.prop-page-doc.theme-back .rich-toolbar{background:#ffffffeb}.prop-page-doc.theme-cover .rich-toolbar button,.prop-page-doc.theme-back .rich-toolbar button{color:#1a1a1a!important}.prop-page-doc.theme-cover .ProseMirror .cover-tag,.prop-page-doc.theme-back .ProseMirror .cover-tag{text-align:right;font-size:12px;letter-spacing:.05em;margin:0 0 4px;opacity:.92}.prop-page-doc.theme-cover .ProseMirror .cover-tag strong,.prop-page-doc.theme-back .ProseMirror .cover-tag strong{color:#00b39a!important;font-weight:700}.prop-page-doc.theme-cover .ProseMirror .cover-title{font-size:60px;font-weight:300;letter-spacing:-.01em;margin:60px 0 6px;line-height:1.05}.prop-page-doc.theme-cover .ProseMirror .cover-subtitle{font-size:22px;font-weight:400;margin:0;opacity:.9}.prop-page-doc.theme-cover .ProseMirror .cover-client{font-size:44px;font-weight:700;margin:80px 0 28px;line-height:1;color:#00b39a!important}.prop-page-doc.theme-cover .ProseMirror .cover-client *{color:#00b39a!important}.prop-page-doc.theme-cover .ProseMirror .cover-meta{font-size:13px;margin:2px 0;opacity:.92}.prop-page-doc.theme-cover .ProseMirror .cover-spacer,.prop-page-doc.theme-back .ProseMirror .cover-spacer{margin:0;height:24px;min-height:24px}.prop-page-doc.theme-cover .ProseMirror .cover-contacts,.prop-page-doc.theme-back .ProseMirror .cover-contacts{border-top:1px solid rgba(255,255,255,.25);padding-top:14px;margin:28px 0 0;font-size:11px;opacity:.88;letter-spacing:.02em}.prop-page-doc.theme-back .ProseMirror .back-tagline{font-size:88px;font-weight:200;line-height:.95;letter-spacing:-.02em;margin:0;text-align:center}.prop-page-doc .prop-page-footer-num{display:block!important;position:absolute;bottom:16px;right:24px;font-size:10px;color:#888;letter-spacing:.04em}.prop-page-doc.theme-cover .prop-page-footer-num,.prop-page-doc.theme-back .prop-page-footer-num{color:#fff9;z-index:2}.paginated.prop-doc-v2-body{width:820px;display:flex;flex-direction:column;gap:24px;padding:0!important;background:transparent!important;box-shadow:none!important}.paginated-page.prop-doc-v2-body-page{width:820px;min-height:1160px;background:#fff;box-shadow:0 4px 20px #0000002e;box-sizing:border-box;padding:56px 60px 40px}.paginated-page{position:relative;display:flex;flex-direction:column}.paginated-content{flex:1}.prop-page-header{padding:16px 0 18px;margin-bottom:16px;border-bottom:1px solid #e0e0e0;display:flex;align-items:flex-start;justify-content:space-between}.prop-page-header-left p{margin:0;line-height:1.2}.prop-page-header-tag{font-size:11pt;color:var(--prop-blue);font-weight:400}.prop-page-header-client{font-size:18pt;font-weight:700;color:var(--prop-blue);text-transform:uppercase;letter-spacing:.01em;margin-top:2px!important}.prop-page-header-right{font-size:16pt;font-weight:700;color:var(--prop-blue);margin-top:22px;padding-right:130px;position:relative;z-index:1;white-space:nowrap}.prop-page-header-shape{position:absolute;top:0;right:0;width:150px;height:90px;background:var(--prop-blue);border-bottom-left-radius:100%;z-index:0;-webkit-print-color-adjust:exact;print-color-adjust:exact}.prop-page-footer-bar{display:flex;align-items:center;gap:12px;padding:10px 0 14px;margin-top:14px;border-top:none}.prop-page-footer-logo{height:22px;width:auto}.prop-page-footer-rule{flex:1;border:none;border-top:2px solid var(--prop-blue);margin:0}.prop-page-footer-num{font-size:11pt;color:var(--prop-blue);font-weight:600;min-width:30px;text-align:right}.prop-page-footer-tab{width:28px;height:12px;background:var(--prop-blue)}.proposal-data-section-title{font-size:13px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin:22px 0 10px;padding-top:14px;border-top:1px solid var(--border)}.proposal-data-zone{margin-top:22px}.proposal-data-fields{display:flex;flex-direction:column;gap:14px}.proposal-data-field{display:flex;flex-direction:column;gap:6px}.proposal-data-field textarea.form-input{resize:vertical;min-height:90px;font-family:inherit;line-height:1.4}.poi{display:flex;flex-direction:column;gap:14px}.poi-empty{padding:12px 14px;border-radius:8px;background:color-mix(in srgb,var(--text) 4%,transparent);border:1px dashed color-mix(in srgb,var(--text) 18%,transparent)}.poi-status{display:flex;justify-content:flex-end;height:18px}.poi-save{font-size:12px;font-variant-numeric:tabular-nums;color:var(--text-muted)}.poi-save-saving{color:var(--text-muted)}.poi-save-saved{color:var(--accent-teal)}.poi-save-error{color:#ef4444}.poi-section{padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--text) 3%,transparent);border:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.poi-section-title{margin:0 0 6px;font-size:13.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.poi-section-desc{margin:0 0 10px;font-size:12.5px;color:var(--text-muted)}.poi-q{margin-bottom:12px}.poi-q:last-child{margin-bottom:0}.poi-q-label{display:block;font-size:13.5px;font-weight:600;color:var(--text);margin-bottom:4px}.poi-required{color:#ef4444;margin-left:4px}.poi-q-desc{margin:0 0 6px;font-size:12.5px;color:var(--text-muted)}.poi-input{width:100%}.poi-pills{display:flex;flex-wrap:wrap;gap:6px}.poi-pill{padding:6px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--text) 18%,transparent);background:transparent;font-size:13px;color:var(--text);cursor:pointer;transition:all .12s ease}.poi-pill:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.poi-pill.is-selected{background:var(--accent);color:#fff;border-color:var(--accent)}.poi-pill:disabled{opacity:.5;cursor:not-allowed}.poi-rating{display:flex;gap:4px}.poi-star{background:transparent;border:none;color:color-mix(in srgb,var(--text) 25%,transparent);font-size:24px;cursor:pointer;padding:0 2px}.poi-star.is-filled{color:#f59e0b}.poi-star:disabled{cursor:not-allowed;opacity:.5}.poi-scale{display:flex;align-items:center;gap:10px}.poi-scale input[type=range]{flex:1}.poi-scale-val{font-weight:700;font-variant-numeric:tabular-nums;min-width:28px;text-align:right}.poi-decision{padding:14px 16px;border-radius:12px;background:color-mix(in srgb,var(--accent) 8%,var(--bg-card));border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);display:flex;flex-direction:column;gap:10px}.poi-decision-current{padding:10px 12px;border-radius:8px;display:flex;flex-direction:column;gap:2px}.poi-decision-approved{background:color-mix(in srgb,#16a34a 14%,transparent)}.poi-decision-rejected{background:color-mix(in srgb,#ef4444 14%,transparent)}.poi-decision-current strong{font-size:14px;letter-spacing:.04em}.poi-decision-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.poi-publish-badge{padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent}.poi-publish-badge.is-published{background:color-mix(in srgb,var(--accent-teal) 16%,transparent);color:var(--accent-teal);border-color:color-mix(in srgb,var(--accent-teal) 32%,transparent)}.poi-publish-badge.is-draft{background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--text-muted);border-color:color-mix(in srgb,var(--text) 18%,transparent)}.poi-decision-approved strong{color:#16a34a}.poi-decision-rejected strong{color:#ef4444}.poi-decision-note{margin:6px 0 0;font-size:13px;color:var(--text);white-space:pre-wrap}.poi-decision-label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--text)}.poi-decision-textarea{width:100%;resize:vertical}.poi-decision-actions{display:flex;gap:8px}[data-theme=light] .poi-section{background:color-mix(in srgb,var(--accent) 3%,var(--bg-card));border-color:var(--border)}[data-theme=light] .poi-decision{background:var(--bg-card);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:var(--shadow)}.project-supplier-evals{display:flex;flex-direction:column;gap:0}.pse-section-title{margin:0 0 12px;font-size:15px;font-weight:700;color:var(--text)}.pse-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.pse-section-head .pse-section-title{margin:0}.pse-cards{display:flex;flex-direction:column;gap:10px}.pse-cards.is-secondary{opacity:.85}.pse-card{border-radius:12px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);border:1px solid color-mix(in srgb,var(--text) 12%,transparent);overflow:hidden;transition:box-shadow .12s ease}.pse-card.is-open{box-shadow:0 2px 6px color-mix(in srgb,var(--text) 10%,transparent)}.pse-card-head{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:none;background:transparent;cursor:pointer;text-align:left;color:var(--text);font-size:14px}.pse-card-head:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.pse-card-name{font-weight:600;flex:1;min-width:0}.pse-card-level{padding:2px 9px;border-radius:999px;background:color-mix(in srgb,var(--text) 10%,transparent);font-size:11.5px;font-weight:600;letter-spacing:.02em;color:var(--text-muted)}.pse-card-items{display:flex;gap:8px;font-size:12.5px;color:var(--text-muted);font-variant-numeric:tabular-nums}.pse-card-state{padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.02em}.pse-card-state.is-todo{background:color-mix(in srgb,#ef4444 12%,transparent);color:#ef4444}.pse-card-state.is-progress{background:color-mix(in srgb,#f59e0b 14%,transparent);color:#b45309}.pse-card-state.is-ok{background:color-mix(in srgb,#16a34a 14%,transparent);color:#16a34a}.pse-card-state.is-rej{background:color-mix(in srgb,#ef4444 18%,transparent);color:#ef4444}.pse-card-arrow{font-size:14px;color:var(--text-muted);width:16px;text-align:center}.pse-card-body{padding:12px 16px 14px;border-top:1px dashed color-mix(in srgb,var(--text) 10%,transparent);display:flex;flex-direction:column;gap:12px}.pse-card-items-list strong{display:block;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:6px}.pse-card-items-list ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.pse-card-items-list li{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text)}.pse-item-type{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:4px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent-teal);font-size:11px;font-weight:700;flex-shrink:0}.pse-item-desc{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pse-item-qty{color:var(--text-muted);font-variant-numeric:tabular-nums}.pse-card-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}[data-theme=light] .pse-card{background:var(--bg-card);border-color:var(--border);box-shadow:var(--shadow)}[data-theme=light] .pse-card-head:hover{background:color-mix(in srgb,var(--accent) 5%,var(--bg-card))}[data-theme=light] .pse-section-title{color:#fff}.analysis-page{max-width:1100px}.an-section{margin-bottom:24px}.an-section.an-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:22px 24px;box-shadow:0 2px 10px #0000000f;transition:box-shadow .2s ease,transform .2s ease}.an-section.an-card:hover{box-shadow:0 4px 18px #0000001a}[data-theme=light] .an-section.an-card{border-color:#ffffff8c;box-shadow:0 4px 16px #00000024}[data-theme=light] .an-section.an-card:hover{box-shadow:0 6px 24px #0003}.an-section-title{font-size:1rem;font-weight:700;color:var(--text);margin:0 0 18px;padding:0;border:none;display:flex;align-items:center;gap:10px;letter-spacing:.01em}.an-section-title:before{content:"";display:inline-block;width:4px;height:18px;background:linear-gradient(180deg,var(--accent) 0%,var(--accent-teal) 100%);border-radius:2px;flex-shrink:0}.an-card .an-kpi,.an-card .an-timeline-item,.an-card .an-stock-item,.an-card .an-obra-kpi{background:var(--bg-elevated)}.an-card .an-kpi.an-kpi-highlight{background:#32947c1f;border-color:var(--accent);box-shadow:0 0 0 1px #32947c40 inset}.an-card .an-table{background:transparent;border:none}.an-tl{position:relative;padding-left:24px;margin-bottom:20px}.an-tl-line{position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--border);border-radius:1px}.an-tl-event{position:relative;display:flex;align-items:flex-start;gap:12px;padding-bottom:18px}.an-tl-event:last-child{padding-bottom:0}.an-tl-dot{position:absolute;left:-20px;top:4px;width:14px;height:14px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-teal) 100%);border:3px solid var(--bg-card);box-shadow:0 0 0 1px var(--accent),0 2px 6px #32947c59;flex-shrink:0}.an-tl-content{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.an-tl-label{font-size:13px;font-weight:700;color:var(--text);min-width:100px}.an-tl-date{font-size:13px;color:var(--text-muted)}.an-tl-days{font-size:11px;color:var(--accent);font-weight:700;background:#32947c1f;padding:2px 10px;border-radius:999px;letter-spacing:.02em}.an-tl-summary{display:flex;flex-wrap:wrap;gap:16px}.an-timeline-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px 18px;display:flex;flex-direction:column;gap:4px;min-width:160px}.an-timeline-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.an-timeline-value{font-size:15px;font-weight:700;color:var(--text)}.an-phase-badge{background:#32947c1f;color:var(--accent);padding:2px 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;display:inline-block;width:fit-content}.an-kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.an-kpi{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px;display:flex;flex-direction:column;gap:4px;box-shadow:0 2px 8px #00000014}.an-kpi-highlight{background:var(--bg-card);border:2px solid var(--accent);box-shadow:0 2px 12px #32947c38}[data-theme=light] .an-section:not(.an-card)>.an-section-title{color:#fff}[data-theme=light] .an-section:not(.an-card)>.an-section-title:before{background:linear-gradient(180deg,#fff,#ffffff8c)}[data-theme=light] .an-kpi{box-shadow:0 4px 14px #0000002e;border-color:#ffffff80}[data-theme=light] .an-kpi-highlight{background:#fff;border:2px solid var(--accent);box-shadow:0 4px 18px #32947c73}.an-kpi-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.an-kpi-value{font-size:1.25rem;font-weight:700;color:var(--text)}.an-kpi-sub{font-size:12px;color:var(--text-dim)}.an-stock-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.an-stock-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px 18px;display:flex;flex-direction:column;gap:4px;min-width:140px}.an-stock-net{border-color:var(--accent)}.an-stock-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase}.an-stock-value{font-size:1.1rem;font-weight:700}.an-obra-kpis{display:flex;flex-wrap:wrap;gap:14px}.an-obra-kpi{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:120px}.an-obra-kpi-num{font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-teal) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1.1}.an-obra-kpi-label{font-size:11px;font-weight:600;color:var(--text-muted);text-align:center}.an-chart{display:flex;flex-direction:column;gap:22px}.an-chart-row{display:flex;flex-direction:column;gap:8px;padding-bottom:16px;border-bottom:1px solid var(--border)}.an-chart-row:last-child{border-bottom:none;padding-bottom:0}.an-chart-row-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.an-chart-label{font-size:14px;font-weight:700;color:var(--text);text-align:left;flex:1;letter-spacing:.01em}.an-chart-delta{display:inline-flex;align-items:center;font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;letter-spacing:.02em;font-variant-numeric:tabular-nums}.an-chart-delta.is-good{background:#4ade8026;color:var(--success)}.an-chart-delta.is-over{background:#c47a7e2e;color:var(--danger)}[data-theme=light] .an-chart-delta.is-good{background:#4ade8038;color:#fff}[data-theme=light] .an-chart-delta.is-over{background:#dc46464d;color:#fff}.an-chart-bars{display:flex;flex-direction:column;gap:6px}.an-bar-wrap{display:grid;grid-template-columns:1fr 90px;align-items:center;gap:12px}.an-bar-track{height:10px;background:#32947c1a;border-radius:999px;overflow:hidden}[data-theme=light] .an-bar-track{background:#ffffff2e}.an-bar-track .an-bar{height:100%}.an-bar-val{font-size:12px;font-weight:600;color:var(--text);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}[data-theme=light] .analysis-page .an-bar-val{color:#fff}.an-bar{height:10px;border-radius:999px;min-width:4px;transition:width .4s ease}.an-bar-sale{background:#475569}.an-bar-cost{background:#cbd5e1}.an-bar-real{background:#475569}.an-bar-over{background:#ddcfad}[data-theme=light] .an-bar-sale{background:#ffffffd9}[data-theme=light] .an-bar-cost{background:#fff6}[data-theme=light] .an-bar-over{background:#ddcfad}.an-bar-val{font-size:11px;color:var(--text-dim);white-space:nowrap}.an-bar-profit{font-size:11px;font-weight:600;padding-top:1px}.an-chart-legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.an-legend-item{background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px;padding:4px 12px 4px 8px}.an-legend-item{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:var(--text)}.an-legend-dot{width:14px;height:14px;border-radius:3px;display:inline-block;flex-shrink:0;border:1px solid rgba(0,0,0,.08)}.an-legend-profit{background:var(--success)}.an-table-scroll{overflow-x:auto}.an-table{width:100%;border-collapse:collapse;font-size:13px;background:transparent;border:none}.an-table th{background:transparent;color:var(--text-muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding:10px 12px;text-align:left;border-bottom:1.5px solid var(--border)}.an-table td{padding:8px 12px;border-bottom:1px solid var(--border);color:var(--text)}.an-table tr:last-child td{border-bottom:none}.an-table tr:hover td{background:var(--bg-elevated)}.an-table tfoot td{border-top:2px solid var(--accent);background:var(--bg-elevated)}.an-r{text-align:right}[data-theme=light] .analysis-page>.placeholder-content .text-muted{color:#ffffffd9}[data-theme=light] .analysis-page .an-section.an-card{background:#fff;border:1px solid var(--border);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 2px 10px #00000014}[data-theme=light] .analysis-page .an-section-title{color:var(--text)}[data-theme=light] .analysis-page .an-section-title:before{background:linear-gradient(180deg,var(--accent) 0%,var(--accent-teal) 100%)}[data-theme=light] .analysis-page .an-card .an-kpi,[data-theme=light] .analysis-page .an-card .an-timeline-item,[data-theme=light] .analysis-page .an-card .an-stock-item,[data-theme=light] .analysis-page .an-card .an-obra-kpi{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);box-shadow:none}[data-theme=light] .analysis-page .an-kpi-highlight{background:#32947c1f!important;border:1px solid var(--accent)!important;box-shadow:0 0 0 1px #32947c40 inset!important}[data-theme=light] .analysis-page .an-kpi-label,[data-theme=light] .analysis-page .an-stock-label,[data-theme=light] .analysis-page .an-obra-kpi-label,[data-theme=light] .analysis-page .an-timeline-label{color:var(--text-muted)}[data-theme=light] .analysis-page .an-kpi-value,[data-theme=light] .analysis-page .an-stock-value,[data-theme=light] .analysis-page .an-timeline-value,[data-theme=light] .analysis-page .an-tl-label,[data-theme=light] .analysis-page .an-tl-content,[data-theme=light] .analysis-page .an-tl-event{color:var(--text)}[data-theme=light] .analysis-page .an-kpi-sub,[data-theme=light] .analysis-page .an-tl-date{color:var(--text-muted)}[data-theme=light] .analysis-page>.placeholder-content{background:#fff;border:1px solid var(--border);border-radius:12px;padding:22px 24px;box-shadow:0 2px 10px #0000000f}[data-theme=light] .analysis-page>.placeholder-content .text-muted{color:var(--text-muted)}[data-theme=light] .analysis-page .an-table th{color:var(--text-muted);border-bottom-color:var(--border)}[data-theme=light] .analysis-page .an-table td{color:var(--text);border-bottom-color:var(--border)}[data-theme=light] .analysis-page .an-table tr:hover td{background:var(--bg-input)}[data-theme=light] .analysis-page .an-table tfoot td{background:var(--bg-elevated);border-top-color:var(--accent)}[data-theme=light] .analysis-page .an-legend-item{background:var(--bg-card);border-color:var(--border);color:var(--text)}[data-theme=light] .analysis-page .an-tl-days,[data-theme=light] .analysis-page .an-phase-badge{background:#32947c24;color:var(--accent)}[data-theme=light] .analysis-page .an-tl-line{background:var(--border)}[data-theme=light] .analysis-page .an-tl-dot{border-color:var(--accent);background:#fff;box-shadow:0 0 0 2px #32947c26}@media(max-width:768px){.analysis-page{padding:16px}.an-kpi-grid{grid-template-columns:1fr 1fr}.an-chart-label{min-width:80px;font-size:11px}.an-obra-kpis{gap:8px}.an-obra-kpi{min-width:90px;padding:10px 12px}}.an-detail-container{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:28px 32px;box-shadow:0 4px 18px #0000000f;color:#1e293b;margin-top:12px}.an-detail-container .an-section-title{color:#0f172a;margin:0 0 10px;font-size:15px;letter-spacing:.2px;padding-bottom:6px;border-bottom:1px solid #e2e8f0}.an-detail-container .an-detail-section+.an-detail-section{margin-top:24px}.an-detail-container .an-detail-label{color:#64748b}.an-detail-container .an-detail-val{color:#1e293b}.an-detail-container .an-detail-empty{color:#94a3b8;font-style:italic}.an-detail-container .an-detail-row{border-bottom-color:#eef2f7}.an-detail-container .an-detail-list{color:#1e293b}.an-detail-container .an-detail-table th{color:#64748b}.an-detail-container .an-detail-table td{color:#1e293b}.an-detail-container .an-detail-table tr:hover td{background:#f8fafc}.an-detail-container .an-detail-pre{background:#f1f5f9;color:#0f172a}.an-detail-section{margin-bottom:0}.an-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px 22px;margin-top:8px}.an-detail-row{display:flex;flex-direction:column;gap:2px;padding:6px 0;border-bottom:1px dashed color-mix(in srgb,var(--text-muted) 18%,transparent)}.an-detail-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.an-detail-val{font-size:14px;font-weight:600;color:var(--text);word-break:break-word}.an-detail-empty{font-size:13px;font-style:italic;color:color-mix(in srgb,var(--text-muted) 80%,transparent)}.an-detail-list{margin:6px 0 0;padding-left:20px;font-size:13px;line-height:1.6}.an-detail-list li{margin-bottom:4px}.an-detail-table-wrap{overflow-x:auto;margin-top:8px}.an-detail-table{width:100%;border-collapse:collapse;font-size:12px}.an-detail-table th,.an-detail-table td{padding:6px 10px;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 12%,transparent);text-align:left}.an-detail-table th{font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}.an-detail-table .num{text-align:right;font-variant-numeric:tabular-nums}.an-detail-collapsible{margin-top:6px}.an-detail-collapsible summary{cursor:pointer;font-size:12px}.an-detail-pre{margin-top:8px;padding:12px;background:color-mix(in srgb,var(--text-muted) 8%,transparent);border-radius:8px;font-size:11px;line-height:1.45;overflow-x:auto;max-height:400px;white-space:pre-wrap;word-break:break-word}.users-modal{max-width:700px;width:100%}.users-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:16px}.users-form-grid .form-group{display:flex;flex-direction:column;gap:4px}.users-modal-section{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.users-modal-section-title{font-size:13px;font-weight:600;margin:0 0 8px;color:var(--text)}.users-perm-toggle{width:100%;text-align:left;display:flex;align-items:center}.users-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:24px}.users-form-row{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.users-form-field{display:flex;flex-direction:column;gap:6px;flex:1;min-width:140px}.users-form-btn{height:38px;white-space:nowrap}.users-table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.users-table{width:100%;border-collapse:collapse;font-size:13px}.users-table th{background:var(--bg-input);color:var(--text-muted);font-weight:600;padding:10px 16px;text-align:left;border-bottom:1px solid var(--border)}.users-table td{padding:10px 16px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle}.users-table tr:last-child td{border-bottom:none}.users-table tr.current-user{background:#32947c0a}.users-username{font-weight:600}.users-you-badge{font-size:11px;color:var(--accent);background:#32947c1a;padding:2px 6px;border-radius:var(--radius-pill);margin-left:8px;font-weight:600}.badge-role-superadmin{background:#a855f71f;color:#8b5cf6}.badge-role-admin{background:#32947c1f;color:var(--accent)}.badge-role-user-plus{background:#14b8a624;color:#0d9488;font-weight:700}.badge-role-user{background:#3b82f61f;color:#3b82f6}.badge-role-viewer{background:var(--bg-input);color:var(--text-muted)}.users-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.users-edit-role,.users-reset-row{display:flex;align-items:center;gap:4px}.form-input-sm{height:30px!important;font-size:12px!important;padding:4px 8px!important}@media(max-width:768px){.users-page{padding:16px}.users-form-row{flex-direction:column}.users-form-field{min-width:100%}.users-actions{flex-direction:column;align-items:flex-start}}.users-role-help{margin-top:14px;padding:12px 14px;background:var(--bg-elevated);border:1px dashed var(--border);border-radius:var(--radius-sm)}.users-role-help-title{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);display:block;margin-bottom:8px}.users-role-help-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px 14px}.users-role-help-item{font-size:13px;line-height:1.45}.users-role-help-name{display:inline-block;padding:1px 8px;border-radius:var(--radius-pill);margin-right:8px;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.04em;background:var(--bg-input);color:var(--text)}.users-role-help-superadmin .users-role-help-name{background:#b43c5a26;color:#b43c5a}.users-role-help-admin .users-role-help-name{background:#32947c26;color:var(--accent)}.users-role-help-user .users-role-help-name{background:#4b9ce226;color:#4b9ce2}.users-role-help-viewer .users-role-help-name{background:#7878822e;color:var(--text-muted)}.users-role-help-desc{color:var(--text-muted)}.users-edit-role-wrap{display:flex;flex-direction:column;gap:8px}.users-perm-row td{background:var(--bg-elevated);padding:0!important}.users-perm-panel{padding:14px 16px;display:flex;flex-direction:column;gap:10px}.users-perm-header{display:flex;align-items:center;gap:10px;font-size:13px}.users-perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px 14px}.users-perm-section-title{font-size:11px;text-transform:uppercase;font-weight:700;color:var(--text-muted);letter-spacing:.04em;margin-top:6px}.users-perm-item{display:inline-flex;align-items:center;gap:6px;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none}.users-perm-actions{display:flex;gap:6px;align-items:center;border-top:1px dashed var(--border);padding-top:10px}.users-promote-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.users-promote-active{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#14b8a614;border:1px solid rgba(20,184,166,.3);border-radius:var(--radius-sm)}.users-promote-active-info{display:flex;flex-direction:column;gap:2px}.users-promote-badge{font-size:12px;font-weight:700;color:#0d9488}.users-temp-badge{display:inline-flex;align-items:center;gap:2px;font-size:10px;font-weight:700;padding:1px 6px;border-radius:var(--radius-pill);background:#14b8a62e;color:#0d9488;letter-spacing:.02em}.sup-inbox{display:grid;grid-template-columns:340px 1fr;height:calc(100vh - 80px);gap:0;background:var(--bg-card)}.sup-inbox-list{border-right:1px solid var(--border);overflow-y:auto;background:var(--bg-elevated)}.sup-inbox-list-head{padding:14px 16px;border-bottom:1px solid var(--border);background:var(--bg-elevated);position:sticky;top:0;z-index:1}.sup-inbox-list-head h2{margin:0 0 10px;font-size:15px}.sup-inbox-filters{display:flex;gap:6px}.sup-inbox-filter{background:transparent;border:1px solid var(--border);border-radius:4px;padding:4px 10px;font-size:12px;color:var(--text-muted);cursor:pointer}.sup-inbox-filter.is-active{background:var(--accent, #16a34a);color:#fff;border-color:var(--accent, #16a34a)}.sup-inbox-list ul{list-style:none;margin:0;padding:0}.sup-inbox-item{width:100%;text-align:left;background:transparent;border:none;border-bottom:1px solid var(--border);padding:12px 16px;cursor:pointer;color:var(--text)}.sup-inbox-item:hover{background:color-mix(in srgb,var(--accent, #16a34a) 6%,transparent)}.sup-inbox-item.is-selected{background:color-mix(in srgb,var(--accent, #16a34a) 14%,transparent);border-left:3px solid var(--accent, #16a34a);padding-left:13px}.sup-inbox-item-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.sup-inbox-status{font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:2px 6px;border-radius:3px;flex-shrink:0}.sup-inbox-status.is-open{background:color-mix(in srgb,#16a34a 18%,transparent);color:#166534}.sup-inbox-status.is-closed{background:color-mix(in srgb,#64748b 20%,transparent);color:#475569}.sup-inbox-subject{font-weight:600;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sup-inbox-item-meta{font-size:11px;color:var(--text-muted)}.sup-inbox-thread-wrap{display:flex;flex-direction:column;min-width:0}.sup-inbox-empty{text-align:center;color:var(--text-muted);padding:40px 20px}.sup-inbox-thread-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 20px;border-bottom:1px solid var(--border)}.sup-inbox-thread-head h2{margin:0 0 4px;font-size:17px}.sup-inbox-thread-meta{font-size:12px;color:var(--text-muted)}.sup-inbox-thread-actions{flex-shrink:0}.sup-inbox-thread{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px;background:color-mix(in srgb,var(--text) 3%,transparent)}[data-theme=light] .sup-inbox-thread{background:#f9fafb}.sup-msg{max-width:70%;padding:10px 14px;border-radius:10px;background:var(--bg-elevated);border:1px solid var(--border);align-self:flex-start}.sup-msg.is-mine{align-self:flex-end;background:color-mix(in srgb,var(--accent, #16a34a) 12%,var(--bg-elevated));border-color:color-mix(in srgb,var(--accent, #16a34a) 35%,transparent)}.sup-msg.is-admin:not(.is-mine){background:color-mix(in srgb,#3b82f6 10%,var(--bg-elevated));border-color:color-mix(in srgb,#3b82f6 35%,transparent)}.sup-msg-meta{font-size:11px;color:var(--text-muted);margin-bottom:4px}.sup-admin-tag{color:#1e40af;font-weight:600}.sup-msg-body{font-size:14px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.sup-inbox-composer{padding:12px 20px;border-top:1px solid var(--border);display:flex;gap:10px;align-items:flex-end;background:var(--bg-elevated)}.sup-input{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg-card);color:var(--text);font-size:14px;font-family:inherit}.sup-textarea{resize:none;min-height:60px;flex:1}.sup-btn{background:transparent;border:1px solid var(--border);border-radius:6px;padding:8px 14px;font-size:13px;font-weight:600;color:var(--text);cursor:pointer}.sup-btn:hover{background:var(--bg-elevated)}.sup-btn.is-primary{background:var(--accent, #16a34a);color:#fff;border-color:var(--accent, #16a34a)}.sup-btn.is-primary:disabled{opacity:.55;cursor:not-allowed}.sup-inbox-closed{padding:16px;text-align:center;font-size:13px;color:var(--text-muted);border-top:1px solid var(--border);background:var(--bg-elevated)}.stock-info-banner{display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin-bottom:16px;border-radius:12px;border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);background:radial-gradient(120% 80% at 0% 0%,color-mix(in srgb,var(--accent) 10%,transparent) 0%,transparent 70%),color-mix(in srgb,var(--bg-card) 60%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.stock-info-banner.no-stock{border-color:color-mix(in srgb,var(--text-muted) 25%,transparent);background:radial-gradient(120% 80% at 0% 0%,color-mix(in srgb,var(--text-muted) 10%,transparent) 0%,transparent 70%),color-mix(in srgb,var(--bg-card) 60%,transparent)}.stock-info-banner.is-negative{border-color:color-mix(in srgb,var(--danger, #c47a7e) 35%,transparent);background:radial-gradient(120% 80% at 0% 0%,color-mix(in srgb,var(--danger, #c47a7e) 12%,transparent) 0%,transparent 70%),color-mix(in srgb,var(--bg-card) 60%,transparent)}.sib-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.sib-main{gap:12px}.sib-status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.has-stock .sib-status-dot{background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent)}.no-stock .sib-status-dot{background:var(--text-muted)}.is-negative .sib-status-dot{background:var(--danger, #c47a7e);box-shadow:0 0 0 4px color-mix(in srgb,var(--danger, #c47a7e) 22%,transparent)}.sib-status{font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--text)}.has-stock .sib-status{color:color-mix(in srgb,var(--accent) 28%,#ffffff)}.is-negative .sib-status{color:color-mix(in srgb,var(--danger, #c47a7e) 30%,#ffffff)}.sib-value{margin-left:auto;font-size:13px;font-weight:700;color:color-mix(in srgb,var(--accent) 30%,#ffffff);font-variant-numeric:tabular-nums;padding:3px 10px;background:color-mix(in srgb,var(--accent) 16%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:999px}.sib-label{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.sib-locations-list{display:flex;gap:6px;flex-wrap:wrap}.sib-loc-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;background:color-mix(in srgb,var(--bg-input) 70%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);font-size:12px;color:var(--text)}.sib-loc-chip strong{font-weight:700;color:color-mix(in srgb,var(--accent) 35%,#ffffff);letter-spacing:.02em}.sib-loc-qty{font-variant-numeric:tabular-nums;color:var(--text-muted)}.sib-default-loc-chips{display:flex;gap:6px;flex-wrap:wrap}.sib-default-loc-chip{display:inline-flex;flex-direction:column;gap:1px;padding:5px 10px;border-radius:8px;background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);font-size:12px;color:var(--text)}.sib-default-loc-key{font-size:9.5px;font-weight:600;color:color-mix(in srgb,var(--accent) 40%,var(--text-muted));letter-spacing:.02em}.sib-default-loc-chip strong{font-weight:700;color:var(--text)}.sib-costs{gap:16px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--text-muted) 14%,transparent)}.sib-cost-block{display:flex;flex-direction:column;gap:2px;min-width:0}.sib-cost-value{font-size:14px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.sib-cost-sub{font-size:10.5px;color:var(--text-dim, var(--text-muted));letter-spacing:.02em}.sib-cost-block.sib-cost-calc{padding:6px 12px;border-radius:8px;background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}.sib-cost-calc .sib-label{color:color-mix(in srgb,var(--accent) 40%,var(--text))}.sib-cost-calc .sib-cost-value{color:color-mix(in srgb,var(--accent) 28%,#ffffff);font-size:15px}.sib-batches-row{flex-direction:column;align-items:flex-start;gap:6px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--text-muted) 14%,transparent)}.sib-batches{display:flex;flex-wrap:wrap;gap:8px;width:100%}.sib-batch{display:inline-grid;grid-template-columns:auto auto 1fr;align-items:baseline;gap:10px;padding:6px 12px;border-radius:8px;background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);font-size:12px}.sib-batch-qty{font-weight:800;color:color-mix(in srgb,var(--accent) 28%,#ffffff);font-variant-numeric:tabular-nums}.sib-batch-days{font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums}.sib-batch-cost{display:inline-flex;align-items:baseline;gap:6px;font-variant-numeric:tabular-nums}.sib-batch-cost-purchase{color:var(--text-muted);font-size:11px}.sib-batch-cost-final{color:color-mix(in srgb,var(--accent) 25%,#ffffff);font-weight:700;font-size:12.5px}.prs-section{margin-bottom:24px;background:color-mix(in srgb,var(--accent) 5%,transparent);border:1px solid color-mix(in srgb,var(--accent) 18%,transparent);border-radius:14px;overflow:hidden}.prs-section-header{display:flex;align-items:center;gap:14px;padding:14px 20px;cursor:pointer;-webkit-user-select:none;user-select:none;background:color-mix(in srgb,var(--accent) 8%,transparent)}.prs-section-header h2{margin:0;font-size:1rem;font-weight:700}.prs-count{display:inline-block;padding:2px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 20%,transparent);color:var(--text);font-size:12px;font-weight:700}.prs-chevron{margin-left:auto;font-size:12px;color:var(--text-muted)}.prs-section-header .prs-header-actions{margin-left:auto;display:inline-flex;gap:8px}.prs-section-header .btn-primary.btn-sm{margin-left:auto}.prs-section-header .btn-primary.btn-sm+.prs-chevron{margin-left:8px}.prs-type-filters{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px;background:color-mix(in srgb,var(--accent) 4%,transparent);border-bottom:1px solid color-mix(in srgb,var(--text) 8%,transparent)}.prs-type-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:color-mix(in srgb,var(--text) 5%,transparent);border:1px solid color-mix(in srgb,var(--text) 14%,transparent);color:var(--text-muted);font-size:13px;font-weight:600;cursor:pointer;transition:all .18s ease}.prs-type-chip:hover{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--text)}.prs-type-chip.is-active{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:var(--text)}.prs-type-icon{font-size:14px}.prs-type-count{background:color-mix(in srgb,var(--text) 14%,transparent);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700}.prs-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;padding:16px 0}.prs-card{padding:18px;border-radius:14px;background:color-mix(in srgb,var(--accent) 6%,transparent);border:1px solid color-mix(in srgb,var(--accent) 18%,transparent);cursor:pointer;transition:all .2s ease}.prs-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 12%,transparent)}.prs-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11px}.prs-card-type{font-weight:700;color:color-mix(in srgb,var(--accent) 60%,var(--text));text-transform:uppercase;letter-spacing:.05em}.prs-card-supplier{margin:0 0 4px;font-size:1.05rem}.prs-card-label{margin:0 0 14px;font-size:13px;color:var(--text-muted)}.prs-card-footer{display:flex;justify-content:space-between;align-items:center;font-size:12px}.prs-list{display:flex;flex-direction:column;gap:6px;padding:12px 0}.prs-list-row{display:grid;grid-template-columns:30px 1fr 1.5fr 80px 80px 140px;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;cursor:pointer;background:color-mix(in srgb,var(--accent) 4%,transparent);border:1px solid color-mix(in srgb,var(--accent) 10%,transparent);transition:all .18s ease}.prs-list-row:hover{background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.prs-list-label{color:var(--text-muted);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prs-list-count{font-size:12px;color:var(--text-muted)}.prs-list-date{font-size:12px}.prs-type-icon-inline{font-size:16px;display:inline-block;width:24px;text-align:center}.prs-type-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.prs-type-dot-req{background:#3b82f6;box-shadow:0 0 0 3px color-mix(in srgb,#3b82f6 20%,transparent)}.prs-type-dot-imp{background:#f59e0b;box-shadow:0 0 0 3px color-mix(in srgb,#f59e0b 20%,transparent)}.prs-card-type.prs-type-req{background:#3b82f62e;border:1px solid rgba(59,130,246,.4);color:#93c5fd;padding:3px 10px;border-radius:999px}.prs-card-type.prs-type-imp{background:#f59e0b2e;border:1px solid rgba(245,158,11,.4);color:#fcd34d;padding:3px 10px;border-radius:999px}.prs-table{width:100%;border-collapse:collapse;font-size:13px}.prs-table th{padding:8px 12px;text-align:left;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--text);font-weight:700;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.prs-table th.num,.prs-table td.num{text-align:right}.prs-table td{padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--text) 8%,transparent)}.prs-row{cursor:pointer}.prs-row:hover td{background:color-mix(in srgb,var(--accent) 6%,transparent)}.prs-badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700}.prs-badge.active{background:#22c55e40;color:var(--text);border:1px solid rgba(34,197,94,.5)}.prs-badge.inactive{background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text-muted)}.prs-badge.overdue{background:#f59e0b40;color:var(--text);border:1px solid rgba(245,158,11,.5)}.modal.prs-form-modal,.modal.prs-detail-modal,.modal.prs-sub-modal{max-width:1500px;width:96vw;height:94vh;max-height:94vh;display:flex;flex-direction:column}.prs-form-modal .modal-body,.prs-detail-modal .modal-body{overflow-y:auto;flex:1}.prs-floating-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:10px 24px;border-bottom:1px solid color-mix(in srgb,var(--text) 8%,transparent);background:color-mix(in srgb,var(--accent) 4%,transparent)}.prs-draft-tag{margin-right:auto;display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);color:color-mix(in srgb,var(--accent) 50%,var(--text))}.prs-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px}.prs-form-modal .modal-body{padding:24px 32px 28px}.prs-form-modal .form-group{margin-bottom:18px}.prs-form-modal .form-label{font-weight:600;margin-bottom:6px;display:block}.prs-articles-list{flex:1;min-height:300px;max-height:60vh;overflow-y:auto;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:10px;padding:8px}.prs-article-row{display:grid;grid-template-columns:24px 90px 1fr;align-items:center;gap:10px;padding:6px 10px;border-radius:6px;cursor:pointer}.prs-article-row:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.prs-article-row.is-selected{background:color-mix(in srgb,var(--accent) 18%,transparent)}.prs-article-code{font-family:var(--font-mono, monospace);font-size:11px;color:color-mix(in srgb,var(--accent) 60%,var(--text))}.prs-supplier-group{margin-bottom:10px}.prs-supplier-header{display:flex;align-items:center;gap:8px;padding:6px 10px;background:color-mix(in srgb,var(--accent) 10%,transparent);border-radius:6px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--text);margin-bottom:4px;position:sticky;top:0;z-index:1}.prs-supplier-group .prs-article-row{margin-left:18px}.prs-schedule-toggle{padding:10px 14px;border-radius:10px;background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);margin-bottom:14px}.prs-schedule-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px;padding:20px;border-radius:12px;background:color-mix(in srgb,var(--accent) 5%,transparent);border:1px dashed color-mix(in srgb,var(--accent) 22%,transparent)}.prs-interval-row{display:flex;gap:10px;align-items:stretch}.prs-interval-value{width:80px;text-align:center;font-weight:700;font-size:16px}.prs-interval-units{display:inline-flex;border-radius:10px;background:color-mix(in srgb,var(--text) 6%,transparent);border:1px solid color-mix(in srgb,var(--text) 14%,transparent);padding:3px;gap:2px}.prs-interval-unit{background:transparent;border:none;padding:6px 14px;border-radius:7px;font-size:13px;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .18s ease}.prs-interval-unit:hover{color:var(--text)}.prs-interval-unit.is-active{background:color-mix(in srgb,var(--accent) 30%,transparent);color:var(--text);box-shadow:0 1px 3px #0000001f}.prs-articles-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:8px}.prs-checkbox-inline{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text);cursor:pointer;padding:4px 10px;border-radius:6px;background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 18%,transparent)}.prs-active-toggle{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);margin-bottom:14px;cursor:pointer;font-size:13px;font-weight:600}.prs-detail-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:14px;border-radius:10px;background:color-mix(in srgb,var(--accent) 6%,transparent);border:1px solid color-mix(in srgb,var(--accent) 18%,transparent);margin-bottom:14px}.prs-detail-actions{display:flex;gap:8px;margin-bottom:18px}.prs-log-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:18px}.prs-log-table th{padding:8px 10px;text-align:left;background:color-mix(in srgb,var(--text) 6%,transparent);font-weight:700;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.prs-log-table th.num,.prs-log-table td.num{text-align:right}.prs-latest-sub{margin:8px 0 14px;padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent)}.prs-latest-sub-head{display:flex;align-items:baseline;gap:12px;margin-bottom:10px}.prs-history{margin-top:12px}.prs-history summary{cursor:pointer;padding:6px 0;color:var(--text-muted);font-size:13px}.prs-log-table td{padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.modal.mpi-modal{max-width:1500px;width:96vw;height:94vh;max-height:94vh;display:flex;flex-direction:column}.mpi-modal .modal-body{flex:1;overflow-y:auto;padding:22px 28px}.mpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px}.mpi-section{margin-bottom:22px}.mpi-table-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.mpi-table-head h3{margin:0;font-size:1.05rem}.mpi-table-wrap{overflow-x:auto;border-radius:12px;border:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.mpi-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}.mpi-table th{background:color-mix(in srgb,var(--accent) 14%,transparent);padding:12px 14px;text-align:left;font-weight:700;font-size:11px;letter-spacing:.06em;text-transform:uppercase;border-bottom:2px solid color-mix(in srgb,var(--text) 18%,transparent)}.mpi-table th.num,.mpi-table td.num{text-align:right}.mpi-table td{padding:0;border-bottom:1px solid color-mix(in srgb,var(--text) 8%,transparent);vertical-align:middle}.mpi-table td:not(.mpi-xcell){padding:8px 12px}.mpi-rownum{text-align:center;color:var(--text-muted);font-size:11px;background:color-mix(in srgb,var(--text) 5%,transparent);font-weight:600}.mpi-xcell{position:relative;cursor:cell;-webkit-user-select:none;user-select:none}.mpi-xcell .mpi-xvalue{display:block;padding:10px 12px;min-height:38px;color:var(--text)}.mpi-xcell.num .mpi-xvalue{text-align:right;font-variant-numeric:tabular-nums}.mpi-xcell.is-selected{outline:2px solid #3b82f6;outline-offset:-2px;background:#3b82f61a;z-index:1}.mpi-xcell.is-editing{outline:2px solid #22c55e;outline-offset:-2px}.mpi-xcell.is-fill-target{outline:1px dashed rgba(59,130,246,.7);outline-offset:-1px;background:#3b82f60f}.mpi-xinput{width:100%;height:100%;min-height:38px;background:transparent;border:none;color:var(--text);font-size:13px;padding:10px 12px;outline:none}.mpi-xcell.num .mpi-xinput{text-align:right;font-variant-numeric:tabular-nums}.mpi-fill-handle{position:absolute;bottom:-3px;right:-3px;width:8px;height:8px;background:#3b82f6;border:1px solid #ffffff;border-radius:1px;cursor:ns-resize;z-index:3;box-shadow:0 1px 3px #0006}.mpi-fill-handle:hover{transform:scale(1.5)}.stock-analysis-page{max-width:var(--page-content-max);margin:0 auto;padding:32px 24px}.sa-section{margin-bottom:28px}.sa-pros,.sa-cons,.sa-formula-box,.sa-result-card,.sa-policy{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;box-shadow:0 1px 3px #0000000a,0 1px 2px #0000000f}.storage-costs-header{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:0 0 20px}.storage-costs-header h2{font-size:1.25rem;font-weight:700;color:var(--text);margin:0}.storage-costs-lock{font-size:11px;font-weight:600;color:var(--text-dim);background:var(--bg-elevated);padding:2px 8px;border-radius:var(--radius-pill, 999px);border:1px solid var(--border)}.sa-section-title{font-size:1.15rem;font-weight:700;color:var(--text);margin:0 0 16px;padding-left:14px;border-left:4px solid var(--accent);line-height:1.2}.sa-savings-periods{display:flex;flex-direction:column;gap:22px;margin-top:16px}.sa-savings-period-title{font-size:.9rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px;padding-bottom:8px;border-bottom:1px dashed var(--border)}.sa-pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:18px}.sa-pros,.sa-cons{padding:18px 20px;position:relative;overflow:hidden}.sa-pros:before,.sa-cons:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%}.sa-pros:before{background:var(--success, #4ade80)}.sa-cons:before{background:var(--danger, #c47a7e)}.sa-pros h3{color:var(--success, #4ade80);font-size:14px;font-weight:700;margin:0 0 10px;display:flex;align-items:center;gap:6px}.sa-cons h3{color:var(--danger, #c47a7e);font-size:14px;font-weight:700;margin:0 0 10px;display:flex;align-items:center;gap:6px}.sa-pros ul,.sa-cons ul{margin:0;padding-left:18px;font-size:13px;line-height:1.65;color:var(--text-muted)}.sa-pros li,.sa-cons li{margin-bottom:4px}.sa-formula-box{padding:20px 22px}.sa-formula{font-family:JetBrains Mono,Courier New,monospace;font-size:14px;font-weight:700;color:var(--accent);margin:0 0 10px;padding:12px 16px;background:var(--bg-input);border-radius:8px;border-left:3px solid var(--accent);overflow-x:auto}.sa-formula-sub{font-family:JetBrains Mono,Courier New,monospace;font-size:12px;color:var(--text-dim);margin:8px 0 0;padding:8px 16px;background:var(--bg-input);border-radius:8px}.sa-formula-detail{font-size:13px;color:var(--text-muted);margin:10px 0 0;line-height:1.6}.sa-formula-explain{margin:14px 0;padding:14px 16px;background:var(--bg-input);border-radius:8px;border:1px dashed var(--border)}.sa-formula-explain p{margin:0 0 6px;font-size:13px;color:var(--text)}.sa-formula-explain ul{margin:0;padding-left:18px;font-size:13px;color:var(--text-muted);line-height:1.75}.sa-formula-breakdown{margin-top:16px}.sa-formula-breakdown h4{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px}.sa-breakdown-table{width:100%;font-size:13px;border-collapse:collapse}.sa-breakdown-table td{padding:7px 0;color:var(--text-muted);font-variant-numeric:tabular-nums}.sa-bd-val{text-align:right;color:var(--text);font-weight:500}.sa-bd-subtotal td{border-top:1px solid var(--border);padding-top:10px}.sa-bd-total td{font-weight:600;color:var(--text);border-top:1px solid var(--border);padding-top:8px}.sa-bd-result td{border-top:2px solid var(--accent);padding-top:10px;font-size:14px;font-weight:700;color:var(--accent)}.sa-costs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.sa-cost-field{display:flex;flex-direction:column;gap:6px;padding:12px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;transition:border-color .15s}.sa-cost-field:focus-within{border-color:var(--accent)}.sa-cost-field>label,.sa-cost-field>.form-label{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.sa-input-wrap{display:flex;align-items:center;gap:6px}.sa-input-wrap .form-input{flex:1;font-weight:600;font-variant-numeric:tabular-nums}.sa-unit{font-size:12px;color:var(--text-dim);white-space:nowrap;font-weight:500}.sa-verdict{display:flex;align-items:center;gap:14px;padding:18px 24px;border-radius:10px;margin-bottom:22px;font-size:1rem;font-weight:700;box-shadow:0 2px 6px #0000000d}.sa-verdict-yes{background:linear-gradient(135deg,#4ade802e,#4ade8014);color:var(--success, #2e7d32);border:1px solid rgba(74,222,128,.35)}.sa-verdict-no{background:linear-gradient(135deg,#c47a7e2e,#c47a7e14);color:var(--danger, #c47a7e);border:1px solid rgba(196,122,126,.35)}.sa-verdict-icon{font-size:28px;line-height:1}.sa-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.sa-result-card{padding:16px 18px;display:flex;flex-direction:column;gap:6px;transition:transform .15s,box-shadow .15s,border-color .15s}.sa-result-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014;border-color:#32947c4d}.sa-result-label{font-size:10.5px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.sa-result-value{font-size:1.4rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;line-height:1.1}.sa-result-sub{font-size:11.5px;color:var(--text-dim);font-weight:500}.sa-policy{padding:18px 22px;font-size:13.5px;color:var(--text-muted);line-height:1.75}.sa-policy p{margin:0 0 10px}.sa-policy p:last-child{margin:0}.sa-policy strong{color:var(--text)}.sa-log-scroll{overflow-x:auto;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);box-shadow:0 1px 3px #0000000a,0 1px 2px #0000000f}.sa-log-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;background:transparent}.sa-log-table thead th{background:linear-gradient(180deg,var(--bg-elevated) 0%,var(--bg-input) 100%);color:var(--text-muted);font-weight:700;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;padding:12px 14px;border-bottom:2px solid var(--border);white-space:nowrap;text-align:left;vertical-align:bottom}.sa-log-table tbody td{padding:10px 14px;border-bottom:1px solid var(--border);color:var(--text);text-align:left;font-variant-numeric:tabular-nums}.sa-log-table tbody tr:nth-child(2n) td{background:#00000004}[data-theme=dark] .sa-log-table tbody tr:nth-child(2n) td{background:#ffffff05}.sa-log-table tbody tr:last-child td{border-bottom:none}.sa-log-table tbody tr:hover td{background:#32947c0f;transition:background .12s}@media(max-width:768px){.stock-analysis-page{padding:16px}.sa-pros-cons{grid-template-columns:1fr}.sa-costs-grid{grid-template-columns:1fr 1fr}}.pricing-page{max-width:var(--page-max-width);margin:0 auto;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom)}.pricing-calculator{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:28px}.pricing-calculator h2{font-size:1rem;font-weight:700;color:var(--text);margin:0 0 16px}[data-theme=light] .pricing-calculator,[data-theme=light] .pricing-calculator h2,[data-theme=light] .pricing-calculator .form-label,[data-theme=light] .pricing-calculator .pricing-result-value,[data-theme=light] .pricing-calculator .pricing-result-label{color:#0f172a}[data-theme=light] .pricing-calculator .pricing-result-label{color:#475569}[data-theme=light] .pricing-calculator .pricing-result-dim{color:#64748b}[data-theme=light] .pricing-calculator .pricing-result-highlight{color:var(--accent)}[data-theme=light] .pricing-calculator input.form-input{color:#0f172a;background:#fff}.pricing-calc-row{display:flex;align-items:flex-start;gap:24px;flex-wrap:wrap}.pricing-calc-field{display:flex;flex-direction:column;gap:6px}.pricing-calc-input{width:140px!important;font-size:1.1rem!important;font-weight:600!important}.pricing-calc-result{display:flex;gap:20px;flex-wrap:wrap}.pricing-result-item{display:flex;flex-direction:column;gap:4px}.pricing-result-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.pricing-result-value{font-size:1.3rem;font-weight:700;color:var(--text)}.pricing-result-highlight{color:var(--accent)}.pricing-result-dim{color:var(--text-dim);font-size:1rem}.pricing-discount-badge{font-size:11px;font-weight:700;color:var(--success);background:#22c55e1a;padding:2px 6px;border-radius:var(--radius-pill);margin-left:6px;vertical-align:middle}.pricing-saving{font-weight:400;color:var(--text-dim);font-size:10px}.pricing-saved-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--success);margin-left:4px;vertical-align:middle}.pricing-table-discount{font-weight:500;color:var(--success);font-size:.85rem}.pricing-table-section h2{font-size:1rem;font-weight:700;color:var(--text);margin:0 0 12px}.pricing-table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.pricing-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}.pricing-table th{background:var(--bg-input);color:var(--text-muted);font-weight:600;padding:10px 16px;text-align:right;border-bottom:1px solid var(--border)}.pricing-table th:first-child{text-align:left;width:14%}.pricing-table th:nth-child(2),.pricing-table th:nth-child(3),.pricing-table th:nth-child(4),.pricing-table th:nth-child(5){width:21.5%}.pricing-table td{padding:8px 16px;border-bottom:1px solid var(--border);color:var(--text);text-align:right}.pricing-table td:first-child{text-align:left}.pricing-table tr:last-child td{border-bottom:none}.pricing-table tr:hover td{background:var(--bg-elevated)}.pricing-row-active td{background:#32947c14!important;font-weight:600}.pricing-channels{font-weight:700;color:var(--accent)}.pricing-total{font-weight:600}.pricing-note{font-size:12px;margin-top:8px;color:var(--text);opacity:.85}.pricing-embedded .pricing-table-section h2,.pricing-embedded .pricing-chart-section h2,.pricing-embedded .pricing-note,.pricing-embedded .pricing-table-discount{color:var(--text)!important;opacity:1}[data-theme=light] .pricing-embedded .pricing-table-section h2,[data-theme=light] .pricing-embedded .pricing-chart-section h2,[data-theme=light] .pricing-embedded .pricing-note{color:#0f172a!important}.pricing-chart-section{margin-top:28px}.pricing-chart-section h2{font-size:1rem;font-weight:700;color:var(--text);margin:0 0 12px}.pricing-chart-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;overflow:hidden}.pricing-chart-svg{width:100%;height:auto;display:block}[data-theme=light] .pricing-table-section,[data-theme=light] .pricing-chart-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px;box-shadow:var(--shadow);margin-bottom:16px}[data-theme=light] .pricing-table-section h2,[data-theme=light] .pricing-chart-section h2,[data-theme=light] .pricing-page>.pricing-table-section>h2,[data-theme=light] .pricing-page>.pricing-chart-section>h2,[data-theme=light] .pricing-embedded .pricing-table-section h2,[data-theme=light] .pricing-embedded .pricing-chart-section h2{color:var(--text)!important}[data-theme=light] .pricing-table-section .pricing-note,[data-theme=light] .pricing-chart-section .pricing-note,[data-theme=light] .pricing-page>.pricing-table-section>p.text-muted,[data-theme=light] .pricing-page>.pricing-table-section>p.text-dim,[data-theme=light] .pricing-page>.pricing-chart-section>p.text-muted,[data-theme=light] .pricing-page>.pricing-chart-section>p.text-dim{color:var(--text-muted)!important;opacity:1}[data-theme=light] .pricing-table-section .pricing-table-discount,[data-theme=light] .pricing-chart-section .pricing-table-discount{color:var(--success)}[data-theme=light] .pricing-table-section .pricing-table-wrap,[data-theme=light] .pricing-chart-section .pricing-chart-wrap{background:transparent;border:none;padding:0}@media(max-width:768px){.pricing-page{padding:16px}.pricing-calc-row{flex-direction:column}.pricing-calc-result{flex-direction:column;gap:12px}}.sub-page.quotation-page{max-width:1200px}.quotation-page-header{align-items:flex-start;margin-bottom:20px}.edit-scope-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 12px 6px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--text-muted) 30%,transparent);background:color-mix(in srgb,var(--bg-card) 70%,transparent);color:var(--text-muted);font:inherit;font-size:12px;font-weight:700;letter-spacing:.02em;cursor:pointer;white-space:nowrap;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.edit-scope-toggle:hover{border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:var(--text);transform:translateY(-1px)}.edit-scope-toggle.is-local{background:color-mix(in srgb,var(--accent) 16%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:color-mix(in srgb,var(--accent) 35%,#ffffff)}.edit-scope-toggle.is-local:hover{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:var(--accent)}.edit-scope-toggle svg{flex-shrink:0}.edit-scope-label{font-size:11px;letter-spacing:.04em;text-transform:uppercase}.quotation-heading{flex:1;min-width:0}.quotation-heading h1{margin:0;font-size:1.5rem;font-weight:700;color:var(--text);line-height:1.25}[data-theme=light] .quotation-heading h1{color:#fff}[data-theme=light] .quotation-rms-subtitle{color:#ffffffc7}.quotation-rms-subtitle{margin:6px 0 0;font-size:.75rem;font-weight:500;color:var(--text-dim);letter-spacing:.03em}.quotation-controls-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin-bottom:24px}.quotation-collapse-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.quotation-import-flash{margin:-8px 0 20px;padding:10px 14px;border-radius:8px;background:var(--bg-card);border:1px solid var(--border);font-size:.9rem}.quotation-import-modal .quotation-import-hint{margin-bottom:16px;line-height:1.45}.quotation-import-modal select.form-input{width:100%;max-width:100%}.quotation-import-modal .modal-body{padding-bottom:16px}.quotation-import-modal .modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:14px 24px 20px;border-top:1px solid var(--border)}.quotation-search-wrap{display:flex;align-items:center;gap:10px;flex:1;min-width:min(100%,280px);max-width:560px;padding:6px 8px 6px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:999px;box-shadow:0 1px 2px #0000000a;transition:border-color .15s ease,box-shadow .15s ease}.quotation-search-wrap:focus-within{border-color:var(--accent-teal);box-shadow:0 0 0 3px #32947c1f}.quotation-search-icon{display:flex;color:var(--text-dim);flex-shrink:0}.quotation-search-filter{border:none;background:transparent;font-size:13px;font-weight:500;color:var(--text-muted);cursor:pointer;min-width:108px;max-width:42%;padding:4px 4px 4px 0;outline:none}.quotation-search-sep{width:1px;height:20px;background:var(--border);flex-shrink:0}.quotation-search-wrap .quotation-search-input{flex:1;min-width:0;border:none!important;background:transparent!important;font-size:14px;padding:8px 12px 8px 4px!important;border-radius:0!important;box-shadow:none!important}.quotation-search-wrap .quotation-search-input::placeholder{color:var(--text-dim)}.quotation-search-wrap .csl-wrap.csl-icon{flex-shrink:0}.quotation-search-wrap .csl-wrap.csl-icon .csl-trigger{width:30px;height:30px;background:transparent;border:1px solid transparent;color:var(--text-muted)}.quotation-search-wrap .csl-wrap.csl-icon .csl-trigger:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 10%,transparent);border-color:color-mix(in srgb,var(--accent) 35%,transparent);color:var(--accent-teal)}.quotation-search-wrap .csl-wrap.is-open .csl-trigger,.quotation-search-wrap .csl-wrap.is-active .csl-trigger{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:var(--accent);color:var(--accent-teal)}.quotation-info{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:20px;display:flex;flex-direction:column;gap:14px}.quotation-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.quotation-info-params{padding-top:12px;border-top:1px solid var(--border)}.quotation-info-field{display:flex;flex-direction:column;gap:4px}.quotation-info-field .form-input{font-size:13px}.btn-link-reset{background:none;border:none;color:var(--accent);cursor:pointer;font-size:11px;font-weight:600;margin-left:8px;padding:0}.btn-link-reset:disabled{opacity:.4;cursor:default}.btn-link-reset:hover:not(:disabled){text-decoration:underline}.quotation-locked-banner{background:#c47a7e1f;color:var(--danger);border:1px solid rgba(196,122,126,.3);border-radius:var(--radius-sm);padding:10px 16px;font-size:13px;font-weight:600;margin-bottom:16px}.quotation-ref-box{display:flex;flex-direction:column;gap:4px}.quotation-ref-readonly{display:block;cursor:default;background:var(--bg-elevated);color:var(--text);font-weight:600;letter-spacing:.02em}.quotation-ref-hint{font-size:11px;line-height:1.3}.quotation-client-input-row{display:flex;align-items:flex-start;gap:8px}.quotation-client-row{display:flex;align-items:stretch;gap:8px}.quotation-client-input-row .catalog-suggest{flex:1;min-width:0}.quotation-client-edit-btn{flex-shrink:0;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-muted);cursor:pointer;transition:color .15s ease,border-color .15s ease}.quotation-client-edit-btn:hover{color:var(--accent);border-color:var(--accent)}.quotation-client-modal{max-width:560px;width:100%}.quotation-client-modal .modal-body{display:flex;flex-direction:column;gap:14px}.quotation-client-modal .articles-modal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.quotation-client-modal .modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.quotation-discounts{display:flex;flex-direction:column;gap:16px;max-width:920px;margin:0 auto}.quotation-discounts-intro{padding:12px 16px;border-radius:10px;background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);font-size:13.5px;line-height:1.5}.quotation-discounts-intro p{margin:0}.quotation-discounts-intro em{font-style:normal;font-weight:600;color:var(--accent-teal)}.quotation-discount-global,.quotation-discount-section{padding:0;border-radius:14px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);border:1px solid color-mix(in srgb,var(--text) 12%,transparent);overflow:hidden;box-shadow:0 1px color-mix(in srgb,var(--text) 6%,transparent)}.quotation-discount-global{border-color:color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 6%,var(--bg-card))}.quotation-discount-card-head{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent);background:color-mix(in srgb,var(--text) 3%,transparent)}.quotation-discount-card-tag{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent-teal);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}.quotation-discount-card-tag.is-section{background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--text);border-color:color-mix(in srgb,var(--text) 18%,transparent)}.quotation-discount-card-title{margin:0;font-size:15px;font-weight:600;color:var(--text);flex:1}.quotation-discount-card-base{font-size:13px;font-variant-numeric:tabular-nums;color:var(--text-muted)}.quotation-discount-card-disc{font-size:13px;font-variant-numeric:tabular-nums;font-weight:600;padding:3px 10px;border-radius:999px;background:color-mix(in srgb,#ef4444 14%,transparent);color:#ef4444}.quotation-discount-section-input{padding:12px 16px;background:color-mix(in srgb,var(--accent) 8%,transparent);border-bottom:1px dashed color-mix(in srgb,var(--text) 14%,transparent)}.quotation-discount-scope{display:flex;align-items:center;gap:10px;margin-top:8px}.quotation-discount-scope-label{font-size:12.5px;font-weight:600;color:var(--text-muted)}.quotation-discount-global>.quotation-discount-input-row{padding:14px 16px}.quotation-discount-list{display:flex;flex-direction:column}.quotation-discount-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px 14px;padding:10px 16px;border-top:1px solid color-mix(in srgb,var(--text) 8%,transparent)}.quotation-discount-row:first-child{border-top:none}.quotation-discount-row.is-own{background:color-mix(in srgb,var(--accent) 5%,transparent)}.quotation-discount-row-head{display:contents}.quotation-discount-row-name{display:flex;flex-direction:column;gap:2px;min-width:0}.quotation-discount-row-name strong{font-size:14px;color:var(--text)}.quotation-discount-row-meta{font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}.quotation-discount-chip{justify-self:end;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums;background:color-mix(in srgb,#ef4444 12%,transparent);color:#ef4444;border:1px solid color-mix(in srgb,#ef4444 22%,transparent)}.quotation-discount-chip.is-own{background:color-mix(in srgb,var(--accent-teal) 16%,transparent);color:var(--accent-teal);border-color:color-mix(in srgb,var(--accent-teal) 32%,transparent)}.quotation-discount-chip-source{font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.85;padding-right:6px;border-right:1px solid currentColor}.quotation-discount-row .quotation-discount-input-row{grid-column:1 / -1}.quotation-discount-input-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.quotation-discount-label{min-width:140px;font-weight:600;color:var(--text);font-size:13px}.quotation-discount-toggle{display:inline-flex;border-radius:8px;background:color-mix(in srgb,var(--text) 8%,transparent);border:1px solid color-mix(in srgb,var(--text) 16%,transparent);padding:2px;gap:2px}.quotation-discount-toggle-btn{background:transparent;border:none;padding:5px 12px;border-radius:6px;font-weight:700;cursor:pointer;color:var(--text-muted);font-size:13px;min-width:36px}.quotation-discount-toggle-btn:hover{color:var(--text)}.quotation-discount-toggle-btn.is-active{background:var(--accent);color:#fff;box-shadow:0 1px color-mix(in srgb,var(--accent) 30%,transparent)}.quotation-discount-value{width:120px!important;text-align:right;font-variant-numeric:tabular-nums}.quotation-discount-preview{font-size:13px;color:var(--text-muted);margin-left:auto;font-variant-numeric:tabular-nums}.quotation-discount-preview strong{color:var(--accent-teal)}.quotation-discount-summary{margin-top:8px;padding:14px 20px;border-radius:14px;background:color-mix(in srgb,var(--accent) 10%,var(--bg-card));border:1px solid color-mix(in srgb,var(--accent) 32%,transparent);display:flex;flex-direction:column;gap:6px;box-shadow:0 1px color-mix(in srgb,var(--text) 6%,transparent)}.quotation-discount-summary-row{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;color:var(--text);padding:4px 0}.quotation-discount-summary-row .num{font-variant-numeric:tabular-nums;font-weight:600}.quotation-discount-summary-row.is-discount{color:#ef4444}.quotation-discount-summary-row.is-discount em{font-style:normal;font-size:12px;opacity:.85;margin-left:4px}.quotation-discount-summary-row.is-final{margin-top:4px;padding-top:10px;border-top:2px solid color-mix(in srgb,var(--accent) 40%,transparent);font-size:17px;font-weight:700}.quotation-discount-summary-row.is-final .num{font-weight:800}[data-theme=light] .quotation-discounts-intro{background:var(--bg-card);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:var(--shadow)}[data-theme=light] .quotation-discount-global,[data-theme=light] .quotation-discount-section,[data-theme=light] .quotation-discount-summary{background:var(--bg-card);border-color:var(--border);box-shadow:var(--shadow)}[data-theme=light] .quotation-discount-global{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}[data-theme=light] .quotation-discount-card-head{background:color-mix(in srgb,var(--accent) 4%,var(--bg-card));border-bottom-color:var(--border)}[data-theme=light] .quotation-discount-section-input{background:color-mix(in srgb,var(--accent) 6%,var(--bg-card));border-bottom-color:var(--border)}[data-theme=light] .quotation-discount-row{border-top-color:var(--border)}[data-theme=light] .quotation-discount-row.is-own{background:color-mix(in srgb,var(--accent) 6%,var(--bg-card))}[data-theme=light] .quotation-discount-toggle{background:var(--bg-input);border-color:var(--border)}[data-theme=light] .quotation-discount-preview strong{color:var(--accent-teal)}[data-theme=light] .quotation-discount-summary-row.is-final{border-top-color:var(--accent)}[data-theme=light] .quotation-discounts>p.text-dim{color:#ffffffe6}@media(max-width:640px){.quotation-discount-card-head{flex-wrap:wrap}.quotation-discount-card-base,.quotation-discount-card-disc{margin-left:auto}.quotation-discount-row{grid-template-columns:1fr}.quotation-discount-chip{justify-self:start}.quotation-discount-label{min-width:0;flex:1 1 100%}.quotation-discount-preview{margin-left:0}}.quotation-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px}.quotation-summary-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px;display:flex;flex-direction:column;gap:4px}.quotation-summary-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.quotation-summary-value{font-size:1.3rem;font-weight:700;color:var(--text)}.quotation-highlight{color:var(--accent)}.quotation-category{margin-bottom:12px}.quotation-category-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;gap:12px;flex-wrap:wrap;transition:border-radius .15s ease}.quotation-category-header.expanded{border-radius:var(--radius) var(--radius) 0 0;border-bottom-color:transparent}.quotation-sale-bar-wrap{width:100%;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.quotation-sale-bar{height:100%;background:var(--accent);border-radius:2px;min-width:2px;transition:width .3s ease}.quotation-category-title{display:flex;align-items:center;gap:8px}.quotation-category-title h2{font-size:14px;font-weight:700;color:var(--text);margin:0}.quotation-subcategory-wrap{margin:0;padding:14px 12px 12px;background:#ffffff2e;border:1px solid rgba(255,255,255,.25);border-top:none;border-radius:0 0 var(--radius) var(--radius);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;flex-direction:column;gap:10px}.quotation-subcategory-wrap .quotation-category{margin-bottom:0}.quotation-subcategory .quotation-subcategory-header{padding:10px 14px;background:var(--bg-card)}.quotation-category-title h3{font-size:13px;font-weight:700;color:var(--text);margin:0}.quotation-parent-group{margin-bottom:12px}.quotation-parent-category{margin-bottom:0}.quotation-collapse-arrow{font-size:10px;color:var(--text-dim);transition:transform .2s ease}.quotation-collapse-arrow.collapsed{transform:rotate(-90deg)}.quotation-active-badge{font-size:11px;font-weight:700;color:var(--accent);background:#32947c1f;padding:2px 7px;border-radius:var(--radius-pill)}.quotation-category-totals{display:flex;gap:12px;font-size:11px;font-weight:600;white-space:nowrap}.quotation-table-scroll{border:1px solid var(--border);border-top:none;border-radius:0 0 var(--radius) var(--radius);overflow-x:auto;background:var(--bg-card)}.quotation-table{width:100%;min-width:880px;table-layout:fixed;border-collapse:collapse;font-size:12px}@media(max-width:544px){.quotation-table{min-width:0}}.quotation-table th{background:var(--bg-input);color:var(--text-muted);font-weight:600;padding:7px 8px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;font-size:11px}.quotation-table td{padding:5px 8px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;white-space:nowrap}.quotation-table tr:last-child td{border-bottom:none}.quotation-table tr:hover td{background:var(--bg-elevated);cursor:pointer}.quotation-row-active td{background:#32947c0a}.qcol-desc{width:26%;min-width:0;max-width:26%;overflow:hidden;text-overflow:ellipsis}.qcol-type,.qcol-supplier{width:9%;min-width:0;max-width:9%;overflow:hidden;text-overflow:ellipsis;font-size:11px;color:var(--text-muted)}.qcol-num,.quotation-table th.qcol-num{text-align:right}.qcol-unit-cost{width:76px;min-width:76px;max-width:76px}.qcol-margin{width:66px;min-width:66px;max-width:66px}.qcol-sale{width:82px;min-width:82px;max-width:82px}.qcol-qty{width:68px;min-width:68px;max-width:68px;text-align:center}.qcol-total-cost,.qcol-total-sale,.qcol-line-profit{width:90px;min-width:90px;max-width:90px}.quotation-table th.qcol-qty{text-align:center}.quotation-qty-input{width:48px!important;padding:2px 4px!important;font-size:12px!important;text-align:center;border-radius:4px}.quotation-qty-toggle{width:16px;height:16px;cursor:pointer;accent-color:var(--accent)}.quotation-pair-select{font-size:11px!important;padding:2px 4px!important;width:auto!important;max-width:100%}.qlm-scope-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;margin-bottom:14px;background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:10px;color:color-mix(in srgb,var(--accent) 25%,var(--text));font-size:13px;font-weight:600}.qlm-scope-banner svg{flex-shrink:0;color:var(--accent)}.qlm-scope-banner strong{color:var(--accent)}.quotation-line-modal{max-width:1100px;width:100%;background:var(--bg-elevated);color:var(--text);border-radius:16px;overflow:hidden}.quotation-line-modal .modal-header{padding:22px 32px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 14%,transparent) 0%,transparent 100%);border-bottom:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent)}.quotation-line-modal .modal-header h2{font-size:1.4rem;font-weight:800;letter-spacing:-.01em;margin:0}.quotation-line-modal.qlm-fullscreen{max-width:1500px;width:96vw;height:94vh;display:flex;flex-direction:column}.quotation-line-modal.qlm-fullscreen .modal-body{flex:1;max-height:none;overflow-y:auto}.qlm-tabs{display:flex;gap:0;padding:0 32px;background:color-mix(in srgb,var(--accent) 4%,transparent);border-bottom:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent)}.qlm-tab{background:transparent;border:none;padding:14px 22px;font-size:14px;font-weight:600;color:color-mix(in srgb,var(--text-muted) 70%,var(--text));cursor:pointer;border-bottom:3px solid transparent;transition:all .18s ease;position:relative;top:1px}.qlm-tab:hover{color:var(--text);background:color-mix(in srgb,var(--accent) 8%,transparent)}.qlm-tab.is-active{color:color-mix(in srgb,var(--accent) 60%,var(--text));border-bottom-color:color-mix(in srgb,var(--accent) 70%,transparent)}.qlm-share-btn{margin-left:auto;margin-right:8px;background:#ffffff1a;border:1px solid rgba(255,255,255,.22);color:var(--text);font-size:12px;font-weight:600;padding:7px 14px;border-radius:999px;cursor:pointer;transition:all .18s ease}.qlm-share-btn:hover{background:color-mix(in srgb,var(--accent) 25%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.qlm-mode-toggle{margin-right:12px;background:color-mix(in srgb,var(--accent) 30%,transparent);border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);color:#fff;font-size:13px;font-weight:700;padding:8px 18px;border-radius:999px;cursor:pointer;transition:all .18s ease;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.qlm-mode-toggle:hover{background:color-mix(in srgb,var(--accent) 50%,transparent);border-color:color-mix(in srgb,var(--accent) 80%,transparent);transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 25%,transparent)}.qlm-tab-banner{padding:16px 20px;border-radius:12px;background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 20%,transparent)}.qlm-tab-banner-tags{display:flex;flex-wrap:wrap;gap:8px}.item-attachments-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:14px}.item-attachments-photo-wrap{position:relative}.item-attachments-photo{width:100%;aspect-ratio:16 / 10;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease;display:flex;align-items:center;justify-content:center}.item-attachments-photo img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .4s ease}.item-attachments-photo:hover{box-shadow:0 12px 32px #00000040;transform:translateY(-2px)}.item-attachments-photo:hover img{transform:scale(1.03)}.item-attachments-files{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.item-attachments-file-chip{position:relative;display:inline-flex;align-items:center}.item-attachments-file-link{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:#ffffff14;border:1px solid rgba(255,255,255,.18);color:var(--text);text-decoration:none;font-size:13px;cursor:pointer;transition:all .18s ease}.item-attachments-file-link:hover{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.item-attachments-file-icon{font-size:18px;line-height:1}.item-attachments-file-meta{display:inline-flex;flex-direction:column;align-items:flex-start;line-height:1.2}.item-attachments-file-type{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb,var(--accent) 35%,#cbd5e1)}.item-attachments-file-name{font-weight:500;color:var(--text);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-attachments-file-delete{margin-left:4px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px 6px;border-radius:50%;transition:all .18s ease}.item-attachments-file-delete:hover{background:#ef444433;color:#fca5a5}.qlm-quotes-panel{margin-bottom:20px}.qlm-quotes-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:10px}.qlm-quote-card{padding:16px 18px;border-radius:12px;background:color-mix(in srgb,var(--text) 5%,transparent);border:1px solid color-mix(in srgb,var(--text) 14%,transparent);display:flex;flex-direction:column;gap:6px;position:relative}.qlm-quote-card.is-current{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.qlm-quote-card.is-current:after{content:"✓ Em uso";position:absolute;top:8px;right:8px;background:color-mix(in srgb,var(--accent) 30%,transparent);color:var(--text);font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 50%,transparent)}.qlm-quote-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,var(--accent) 55%,var(--text))}.qlm-quote-price{font-size:1.6rem;font-weight:800;color:var(--text);letter-spacing:-.02em}.qlm-quote-meta{font-size:12px;color:var(--text)}.qlm-quote-meta strong{color:var(--text);font-weight:600}.qlm-quote-use{margin-top:6px;background:color-mix(in srgb,var(--accent) 25%,transparent);border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);color:var(--text);font-size:12px;font-weight:600;padding:7px 12px;border-radius:8px;cursor:pointer}.qlm-quote-use:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 40%,transparent)}.qlm-quote-use:disabled{opacity:.5;cursor:default}.qlm-quote-hint{font-size:11px;margin-top:6px}.qlm-quotes-history{margin-top:14px}.qlm-quotes-history summary{cursor:pointer;padding:6px 0;font-size:13px;color:var(--text-muted)}.qlm-quotes-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:8px}.qlm-quotes-table th{text-align:left;padding:8px 10px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--text);font-weight:700;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.qlm-quotes-table th.num,.qlm-quotes-table td.num{text-align:right}.qlm-quotes-table td{padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--text) 8%,transparent)}.qlm-movements{display:flex;flex-direction:column;gap:14px}.qlm-movements-summary{display:flex;gap:18px;font-size:13px;color:var(--text)}.qlm-movements-summary strong{color:color-mix(in srgb,var(--accent) 60%,var(--text));font-size:18px;margin-right:4px}.qlm-movements-table{width:100%;border-collapse:collapse;font-size:13px}.qlm-movements-table th{text-align:left;padding:10px 12px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--text);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid color-mix(in srgb,var(--text) 18%,transparent)}.qlm-movements-table th.num,.qlm-movements-table td.num{text-align:right}.qlm-movements-table td{padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent);color:var(--text)}.qlm-mov-row.qlm-mov-in td{background:color-mix(in srgb,#22c55e 6%,transparent)}.qlm-mov-row.qlm-mov-out td{background:color-mix(in srgb,#ef4444 6%,transparent)}.qlm-mov-badge{display:inline-block;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:700}.qlm-mov-badge-in{background:#22c55e40;color:var(--text);border:1px solid rgba(34,197,94,.5)}.qlm-mov-badge-out{background:#ef444440;color:var(--text);border:1px solid rgba(239,68,68,.5)}.qlm-mov-detail-sup{font-weight:600}.qlm-mov-detail-proj{font-weight:600;color:color-mix(in srgb,var(--accent) 60%,var(--text))}.qlm-mov-detail-code{background:color-mix(in srgb,var(--text) 12%,transparent);padding:2px 6px;border-radius:4px;font-family:var(--font-mono, monospace);font-size:11px;margin-left:6px}.item-attachments-empty{padding:14px 16px;border-radius:10px;background:#ffffff0a;border:1px dashed rgba(255,255,255,.14);color:var(--text-muted);font-size:13px;text-align:center}.qlm-view{display:flex;flex-direction:column;gap:22px}.qlm-view-hero{text-align:left}.qlm-view-title{font-size:1.6rem;font-weight:800;letter-spacing:-.02em;margin:0 0 12px;color:var(--text)}.qlm-view-tags{display:flex;flex-wrap:wrap;gap:8px}.qlm-view-tag{display:inline-flex;align-items:center;padding:5px 14px;border-radius:999px;font-size:12px;font-weight:600;background:color-mix(in srgb,var(--text) 14%,transparent);border:1px solid color-mix(in srgb,var(--text) 26%,transparent);color:var(--text)}.qlm-view-tag-cat{background:color-mix(in srgb,var(--accent) 32%,transparent);border-color:color-mix(in srgb,var(--accent) 55%,transparent);color:color-mix(in srgb,var(--accent) 70%,var(--text))}.qlm-view-tag-life-ewen{background:#6366f159;border-color:#6366f199;color:var(--text)}.qlm-view-tag-life-helexia{background:#22c55e59;border-color:#22c55e99;color:var(--text)}.qlm-view-tag-life-frota{background:#f59e0b59;border-color:#f59e0b99;color:var(--text)}.qlm-view-tag-life-archived{background:#94a3b859;border-color:#94a3b899;color:var(--text)}.qlm-view-price-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 18%,transparent),color-mix(in srgb,var(--accent) 6%,transparent));border:1px solid color-mix(in srgb,var(--accent) 24%,transparent)}.qlm-view-price-block{display:flex;flex-direction:column;gap:4px}.qlm-view-price-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--accent) 70%,var(--text));font-weight:700}.qlm-view-price-value{font-size:2.2rem;font-weight:800;color:var(--text);letter-spacing:-.02em}.qlm-view-price-meta{display:flex;flex-direction:column;gap:6px;font-size:14px;text-align:right;color:var(--text)}.qlm-view-price-meta .text-dim{color:color-mix(in srgb,var(--text) 60%,transparent)}.qlm-view-price-meta strong{color:var(--text);font-weight:700}.qlm-view-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.qlm-view-info{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--text) 8%,transparent);border:1px solid color-mix(in srgb,var(--text) 18%,transparent)}.qlm-view-info-wide{grid-column:1 / -1}.qlm-view-info-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb,var(--accent) 70%,var(--text));font-weight:700}.qlm-view-info-value{font-size:15px;font-weight:600;color:var(--text)}.qlm-view-info-value code{background:color-mix(in srgb,var(--text) 12%,transparent);padding:2px 8px;border-radius:4px;font-family:var(--font-mono, monospace);color:var(--text)}.qlm-view-channels{display:flex;flex-wrap:wrap;gap:8px}.qlm-view-channel{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;background:color-mix(in srgb,var(--text) 8%,transparent);border:1px solid color-mix(in srgb,var(--text) 18%,transparent);font-size:13px;color:var(--text)}.qlm-view-channel strong{color:color-mix(in srgb,var(--accent) 65%,var(--text));font-weight:800;font-size:14px}.qlm-view-section-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb,var(--accent) 70%,var(--text));font-weight:700;margin:0 0 10px}.qlm-view-text{margin:0;font-size:14px;line-height:1.55;color:var(--text);white-space:pre-wrap;padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--text) 6%,transparent);border:1px solid color-mix(in srgb,var(--text) 12%,transparent)}.qlm-view-codes{display:flex;flex-wrap:wrap;gap:8px}.qlm-view-code-chip{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:10px;background:color-mix(in srgb,var(--text) 8%,transparent);border:1px solid color-mix(in srgb,var(--text) 18%,transparent);font-size:13px;color:var(--text)}.qlm-view-code-chip strong{color:color-mix(in srgb,var(--accent) 70%,var(--text));font-weight:700}.qlm-view-code-chip code{background:color-mix(in srgb,var(--text) 18%,transparent);padding:3px 8px;border-radius:4px;font-family:var(--font-mono, monospace);color:var(--text);font-weight:600}.qlm-view-pairs{display:flex;flex-direction:column;gap:8px}.qlm-view-pair{display:flex;justify-content:space-between;padding:12px 16px;border-radius:10px;background:color-mix(in srgb,var(--text) 8%,transparent);border:1px solid color-mix(in srgb,var(--text) 18%,transparent);font-size:14px}.qlm-view-pair-source{color:var(--text);font-weight:700}.qlm-view-pair-values{color:color-mix(in srgb,var(--accent) 70%,var(--text));font-weight:700}.qlm-attachments-top{margin:0 -32px 8px;padding:16px 32px;background:color-mix(in srgb,var(--accent) 6%,transparent);border-bottom:1px solid color-mix(in srgb,var(--text-muted) 12%,transparent)}.qlm-attachments-top .form-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--accent) 40%,#cbd5e1);margin-bottom:10px}.quotation-line-modal .form-input,.quotation-line-modal input,.quotation-line-modal select,.quotation-line-modal textarea{background:var(--bg-input);color:var(--text);border-color:var(--border)}.quotation-line-modal .form-label{color:var(--text-muted)}.quotation-line-modal .modal-body{display:flex;flex-direction:column;gap:16px;padding:24px 32px 28px;max-height:80vh;overflow-y:auto}.qlm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.qlm-location-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}@media(max-width:720px){.qlm-location-grid{grid-template-columns:1fr 1fr}}.qlm-loc-field{display:flex;flex-direction:column;gap:4px;min-width:0}.qlm-loc-label{font-size:12px;font-weight:600;color:var(--text-muted)}.qlm-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.qlm-pairs{border-top:1px solid var(--border);padding-top:12px}.qlm-pairs-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.qlm-pair-item{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:var(--radius-sm);background:var(--bg-elevated);margin-bottom:4px}.qlm-pair-source{font-size:13px;font-weight:600;color:var(--accent);min-width:80px}.qlm-pair-values{font-size:12px;color:var(--text-muted);flex:1}.qlm-pair-add{background:var(--bg-elevated);border-radius:var(--radius-sm);padding:12px;display:flex;flex-direction:column;gap:8px}.qlm-pair-active{background:#32947c14;border:1px solid rgba(50,148,124,.2)}.qlm-obs-text{font-size:13px;line-height:1.5;color:var(--text);margin:0;white-space:pre-wrap}.form-value{font-size:14px;color:var(--text);font-weight:500}.quotation-subscription{margin-top:16px;padding:22px 24px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 2px 10px #0000000f}[data-theme=light] .quotation-subscription{background:#ffffffeb;border-color:#ffffffa6;box-shadow:0 4px 20px #0000002e;margin-bottom:20px}[data-theme=light] .quotation-subscription .subscription-section h3{color:var(--text-muted)}.subscription-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.subscription-title-row h2{font-size:1.1rem;font-weight:700;color:var(--text);margin:0}.subscription-section{margin-bottom:20px}.subscription-section h3{font-size:13px;font-weight:700;color:var(--text-muted);margin:0 0 8px;text-transform:uppercase;letter-spacing:.03em}.subscription-table{width:100%;border-collapse:collapse;font-size:12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;table-layout:fixed}.sub-col-desc{width:34%}.sub-col-qty,.sub-col-price{width:11%}.sub-col-monthly{width:12%}.sub-col-actions{width:10%}.sub-simple .sub-col-monthly{width:34%}.subscription-table th{background:var(--bg-input);color:var(--text-muted);font-weight:600;font-size:11px;padding:7px 8px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subscription-table td{padding:5px 8px;border-bottom:1px solid var(--border);color:var(--text);text-align:left;overflow:hidden}.subscription-table tr:last-child td{border-bottom:none}.subscription-col-group{text-align:center!important;border-bottom:1px solid var(--border);color:var(--accent)!important;font-size:11px;letter-spacing:.03em}.subscription-col-monthly-header{text-align:right!important}.subscription-monthly{font-weight:600;text-align:right!important}.subscription-input{width:100%!important;padding:4px 8px!important;font-size:13px!important;box-sizing:border-box}.subscription-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.subscription-section-header h3{margin:0}.subscription-add-row{display:flex;gap:6px;padding:8px 12px;border-top:1px dashed var(--border)}.subscription-add-input{flex:1;font-size:12px!important}.subscription-edit-desc{width:100%!important;font-size:12px!important}.subscription-auto-price{font-size:12px;color:var(--accent);font-weight:600;display:block;padding:4px 0}.subscription-monthly{font-weight:600}.subscription-totals{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px;max-width:400px;margin-left:auto;display:flex;flex-direction:column;gap:8px}.subscription-total-row{display:flex;justify-content:space-between;font-size:14px;font-weight:600;color:var(--text)}.subscription-total-row:first-child{font-size:16px}.subscription-storage-note{font-size:12px;margin:10px 0 0;padding:8px 12px;border-top:1px dashed var(--border);line-height:1.4}.subscription-total-year{font-size:13px!important;font-weight:600!important}.subscription-total-year-value{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.subscription-total-year-delta{font-size:11px;font-weight:400}.qlm-observations{resize:vertical;min-height:60px}.qlm-product-code{display:inline-flex;align-items:center;padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);font-family:var(--font-mono, monospace);font-size:12px;font-weight:700;letter-spacing:.02em;color:var(--accent);margin-left:12px}.qlm-supplier-codes{margin-top:12px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm)}.qlm-supplier-codes-list{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.qlm-supplier-code-row{display:flex;align-items:center;gap:10px;padding:4px 8px;background:var(--bg-input);border-radius:var(--radius-sm);font-size:13px}.qlm-supplier-code-supplier{flex:1;color:var(--text)}.qlm-supplier-code-code{font-family:var(--font-mono, monospace);font-weight:600;color:var(--accent)}.qlm-supplier-code-add{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:center}.qlm-pair-date{font-size:11px;margin-left:2px}.qlm-stock-cost{font-size:11px;margin-top:4px}@media(max-width:768px){.sub-page.quotation-page{padding:16px}.quotation-info-grid,.quotation-summary{grid-template-columns:1fr 1fr}.quotation-category-totals{flex-direction:column;gap:4px}.qlm-grid,.quotation-client-modal .articles-modal-grid{grid-template-columns:1fr}}.quotation-analise-table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px;margin-top:16px;box-shadow:0 2px 8px #0000000f}.quotation-analise-summary{margin-bottom:16px}.quotation-analise-h{margin:0 0 12px;font-size:14px;font-weight:700;color:var(--text);letter-spacing:.01em}.quotation-analise-table-wrap .prop-price-table{border-collapse:collapse;font-size:13px;font-family:inherit}.quotation-analise-table-wrap .prop-price-table th{background:transparent;border:none;border-bottom:1px solid var(--border);padding:8px 10px;text-align:left;font-weight:600;font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.quotation-analise-table-wrap .prop-price-table td{border:none;border-bottom:1px solid var(--border);padding:9px 10px;vertical-align:middle;color:var(--text)}.quotation-analise-table-wrap .prop-price-table tr:last-child td{border-bottom:none}.quotation-analise-table-wrap .prop-price-table .ptr-group td{font-weight:700;font-size:13px;color:var(--text);background:transparent;text-transform:none;letter-spacing:0}.quotation-analise-table-wrap .prop-price-table .ptr-subgroup td{font-weight:500;font-size:12.5px;color:var(--text-muted);background:transparent;font-style:normal}.quotation-analise-table-wrap .prop-price-table .ptr-subgroup td:first-child{padding-left:28px}.quotation-analise-table-wrap .prop-price-table .ptr-total td{font-weight:700;font-size:14px;color:var(--text);border-top:2px solid var(--accent);border-bottom:none;padding-top:12px}.prop-summary-table .ptcol-bar{width:220px}.prop-summary-table td.ptr-bar{padding:4px 8px}.qbar{position:relative;height:8px;background:#32947c1a;border-radius:999px;overflow:hidden;margin-right:42px}.qbar-fill{position:absolute;top:0;left:0;bottom:0;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-hover) 100%);border-radius:999px;min-width:2px;transition:width .35s ease}.qbar-fill.is-sub{background:linear-gradient(90deg,var(--accent) 0%,var(--accent-hover) 100%)}.qbar-pct{position:absolute;right:-38px;top:50%;transform:translateY(-50%);font-size:11px;font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}[data-theme=light] .quotation-summary-card,[data-theme=light] .quotation-analise-table-wrap{background:var(--bg-card);border-color:var(--border);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:var(--shadow)}[data-theme=light] .quotation-summary-label{color:var(--text-muted)}[data-theme=light] .quotation-summary-value,[data-theme=light] .quotation-analise-h{color:var(--text)}[data-theme=light] .quotation-analise-table-wrap .prop-price-table th{color:var(--text-muted);border-bottom-color:var(--border)}[data-theme=light] .quotation-analise-table-wrap .prop-price-table td{color:var(--text);border-bottom-color:var(--border)}[data-theme=light] .quotation-analise-table-wrap .prop-price-table .ptr-group td{color:var(--text)}[data-theme=light] .quotation-analise-table-wrap .prop-price-table .ptr-subgroup td{color:var(--text-muted)}[data-theme=light] .quotation-analise-table-wrap .prop-price-table .ptr-total td{color:var(--text);border-top-color:var(--accent)}[data-theme=light] .quotation-analise-table-wrap .qbar{background:var(--bg-input)}[data-theme=light] .quotation-analise-table-wrap .qbar-fill,[data-theme=light] .quotation-analise-table-wrap .qbar-fill.is-sub{background:var(--accent-gradient);box-shadow:none}[data-theme=light] .quotation-analise-table-wrap .qbar-pct{color:var(--text-muted)}[data-theme=light] .subscription-title-row h2{color:#fff}[data-theme=light] .subscription-section h3{color:#ffffffd9}[data-theme=light] .subscription-storage-note{color:#ffffffd9;border-top-color:#ffffff4d}[data-theme=light] .subscription-title-row .btn-ghost{color:#ffffffeb;border-color:#ffffff59;background:#ffffff0d}[data-theme=light] .subscription-title-row .btn-ghost:hover:not(:disabled){color:#fff;background:#ffffff2e;border-color:#fff9}.subscription-totals-storage{margin-top:12px}.article-qr-tab{padding:18px 4px 6px}.article-qr-preview{display:flex;gap:24px;align-items:center;padding:22px;background:color-mix(in srgb,var(--accent) 5%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);border-radius:14px;margin-bottom:18px}[data-theme=light] .article-qr-preview{background:#f8fafc;border-color:#e2e8f0}.article-qr-image{width:220px;height:220px;background:#fff;border-radius:10px;padding:8px;flex-shrink:0}.article-qr-loading{width:220px;height:220px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--text-muted) 10%,transparent);border-radius:10px;color:var(--text-muted)}.article-qr-info{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.article-qr-code{font-size:18px;font-weight:800;letter-spacing:.3px;color:var(--text)}.article-qr-desc{font-size:14px;color:var(--text)}.article-qr-supplier{font-size:13px}.article-qr-payload{margin-top:10px;font-size:11px;word-break:break-all}.article-qr-actions{display:flex;gap:10px;margin-bottom:12px}.article-qr-help{font-size:12px;margin:0}.qlm-loc-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin-top:4px}.qlm-loc-photo-tile{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:1px solid color-mix(in srgb,var(--text-muted) 22%,transparent);cursor:pointer}.qlm-loc-photo-tile img{width:100%;height:100%;object-fit:cover;display:block}.qlm-loc-photo-remove{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:#dc2626eb;color:#fff;border:none;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.qlm-loc-photo-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;aspect-ratio:1;border-radius:8px;border:2px dashed color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 6%,transparent);color:var(--accent);font-size:12px;cursor:pointer;font-family:inherit}.qlm-loc-photo-add:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 14%,transparent)}.qlm-loc-photo-add-icon{font-size:24px}.qlm-loc-photo-add-label{font-weight:600}.qlm-actual-locs{display:flex;flex-direction:column;gap:8px;margin-top:6px}.qlm-actual-loc{padding:10px 12px;background:color-mix(in srgb,var(--text-muted) 6%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 14%,transparent);border-radius:8px}[data-theme=light] .qlm-actual-loc{background:#f8fafc;border-color:#e2e8f0}.qlm-actual-loc-text{display:flex;align-items:center;justify-content:space-between;gap:10px}.qlm-actual-loc-qty{font-weight:700;color:var(--accent);padding:3px 10px;background:color-mix(in srgb,var(--accent) 14%,transparent);border-radius:999px;font-size:12px;white-space:nowrap}.qlm-actual-loc-photos{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.qlm-actual-loc-photos img{width:56px;height:56px;object-fit:cover;border-radius:6px;border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);cursor:pointer}.qlm-mov-clickable{cursor:pointer}.qlm-mov-clickable:hover td{background:color-mix(in srgb,var(--accent) 10%,transparent)}.modal.exit-detail-modal{max-width:600px;width:92vw}[data-theme=light] .modal.exit-detail-modal{background:#fff;color:#1e293b}.qlm-movements-scroll{overflow-x:auto}.qlm-movements-table{white-space:nowrap;font-size:12px}.qlm-movements-table .num{text-align:right;font-variant-numeric:tabular-nums}.qlm-mov-col-foto{width:56px;text-align:center}.qlm-mov-photo-thumb{width:40px;height:40px;object-fit:cover;border-radius:6px;border:1px solid color-mix(in srgb,var(--text-muted) 22%,transparent);cursor:zoom-in;display:inline-block}.exit-cost-explain{margin-top:18px;background:color-mix(in srgb,var(--accent) 6%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);border-radius:10px;padding:14px 16px}[data-theme=light] .exit-cost-explain{background:#f0fdfa;border-color:#99f6e4}.exit-cost-formula{font-size:12px;margin:0 0 12px;color:var(--text)}.exit-cost-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.exit-cost-summary>div{display:flex;flex-direction:column;gap:2px;padding:8px 12px;background:color-mix(in srgb,var(--bg, #0f172a) 70%,transparent);border-radius:8px}[data-theme=light] .exit-cost-summary>div{background:#fff}.exit-cost-summary>div>span{font-size:11px}.exit-cost-summary>div>strong{font-size:16px;color:var(--accent)}.exit-cost-table-wrap{overflow-x:auto}.exit-cost-table{width:100%;border-collapse:collapse;font-size:12px}.exit-cost-table th,.exit-cost-table td{padding:6px 10px;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 14%,transparent)}.exit-cost-table th{text-align:left;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.exit-cost-table .num{text-align:right;font-variant-numeric:tabular-nums}.exit-cost-table tfoot td{border-top:2px solid color-mix(in srgb,var(--text-muted) 22%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent)}@media(max-width:640px){.exit-cost-summary{grid-template-columns:1fr}}.exit-cost-formula code{display:inline-block;margin-top:6px;padding:3px 8px;background:color-mix(in srgb,var(--text-muted) 12%,transparent);border-radius:6px;font-size:11px}.exit-cost-split{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:14px;flex-wrap:wrap;font-size:13px}.exit-cost-split>span{display:inline-flex;align-items:center;gap:6px}.exit-cost-split>span>span{font-size:11px}.exit-cost-split>span>strong{color:var(--accent)}.exit-cost-block{margin-top:14px;padding:10px 12px;background:color-mix(in srgb,var(--bg, #0f172a) 70%,transparent);border-radius:8px}[data-theme=light] .exit-cost-block{background:#fff}.exit-cost-block-title{margin:0 0 8px;font-size:14px;color:var(--text)}.exit-cost-block-title strong{color:var(--accent)}.exit-cost-list{margin:0;padding-left:20px;font-size:12px;line-height:1.55}.exit-cost-list li{margin-bottom:6px}.exit-cost-lot{margin:10px 0;padding:8px 10px;background:color-mix(in srgb,var(--text-muted) 6%,transparent);border-left:3px solid var(--accent);border-radius:4px}.exit-cost-lot-head{margin:0 0 6px;font-size:13px}.exit-cost-lot-calc{margin:0;padding-left:18px;font-size:12px;line-height:1.6;color:var(--text)}.exit-cost-lot-calc li{margin:0}.exit-cost-total-line{margin-top:8px;padding-top:6px;border-top:1px dashed color-mix(in srgb,var(--text-muted) 22%,transparent)}.qlm-loc-cards{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 4px}.qlm-loc-card{display:flex;flex-direction:column;gap:4px;padding:10px 14px;min-width:110px;background:color-mix(in srgb,var(--text-muted) 12%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 22%,transparent);border-radius:10px}[data-theme=light] .qlm-loc-card{background:#f1f5f9;border-color:#e2e8f0}.qlm-loc-card-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:color-mix(in srgb,var(--text) 60%,transparent)}.qlm-loc-card-value{font-size:16px;font-weight:700;color:var(--text);letter-spacing:.2px}.qlm-loc-path{margin:4px 0 0;padding:8px 12px;background:color-mix(in srgb,var(--accent) 8%,transparent);border-left:3px solid var(--accent);border-radius:6px;font-size:14px;font-weight:600;color:var(--text);letter-spacing:.3px}.qlm-stock-summary-card{display:flex;gap:16px;padding:14px 18px;background:color-mix(in srgb,var(--accent) 6%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);border-radius:10px;margin-bottom:8px}[data-theme=light] .qlm-stock-summary-card{background:#f0fdfa;border-color:#99f6e4}.qlm-stock-summary-item{display:flex;flex-direction:column;gap:2px;flex:1}.qlm-stock-summary-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.qlm-stock-summary-value{font-size:20px;font-weight:800;color:var(--accent)}.qlm-companies-chips{display:flex;gap:10px;margin-top:6px}.qlm-company-chip{padding:6px 14px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 14%,transparent);color:var(--text-muted);font-size:13px}.qlm-company-chip.is-active{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent);font-weight:700}.qlm-companies-toggles{display:flex;gap:12px;margin-top:6px}.qlm-company-toggle{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:10px;border:1px solid color-mix(in srgb,var(--text-muted) 25%,transparent);cursor:pointer;font-weight:600;-webkit-user-select:none;user-select:none}.qlm-company-toggle.is-active{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:var(--accent);color:var(--accent)}.qlm-suppliers-list{display:flex;flex-direction:column;gap:10px}.qlm-supplier-card{padding:12px 14px;border-radius:10px;border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);background:color-mix(in srgb,var(--text-muted) 5%,transparent)}[data-theme=light] .qlm-supplier-card{background:#f8fafc;border-color:#e2e8f0}.qlm-supplier-card.is-approved{border-left:4px solid var(--accent)}.qlm-supplier-card.is-pending{border-left:4px solid color-mix(in srgb,var(--text-muted) 40%,transparent)}.qlm-supplier-card-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}.qlm-supplier-card-head>strong{flex:1;font-size:14px}.qlm-supplier-status{font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;border:none;cursor:pointer;font-family:inherit}.qlm-supplier-status.approved{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.qlm-supplier-status.pending{background:color-mix(in srgb,var(--text-muted) 14%,transparent);color:var(--text-muted)}.qlm-supplier-card-code{font-size:13px;margin-bottom:4px}.qlm-supplier-card-notes{font-size:12px;font-style:italic}.qlm-supplier-card-fields{display:grid;grid-template-columns:200px 1fr;gap:8px}.qlm-supplier-add-row{display:grid;grid-template-columns:1fr 1fr auto auto;gap:8px;align-items:center}.qlm-supplier-approve-toggle{display:inline-flex;align-items:center;gap:6px;font-size:13px;white-space:nowrap}.qlm-geral-clean{padding:8px 0}.qlm-geral-codes{display:flex;gap:8px;margin-bottom:14px}.qlm-geral-code{font-size:11px;letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.qlm-geral-code-alt{opacity:.6}.qlm-geral-title{font-size:28px;font-weight:300;letter-spacing:-.5px;line-height:1.15;color:var(--text);margin:0 0 16px}.qlm-geral-price{margin-bottom:24px}.qlm-geral-price-value{font-size:22px;font-weight:600;color:var(--text)}.qlm-geral-notes{font-size:13px;line-height:1.6;color:color-mix(in srgb,var(--text) 75%,transparent);margin:0;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent)}.qlm-gallery{margin-bottom:24px}.qlm-gallery-main{display:block;width:100%;height:280px;padding:0;border:none;background:transparent;cursor:zoom-in;overflow:hidden}.qlm-gallery-main img{width:100%;height:100%;object-fit:contain;display:block}.qlm-gallery-empty-main{display:flex;align-items:center;justify-content:center;cursor:default;color:color-mix(in srgb,var(--text-muted) 60%,transparent)}.qlm-gallery-thumbs{display:flex;gap:6px;margin-top:8px;overflow-x:auto;padding-bottom:4px}.qlm-gallery-thumb{flex:0 0 64px;width:64px;height:64px;padding:0;border:1.5px solid transparent;background:transparent;cursor:pointer;overflow:hidden;transition:border-color .15s ease,opacity .15s ease;opacity:.6}.qlm-gallery-thumb:hover{opacity:1}.qlm-gallery-thumb.is-active{opacity:1;border-color:var(--text)}.qlm-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}.qlm-gallery-file{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;gap:8px;color:color-mix(in srgb,var(--text) 70%,transparent)}.qlm-gallery-file-ext{font-size:11px;letter-spacing:.8px;font-weight:700;padding:3px 10px;border:1.5px solid currentColor;border-radius:4px}.qlm-gallery-file-name{font-size:12px;max-width:80%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.qlm-gallery-thumb.is-file{display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--text-muted) 6%,transparent)}.qlm-gallery-thumb-icon{font-size:10px;font-weight:700;letter-spacing:.5px;color:color-mix(in srgb,var(--text) 60%,transparent)}.qlm-header-actions{display:inline-flex;align-items:center;gap:8px;margin-left:auto}.qlm-stock-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.qlm-stock-actions .btn-primary{min-width:160px}.qlm-armazenamento-tab .sa-section{margin-top:16px}.qlm-armazenamento-tab .storage-costs-embedded>.page-header{margin-top:0}@media(max-width:720px){.quotation-line-modal.qlm-fullscreen{width:100vw;max-width:100vw;height:100vh;max-height:100vh;border-radius:0;margin:0}.quotation-line-modal.qlm-fullscreen .modal-header{padding:10px 14px;flex-wrap:wrap;row-gap:6px}.quotation-line-modal.qlm-fullscreen .modal-header h2{font-size:16px;line-height:1.25;flex:1 1 100%;order:0}.quotation-line-modal.qlm-fullscreen .modal-body{padding:12px}.qlm-tabs{padding:0 10px;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}.qlm-tabs::-webkit-scrollbar{height:4px}.qlm-tab{padding:10px 12px;font-size:13px;flex-shrink:0;white-space:nowrap;scroll-snap-align:start}.qlm-product-code{font-size:11px;padding:3px 8px}.qlm-share-btn{font-size:11px;padding:5px 10px;margin-right:4px}.qlm-mode-toggle{font-size:12px;padding:6px 12px;margin-right:6px}.qlm-header-actions{gap:6px;flex-wrap:wrap}.qlm-grid,.qlm-fields-grid{grid-template-columns:1fr!important;gap:10px}.qlm-scope-banner,.qlm-tab-banner{padding:8px 10px;font-size:12px}.qlm-stock-actions{gap:6px}.qlm-stock-actions .btn-primary{min-width:0;flex:1 1 100%;font-size:13px}.qlm-quotes-table,.qlm-movements-table{font-size:12px}.qlm-quotes-panel,.qlm-movements{overflow-x:auto;-webkit-overflow-scrolling:touch}.qlm-quotes-row{flex-direction:column;gap:8px}.qlm-quote-card{width:100%}.qlm-gallery-thumb{width:64px;height:64px}}@media(max-width:420px){.quotation-line-modal.qlm-fullscreen .modal-header h2{font-size:15px}.qlm-tab{padding:9px 10px;font-size:12px}.quotation-line-modal.qlm-fullscreen .modal-body{padding:10px}}.picker-input{position:relative}.picker-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);max-height:180px;overflow-y:auto;z-index:100}.picker-option{display:block;width:100%;padding:8px 12px;background:none;border:none;text-align:left;font-size:13px;font-family:var(--font);color:var(--text);cursor:pointer;transition:background .15s ease}.picker-option:hover{background:#32947c14}.picker-option.active{font-weight:600;color:var(--accent)}.picker-create{color:var(--accent);font-weight:600;border-top:1px solid var(--border)}.picker-sm .form-input{height:30px!important;font-size:12px!important;padding:4px 8px!important}.articles-page{max-width:var(--page-max-width);margin:0 auto;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom)}.articles-filters{display:flex;gap:4px;margin-bottom:20px}.articles-filter-btn{background:none;border:1px solid var(--border);border-radius:var(--radius-pill);padding:6px 14px;font-size:12px;font-weight:600;font-family:var(--font);color:var(--text-muted);cursor:pointer;transition:var(--transition)}.articles-filter-btn:hover{background:var(--bg-elevated);color:var(--text)}.articles-filter-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.articles-new-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:20px;display:flex;flex-direction:column;gap:14px}.articles-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.articles-category{margin-bottom:20px}.articles-category-title{font-size:14px;font-weight:700;color:var(--text);margin:0 0 8px}.articles-table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.articles-table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}.articles-table th{background:var(--bg-input);color:var(--text-muted);font-weight:600;padding:8px 10px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.articles-table td{padding:6px 10px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle}.articles-table tr:last-child td{border-bottom:none}.articles-table tr:hover td{background:var(--bg-elevated)}.articles-archived-row td{opacity:.5}.articles-editing-row td{background:#32947c0a}.art-col-code{width:90px;font-family:var(--font-mono, monospace);font-size:11px;font-weight:600;white-space:nowrap}.art-col-desc{width:20%}.art-col-cat{width:11%}.art-col-type{width:7%}.art-col-supplier{width:10%}.art-col-cost{width:8%;text-align:right}.art-col-margin{width:6%;text-align:right}.art-col-sale{width:8%;text-align:right}.art-col-status{width:7%}.art-col-actions{width:21%}.articles-table th.art-col-cost,.articles-table th.art-col-margin,.articles-table th.art-col-sale{text-align:right}.badge-active{background:#22c55e1a;color:var(--success)}.badge-archived{background:var(--bg-input);color:var(--text-dim)}.articles-row-actions{display:flex;gap:4px;flex-wrap:wrap}.articles-edit-actions{display:flex;gap:4px}.articles-editing-row .form-input-sm{width:100%!important}@media(max-width:768px){.articles-page{padding:16px}.articles-form-grid{grid-template-columns:1fr 1fr}.articles-row-actions{flex-direction:column}}.services-form-card{background:var(--bg-card);border:1px solid var(--accent);border-radius:var(--radius);padding:18px 20px;margin-bottom:24px}.services-form-card h3{margin:0 0 14px;font-size:14px;color:var(--accent)}.services-form-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px 16px}.services-form-grid label{display:flex;flex-direction:column;gap:4px;font-size:12px}.services-form-grid label>span:first-child{font-weight:600;color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.03em}.services-form-full{grid-column:1 / -1}.services-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.articles-group{margin-bottom:24px}.articles-group-title{font-size:.95rem;font-weight:700;color:var(--text);margin:0 0 8px}.articles-controls{margin-bottom:16px}.service-modal{max-width:720px}.service-modal .modal-body{padding:18px 22px}.service-modal .modal-actions{padding:14px 22px 18px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px}.service-modal .modal-header-status{margin-left:auto;margin-right:12px;font-size:12px}.tables-page{max-width:var(--page-max-width);margin:0 auto;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom)}.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.tables-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:12px}.tables-section-header{display:flex;align-items:center;justify-content:space-between}.tables-section-header h2{font-size:1rem;font-weight:700;color:var(--text);margin:0}.tables-count{font-size:12px;font-weight:700;color:var(--accent);background:#32947c1a;padding:2px 8px;border-radius:var(--radius-pill)}.tables-add-form{display:flex;gap:6px}.tables-add-form .form-input{flex:1;font-size:13px}.tables-list{display:flex;flex-direction:column;gap:2px;max-height:320px;overflow-y:auto}.tables-item{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-radius:var(--radius-sm);transition:var(--transition);cursor:pointer}.tables-item:hover{background:var(--bg-elevated)}.tables-item-info{display:flex;align-items:center;gap:6px;min-width:0}.tables-item-name{font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto;min-width:0}.tables-item-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}.tables-item-parent{font-size:11px;color:var(--text-dim);margin-left:auto;padding:1px 6px;background:var(--bg-subtle, rgba(0, 0, 0, .04));border-radius:var(--radius-pill);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40%;flex:0 1 auto;min-width:0}.tables-item-delete{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:12px;padding:2px 6px;border-radius:var(--radius-sm);opacity:0;transition:var(--transition)}.tables-item:hover .tables-item-delete{opacity:1}.tables-item-delete:hover{color:var(--danger);background:var(--danger-muted-bg)}.tables-item-archived .tables-item-name{opacity:.55}.tables-empty{font-size:13px;margin:0}.tables-modal{max-width:480px;width:100%}.tables-modal-article{max-width:560px}.tables-modal .modal-body{display:flex;flex-direction:column;gap:14px}.tables-modal .modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.tables-articles-section{min-width:0}.tables-modal .articles-modal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.text-right{text-align:right}@media(max-width:768px){.tables-page{padding:16px}.tables-grid,.tables-modal .articles-modal-grid{grid-template-columns:1fr}}.notifications-page{max-width:var(--page-max-width);margin:0 auto;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom)}.notif-tabs{display:flex;gap:4px;margin-bottom:18px;border-bottom:1px solid var(--border)}.notif-tab{background:transparent;border:none;padding:10px 16px;font-size:13px;font-weight:600;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .12s,border-color .12s,background .12s}.notif-tab:hover{color:var(--text)}.notif-tab.is-active{color:var(--accent);border-bottom-color:var(--accent)}.notif-empty{padding:60px 20px;text-align:center;color:var(--text-muted);font-size:14px;background:var(--bg-card);border:1px dashed var(--border);border-radius:10px}.notif-list{display:flex;flex-direction:column;gap:8px}.notif-item{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:background .12s,border-color .12s,box-shadow .12s;box-shadow:0 1px 3px #0000000a}.notif-item:hover{background:var(--bg-elevated);border-color:#32947c4d}.notif-item.is-unread{border-left:3px solid var(--accent);padding-left:13px;background:#32947c0a}.notif-item-dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex-shrink:0;background:transparent}.notif-item.is-unread .notif-item-dot{background:var(--accent)}.notif-item-body{flex:1;min-width:0}.notif-item-title{font-size:14px;font-weight:600;color:var(--text);margin-bottom:4px}.notif-item.is-unread .notif-item-title{font-weight:700}.notif-item-message{font-size:13px;color:var(--text-muted);margin-bottom:6px;line-height:1.5}.notif-item-meta{font-size:11.5px;color:var(--text-dim)}.notif-item-del{background:transparent;border:none;color:var(--text-dim);font-size:18px;line-height:1;padding:4px 8px;border-radius:4px;cursor:pointer;flex-shrink:0;transition:background .12s,color .12s;opacity:0}.notif-item:hover .notif-item-del{opacity:1}.notif-item-del:hover{background:#c47a7e26;color:var(--danger, #c47a7e)}[data-theme=light] .notif-item{background:var(--bg-input);border-color:var(--border);box-shadow:none}[data-theme=light] .notif-item .notif-item-title{color:var(--text-muted);font-weight:500}[data-theme=light] .notif-item .notif-item-message{color:var(--text-dim)}[data-theme=light] .notif-item:hover{background:#fff;border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}[data-theme=light] .notif-item.is-unread{background:#fff;border-color:color-mix(in srgb,var(--accent) 30%,var(--border));border-left:4px solid var(--accent);padding-left:12px;box-shadow:0 2px 10px -3px color-mix(in srgb,var(--accent) 22%,transparent)}[data-theme=light] .notif-item.is-unread .notif-item-title{color:var(--text);font-weight:700}[data-theme=light] .notif-item.is-unread .notif-item-message{color:var(--text-muted)}[data-theme=light] .notif-item.is-unread:hover{background:#fff;border-color:var(--accent);box-shadow:0 4px 14px -3px color-mix(in srgb,var(--accent) 30%,transparent)}.suppliers-page{max-width:var(--page-content-max);margin:0 auto;padding:32px 24px}.suppliers-page .project-card{background:#ffffff8c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.35)}[data-theme=dark] .suppliers-page .project-card{background:#1e1e1e8c;border-color:#ffffff14}.suppliers-page .projects-list-table{background:#ffffff8c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.35)}[data-theme=dark] .suppliers-page .projects-list-table{background:#1e1e1e8c;border-color:#ffffff14}.suppliers-page .projects-list-table thead th{background:#ffffff40}[data-theme=dark] .suppliers-page .projects-list-table thead th{background:#ffffff0d}.suppliers-page .projects-list-table tbody tr:nth-child(2n) td{background:#ffffff2e}[data-theme=dark] .suppliers-page .projects-list-table tbody tr:nth-child(2n) td{background:#ffffff0a}.suppliers-decision-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.suppliers-decision-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff2e;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.28);color:var(--text);border-radius:var(--radius-pill);font-size:12px;font-weight:600;cursor:pointer;transition:var(--transition)}[data-theme=light] .suppliers-decision-chip{color:#fff}.suppliers-decision-chip:hover{border-color:#ffffff8c;background:#ffffff47}.suppliers-decision-chip-count{background:#ffffff38;padding:1px 8px;border-radius:var(--radius-pill);font-size:11px;font-weight:700;color:inherit}.suppliers-decision-chip.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.suppliers-decision-chip.is-active .suppliers-decision-chip-count{background:#ffffff38;color:#fff}.suppliers-decision-chip-approved.is-active{background:#16a34a;border-color:#16a34a}.suppliers-decision-chip-rejected.is-active{background:#dc2626;border-color:#dc2626}.suppliers-decision-chip-none.is-active{background:#475569;border-color:#475569}.supplier-decision-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:700}.supplier-decision-approved{background:#16a34a24;color:#166534;border:1px solid rgba(22,163,74,.4)}.supplier-decision-rejected{background:#dc262624;color:#991b1b;border:1px solid rgba(220,38,38,.4)}.supplier-decision-none{background:#4755691f;color:#475569;border:1px solid rgba(71,85,105,.3)}.supplier-level-badge{display:inline-flex;align-items:center;padding:3px 10px;background:#32947c24;color:var(--accent);border:1px solid rgba(50,148,124,.35);border-radius:var(--radius-pill);font-size:11px;font-weight:700;letter-spacing:.02em;align-self:flex-start;margin-top:4px}.supplier-level-warning{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#d977061f;color:#d97706;border:1px solid rgba(217,119,6,.35);border-radius:var(--radius-pill);font-size:11px;font-weight:600;align-self:flex-start;margin-top:4px}.supplier-level-warning-inline{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 8px;background:#d977061f;color:#d97706;border:1px solid rgba(217,119,6,.35);border-radius:var(--radius-pill);font-size:10px;font-weight:600;vertical-align:middle}.suppliers-new-row{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.suppliers-new-row .form-input{flex:1;min-width:200px}.project-header{margin-bottom:24px}.project-header-info{display:flex;flex-direction:column;gap:8px}.project-name-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.project-name-row h1{margin:0;font-size:1.75rem;font-weight:700;color:var(--text);line-height:1.2}.project-name-input{font-size:1.75rem;font-weight:700;padding:4px 8px;flex:1;min-width:200px}.project-meta-row{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--text-muted)}.project-meta-row>span{display:inline-flex;align-items:center;gap:4px}.supplier-phase-page{max-width:var(--page-content-max);margin:0 auto;padding:24px}.supplier-phase-content{margin-top:18px}.supplier-phase-placeholder{background:var(--bg-card);border:1px dashed var(--border);border-radius:10px;padding:40px 24px;text-align:center}.supplier-phase-placeholder-title{font-size:1.1rem;color:var(--text);margin:0 0 10px}.supplier-inqueritos-tab.itm-editor-page{padding:0;max-width:none}.supplier-inqueritos-tab.itm-editor-page:before{display:none}.supplier-inqueritos-tab{display:flex;flex-direction:column;gap:22px;color:inherit}.supplier-inqueritos-group{padding:18px 22px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px}.supplier-inqueritos-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.supplier-inqueritos-group-title{font-size:16px;font-weight:700;color:var(--text);margin:0 0 4px}.supplier-inqueritos-group-notes{font-size:12px;margin:0}.supplier-tofill-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.supplier-tofill-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.supplier-tofill-main{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.supplier-tofill-name{font-size:14px;color:var(--text)}.supplier-tofill-notes{font-size:12px;margin:0}.supplier-filling-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.supplier-filling-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-left-width:3px;border-radius:10px}.supplier-filling-item.is-draft{border-left-color:#f59e0b}.supplier-filling-item.is-submitted{border-left-color:#16a34a}.supplier-filling-main{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.supplier-filling-titles{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.supplier-filling-name{font-size:14px;color:var(--text)}.supplier-filling-status{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px}.supplier-filling-status.is-draft{background:#fef3c7;color:#92400e}.supplier-filling-status.is-submitted{background:#dcfce7;color:#166534}.supplier-filling-meta{font-size:12px}.supplier-filling-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.supplier-opening-section{margin-top:28px}.supplier-opening-form-title{font-size:18px;font-weight:700;color:var(--text);margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.supplier-level-picker.has-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:20px 24px}.supplier-level-picker.has-card .supplier-level-pick,.supplier-level-picker.has-card .supplier-level-explanations-box{background:transparent;border:none;border-radius:0;padding:0}.supplier-opening-form{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:20px 24px}.supplier-opening-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.supplier-opening-form .form-field{display:flex;flex-direction:column;gap:6px}.supplier-opening-form .form-field-wide{grid-column:1 / -1}.supplier-opening-form .form-required{color:#ef4444;margin-left:2px;font-weight:700}.supplier-opening-form .form-field.is-required-empty .form-input{border-color:#ef44448c;background:#ef44440d}.supplier-opening-form .form-field.is-required-empty .form-input:focus{border-color:#ef4444d9;box-shadow:0 0 0 3px #ef44441f}.supplier-level-pick.is-required-empty .form-input{border-color:#ef44448c;background:#ef44440d}.supplier-level-pick.is-required-empty .form-input:focus{border-color:#ef4444d9;box-shadow:0 0 0 3px #ef44441f}.supplier-level-pick .form-required{color:#ef4444;margin-left:2px;font-weight:700}.supplier-opening-form .form-label{font-size:12px;font-weight:600;color:var(--text-muted)}.supplier-opening-form .form-actions{display:flex;justify-content:flex-end;margin-top:18px}@media(max-width:640px){.supplier-opening-form .form-grid{grid-template-columns:1fr}}.supplier-level-picker{display:flex;flex-direction:column;gap:24px}.supplier-level-pick{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px 20px;display:flex;flex-direction:column;gap:6px;max-width:420px}.supplier-level-pick .form-label{font-size:12px;font-weight:600;color:var(--text-muted)}.supplier-level-explanations-title{font-size:1rem;font-weight:700;color:var(--text);margin:0 0 12px}[data-theme=light] .supplier-level-explanations-title{color:#fff}.supplier-level-explanations{display:flex;flex-direction:column}.supplier-level-explanations-box{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:18px 22px;display:flex;flex-direction:column;gap:16px}.supplier-level-entry{display:flex;flex-direction:column;gap:4px;padding:8px 10px;margin:-8px -10px;border-radius:8px;transition:var(--transition)}.supplier-level-entry.is-selected{background:var(--accent-glow)}.supplier-level-entry-name{font-size:14px;font-weight:700;color:var(--text)}.supplier-level-entry-desc{margin:0;font-size:13px;color:var(--text-muted);white-space:pre-wrap;line-height:1.5}.sup-downloads{display:flex;flex-direction:column;gap:18px}.sup-downloads-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:16px;box-shadow:0 1px 2px #0f172a0a}.sup-downloads-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px solid var(--border)}.sup-downloads-view{display:flex;align-items:center;gap:10px;min-width:260px}.sup-downloads-view label{font-size:12px;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.sup-downloads-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px 20px}.sup-downloads-filter-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:4px}.sup-downloads-chips{display:flex;flex-wrap:wrap;gap:6px}.sup-downloads-chip{padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:transparent;cursor:pointer;font-size:12px;color:var(--text)}.sup-downloads-chip.is-on{background:var(--accent);color:#fff;border-color:transparent}.sup-downloads-files{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.sup-downloads-file{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px}.sup-downloads-file-icon{font-size:20px}.sup-downloads-file-main{flex:1;min-width:0}.sup-downloads-file-ctx{font-size:12px;margin-top:2px}.sup-downloads-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.sup-downloads-photo{display:flex;flex-direction:column;gap:4px;padding:6px;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);text-decoration:none;color:inherit}.sup-downloads-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px}.sup-downloads-photo-caption{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nif-input.nif-invalid{border-color:var(--danger)}.nif-input.nif-valid{border-color:#3ca06e8c}.nif-msg{display:block;margin-top:4px;font-size:11px;font-weight:600}.nif-msg-invalid{color:var(--danger)}.nif-msg-valid{color:#2e8f6a}.sage-email-history{width:100%;margin-top:12px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden}.sage-email-history>summary{padding:10px 14px;cursor:pointer;font-weight:600;color:var(--text);background:color-mix(in srgb,var(--text) 3%,transparent);list-style:none;display:flex;align-items:center;gap:8px}.sage-email-history>summary:before{content:"📜";font-size:15px}.sage-email-history>summary::-webkit-details-marker{display:none}.sage-email-history[open]>summary{border-bottom:1px solid var(--border)}.sage-email-history-list{list-style:none;padding:10px 14px;margin:0;display:flex;flex-direction:column;gap:8px}.sage-email-history-item{padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--text) 2%,transparent)}.sage-email-history-item>details>summary{cursor:pointer;font-size:13px;color:var(--text);list-style:none;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sage-email-history-item>details>summary:before{content:"✉";color:var(--accent, #32937c)}.sage-email-history-item>details>summary::-webkit-details-marker{display:none}.sage-email-history-date{font-weight:600;font-variant-numeric:tabular-nums}.sage-email-history-by,.sage-email-history-to{color:var(--text-muted);font-size:12px}.sage-email-history-subj{margin-top:8px;font-size:12px;color:var(--text)}.sage-email-history-body{margin:6px 0 0;padding:8px 10px;border-radius:6px;background:color-mix(in srgb,var(--text) 4%,transparent);white-space:pre-wrap;font-family:inherit;font-size:12px;color:var(--text);max-height:240px;overflow:auto}.sld-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:24px 0 20px;padding:20px 24px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px}.sld-field{display:flex;flex-direction:column;gap:6px;min-width:200px}.sld-field-wide{flex:1;min-width:240px}.sld-field-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.sld-upload{cursor:pointer}.sld-list-section{margin-top:8px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px 24px}.sld-list-title{font-size:16px;font-weight:700;color:var(--text);margin:0 0 14px}.sld-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.sld-item{display:flex;align-items:center;gap:14px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.sld-item-icon{font-size:24px;width:32px;text-align:center;flex-shrink:0}.sld-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.sld-item-name{font-size:14px;font-weight:600;color:var(--text);text-decoration:none}.sld-item-name:hover{text-decoration:underline}.sld-item-desc{font-size:13px;color:var(--text);margin:2px 0 0}.sld-item-meta{font-size:11px;margin:2px 0 0}.sld-empty{background:var(--bg-card);border:1px dashed color-mix(in srgb,var(--text) 20%,transparent);border-radius:12px;padding:32px 24px;text-align:center}.sld-empty-icon{font-size:40px;margin-bottom:8px;opacity:.55}.sld-empty-title{font-size:15px;font-weight:600;color:var(--text);margin:0 0 6px}.sld-empty-hint{font-size:13px;color:var(--text-muted);margin:0}.shp-page{padding:20px 28px 40px;font-family:Plus Jakarta Sans,system-ui,sans-serif;color:var(--text, #0f172a)}.shp-empty{text-align:center;padding:60px 24px;background:var(--bg-card, #fff);border:2px dashed var(--border, #cbd5e1);border-radius:12px}.shp-empty-emoji{font-size:56px;margin-bottom:12px}.shp-empty h3{margin:6px 0;color:var(--text, #0f172a)}.shp-empty p{color:var(--text-muted, #64748b);font-size:14px}.shp-rounds{display:flex;flex-direction:column;gap:16px;margin-top:12px}.shp-round{background:var(--bg-card, #ffffff);border:1px solid var(--border, #e2e8f0);border-left:4px solid #94a3b8;border-radius:12px;padding:18px 20px;box-shadow:0 2px 4px #0f172a08}.shp-round-head{margin-bottom:10px}.shp-round-num{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted, #94a3b8)}.shp-round-title{margin:4px 0 2px;font-size:16px}.shp-round-badge{display:inline-block;padding:4px 12px;border-radius:999px;border:1px solid;font-size:13px;font-weight:700}.shp-round-meta{font-size:12px;color:var(--text-muted, #64748b);margin:4px 0 0}.shp-round-note{margin:12px 0;padding:10px 14px;background:var(--bg-elevated, #f8fafc);border-left:3px solid #b45309;border-radius:6px;font-size:13px;color:var(--text, #334155)}.shp-round-subs{margin-top:12px}.shp-round-subs h3{font-size:12px;font-weight:700;margin:0 0 8px;color:var(--text-muted, #64748b);letter-spacing:.5px;text-transform:uppercase}.shp-round-subs ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.shp-round-subs li{padding:8px 10px;background:var(--bg-elevated, #f8fafc);border:1px solid var(--border, #e2e8f0);border-radius:6px;font-size:13px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.shp-sub-link{margin-left:auto;color:#0f766e;text-decoration:none;font-weight:600}.shp-sub-link:hover{text-decoration:underline}.tab-admin-table-picker{display:flex;flex-wrap:wrap;gap:8px}.tab-admin-pick{padding:8px 14px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--bg-card);color:var(--text);cursor:pointer;font:inherit;font-size:13px;display:inline-flex;align-items:center;gap:8px;transition:var(--transition)}.tab-admin-pick:hover{border-color:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent)}.tab-admin-pick.is-active{background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:var(--accent);font-weight:600}.tab-admin-pick-count{font-size:11px;color:var(--text-muted);background:#ffffff0f;border-radius:999px;padding:1px 8px}.tab-admin-actions{display:flex;gap:10px;margin-bottom:12px;flex-wrap:wrap}.tab-admin-actions label.btn-ghost{cursor:pointer;display:inline-flex;align-items:center}.tab-admin-table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:auto;max-height:360px}.tab-admin-table{width:100%;border-collapse:collapse;font-size:12px}.tab-admin-table th{background:var(--bg-elevated);color:var(--text-muted);font-weight:600;padding:8px 12px;text-align:left;text-transform:uppercase;letter-spacing:.04em;font-size:10px;border-bottom:1px solid var(--border);position:sticky;top:0}.tab-admin-table td{padding:6px 12px;border-bottom:1px solid var(--border)}.tab-admin-counters{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}@media(max-width:720px){.tab-admin-counters{grid-template-columns:1fr 1fr}}.tab-admin-counter{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.tab-admin-counter span{font-size:11px;text-transform:uppercase;color:var(--text-muted);letter-spacing:.04em;font-weight:600}.tab-admin-counter strong{font-size:1.4rem}.tab-admin-counter.is-insert{border-color:#22c55e73}.tab-admin-counter.is-insert strong{color:#22c55e}.tab-admin-counter.is-update{border-color:#3b82f673}.tab-admin-counter.is-update strong{color:#3b82f6}.tab-admin-counter.is-delete{border-color:#ef444473}.tab-admin-counter.is-delete strong{color:#ef4444}.tab-admin-counter.is-ok{border-color:#22c55e73}.tab-admin-counter.is-ok strong{color:#22c55e}.tab-admin-counter.is-conflict{border-color:#f59e0b8c}.tab-admin-counter.is-conflict strong{color:#f59e0b}.tab-admin-conflicts{background:#f59e0b14;border:1px solid rgba(245,158,11,.4);border-radius:10px;padding:12px 16px;margin-bottom:12px}.tab-admin-conflicts h3{margin:0 0 8px;font-size:13px;color:#f59e0b;text-transform:uppercase;letter-spacing:.04em}.tab-admin-conflicts ul{margin:0;padding-left:18px}.tab-admin-conflicts li{font-size:13px;margin-bottom:4px}.project-picker{position:relative;width:100%}.project-picker-input{width:100%}.project-picker-selected{display:flex;align-items:center;gap:6px;width:100%;padding:8px 12px;background:var(--bg-elev, #1e293b);border:1px solid var(--border, #334155);border-radius:8px;color:var(--text);font-size:14px;cursor:pointer;text-align:left}[data-theme=light] .project-picker-selected{background:#fff;border-color:#cbd5e1}.project-picker-selected:hover{border-color:color-mix(in srgb,var(--accent) 50%,transparent)}.project-picker-selected-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.project-picker-selected-client{font-size:12px}.project-picker-clear{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:color-mix(in srgb,var(--text-muted) 18%,transparent);font-weight:700;font-size:13px;flex-shrink:0}.project-picker-clear:hover{background:color-mix(in srgb,#dc2626 30%,transparent);color:#fff}.project-picker-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:60;max-height:260px;overflow-y:auto;background:var(--bg-elev, #1e293b);border:1px solid var(--border, #334155);border-radius:10px;box-shadow:0 10px 30px #00000059;padding:4px}[data-theme=light] .project-picker-list{background:#fff;border-color:#e2e8f0;box-shadow:0 10px 30px #0000001f}.project-picker-row{display:flex;flex-direction:column;gap:2px;width:100%;padding:8px 12px;background:transparent;border:none;color:var(--text);text-align:left;border-radius:6px;cursor:pointer}.project-picker-row:hover{background:color-mix(in srgb,var(--accent) 14%,transparent)}.project-picker-name{font-weight:600;font-size:14px}.project-picker-client{font-size:12px}.project-picker-empty{padding:10px 12px;color:var(--text-muted);font-size:13px;text-align:center}.modal.qr-scanner-modal{max-width:540px;width:92vw;background:var(--bg-elev, #0f172a);color:var(--text)}.modal.qr-scanner-modal .modal-body{padding:18px 22px 22px}.qr-scanner-viewport{width:100%;min-height:320px;border-radius:12px;overflow:hidden;background:#000;margin-bottom:12px}.qr-scanner-viewport video{width:100%!important;height:auto!important;border-radius:12px}.qr-scanner-error{padding:12px 14px;background:color-mix(in srgb,#dc2626 18%,transparent);border:1px solid color-mix(in srgb,#dc2626 45%,transparent);border-radius:10px;margin-bottom:12px;color:#fecaca;font-size:13px}[data-theme=light] .qr-scanner-error{background:#fee2e2;border-color:#fecaca;color:#991b1b}.qr-scanner-hint{text-align:center;color:#94a3b8;font-size:13px;margin-bottom:10px}.qr-scanner-camera-picker{display:flex;align-items:center;gap:10px;margin-bottom:14px;font-size:13px}.qr-scanner-camera-picker select{flex:1;padding:6px 10px;border-radius:8px;border:1px solid var(--border, #334155);background:var(--bg, #0f172a);color:var(--text)}[data-theme=light] .modal.qr-scanner-modal{background:#fff;color:#1e293b}[data-theme=light] .qr-scanner-camera-picker select{background:#fff;color:#1e293b;border-color:#cbd5e1}.stock-page{max-width:var(--page-max-width);margin:0 auto;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom)}.stock-filters{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.stock-search{flex:1;min-width:200px}.stock-location-filter{min-width:180px}.stock-toggle{display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:6px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;transition:border-color .15s,background .15s}.stock-toggle:hover{border-color:var(--accent)}.stock-toggle input{position:absolute;opacity:0;pointer-events:none}.stock-toggle-track{position:relative;display:inline-block;width:36px;height:20px;background:var(--border);border-radius:10px;transition:background .18s ease;flex-shrink:0}.stock-toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;transition:transform .18s ease}.stock-toggle input:checked+.stock-toggle-track{background:#2e7d32}.stock-toggle input:checked+.stock-toggle-track .stock-toggle-thumb{transform:translate(16px)}.stock-toggle input:focus-visible+.stock-toggle-track{outline:2px solid var(--accent);outline-offset:2px}.stock-toggle-label{font-size:13px;font-weight:500;color:var(--text);white-space:nowrap}.stock-summary{display:flex;gap:14px;margin-bottom:24px;flex-wrap:wrap}.stock-summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.stock-summary-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:18px 20px;display:flex;flex-direction:column;gap:6px;min-width:160px;box-shadow:0 1px 3px #0000000a;transition:transform .15s,box-shadow .15s,border-color .15s}.stock-summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014;border-color:#32947c4d}.stock-summary-label{font-size:10.5px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.stock-summary-value{font-size:1.65rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;line-height:1.1}.stock-table-scroll{overflow-x:auto;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);box-shadow:0 1px 3px #0000000a,0 1px 2px #0000000f}.stock-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;background:transparent}.stock-table thead th{position:sticky;top:0;background:linear-gradient(180deg,var(--bg-elevated) 0%,var(--bg-input) 100%);color:var(--text-muted);font-weight:700;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;padding:12px 14px;text-align:left;border-bottom:2px solid var(--border);white-space:nowrap;z-index:1}.stock-table thead th:first-child{border-top-left-radius:10px}.stock-table thead th:last-child{border-top-right-radius:10px}.stock-table td{padding:11px 14px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle}.stock-table tbody tr:nth-child(2n) td{background:#00000004}[data-theme=dark] .stock-table tbody tr:nth-child(2n) td{background:#ffffff05}.stock-table tbody tr:last-child td{border-bottom:none}.stock-table tbody tr:hover td{background:#32947c0f;transition:background .12s}.stock-row-clickable{cursor:pointer}.stock-row-clickable:hover td{background:#32947c1a!important}.stock-row-empty td{color:var(--text-dim);background:#00000004!important}.stock-row-empty td strong{font-weight:500;color:var(--text-dim)}.stock-col-desc{min-width:200px;font-weight:500}.stock-col-loc{min-width:120px}.stock-col-num{text-align:right;white-space:nowrap;width:90px;font-variant-numeric:tabular-nums}.stock-col-num strong{font-size:14px;font-weight:700;color:var(--accent)}.stock-row-empty .stock-col-num strong{color:var(--text-dim);font-weight:500}.stock-col-movements{min-width:180px}.stock-movement{display:inline-block;font-size:11px;padding:1px 6px;border-radius:var(--radius-pill);margin:1px 3px 1px 0;white-space:nowrap}.stock-mv-in{background:#4ade801a;color:var(--success)}.stock-mv-out{background:#c47a7e1a;color:var(--danger)}.stock-tab-actions{margin-bottom:16px}.stock-entries-list{display:flex;flex-direction:column;gap:12px}.stock-entry-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.stock-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;flex-wrap:wrap;gap:8px}.stock-entry-meta{display:flex;align-items:center;gap:8px}.stock-entry-notes{font-size:12px;margin:0 0 8px}.stock-entry-items{display:flex;flex-direction:column;gap:4px}.stock-entry-item{display:flex;gap:12px;align-items:center;padding:4px 8px;background:var(--bg-input);border-radius:var(--radius-sm);font-size:13px}.stock-entry-item-desc{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stock-entry-item-qty,.stock-entry-item-price,.stock-entry-item-total{white-space:nowrap;font-weight:500}.stock-entry-item-total{min-width:80px;text-align:right}.stock-entry-total{margin-top:8px;text-align:right;font-size:14px;font-weight:700;color:var(--text)}.stock-entry-modal{max-width:680px;width:100%}.stock-entry-form-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:12px}.stock-entry-items-title{font-size:13px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin:16px 0 8px}.stock-entry-item-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.stock-entry-item-select{flex:1;min-width:0}.stock-entry-qty{width:80px!important}.stock-entry-price{width:100px!important}.stock-entry-item-block{margin-bottom:8px}.stock-entry-codes{display:flex;flex-wrap:wrap;gap:6px;padding:4px 0 0 4px;font-size:11px}.stock-entry-code-chip{display:inline-flex;padding:2px 8px;border-radius:var(--radius-pill);background:var(--bg-input);border:1px solid var(--border);font-family:var(--font-mono, monospace);letter-spacing:.02em}.stock-entry-code-supplier{background:#32947c14;border-color:#32947c4d;color:var(--accent)}.stock-entry-line-total{min-width:80px;text-align:right;font-size:13px;font-weight:600}.stock-entry-form-total{margin-top:12px;padding-top:8px;border-top:1px solid var(--border);text-align:right;font-size:14px}.stock-invoice-attachment{margin-bottom:16px}.stock-invoice-empty{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.stock-invoice-hint{font-size:11px}.stock-invoice-preview{display:flex;align-items:center;gap:14px;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);flex-wrap:wrap}.stock-invoice-image{max-width:120px;max-height:90px;border-radius:var(--radius-sm);object-fit:cover;border:1px solid var(--border)}.stock-invoice-pdf{display:flex;align-items:center;gap:8px;font-size:13px}.stock-invoice-pdf-icon{background:var(--danger);color:#fff;padding:4px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:700;letter-spacing:.05em}.stock-invoice-pdf-name{color:var(--text);max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-invoice-actions{display:flex;gap:6px;flex-wrap:wrap}.stock-entry-header-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}.stock-no-attachment-tag{display:inline-block;padding:2px 8px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:#c47a7e26;color:var(--danger);border:1px solid rgba(196,122,126,.4)}.stock-attachment-link{font-size:12px;color:var(--accent);text-decoration:none;font-weight:600}.stock-attachment-link:hover{text-decoration:underline}.stock-exit-source{display:inline-block;padding:2px 8px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.stock-exit-source-manual{background:#32947c1a;color:var(--accent);border:1px solid rgba(50,148,124,.3)}.stock-exit-source-obra{background:#b482281f;color:#b48228;border:1px solid rgba(180,130,40,.3)}.stock-exit-item-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.stock-exit-project{width:200px!important}.stock-entry-add-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.stock-import-modal{max-width:720px;width:95vw}.stock-import-modal input::placeholder,.stock-import-modal .form-input::placeholder{color:#4b5563!important;opacity:1!important}[data-theme=dark] .stock-import-modal input::placeholder,[data-theme=dark] .stock-import-modal .form-input::placeholder{color:#94a3b8!important}.stock-import-tree{max-height:60vh;overflow-y:auto;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:var(--bg-elevated)}.stock-import-super{margin-bottom:8px}.stock-import-super-head,.stock-import-cat-head,.stock-import-art{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:4px;cursor:pointer}.stock-import-super-head{font-size:13px}.stock-import-super-head:hover,.stock-import-cat-head:hover,.stock-import-art:not(.is-excluded):hover{background:var(--bg-card)}.stock-import-cats{padding-left:22px}.stock-import-cat-head{font-size:13px;font-weight:600}.stock-import-arts{padding-left:22px;display:flex;flex-direction:column;gap:1px}.stock-import-art{font-size:12px}.stock-import-art.is-excluded{opacity:.45;cursor:not-allowed}.stock-import-code{font-size:11px;background:var(--bg-card);padding:1px 6px;border-radius:4px;flex-shrink:0}.stock-import-desc{flex:1}.stock-import-supp{font-size:11px}@media(max-width:768px){.stock-page{padding:16px}.stock-filters{flex-direction:column}.stock-entry-form-grid{grid-template-columns:1fr}.stock-entry-item-row,.stock-exit-item-row{flex-wrap:wrap}}.stock-articles-toolbar{margin-bottom:18px}.stock-search-with-field{display:inline-flex;align-items:center;gap:6px;flex:1;min-width:240px;max-width:380px}.stock-search-input-wrap{position:relative;flex:1}.stock-search-input-wrap input.projects-search-input{width:100%}.stock-articles-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.stock-article-card{position:relative;display:flex;flex-direction:column;background:color-mix(in srgb,var(--bg-card) 80%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);border-radius:var(--radius);overflow:hidden;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform .3s cubic-bezier(.4,0,.2,1),border-color .3s ease,box-shadow .3s ease}.stock-article-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--bg-card);transform:translateY(-3px);box-shadow:0 14px 32px -14px #0000008c,0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}.stock-article-card.is-empty{opacity:.7}.stock-article-card.is-empty:hover{opacity:1}.stock-article-thumb-wrap{position:relative;width:100%;aspect-ratio:4 / 3;background:color-mix(in srgb,var(--bg-input) 60%,transparent);overflow:hidden}.stock-article-thumb{width:100%;height:100%;object-fit:cover;display:block}.stock-article-thumb-empty{display:flex;align-items:center;justify-content:center;color:color-mix(in srgb,var(--text-muted) 50%,transparent)}.stock-article-stock-badge{position:absolute;bottom:8px;left:8px;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:999px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.stock-article-stock-badge.has-stock{background:color-mix(in srgb,var(--accent) 30%,transparent);color:color-mix(in srgb,var(--accent) 20%,#ffffff);border:1px solid color-mix(in srgb,var(--accent) 50%,transparent)}.stock-article-stock-badge.no-stock{background:color-mix(in srgb,var(--text-muted) 25%,transparent);color:color-mix(in srgb,var(--text-muted) 30%,#ffffff);border:1px solid color-mix(in srgb,var(--text-muted) 40%,transparent)}.stock-article-stock-badge.is-negative{background:color-mix(in srgb,var(--danger, #c47a7e) 25%,transparent);color:color-mix(in srgb,var(--danger, #c47a7e) 30%,#ffffff);border:1px solid color-mix(in srgb,var(--danger, #c47a7e) 50%,transparent)}.stock-article-attach-badge{position:absolute;top:8px;right:8px;font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:999px;background:#0000008c;color:#fff;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.stock-article-card-body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:4px}.stock-article-code{font-size:10.5px;letter-spacing:.04em;color:color-mix(in srgb,var(--accent) 35%,var(--text-muted));font-weight:700}.stock-article-name{font-size:14px;font-weight:700;margin:0;color:var(--text);letter-spacing:-.01em;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.stock-article-cat{font-size:12px;color:var(--text-muted);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-article-sup{font-size:11px;color:var(--text-dim, var(--text-muted));margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-article-footer{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:6px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--text-muted) 14%,transparent)}.stock-article-cost{font-size:12px;font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums}.stock-article-value{font-size:13px;font-weight:700;color:color-mix(in srgb,var(--accent) 30%,var(--text));font-variant-numeric:tabular-nums}.stock-articles-list-view{display:flex;flex-direction:column}.stock-article-row{display:grid;grid-template-columns:auto auto auto 1fr auto auto auto;align-items:center;gap:14px;padding:12px 14px;border-radius:12px;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 14%,transparent);cursor:pointer;transition:background .2s ease,transform .2s ease,padding .2s ease}.stock-article-row:hover{background:color-mix(in srgb,var(--accent) 8%,transparent);transform:translate(4px);padding-left:20px}.stock-article-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.stock-article-dot.has-stock{background:var(--accent)}.stock-article-dot.no-stock{background:var(--text-muted)}.stock-article-dot.is-negative{background:var(--danger, #c47a7e)}.stock-article-row-thumb{width:38px;height:38px;border-radius:6px;object-fit:cover;flex-shrink:0}.stock-article-row-thumb-empty{display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--bg-input) 60%,transparent);color:var(--text-dim, var(--text-muted));font-size:14px}.stock-article-row-code{font-size:11px;letter-spacing:.04em;color:var(--accent);font-weight:700;font-family:var(--font-mono, monospace)}.stock-article-row-name{font-size:14px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-article-row-cat{font-size:12px;color:var(--text-muted);background:color-mix(in srgb,var(--text-muted) 14%,transparent);padding:3px 9px;border-radius:999px;white-space:nowrap}.stock-article-row-stock{font-size:14px;font-weight:700;text-align:right;font-variant-numeric:tabular-nums;min-width:44px}.stock-article-row-stock.has-stock{color:var(--accent)}.stock-article-row-stock.no-stock{color:var(--text-dim, var(--text-muted))}.stock-article-row-stock.is-negative{color:var(--danger, #c47a7e)}.stock-article-row-value{font-size:13px;color:var(--text);font-variant-numeric:tabular-nums;min-width:72px;text-align:right}.stock-table-thumb{width:36px;height:36px;aspect-ratio:1 / 1;border-radius:50%;object-fit:cover;display:block}.stock-entry-location-row{display:flex;align-items:center;gap:8px;margin-top:6px}.stock-entry-location-row .form-label{flex-shrink:0;margin:0;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase}.stock-entry-location-row .form-input{flex:1;height:30px;font-size:12px}.stock-codes-panel{margin:12px 0 16px;padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--bg-card) 60%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);display:flex;flex-direction:column;gap:8px}.stock-codes-panel textarea{font-family:var(--font-mono, monospace);font-size:13px;resize:vertical}.stock-codes-actions{display:flex;justify-content:flex-end;gap:8px}.stock-import-supplier-toggle{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;border-radius:8px;background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);font-size:13px;cursor:pointer}.stock-import-supplier-toggle input[type=checkbox]{margin:0}.stock-import-supplier-toggle strong{color:var(--text)}.stock-articles-select-toggle{display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,var(--text-muted) 25%,transparent)}.stock-articles-select-toggle.is-active{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--accent);font-weight:600}.stock-article-select-chk{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:5px;border:2px solid color-mix(in srgb,var(--text-muted) 45%,transparent);background:transparent;color:#fff;font-size:13px;font-weight:800;line-height:1;flex-shrink:0}.stock-article-select-chk.is-checked{background:var(--accent);border-color:var(--accent)}.stock-article-card .stock-article-select-chk{position:absolute;top:10px;left:10px;z-index:2;background:color-mix(in srgb,var(--bg, #0f172a) 80%,transparent)}.stock-article-card.is-selected{outline:2px solid var(--accent);outline-offset:-2px}.stock-article-card .stock-article-select-chk.is-checked{background:var(--accent)}.stock-article-row{position:relative}.stock-article-row.is-selected{background:color-mix(in srgb,var(--accent) 8%,transparent);outline:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}.stock-row-clickable.is-selected td{background:color-mix(in srgb,var(--accent) 10%,transparent)}.stock-articles-footer{display:flex;align-items:center;gap:14px;justify-content:center;margin-top:32px;padding-top:24px;border-top:1px solid color-mix(in srgb,var(--text-muted) 16%,transparent);flex-wrap:wrap}.stock-articles-print-qrs{display:inline-flex;align-items:center;padding:10px 18px;font-size:14px;background:#ffffffeb;color:#1e293b;border:1px solid #cbd5e1;border-radius:10px;font-weight:600;transition:background .15s ease,border-color .15s ease,transform .1s ease}.stock-articles-print-qrs:hover{background:#fff;border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}[data-theme=light] .stock-articles-print-qrs{background:#f1f5f9;border-color:#cbd5e1}[data-theme=light] .stock-articles-print-qrs:hover{background:#fff}.projects-flat-row.stock-articles-flat-row{grid-template-columns:auto 1fr auto auto auto auto}.stock-articles-flat-row .stock-article-row-thumb{width:36px;height:36px;object-fit:contain;border-radius:4px;background:transparent;border:none}.stock-articles-flat-row .stock-article-row-thumb-empty{width:36px;height:36px;background:transparent}.stock-articles-flat-code{font-size:11px;letter-spacing:.6px;color:#94a3b8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase}.stock-articles-flat-cat{flex:0 0 auto;font-size:12px;padding:3px 9px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 14%,transparent);color:color-mix(in srgb,var(--text) 70%,transparent);max-width:180px}.stock-articles-flat-row .projects-flat-client{flex:0 0 auto;color:color-mix(in srgb,var(--text) 65%,transparent);font-size:13px;max-width:200px;margin-left:auto;text-align:right}.stock-articles-flat-stock{flex:0 0 auto;font-weight:700;font-variant-numeric:tabular-nums;font-size:13px;min-width:64px;text-align:right}.stock-articles-flat-stock.has-stock{color:var(--accent)}.stock-articles-flat-stock.no-stock{color:color-mix(in srgb,var(--text) 50%,transparent)}.stock-articles-flat-stock.is-negative{color:var(--danger, #c47a7e)}.stock-articles-flat-value{flex:0 0 auto;text-align:right;font-variant-numeric:tabular-nums;font-size:13px;min-width:84px}@media(max-width:920px){.stock-articles-flat-cat,.stock-articles-flat-row .projects-flat-client{display:none}}.stock-article-card-body .stock-article-footer{display:flex;gap:10px;align-items:center;margin-top:8px}.stock-article-cost{font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}.stock-article-sale{margin-left:auto;font-size:14px;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}.stock-articles-flat-cost{font-size:13px;color:#94a3b8;font-variant-numeric:tabular-nums;font-weight:500}.stock-articles-flat-sale{font-size:12px;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);padding:4px 10px;border-radius:999px;font-variant-numeric:tabular-nums}.stock-article-pcard-thumb-wrap{display:flex;justify-content:center;margin:6px 0 2px}.stock-article-pcard-thumb{width:100%;height:140px;object-fit:cover;border-radius:8px;background:#ffffff0f;border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);display:block}.stock-article-pcard-thumb-empty{display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.stock-articles-flat-row .stock-article-row-thumb,.stock-articles-flat-row .stock-article-row-thumb-empty{width:36px!important;height:36px!important;aspect-ratio:1 / 1!important;flex:0 0 36px;border-radius:50%!important;object-fit:cover}.projects-list-table .stock-table-thumb{width:36px!important;height:36px!important;min-width:36px;max-width:36px;aspect-ratio:1 / 1!important;object-fit:cover;border-radius:50%!important;display:block;flex-shrink:0}.projects-list-table td:has(.stock-table-thumb){width:56px;padding:10px 12px}.modal.stocks-modal{max-width:1500px;width:96vw;height:94vh;max-height:94vh;padding:0;display:flex;flex-direction:column;background:var(--bg-elevated);color:var(--text);border-radius:16px;overflow:hidden}.modal.stocks-modal>.stock-entry-page,.modal.stocks-modal>.inventory-page{flex:1;overflow-y:auto;margin:0;padding:24px 28px 32px;background:transparent;color:var(--text)}.modal.stocks-modal label.form-label,.modal.stocks-modal h1,.modal.stocks-modal h2,.modal.stocks-modal h3,.modal.stocks-modal h4{color:var(--text)}.modal.stocks-modal .form-input,.modal.stocks-modal input:not(.sxt-input),.modal.stocks-modal select,.modal.stocks-modal textarea{background:#ffffff14;border:1px solid rgba(255,255,255,.2);color:var(--text)}.modal.stocks-modal .form-input::placeholder,.modal.stocks-modal input::placeholder{color:color-mix(in srgb,var(--text) 50%,transparent)}.modal.stocks-modal .text-dim{color:color-mix(in srgb,var(--text) 65%,transparent)}.modal.stocks-modal .text-muted{color:color-mix(in srgb,var(--text) 78%,transparent)}.modal.stocks-modal .page-header{position:sticky;top:-24px;z-index:5;background:var(--bg-elevated);padding:14px 24px;margin:-24px -28px 0;border-bottom:1px solid color-mix(in srgb,var(--text) 14%,transparent);display:flex;align-items:center;gap:12px}.modal.stocks-modal>.stock-entry-page>.page-header+*,.modal.stocks-modal>.inventory-page>.page-header+*{margin-top:18px}.modal.stocks-modal .page-header>.btn-ghost{background:#ffffff29;border:1px solid rgba(255,255,255,.3);color:var(--text);font-weight:600}.modal.stocks-modal .page-header>.btn-ghost:hover{background:#ffffff47;border-color:#ffffff80}[data-theme=light] .modal.stocks-modal .page-header{background:#fff;border-bottom-color:#e2e8f0}[data-theme=light] .modal.stocks-modal .page-header>.btn-ghost{background:#f1f5f9;border-color:#cbd5e1;color:#1e293b}[data-theme=light] .modal.stocks-modal .page-header>.btn-ghost:hover{background:#e2e8f0;border-color:#94a3b8}[data-theme=light] .modal.stocks-modal{background:#fff;color:#1e293b}[data-theme=light] .modal.stocks-modal .form-input,[data-theme=light] .modal.stocks-modal input:not(.sxt-input),[data-theme=light] .modal.stocks-modal select,[data-theme=light] .modal.stocks-modal textarea{background:#f8fafc;border-color:#cbd5e1;color:#1e293b}[data-theme=light] .modal.stocks-modal .form-input::placeholder,[data-theme=light] .modal.stocks-modal input::placeholder{color:#94a3b8}[data-theme=light] .modal.stocks-modal .page-header{background:#fffffff2;border-bottom-color:#e2e8f0}.stock-entry-page{padding:24px 32px 64px;max-width:1600px;margin:0 auto}.stock-entry-page-header{display:flex;align-items:center;gap:14px;margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent)}.stock-entry-page-header h1{font-size:1.6rem;font-weight:800;letter-spacing:-.02em;margin:0;background:linear-gradient(100deg,color-mix(in srgb,var(--accent) 25%,#ffffff),color-mix(in srgb,var(--accent) 55%,#ffffff),color-mix(in srgb,var(--accent) 25%,#ffffff));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:stock-entry-shimmer 8s linear infinite}@keyframes stock-entry-shimmer{0%{background-position:0% 50%}to{background-position:200% 50%}}.stock-entry-draft-status{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);color:color-mix(in srgb,var(--accent) 35%,var(--text))}.stock-entry-page .form-group{margin-bottom:24px}.stock-entry-page .form-label{font-size:12px;font-weight:600;color:color-mix(in srgb,var(--accent) 40%,#cbd5e1);margin-bottom:6px;display:block}.stock-entry-page .stock-entry-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-bottom:24px}.stock-entry-page .form-input,.stock-entry-page input,.stock-entry-page select,.stock-entry-page textarea{background:#ffffff29;border:1px solid rgba(255,255,255,.22);color:#f1f5f9}.stock-entry-page .form-input:hover:not(:disabled),.stock-entry-page input:hover:not(:disabled),.stock-entry-page select:hover:not(:disabled),.stock-entry-page textarea:hover:not(:disabled){border-color:#ffffff57;background:#fff3}.stock-entry-page .form-input::placeholder,.stock-entry-page input::placeholder,.stock-entry-page textarea::placeholder{color:#f1f5f9bf}.stock-entry-table .form-input,.stock-entry-table input,.stock-entry-table select,.stock-entry-table .sxt-cell.is-editing .form-input{background:transparent;border:none}.stock-entry-items-toolbar{display:flex;align-items:center;gap:10px;margin:24px 0 12px}.stock-entry-items-toolbar .stock-entry-items-title{margin:0;font-size:16px;font-weight:700;color:#f1f5f9;letter-spacing:-.01em}.stock-entry-table-wrap{overflow:auto;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:14px;background:radial-gradient(120% 80% at 0% 0%,color-mix(in srgb,var(--accent) 6%,transparent) 0%,transparent 70%),color-mix(in srgb,var(--bg-card) 70%,transparent);box-shadow:0 12px 30px -16px #0006,inset 0 1px color-mix(in srgb,#ffffff 5%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.stock-entry-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.stock-entry-table thead th{position:sticky;top:0;z-index:2;background:var(--bg-elevated);color:var(--text);font-size:12px;font-weight:700;letter-spacing:.02em;text-align:left;padding:12px;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 30%,transparent)}.stock-entry-table tbody td{padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 12%,transparent);vertical-align:middle;transition:background .15s ease}.stock-entry-table tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--bg-card) 25%,transparent)}.stock-entry-table tbody tr:hover td{background:color-mix(in srgb,var(--accent) 8%,transparent)}.sxt-cell{position:relative;cursor:cell;-webkit-user-select:none;user-select:none}.sxt-cell-display{padding:6px 10px;font-size:13px;min-height:28px;display:flex;align-items:center;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sxt-cell.is-selected{background:color-mix(in srgb,var(--accent) 14%,transparent)!important;box-shadow:inset 0 0 0 2px var(--accent);z-index:1}.sxt-cell.is-fill{background:color-mix(in srgb,var(--accent) 10%,transparent)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.sxt-cell.is-editing{background:color-mix(in srgb,var(--bg-card) 80%,transparent)!important;box-shadow:inset 0 0 0 2px var(--accent);padding:0}.sxt-cell.is-editing .form-input{width:100%;height:100%;min-height:36px;border:none;background:transparent;padding:6px 10px;font-size:13px;color:var(--text);border-radius:0}.sxt-cell.is-editing .form-input:focus{outline:none;box-shadow:none}.sxt-fill-handle{position:absolute;bottom:-3px;right:-3px;width:8px;height:8px;background:var(--accent);border:1px solid var(--bg-card);border-radius:1px;cursor:crosshair;z-index:2}.sxt-fill-handle:hover{transform:scale(1.4);background:color-mix(in srgb,var(--accent) 60%,#ffffff)}.sxt-num{font-variant-numeric:tabular-nums;font-weight:600}.stock-entry-table select.form-input{padding-right:28px}.sxt-col-num{width:44px;text-align:center;color:var(--text-muted);font-variant-numeric:tabular-nums;font-weight:700;font-size:12px}.sxt-col-product{min-width:320px}.sxt-col-codes{min-width:220px}.sxt-col-qty{width:100px}.sxt-col-price{width:120px}.sxt-col-total,.stock-entry-table thead th.sxt-col-total{width:160px;min-width:160px;text-align:center;font-variant-numeric:tabular-nums;font-weight:700;font-size:14px;color:var(--text);white-space:nowrap}.sxt-col-loc{min-width:240px}.sxt-col-loc4{min-width:100px}.stock-entry-table tbody tr.is-free-row td{background:color-mix(in srgb,var(--accent) 4%,transparent)}.stock-entry-table tbody tr.is-free-row:hover td{background:color-mix(in srgb,var(--accent) 10%,transparent)}.sxt-cell-disabled{color:var(--text-muted);font-style:italic;text-align:center;padding:0 12px}.sxt-btn-free{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 70%,#4f9b8f),color-mix(in srgb,var(--accent) 90%,#095872))}.sxt-free-tag{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:999px;margin-right:6px;background:color-mix(in srgb,var(--accent) 25%,transparent);color:color-mix(in srgb,var(--accent) 25%,#ffffff);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}.sxt-col-actions{width:76px;text-align:right;white-space:nowrap}.sxt-edit-article-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-right:4px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 14%,transparent);color:color-mix(in srgb,var(--accent) 30%,#ffffff);border-radius:6px;cursor:pointer;transition:background .2s ease,transform .2s ease}.sxt-edit-article-btn:hover{background:color-mix(in srgb,var(--accent) 28%,transparent);transform:scale(1.08)}.sxt-codes-chips{display:flex;flex-wrap:wrap;gap:4px}.sxt-codes-chips .stock-entry-code-chip{font-size:10.5px;padding:2px 8px;border-radius:999px}.stock-entry-table-add{cursor:pointer}.stock-entry-table-add .stock-entry-table-add-cell{padding:14px;text-align:center;color:var(--text-muted);font-size:13px;font-weight:700;letter-spacing:.02em;transition:background .2s ease,color .2s ease;border-bottom:none;background:transparent}.stock-entry-table-add:hover .stock-entry-table-add-cell{background:color-mix(in srgb,var(--accent) 12%,transparent);color:color-mix(in srgb,var(--accent) 30%,#ffffff)}.stock-entry-table tfoot td{border-top:2px solid color-mix(in srgb,var(--accent) 30%,transparent);padding:16px 12px;background:color-mix(in srgb,var(--accent) 8%,transparent);font-size:13px;color:var(--text)}.stock-entry-table tfoot .sxt-col-total{font-size:17px!important;font-weight:800!important;color:var(--text)!important}.stock-entry-summary{margin-top:28px}.stock-entry-summary-head{display:flex;align-items:baseline;gap:12px;margin-bottom:12px;flex-wrap:wrap}.stock-entry-summary-head h3{margin:0;font-size:15px;font-weight:700;color:#f1f5f9}.stock-entry-summary-hint{font-size:12px;color:#f1f5f9d9;font-style:italic;margin:8px 0 0;text-align:right}.stock-entry-page .stock-entry-discard-draft{background:#ef44442e;border:1px solid rgba(239,68,68,.45);color:#fecaca;font-weight:600}.stock-entry-page .stock-entry-discard-draft:hover{background:#ef444452;border-color:#ef4444a6;color:#fff}.stock-entry-page .stock-invoice-empty .btn-ghost,.stock-entry-page .stock-invoice-actions .btn-ghost{background:color-mix(in srgb,var(--accent) 25%,transparent);border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);color:var(--text);font-weight:600}.stock-entry-page .stock-invoice-empty .btn-ghost:hover,.stock-entry-page .stock-invoice-actions .btn-ghost:hover{background:color-mix(in srgb,var(--accent) 40%,transparent);border-color:color-mix(in srgb,var(--accent) 75%,transparent)}[data-theme=light] .stock-entry-page .stock-invoice-empty .btn-ghost,[data-theme=light] .stock-entry-page .stock-invoice-actions .btn-ghost{background:color-mix(in srgb,var(--accent) 18%,#ffffff);border-color:color-mix(in srgb,var(--accent) 55%,#cbd5e1);color:#1e293b}[data-theme=light] .stock-entry-page .stock-invoice-empty .btn-ghost:hover,[data-theme=light] .stock-entry-page .stock-invoice-actions .btn-ghost:hover{background:color-mix(in srgb,var(--accent) 30%,#ffffff)}.stock-entry-summary-explain{margin-top:14px;padding:14px 18px;border-radius:10px;background:color-mix(in srgb,var(--text) 6%,transparent);border:1px solid color-mix(in srgb,var(--text) 14%,transparent);color:var(--text);font-size:13px;line-height:1.55}.stock-entry-summary-explain p{margin:0 0 8px}.stock-entry-summary-explain p:last-child{margin-bottom:0}.stock-entry-summary-explain strong{color:var(--text);font-weight:700}.stock-entry-summary-explain code{display:inline-block;font-family:var(--font-mono, monospace);font-size:12px;padding:3px 8px;border-radius:4px;background:color-mix(in srgb,var(--text) 12%,transparent);color:color-mix(in srgb,var(--accent) 55%,var(--text))}[data-theme=light] .stock-entry-summary-explain{background:#f1f5f9;border-color:#cbd5e1;color:#1e293b}[data-theme=light] .stock-entry-summary-explain strong{color:#0f172a}[data-theme=light] .stock-entry-summary-explain code{background:#e2e8f0;color:color-mix(in srgb,var(--accent) 70%,#1e293b)}.stock-entry-summary-formula{text-align:center;padding:6px 0}.stock-entry-summary-wrap{overflow:auto;border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);border-radius:12px;background:color-mix(in srgb,var(--bg-card) 55%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.stock-entry-summary-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.stock-entry-summary-table thead th{background:var(--bg-elevated);color:var(--text);font-size:11px;font-weight:700;text-align:left;padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 28%,transparent)}.stock-entry-summary-table thead th.num,.stock-entry-summary-table tbody td.num,.stock-entry-summary-table tfoot td.num{text-align:right;font-variant-numeric:tabular-nums}.stock-entry-summary-table tbody td{padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 10%,transparent)}.stock-entry-summary-table tbody tr:last-child td{border-bottom:none}.stock-entry-summary-table tbody tr:hover td{background:color-mix(in srgb,var(--accent) 6%,transparent)}.stock-entry-summary-extra{color:var(--accent);font-weight:700}.stock-entry-summary-table tfoot td{padding:12px;border-top:2px solid color-mix(in srgb,var(--text-muted) 25%,transparent);background:color-mix(in srgb,var(--accent) 6%,transparent);font-weight:600;font-size:14px}@media(max-width:980px){.stock-entry-page{padding:16px}.stock-entry-page .stock-entry-form-grid{grid-template-columns:1fr}}.stock-entry-photos-group{margin-top:8px}.stock-entry-photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-bottom:6px}.stock-entry-photo-tile{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:1px solid color-mix(in srgb,var(--text-muted) 22%,transparent)}.stock-entry-photo-tile img{width:100%;height:100%;object-fit:cover;cursor:pointer;display:block}.stock-entry-photo-remove{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:#dc2626eb;color:#fff;border:none;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.stock-entry-photo-remove:hover{background:#b91c1c}.stock-entry-photo-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;aspect-ratio:1;border-radius:8px;border:2px dashed color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 6%,transparent);color:var(--accent);font-size:13px;cursor:pointer;transition:background .15s ease;font-family:inherit}.stock-entry-photo-add:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 14%,transparent)}.stock-entry-photo-add:disabled{opacity:.55;cursor:wait}.stock-entry-photo-add-icon{font-size:26px}.stock-entry-photo-add-label{font-weight:600}[data-theme=light] .stock-entry-photo-add{background:#f8fafc;color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.stock-exit-scan-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:10px;background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);color:var(--accent);font-weight:600;font-size:13px;cursor:pointer;transition:all .15s ease}.stock-exit-scan-btn:hover{background:color-mix(in srgb,var(--accent) 22%,transparent)}.stock-exit-photo-cell{text-align:center}.stock-exit-photo-btn{font-size:18px;padding:4px 10px;line-height:1}.stock-exit-photo-preview{position:relative;display:inline-block}.stock-exit-photo-preview img{width:44px;height:44px;object-fit:cover;border-radius:6px;border:1px solid var(--border, #334155);cursor:pointer;display:block}.stock-exit-photo-remove{position:absolute;top:-6px;right:-6px;width:18px;height:18px;padding:0;border-radius:50%;background:#dc2626;color:#fff;border:none;font-size:12px;font-weight:700;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center}.stock-exit-photo-remove:hover{background:#b91c1c}.view-toggle{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--bg-card);margin-left:auto}.view-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;background:transparent;cursor:pointer;color:var(--text-muted);transition:background .12s,color .12s}.view-toggle-btn+.view-toggle-btn{border-left:1px solid var(--border)}.view-toggle-btn:hover{background:var(--bg-elevated);color:var(--text)}.view-toggle-btn.is-active{background:var(--accent);color:#fff}.view-toggle-btn.is-active:hover{background:var(--accent)}.inventory-page{max-width:var(--page-content-max);margin:0 auto;padding:32px 24px}.inv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.inv-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow);cursor:pointer;transition:var(--transition);display:flex;flex-direction:column;gap:6px;min-width:0}.inv-card:hover{border-color:var(--accent-teal);box-shadow:var(--shadow-teal);transform:translateY(-2px)}.inv-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.inv-card-name{font-size:.95rem;font-weight:700;color:var(--text);margin:0;line-height:1.3;word-break:break-word}.inv-card-meta{font-size:12px;margin:0}.inv-card-footer{display:flex;align-items:center;justify-content:flex-end;margin-top:4px;padding-top:10px;border-top:1px solid var(--border)}.inv-card-footer .btn-danger-ghost{font-size:12px;padding:4px 10px}.inv-summary{display:flex;gap:12px;margin-bottom:16px}.inv-summary-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;display:flex;flex-direction:column;gap:4px;min-width:120px}.inv-summary-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.inv-summary-value{font-size:1.2rem;font-weight:700;color:var(--text)}.inv-search{max-width:400px;margin-bottom:16px}.inv-group{margin-bottom:20px}.inv-group-title{font-size:1.15rem;font-weight:700;color:#fff;margin:0 0 12px;padding-left:14px;border-left:4px solid var(--accent);line-height:1.2;text-shadow:0 1px 2px rgba(0,0,0,.25)}.inv-subgroup{margin-bottom:12px}.inv-subgroup-title{font-size:.9rem;font-weight:600;color:#ffffffd9;margin:0 0 6px;font-style:italic;text-shadow:0 1px 2px rgba(0,0,0,.2)}.inv-table-scroll{overflow-x:auto}.inv-table{width:100%;border-collapse:collapse;font-size:13px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.inv-table th{background:var(--bg-input);color:var(--text-muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.03em;padding:8px 12px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.inv-table td{padding:6px 12px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle}.inv-table tr:last-child td{border-bottom:none}.inv-table tr:hover td{background:var(--bg-elevated)}.inv-row-active td{background:#32947c0a}.inv-col-desc{min-width:200px;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inv-col-stock{width:80px;text-align:center}.inv-col-cost{width:90px;text-align:right}.inv-col-input{width:80px}.inv-col-loc{width:180px}.inv-col-val{width:100px;text-align:right}.inv-input{width:70px!important;padding:4px 6px!important;font-size:12px!important;text-align:right}.inv-col-loc .catalog-suggest-input{font-size:12px!important;padding:4px 6px!important}.inv-col-loc .catalog-suggest-wrap{min-height:30px;padding:3px 6px}.inv-col-diff{width:70px;text-align:center}.inv-col-num{text-align:right;white-space:nowrap;width:80px}.inv-col-type{width:100px;text-align:center}.inv-analysis-toggle{margin-bottom:12px;font-size:13px;font-weight:600}.inv-analysis-toggle-new{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;background:color-mix(in srgb,var(--accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;color:var(--accent);margin-bottom:16px;transition:background .15s,border-color .15s}.inv-analysis-toggle-new:hover{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:color-mix(in srgb,var(--accent) 55%,transparent)}.inv-analysis-toggle-chevron{font-size:10px;opacity:.8}.inv-analysis{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #0000000f}.inv-analysis .inv-summary{margin-bottom:18px}.inv-analysis-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:16px}.inv-analysis-card{padding:12px 14px;border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px;border-left:3px solid transparent}.inv-analysis-ok{background:#32947c0f;border-left-color:var(--accent)}.inv-analysis-loss{background:#dc35450f;border-left-color:#dc3545}.inv-analysis-surplus{background:#1987540f;border-left-color:#198754}.inv-analysis-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.inv-analysis-value{font-size:1.3rem;font-weight:700;color:var(--text)}.inv-analysis-amount{font-size:13px;font-weight:600}.inv-analysis-loss .inv-analysis-amount{color:#dc3545}.inv-analysis-surplus .inv-analysis-amount{color:#198754}.inv-analysis-empty{font-size:13px;text-align:center;padding:12px 0}.inv-disc-table{margin-top:8px}.inv-disc-loss td{background:#dc354508}.inv-disc-surplus td{background:#19875408}.inv-disc-tag{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.inv-disc-tag-loss{background:#dc35451a;color:#dc3545}.inv-disc-tag-surplus{background:#1987541a;color:#198754}@media(max-width:768px){.inventory-page{padding:16px}.inv-grid{grid-template-columns:1fr}.inv-summary{flex-wrap:wrap}.inv-analysis-summary{grid-template-columns:1fr 1fr}}.inventory-page.stock-entry-page{max-width:none;padding:0}.inv-toolbar{margin-top:16px}.inv-toolbar .inv-search-wrap{position:relative;flex:1;max-width:360px;display:flex;align-items:center}.inv-toolbar .inv-search-wrap svg{position:absolute;left:12px;color:var(--text-muted);pointer-events:none}.inv-toolbar .inv-search-input{padding-left:34px;width:100%}.inv-toolbar-count{font-size:12px;white-space:nowrap}.inv-table-modern tbody td{padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 14%,transparent)}.inv-table-modern tbody tr.inv-row-active td{background:color-mix(in srgb,var(--accent) 6%,transparent)}.inv-table-modern .inv-input{width:80px;text-align:right}.inv-table-modern .sxt-col-product strong{font-weight:600}.inv-group-title{margin:22px 0 8px;font-size:15px;font-weight:700;color:var(--text);border-left:3px solid var(--accent);padding-left:10px}.inv-subgroup-title{margin:12px 0 6px;font-size:13px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px}.inv-scope{background:color-mix(in srgb,var(--text-muted) 6%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);border-radius:10px;padding:14px 16px;margin-bottom:16px}[data-theme=light] .inv-scope{background:#f8fafc;border-color:#e2e8f0}.inv-scope-header{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.inv-scope-header .form-label{margin:0;font-weight:600;white-space:nowrap}.inv-scope-type-wrap{flex:0 1 360px;min-width:240px}.inv-scope-count{margin-left:auto;font-size:12px;color:var(--text-muted);font-weight:600;padding:4px 10px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);border-radius:999px}.inv-scope-fields{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.inv-scope-fields>*{flex:1 1 200px;min-width:0}.inv-scope-fields-loc>*{flex:1 1 140px}.inv-scope-fields button{flex:0 0 auto}.stocks-list .stocks-list-row{display:flex!important;align-items:center;gap:14px;white-space:nowrap;overflow:hidden}.stocks-list .stocks-list-row>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.stocks-list .projects-flat-dot{flex:0 0 auto}.stocks-list .projects-flat-name{font-weight:600;flex:0 0 auto;max-width:240px}.stocks-list .projects-flat-client{flex:0 0 auto;color:color-mix(in srgb,var(--text) 65%,transparent);font-size:13px;max-width:320px;margin-left:auto;text-align:right}.stocks-list .stocks-list-qty{flex:0 0 auto;text-align:right;font-variant-numeric:tabular-nums;color:color-mix(in srgb,var(--text) 65%,transparent);font-size:13px}.stocks-list .stocks-list-value{flex:0 0 auto;text-align:right;font-variant-numeric:tabular-nums;font-size:13px;color:var(--text)}.stocks-list .stocks-list-date{flex:0 0 auto;color:color-mix(in srgb,var(--text) 65%,transparent);font-size:12px;text-align:right}@media(max-width:920px){.stocks-list .stocks-list-row{grid-template-columns:14px 1fr auto auto}.stocks-list .projects-flat-client,.stocks-list .stocks-list-date{display:none}}.stocks-list-actions{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;opacity:0;transition:opacity .15s ease}.stocks-list-row:hover .stocks-list-actions{opacity:1}.stocks-list-icon-btn{background:transparent;border:none;padding:4px 8px;font-size:14px;cursor:pointer;color:var(--text-muted);border-radius:6px;line-height:1}.stocks-list-icon-btn:hover{background:#ffffff14;color:var(--text)}.stocks-list-delete{font-size:18px}.stocks-list-delete:hover{color:var(--danger, #c47a7e);background:#c47a7e1f}.modal.bulk-qr-modal{max-width:1200px;width:96vw;height:90vh;max-height:90vh;display:flex;flex-direction:column}.modal.bulk-qr-modal .modal-body{flex:1;overflow-y:auto;padding:18px 22px}[data-theme=light] .modal.bulk-qr-modal{background:#fff;color:#1e293b}.bulk-qr-toolbar{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);margin-bottom:16px;flex-wrap:wrap}.bulk-qr-size-toggle{display:inline-flex;border:1px solid color-mix(in srgb,var(--text-muted) 28%,transparent);border-radius:8px;overflow:hidden}.bulk-qr-size-btn{padding:6px 12px;background:transparent;border:none;color:var(--text);font-size:13px;cursor:pointer;border-right:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent)}.bulk-qr-size-btn:last-child{border-right:none}.bulk-qr-size-btn.is-active{background:var(--accent);color:#fff}.bulk-qr-grid{display:grid;gap:14px}.bulk-qr-grid[data-size="25"]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.bulk-qr-grid[data-size="40"]{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.bulk-qr-grid[data-size="60"]{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.bulk-qr-card{background:color-mix(in srgb,var(--text-muted) 5%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 18%,transparent);border-radius:10px;padding:14px 10px;text-align:center}[data-theme=light] .bulk-qr-card{background:#f8fafc;border-color:#e2e8f0}.bulk-qr-card-img{width:100%;max-width:220px;height:auto;background:#fff;border-radius:6px;padding:6px;margin-bottom:8px}.bulk-qr-card-loading{width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--text-muted) 10%,transparent);border-radius:6px;margin-bottom:8px;font-size:22px;color:var(--text-muted)}.bulk-qr-card-code{font-weight:800;font-size:13px;letter-spacing:.2px;margin-bottom:4px;color:var(--text)}.bulk-qr-card-desc{font-size:12px;line-height:1.3;color:var(--text)}.bulk-qr-card-sup{font-size:11px;margin-top:4px}.sip{padding:4px 0}.sip-empty{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:18px 22px}.sip-warning{margin:0;color:#d97706;font-size:13px;line-height:1.55}.sip-info{margin:0;color:var(--text);font-size:13px;line-height:1.55}.sip-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:0 4px;margin-bottom:12px}.sip-picker{display:flex;flex-direction:column;gap:4px;flex:1;min-width:260px;max-width:520px}.sip-picker-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}[data-theme=light] .sip-picker-label{color:#fffc}.sip-recommended-hint{margin:0 4px 14px;font-size:12px;color:var(--text-muted)}.sip-owner-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;margin-bottom:12px}.sip-owner-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.sip-owner-input{flex:1;min-width:220px;max-width:360px;font-size:13px}.sip-owner-hint{font-size:11px;color:var(--text-muted);flex-basis:100%}[data-theme=light] .sip-recommended-hint{color:#ffffffd9}.sip-info-wrap{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.sip-template-name{font-size:14px;color:var(--text)}[data-theme=light] .sip-template-name{color:#fff}[data-theme=light] .sip-template-meta,[data-theme=light] .sip-template-meta .text-dim{color:#fffc}[data-theme=light] .sip-template-code{background:#ffffff2e;color:#fff}.sip-template-meta{display:flex;align-items:center;gap:6px;font-size:11px}.sip-template-code{font-family:var(--font-mono, monospace);font-size:11px;background:var(--bg-input);padding:1px 6px;border-radius:4px;color:var(--text-muted)}.sip-testing-btn-active{background:var(--success, #16a34a)!important}.sip-test-banner{display:inline-block;margin:0 0 14px;padding:4px 10px;font-size:11px;font-weight:600;color:var(--accent);background:#ffffffb3;border:1px solid var(--accent);border-radius:999px}[data-theme=light] .sip-test-banner{background:#ffffffeb}.sip-form{display:flex;flex-direction:column;gap:16px}.sip-section{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px 20px;display:flex;flex-direction:column;gap:14px}.sip-section-title{margin:0;font-size:14px;font-weight:700;color:var(--text)}.sip-section-desc{margin:-8px 0 0;font-size:12px;color:var(--text-muted)}.sip-question{display:flex;flex-direction:column;gap:6px}.sip-q-label{font-size:13px;font-weight:600;color:var(--text)}.sip-q-required{color:var(--danger, #dc2626);margin-left:4px}.sip-q-desc{margin:0;font-size:11px;color:var(--text-muted)}.sip-pills{display:flex;flex-wrap:wrap;gap:6px}.sip-pill{padding:4px 12px;font-size:12px;font-weight:600;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-muted);cursor:pointer;transition:var(--transition)}.sip-pill:disabled{opacity:.65;cursor:not-allowed}.sip-pill.is-selected{background:var(--accent);border-color:var(--accent);color:#fff}.sip-rating{display:inline-flex;align-items:center;gap:4px}.sip-star{background:none;border:none;font-size:22px;color:var(--border);cursor:pointer;padding:0 2px;line-height:1}.sip-star:disabled{cursor:not-allowed}.sip-star.is-filled{color:#f59e0b}.sip-rating-val{margin-left:8px;font-size:11px;color:var(--text-muted)}.sip-scale{display:flex;align-items:center;gap:10px;max-width:360px}.sip-scale input[type=range]{flex:1}.sip-scale-val{font-size:12px;font-weight:600;min-width:24px}.sip-save-status{font-size:12px;color:var(--text-muted);align-self:center}[data-theme=light] .sip-save-status{color:#ffffffd9}.sip-section-edit-head{display:flex;gap:6px;align-items:center}.sip-section-title-input{flex:1;font-weight:700;font-size:14px}.sip-section-desc-input{font-size:12px}.sip-question-editing{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:10px 12px;gap:8px}.sip-question-editing.is-answered{opacity:.78;border-left:3px solid var(--accent)}.sip-question-editing.is-answered .form-input:disabled,.sip-question-editing.is-answered input[type=checkbox]:disabled{cursor:not-allowed}.sip-q-edit-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.sip-q-edit-row>input.form-input{flex:1;min-width:200px}.sip-q-type-select{width:160px}.sip-q-required-label{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-muted);cursor:pointer}.sip-q-desc-input,.sip-q-options-input{font-size:12px}.sip-add-section-btn{align-self:flex-start;margin-top:8px}.sip-share{background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;padding:14px 18px;margin-bottom:12px;display:flex;flex-direction:column;gap:12px}.sip-share-row{display:flex;flex-direction:column;gap:4px}.sip-share-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.sip-share-input-wrap{display:flex;gap:6px;align-items:center}.sip-share-input{flex:1;font-family:var(--font-mono, monospace);font-size:12px;background:var(--bg-input);cursor:text}.sip-share-actions{display:flex;align-items:center;gap:12px;margin-top:6px;flex-wrap:wrap}.sip-share-actions .btn-primary{text-decoration:none;display:inline-flex;align-items:center}.sip-share-actions .is-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.sip-share-warn{font-size:11px;color:#92400e;background:#ffffffd9;padding:3px 10px;border:1px solid rgba(245,158,11,.5);border-radius:999px;font-weight:600}.sip-share-ok{font-size:11px;color:#166534;background:#ffffffd9;padding:3px 10px;border:1px solid rgba(22,163,74,.5);border-radius:999px;font-weight:600}.sip-locked-btn{background:var(--danger, #dc2626)!important}.sip-btn-locked,.sip-btn-locked:hover{background:var(--danger, #dc2626)!important;border-color:var(--danger, #dc2626)!important;color:#fff!important;cursor:not-allowed}.sip-locked-banner{background:#ffffff8c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.3);border-left:3px solid var(--danger, #dc2626);color:var(--text);border-radius:10px;padding:10px 14px;margin:0 0 14px;font-size:13px;font-weight:600}[data-theme=dark] .sip-locked-banner{background:#1e1e1e8c;border-color:#ffffff14}.sip-q-answered-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:#32947c24;color:var(--accent);border:1px solid rgba(50,148,124,.35);padding:2px 8px;border-radius:var(--radius-pill)}.sip-creation-warn{display:inline-block;margin:0 0 14px;padding:3px 10px;background:#ffffffd9;color:#92400e;border:1px solid rgba(245,158,11,.5);border-radius:999px;font-size:11px;font-weight:600}.sip-history{margin:8px 0 18px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 18px}.sip-history-title{margin:0 0 10px;font-size:13px;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:.04em}.sip-history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.sip-history-item{padding:8px 12px;background:var(--bg-elevated);border-radius:8px;border-left:3px solid var(--border)}.sip-history-lock{border-left-color:#b45309}.sip-history-unlock{border-left-color:var(--accent)}.sip-history-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:12px}.sip-history-action{font-weight:700;color:var(--text)}.sip-history-date,.sip-history-user{color:var(--text-muted)}.sip-history-user strong{color:var(--text)}.sip-history-changes{margin:6px 0 0;font-size:12px;color:var(--text);line-height:1.5;white-space:pre-wrap}.sip-internal-banner{margin:0 0 18px;padding:14px 18px;border-radius:10px;background:color-mix(in srgb,var(--accent) 8%,var(--bg-card));border-left:4px solid var(--accent);border-top:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-right:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-bottom:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}.sip-internal-banner strong{display:block;margin-bottom:6px;font-size:14px;color:var(--accent-teal)}.sip-internal-banner p{margin:0;font-size:13.5px;line-height:1.5;color:var(--text)}[data-theme=light] .sip-internal-banner{background:color-mix(in srgb,var(--accent) 4%,var(--bg-card));border-color:color-mix(in srgb,var(--accent) 30%,var(--border));border-left-color:var(--accent);box-shadow:var(--shadow)}.se{padding:4px 0}.se-empty{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:18px 22px}.se-empty p{margin:0;font-size:13px;color:var(--text-muted)}.se-count{margin:0 0 12px;font-size:13px;font-weight:600;color:var(--text)}[data-theme=light] .se-count{color:#fff}.se-list{display:flex;flex-direction:column;gap:10px}.se-card{background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;padding:14px 18px;display:flex;flex-direction:column;gap:8px}.se-card-failed{border-left-color:var(--danger, #dc2626)}.se-card-head{display:flex;align-items:center;gap:10px;font-size:11px;flex-wrap:wrap}.se-icon{font-size:14px}.se-status{font-weight:700;color:var(--text)}.se-card-failed .se-status{color:var(--danger, #dc2626)}.se-date,.se-from{color:var(--text-muted)}.se-row{display:flex;gap:6px;font-size:12px}.se-label{color:var(--text-muted);font-weight:600;min-width:60px}.se-to{color:var(--text);font-family:var(--font-mono, monospace)}.se-subject{color:var(--text)}.se-body-details{margin-top:4px}.se-body-details summary{font-size:11px;color:var(--accent);cursor:pointer;font-weight:600}.se-body{margin:6px 0 0;background:var(--bg-elevated);padding:10px 12px;border-radius:6px;font-size:12px;font-family:var(--font-mono, monospace);white-space:pre-wrap;word-break:break-word;color:var(--text)}.se-error{margin:0;padding:8px 12px;background:#dc262614;border-radius:6px;color:#b91c1c;font-size:12px;font-weight:600}.sub{padding:4px 0}.sub-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:14px;padding:0 4px}.sub-count{font-size:13px;font-weight:600;color:var(--text)}[data-theme=light] .sub-count{color:#fff}.sub-only-latest{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);cursor:pointer}[data-theme=light] .sub-only-latest{color:#ffffffd9}.sub-empty{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:18px 22px}.sub-empty p{margin:0;font-size:13px;color:var(--text-muted)}.sub-list{display:flex;flex-direction:column;gap:16px}.sub-section-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px 20px;display:flex;flex-direction:column;gap:14px}.sub-section-card-title{margin:0;font-size:14px;font-weight:700;color:var(--text)}.sub-question-block{display:flex;flex-direction:column;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--border)}.sub-question-block:last-child{border-bottom:none;padding-bottom:0}.sub-q-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.sub-q-label{font-size:13px;font-weight:600;color:var(--text);flex:1}.sub-q-actions{display:flex;gap:4px;flex-shrink:0}.sub-q-ask-btn{flex-shrink:0;font-size:11px}.sub-q-lock-btn{font-size:11px}.sub-q-lock-btn.is-locked{background:#4755692e!important;border-color:#475569!important;color:#1e293b!important}.sub-q-locked-badge{display:inline-flex;align-items:center;font-size:10px;font-weight:700;background:#475569;color:#fff;padding:2px 8px;border-radius:var(--radius-pill);margin-left:8px}.sub-question-block.is-locked{opacity:.85}.sub-q-locked-hint{margin:4px 0;padding:8px 12px;background:#47556914;border:1px solid rgba(71,85,105,.25);border-left:3px solid #475569;border-radius:6px;font-size:12px;color:#1e293b;line-height:1.55}.sub-q-dedup-hint{margin:4px 0 0;font-size:10px;font-style:italic;color:var(--text-dim)}.sub-alerts{background:linear-gradient(135deg,#fff1f0,#ffe4e0);border:1px solid rgba(220,38,38,.25);border-left:4px solid #dc2626;border-radius:12px;padding:18px 22px;margin-bottom:16px;box-shadow:0 4px 16px #dc262614}.sub-alerts-title{margin:0 0 6px;font-size:15px;font-weight:700;color:#b91c1c}.sub-alerts-hint{margin:0 0 12px;font-size:13px;color:#7f1d1d}.sub-alert-item{background:#ffffffb3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid rgba(220,38,38,.18);border-radius:8px;padding:10px 14px;margin-top:8px;display:flex;flex-direction:column;gap:4px}.sub-alert-q{font-size:13px;font-weight:700;color:#7f1d1d}.sub-pending{background:linear-gradient(135deg,#fdf8e8,#f7eecf);border:1px solid rgba(180,130,30,.22);border-left:4px solid #c89826;border-radius:12px;padding:18px 22px;margin-bottom:16px;box-shadow:0 4px 16px #b4821e12}.sub-pending-title{margin:0 0 6px;font-size:15px;font-weight:700;color:#7a5a14}.sub-pending-hint{margin:0 0 12px;font-size:13px;color:#6b4f12}.sub-pending-item{background:#fffc;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid rgba(180,130,30,.15);border-radius:8px;padding:10px 14px;margin-top:8px;display:flex;flex-direction:column;gap:4px}.sub-pending-q{font-size:13px;font-weight:700;color:#6b4f12}.sub-pending-msg{margin:0;font-size:12px;color:#1f2937;white-space:pre-wrap;line-height:1.5}.sub-pending-meta{font-size:11px;color:#8a6915}.sub-alert-note,.sub-answer-note{margin:4px 0 0;font-size:12px;color:var(--text);font-style:italic;background:var(--bg-card);padding:6px 10px;border-radius:6px;border-left:3px solid var(--accent);white-space:pre-wrap}.sub-answer-alert-badge{margin-right:6px;font-size:13px}.sub-question-block.is-alert{background:#dc26260d;border-left:3px solid #dc2626;border-radius:6px;padding-left:10px}.sub-q-alert-badge{display:inline-flex;align-items:center;font-size:10px;font-weight:700;background:#dc2626;color:#fff;padding:2px 8px;border-radius:var(--radius-pill);margin-left:8px}.sub-q-files{margin:6px 0;padding:10px 12px;background:#ffffff0a;border-radius:8px;border-left:3px solid color-mix(in srgb,var(--accent) 60%,transparent)}.sub-q-files-label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:color-mix(in srgb,var(--accent) 35%,#cbd5e1);margin-bottom:8px}.sub-q-files-list{display:flex;flex-direction:column;gap:4px}.sub-q-file-row{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:#e2e8f0;padding:4px 0}.sub-q-file-icon{font-size:14px;flex-shrink:0}.sub-q-file-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sub-q-file-action{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;text-decoration:none;color:var(--text-muted);font-size:13px;transition:background .15s ease,color .15s ease;flex-shrink:0}.sub-q-file-action:hover{background:color-mix(in srgb,var(--accent) 18%,transparent);color:#fff}.sub-q-fornecedor-note{margin:4px 0;font-size:12px;color:var(--text);background:var(--bg-elevated);padding:8px 12px;border-radius:6px;border-left:3px solid var(--accent);white-space:pre-wrap;line-height:1.5}.sub-q-fornecedor-note strong{font-weight:700}.sub-notifs{display:flex;flex-direction:column;gap:6px}.sub-notif{border-radius:8px;padding:8px 12px;border-left:3px solid transparent;background:var(--bg-elevated)}.sub-notif-pending{background:#d9770614;border-left-color:#d97706}.sub-notif-resolved{background:#32947c14;border-left-color:var(--accent);opacity:.85}.sub-notif-head{display:flex;align-items:center;gap:8px;font-size:11px;flex-wrap:wrap}.sub-notif-icon{font-size:14px}.sub-notif-status{font-weight:700;color:var(--text)}.sub-notif-date{color:var(--text-muted);flex:1}.sub-notif-actions{display:flex;gap:4px;margin-left:auto}.sub-notif-message{margin:4px 0 0;font-size:12px;color:var(--text);white-space:pre-wrap;line-height:1.5}.sub-q-required{color:var(--danger, #dc2626);margin-left:4px}.sub-q-answers{display:flex;flex-direction:column;gap:6px}.sub-answer-line{padding:8px 12px;background:var(--bg-elevated);border-radius:8px;display:flex;flex-direction:column;gap:4px;border-left:3px solid transparent}.sub-answer-line.is-latest{border-left-color:var(--accent)}.sub-answer-meta{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--text-muted)}.sub-answer-num{font-weight:700;color:var(--text)}.sub-answer-date{color:var(--text-muted)}.sub-latest-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:#32947c24;color:var(--accent);padding:2px 8px;border-radius:var(--radius-pill);border:1px solid rgba(50,148,124,.35)}.sub-answer-value{font-size:13px;color:var(--text);white-space:pre-wrap;word-break:break-word}.sub-answer-empty{color:var(--text-dim);font-style:italic;font-size:12px}.sub-attachments{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.sub-attachment{font-size:11px;background:var(--bg-card);border:1px solid var(--border);padding:2px 8px;border-radius:var(--radius-pill);color:var(--accent);text-decoration:none}.sub-attachment:hover{background:var(--accent);color:#fff}.sub-decision{background:var(--bg-card);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:12px;padding:18px 22px;margin-bottom:16px;box-shadow:0 4px 16px #32947c14}.sub-decision-approved{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#16a34a59;border-left-color:#16a34a}.sub-decision-rejected{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-color:#dc262659;border-left-color:#dc2626}.sub-decision-title{margin:0 0 6px;font-size:15px;font-weight:700;color:var(--text)}.sub-decision-approved .sub-decision-title{color:#166534}.sub-decision-rejected .sub-decision-title{color:#991b1b}.sub-decision-hint,.sub-decision-meta{margin:0 0 12px;font-size:13px;color:var(--text-muted)}.sub-decision-approved .sub-decision-meta{color:#166534}.sub-decision-rejected .sub-decision-meta{color:#991b1b}.sub-decision-actions{display:flex;gap:10px;flex-wrap:wrap}.sub-decision-approve{background:#16a34a!important;border-color:#16a34a!important}.sub-decision-reject{background:#dc2626!important;border-color:#dc2626!important}.sub-decision-history{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 18px}.sub-decision-history-title{margin:0 0 4px;font-size:14px;font-weight:700;color:var(--text)}.sub-decision-history-hint{margin:0 0 12px;font-size:12px;color:var(--text-muted)}.sub-decision-history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.sub-decision-history-item{padding:8px 12px;background:var(--bg-elevated);border-radius:8px;border-left:3px solid var(--border)}.sub-decision-history-approved{border-left-color:#16a34a}.sub-decision-history-rejected{border-left-color:#dc2626}.sub-decision-history-reverted{border-left-color:#475569}.sub-decision-history-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:12px}.sub-decision-history-action{font-weight:700;color:var(--text)}.sub-decision-history-date,.sub-decision-history-user{color:var(--text-muted)}.sub-decision-history-user strong{color:var(--text)}.sub-decision-history-prev{margin:4px 0 0;font-size:11px;color:var(--text-muted);font-style:italic}.sub-decision-history-note{margin:4px 0 0;font-size:12px;color:var(--text);line-height:1.5;white-space:pre-wrap}.sub-decision-override{margin-top:12px;padding-top:12px;border-top:1px dashed var(--border);font-size:13px}.sub-decision-override-accepted{padding:8px 10px;background:color-mix(in srgb,#16a34a 8%,transparent);border:1px solid color-mix(in srgb,#16a34a 40%,transparent);border-radius:6px;margin-bottom:8px}.sub-decision-override-pending{padding:8px 10px;background:color-mix(in srgb,#f59e0b 8%,transparent);border:1px solid color-mix(in srgb,#f59e0b 40%,transparent);border-radius:6px;margin-bottom:8px}.sub-decision-override-note{margin:4px 0 0;font-style:italic;color:var(--text-muted)}.sub-decision-override-form{margin-top:8px;padding:10px;background:color-mix(in srgb,var(--text) 3%,transparent);border:1px solid var(--border);border-radius:6px;display:flex;flex-direction:column;gap:6px}.sub-decision-checklist{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px 18px}.sub-decision-checklist-title{margin:0 0 8px;font-size:15px}.sub-decision-checklist-empty{margin:6px 0;font-size:13px}.sub-decision-checklist-list{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:8px}.sub-decision-checklist-item{border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:color-mix(in srgb,var(--text) 2%,transparent)}.sub-decision-checklist-decided{border-color:color-mix(in srgb,#16a34a 30%,transparent);background:color-mix(in srgb,#16a34a 4%,transparent)}.sub-decision-checklist-row{display:flex;align-items:center;gap:10px}.sub-decision-checklist-icon{font-size:16px;width:22px;text-align:center;color:var(--text-muted)}.sub-decision-checklist-decided .sub-decision-checklist-icon{color:#16a34a}.sub-decision-checklist-main{flex:1;min-width:0}.sub-decision-checklist-status{font-size:12px;margin-top:2px}.sub-decision-checklist-badge{font-size:11px;padding:2px 8px;border-radius:999px;font-weight:600}.sub-decision-checklist-badge.is-approved{background:#dcfce7;color:#166534}.sub-decision-checklist-badge.is-rejected{background:#fee2e2;color:#991b1b}.sub-decision-checklist-badge.is-conditional{background:#ffedd5;color:#9a3412}.sub-decision-checklist-body{margin-top:10px;padding:10px;border-top:1px solid var(--border);background:var(--bg);border-radius:6px}.sub-decision-checklist-hint{margin:10px 0 0;padding:8px 10px;border-radius:6px;background:color-mix(in srgb,#f59e0b 8%,transparent);border:1px solid color-mix(in srgb,#f59e0b 35%,transparent);font-size:13px}.sf{padding:4px 0}.sf-empty{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:18px 22px}.sf-empty p{margin:0;font-size:13px;color:var(--text-muted)}.sf-count{margin:0 0 12px;font-size:13px;font-weight:600;color:var(--text)}[data-theme=light] .sf-count{color:#fff}.sf-groups{display:flex;flex-direction:column;gap:14px}.sf-group{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 18px}.sf-group-title{margin:0 0 10px;font-size:13px;font-weight:700;color:var(--text)}.sf-items{display:flex;flex-wrap:wrap;gap:10px}.sf-items-photo .sf-item{width:140px}.sf-items-document .sf-item{width:100%}.sf-item{position:relative;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:6px;display:flex;flex-direction:column;gap:4px}.sf-photo{width:100%;height:120px;object-fit:cover;border-radius:4px;display:block}.sf-doc{display:flex;align-items:center;gap:8px;padding:4px 6px;text-decoration:none;color:var(--text);font-size:13px;word-break:break-all}.sf-doc-icon{font-size:18px;flex-shrink:0}.sf-doc-name{font-weight:600}.sf-item-meta{font-size:10px;color:var(--text-muted);padding:0 4px}.sf-item-del{position:absolute;top:-6px;right:-6px;background:#dc2626;color:#fff;border:none;width:22px;height:22px;border-radius:50%;font-size:15px;line-height:1;cursor:pointer;box-shadow:0 2px 6px #0003}.sa-historico,.sa-comparativo,.sa-occurrences{display:flex;flex-direction:column;gap:16px}.sa-timeline{list-style:none;margin:0;padding:0;position:relative}.sa-timeline:before{content:"";position:absolute;left:7px;top:0;bottom:0;width:2px;background:color-mix(in srgb,var(--text) 12%,transparent)}.sa-timeline-item{position:relative;padding-left:30px;padding-bottom:18px}.sa-timeline-item:last-child{padding-bottom:0}.sa-timeline-dot{position:absolute;left:1px;top:4px;width:14px;height:14px;border-radius:50%;background:var(--bg-card);border:3px solid color-mix(in srgb,var(--text) 30%,transparent)}.sa-timeline-item.is-ok .sa-timeline-dot{border-color:#16a34a}.sa-timeline-item.is-rej .sa-timeline-dot{border-color:#ef4444}.sa-timeline-item.is-none .sa-timeline-dot{border-color:var(--text-muted)}.sa-timeline-content{padding:10px 14px;border-radius:10px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);border:1px solid color-mix(in srgb,var(--text) 10%,transparent)}[data-theme=light] .sa-timeline-content{background:var(--bg-card);border-color:var(--border);box-shadow:var(--shadow)}.sa-timeline-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:4px}.sa-timeline-kind{font-weight:700;color:var(--text)}.sa-timeline-project{color:var(--text-muted);font-size:13px}.sa-timeline-date{margin-left:auto;color:var(--text-muted);font-size:12.5px;font-variant-numeric:tabular-nums}.sa-timeline-body{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px}.sa-timeline-note{margin:8px 0 0;font-size:13px;color:var(--text);white-space:pre-wrap;padding:6px 10px;background:color-mix(in srgb,var(--text) 4%,transparent);border-radius:6px}.sa-badge{padding:2px 9px;border-radius:999px;font-size:12px;font-weight:700}.sa-badge-ok{background:color-mix(in srgb,#16a34a 14%,transparent);color:#16a34a}.sa-badge-rej{background:color-mix(in srgb,#ef4444 14%,transparent);color:#ef4444}.sa-badge-none{background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text-muted)}.sa-badge-pub{background:color-mix(in srgb,var(--accent-teal) 16%,transparent);color:var(--accent-teal)}.sa-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.sa-stat-card{padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);border:1px solid color-mix(in srgb,var(--text) 12%,transparent);display:flex;flex-direction:column;gap:4px}[data-theme=light] .sa-stat-card{background:var(--bg-card);border-color:var(--border);box-shadow:var(--shadow)}.sa-stat-label{color:var(--text-muted);font-size:12.5px;text-transform:uppercase;letter-spacing:.04em}.sa-stat-value{font-size:28px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.sa-stat-sub{font-size:13px;color:var(--text)}.sa-section-title{margin:0 0 8px;font-size:15px;font-weight:700;color:var(--text)}[data-theme=light] .sa-section-title{color:#fff}[data-theme=light] .sa-historico>p.text-muted,[data-theme=light] .sa-comparativo>p.text-muted,[data-theme=light] .sa-occurrences>p.text-muted{color:#ffffffe6}.sa-table-scroll{overflow-x:auto;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:8px 12px;box-shadow:var(--shadow)}.sa-table{width:100%;border-collapse:collapse;color:var(--text)}.sa-table th,.sa-table td{padding:8px 10px;text-align:center;font-size:13px;border-bottom:1px solid var(--border);color:var(--text)}.sa-table th{color:var(--text-muted);font-weight:600}.sa-table-subhead th{font-size:11.5px;text-transform:uppercase;letter-spacing:.04em}.sa-rate{display:inline-flex;padding:2px 8px;border-radius:999px;font-weight:700;font-size:12.5px}.sa-rate.is-good{background:color-mix(in srgb,#16a34a 14%,transparent);color:#16a34a}.sa-rate.is-mid{background:color-mix(in srgb,#f59e0b 16%,transparent);color:#b45309}.sa-rate.is-bad{background:color-mix(in srgb,#ef4444 16%,transparent);color:#ef4444}.sa-graficos{display:flex;flex-direction:column;gap:14px}.sa-graf-toolbar{display:flex;gap:8px;flex-wrap:wrap}.sa-graf-tab{padding:8px 14px;border-radius:999px;font-size:13px;font-weight:600;border:1px solid var(--border);background:var(--bg-card);color:var(--text);cursor:pointer}.sa-graf-tab.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.sa-chart-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 16px;box-shadow:var(--shadow)}.sa-chart-stats{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:12px;font-size:13px;color:var(--text)}.sa-chart-trend{margin-left:auto;padding:4px 10px;border-radius:999px;font-weight:700;font-size:12px}.sa-chart-trend.is-up{background:color-mix(in srgb,#16a34a 14%,transparent);color:#16a34a}.sa-chart-trend.is-down{background:color-mix(in srgb,#ef4444 14%,transparent);color:#ef4444}.sa-chart-trend.is-stable{background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--text-muted)}.sa-relatorio{display:flex;flex-direction:column;gap:18px}.sa-rel-actions{display:flex;justify-content:flex-end}.sa-rel-cover{padding:22px 24px;border-radius:14px;color:#fff;background:linear-gradient(135deg,#0f766e,#14b8a6)}.sa-rel-cover-is-ok{background:linear-gradient(135deg,#14532d,#16a34a)}.sa-rel-cover-is-bad{background:linear-gradient(135deg,#7f1d1d,#ef4444)}.sa-rel-cover-is-pending{background:linear-gradient(135deg,#1f2937,#475569)}.sa-rel-eyebrow{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.1em;opacity:.8}.sa-rel-title{margin:4px 0 6px;font-size:26px}.sa-rel-meta{margin:0;font-size:12.5px;opacity:.85}.sa-rel-verdict{margin:14px 0 4px;font-size:20px;font-weight:800;letter-spacing:.04em;background:#ffffff2e;padding:6px 14px;border-radius:999px;display:inline-block}.sa-rel-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.sa-rel-kpi{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:12px 14px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:4px}.sa-rel-kpi-label{font-size:11px;text-transform:uppercase;color:var(--text-muted);letter-spacing:.04em}.sa-rel-kpi-value{font-size:22px;font-weight:700;color:var(--text)}.sa-rel-kpi.is-warn{border-color:#f59e0b}.sa-rel-kpi.is-warn .sa-rel-kpi-value{color:#b45309}.sa-rel-kpi.is-ok{border-color:#16a34a}.sa-rel-footer{margin-top:8px;font-size:12px;text-align:right}@media print{.sa-rel-actions,.obra-tabs,.page-header,.supplier-phase-placeholder{display:none!important}.sa-rel-cover{color:#fff!important}body{background:#fff!important}}.sa-occ-toolbar{display:flex;justify-content:space-between;align-items:center}.sa-occ-form{padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--accent) 6%,var(--bg-card));border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);display:flex;flex-direction:column;gap:10px}.sa-occ-form label{display:flex;flex-direction:column;font-size:13px;gap:4px;color:var(--text)}.sa-occ-form-row{display:flex;gap:12px}.sa-occ-form-row label{flex:1}.sa-occ-form-actions{display:flex;justify-content:flex-end}.sa-occ-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.sa-occ-item{padding:12px 14px;border-radius:10px;border-left:4px solid var(--text-muted);background:color-mix(in srgb,var(--bg-card) 70%,transparent);border-top:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-right:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent)}[data-theme=light] .sa-occ-item{background:var(--bg-card);box-shadow:var(--shadow)}.sa-occ-item.sa-sev-high{border-left-color:#ef4444}.sa-occ-item.sa-sev-medium{border-left-color:#f59e0b}.sa-occ-item.sa-sev-low{border-left-color:#94a3b8}.sa-occ-item.is-resolved{opacity:.65}.sa-occ-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px}.sa-occ-title{flex:1;color:var(--text);font-size:14px}.sa-occ-date{color:var(--text-muted);font-size:12.5px;font-variant-numeric:tabular-nums}.sa-occ-project{margin:2px 0;font-size:12.5px;color:var(--text-muted)}.sa-occ-desc{margin:6px 0 0;font-size:13px;color:var(--text);white-space:pre-wrap}.sa-occ-actions{display:flex;align-items:center;gap:10px;margin-top:8px}.sa-occ-actions>*:first-child{margin-right:auto}.sa-sev-badge{padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.sa-sev-badge.sa-sev-high{background:color-mix(in srgb,#ef4444 14%,transparent);color:#ef4444}.sa-sev-badge.sa-sev-medium{background:color-mix(in srgb,#f59e0b 16%,transparent);color:#b45309}.sa-sev-badge.sa-sev-low{background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text-muted)}.sa-occ-notes{margin-top:12px;padding-top:12px;border-top:1px dashed color-mix(in srgb,var(--text) 14%,transparent);display:flex;flex-direction:column;gap:10px}.sa-occ-notes-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.sa-occ-note{padding:8px 10px;border-radius:8px;background:color-mix(in srgb,var(--text) 4%,transparent)}.sa-occ-note-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.sa-occ-note-date{font-size:11.5px;font-variant-numeric:tabular-nums}.sa-occ-note-del{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:12px;opacity:.6;padding:0 4px}.sa-occ-note-del:hover{opacity:1;color:#ef4444}.sa-occ-note-text{margin:0;font-size:13px;color:var(--text);white-space:pre-wrap;line-height:1.4}.sa-occ-note-add{display:flex;gap:8px;align-items:flex-start}.sa-occ-note-input{flex:1;resize:vertical;min-height:48px}.hss-page{min-height:calc(100vh - 80px);background:var(--bg-page, #f8fafc);padding:20px 28px 40px;font-family:Plus Jakarta Sans,system-ui,sans-serif;color:var(--text, #0f172a)}[data-theme=dark] .hss-page{background:var(--bg-page, #0b1220)}.hss-shell{display:grid;grid-template-columns:260px 1fr;gap:18px;align-items:start;transition:grid-template-columns .2s ease}.hss-shell.is-collapsed{grid-template-columns:44px 1fr}.hss-sidebar{position:sticky;top:12px;background:var(--bg-card, #ffffff);border:1px solid var(--border, #e2e8f0);border-radius:12px;padding:12px;max-height:calc(100vh - 96px);overflow-y:auto}.hss-sidebar.is-collapsed{padding:8px 6px;overflow:hidden}.hss-sidebar-head{display:flex;align-items:center;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--border, #e2e8f0);margin-bottom:10px}.hss-sidebar-head h3{margin:0;font-size:13px;font-weight:700;flex:1;color:var(--text, #0f172a);letter-spacing:.2px}.hss-sidebar-toggle{background:transparent;border:1px solid var(--border, #e2e8f0);border-radius:6px;padding:3px 8px;cursor:pointer;font-size:14px;color:var(--text-muted, #64748b);line-height:1}.hss-sidebar-toggle:hover{background:var(--bg-elevated, #f1f5f9)}.hss-sidebar-btn-new{width:100%;background:linear-gradient(135deg,#0f766e,#0ea5e9);color:#fff;border:none;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:700;cursor:pointer;margin-bottom:10px;box-shadow:0 2px 6px #0f766e40}.hss-sidebar-btn-new:hover{filter:brightness(1.05)}.hss-sidebar-section{font-size:10px;font-weight:700;color:var(--text-muted, #94a3b8);letter-spacing:1.5px;text-transform:uppercase;margin:12px 4px 6px}.hss-reports-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.hss-report-item{display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:8px;cursor:pointer;background:transparent;border:1px solid transparent;font-size:13px;color:var(--text, #334155);min-width:0}.hss-report-item:hover{background:var(--bg-elevated, #f1f5f9)}.hss-report-item.is-active{background:color-mix(in srgb,#0f766e 10%,transparent);border-color:color-mix(in srgb,#0f766e 40%,transparent);color:#0f766e;font-weight:600}.hss-report-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hss-report-fav{background:transparent;border:none;cursor:pointer;padding:0;font-size:14px;line-height:1;color:#cbd5e1}.hss-report-fav.is-fav{color:#eab308}.hss-report-actions{display:none;gap:2px}.hss-report-item:hover .hss-report-actions{display:inline-flex}.hss-report-action{background:transparent;border:none;cursor:pointer;padding:2px 4px;font-size:12px;color:var(--text-muted, #64748b);border-radius:4px}.hss-report-action:hover{background:var(--bg-elevated, #e2e8f0);color:var(--text, #0f172a)}.hss-sidebar.is-collapsed .hss-sidebar-head h3,.hss-sidebar.is-collapsed .hss-sidebar-btn-new,.hss-sidebar.is-collapsed .hss-sidebar-section,.hss-sidebar.is-collapsed .hss-reports-list{display:none}.hss-main{min-width:0}.hss-toolbar{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bg-card, #ffffff);border:1px solid var(--border, #e2e8f0);border-radius:12px;margin-bottom:16px}.hss-toolbar-title{flex:1;min-width:0;font-size:18px;font-weight:800;margin:0;color:var(--text, #0f172a);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hss-btn-add{background:linear-gradient(135deg,#0f766e,#16a34a);color:#fff;border:none;border-radius:8px;padding:9px 16px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;box-shadow:0 2px 6px #0f766e4d}.hss-btn-add:hover{filter:brightness(1.05)}.hss-toolbar-info{color:var(--text-muted, #64748b);font-size:12px}.hss-widgets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}.hss-widget{background:var(--bg-card, #ffffff);border:1px solid var(--border, #e2e8f0);border-top:4px solid #94a3b8;border-radius:12px;padding:16px 18px 18px;box-shadow:0 2px 4px #0f172a08;display:flex;flex-direction:column;min-width:0}.hss-widget-type-kpi{grid-column:span 1}.hss-widget-type-bar,.hss-widget-type-line{grid-column:span 2}.hss-widget-type-donut,.hss-widget-type-ranking{grid-column:span 1}.hss-widget-type-table{grid-column:span 2}@media(max-width:900px){.hss-widget{grid-column:span 1!important}}.hss-widget-head{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px}.hss-widget-title-row{flex:1;min-width:0;display:flex;align-items:center;gap:8px}.hss-widget-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;color:#fff;font-size:13px;flex-shrink:0}.hss-widget-title{margin:0;font-size:14px;font-weight:700;color:var(--text, #0f172a);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hss-widget-actions{display:flex;gap:2px}.hss-widget-actions button{background:transparent;border:none;padding:4px 8px;cursor:pointer;color:var(--text-muted, #94a3b8);font-size:14px;border-radius:4px;line-height:1}.hss-widget-actions button:hover{background:var(--bg-elevated, #f1f5f9);color:var(--text, #0f172a)}.hss-widget-filters-chips{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.hss-widget-chip{font-size:10px;padding:2px 8px;border-radius:999px;background:var(--bg-elevated, #f1f5f9);color:var(--text-muted, #64748b);font-weight:600}.hss-widget-body{flex:1;min-height:60px}.hss-widget-empty{color:var(--text-muted, #94a3b8);font-size:13px;text-align:center;padding:30px 12px;font-style:italic}.hss-widget-kpi{display:flex;flex-direction:column;align-items:flex-start;padding:8px 4px 4px}.hss-widget-kpi-value{font-size:40px;font-weight:800;color:var(--text, #0f172a);line-height:1;letter-spacing:-1px}.hss-widget-kpi-hint{font-size:11px;color:var(--text-muted, #64748b);margin-top:6px;text-transform:uppercase;letter-spacing:1px}.hss-widget-ranking{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.hss-widget-ranking li{display:flex;align-items:center;gap:10px;font-size:13px}.hss-ranking-pos{width:22px;height:22px;border-radius:50%;color:#fff;font-weight:800;font-size:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.hss-ranking-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hss-ranking-pct{font-weight:800;min-width:44px;text-align:right}.hss-ranking-count{font-size:11px;color:var(--text-muted, #94a3b8);min-width:60px;text-align:right}.hss-widget-table-wrap{overflow-x:auto}.hss-widget-table{width:100%;border-collapse:collapse;font-size:12px}.hss-widget-table th{text-align:left;padding:8px 6px;color:var(--text-muted, #64748b);font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid var(--border, #e2e8f0)}.hss-widget-table td{padding:8px 6px;border-bottom:1px solid var(--border, #f1f5f9);color:var(--text, #1e293b)}.hss-widget-badge{padding:2px 8px;border-radius:4px;font-size:10px;font-weight:700}.hss-empty{text-align:center;color:var(--text-muted, #94a3b8);padding:40px}.hss-empty-big{text-align:center;padding:80px 24px;background:var(--bg-card, #ffffff);border:2px dashed var(--border, #cbd5e1);border-radius:12px}.hss-empty-emoji{font-size:56px;margin-bottom:12px}.hss-empty-big h3{margin:8px 0;font-size:18px;color:var(--text, #0f172a)}.hss-empty-big p{margin:6px 0;color:var(--text-muted, #64748b);font-size:14px}.hss-empty-hint{font-size:12px!important;opacity:.85}.hss-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.hss-modal{background:var(--bg-card, #ffffff);border-radius:12px;max-width:560px;width:100%;max-height:90vh;overflow-y:auto;padding:20px 24px;box-shadow:0 20px 60px #0000004d}.hss-modal-head{display:flex;align-items:center;margin-bottom:12px}.hss-modal-head h2{margin:0;font-size:18px;flex:1;color:var(--text, #0f172a)}.hss-modal-head button{background:transparent;border:none;font-size:22px;cursor:pointer;color:var(--text-muted, #64748b)}.hss-modal-hint{font-size:13px;color:var(--text-muted, #64748b);margin:0 0 12px}.hss-modal-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hss-modal-type-btn{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 8px;background:var(--bg-elevated, #f8fafc);border:2px solid var(--border, #e2e8f0);border-radius:10px;cursor:pointer;font-family:inherit;color:var(--text, #0f172a)}.hss-modal-type-btn:hover{border-color:#0f766e}.hss-modal-type-btn.is-active{background:color-mix(in srgb,#0f766e 6%,transparent)}.hss-modal-type-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;color:#fff;font-size:18px}.hss-modal-type-label{font-size:12px;font-weight:600;text-align:center}.hss-modal-selected-type{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg-elevated, #f1f5f9);border-radius:8px;margin-bottom:14px;font-size:13px;font-weight:600}.hss-modal-change-type{margin-left:auto;background:transparent;border:none;color:#0f766e;cursor:pointer;font-size:12px;text-decoration:underline}.hss-modal-label{display:block;margin-top:14px;margin-bottom:6px;font-size:12px;font-weight:700;color:var(--text, #334155);text-transform:uppercase;letter-spacing:.6px}.hss-modal-label-inline{display:block;font-size:11px;color:var(--text-muted, #64748b);margin-bottom:4px}.hss-modal-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.hss-modal-input{width:100%;padding:8px 10px;font-size:13px;box-sizing:border-box;border:1px solid var(--border, #cbd5e1);border-radius:6px;background:var(--bg-card, #ffffff);color:var(--text, #0f172a);font-family:inherit}.hss-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.hss-btn-primary{background:#0f766e;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-weight:700;cursor:pointer;font-family:inherit}.hss-btn-primary:disabled{opacity:.55;cursor:not-allowed}.hss-btn-ghost{background:transparent;color:var(--text, #64748b);border:1px solid var(--border, #cbd5e1);border-radius:8px;padding:9px 16px;cursor:pointer;font-family:inherit}.sc-contacts{display:flex;flex-direction:column;gap:14px}.sc-toolbar{display:flex;justify-content:space-between;align-items:center}.sc-section-title{margin:0;font-size:15px;font-weight:700;color:var(--text)}[data-theme=light] .sc-section-title{color:#fff}[data-theme=light] .sc-contacts>p.text-muted{color:#ffffffe6}.sc-form{padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--accent) 6%,var(--bg-card));border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);display:flex;flex-direction:column;gap:10px}[data-theme=light] .sc-form{background:var(--bg-card);border-color:color-mix(in srgb,var(--accent) 30%,var(--border));box-shadow:var(--shadow)}.sc-form-row{display:flex;gap:12px}.sc-form-row .sc-field{flex:1}.sc-field{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--text)}.sc-form-actions{display:flex;justify-content:flex-end;gap:8px}.sc-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.sc-item{padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);border:1px solid color-mix(in srgb,var(--text) 12%,transparent);display:flex;flex-direction:column;gap:8px}[data-theme=light] .sc-item{background:var(--bg-card);border-color:var(--border);box-shadow:var(--shadow)}.sc-item-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.sc-item-name{color:var(--text);font-size:14.5px}.sc-item-role{padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent-teal);font-size:11.5px;font-weight:600;letter-spacing:.02em}.sc-item-body{display:flex;flex-direction:column;gap:4px;font-size:13.5px}.sc-item-link{color:var(--text);text-decoration:none}.sc-item-link:hover{color:var(--accent-teal)}.sc-item-notes{margin:0;font-size:13px;color:var(--text-muted);white-space:pre-wrap;padding:6px 10px;border-radius:6px;background:color-mix(in srgb,var(--text) 4%,transparent)}.sc-item-actions{display:flex;gap:6px;margin-top:auto;padding-top:4px;border-top:1px solid color-mix(in srgb,var(--text) 8%,transparent)}.sk-contracts{display:flex;flex-direction:column;gap:14px}.sk-toolbar{display:flex;justify-content:space-between;align-items:center}.sk-section-title{margin:0;font-size:15px;font-weight:700;color:var(--text)}[data-theme=light] .sk-section-title{color:#fff}[data-theme=light] .sk-contracts>p.text-muted{color:#ffffffe6}.sk-form{padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--accent) 6%,var(--bg-card));border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);display:flex;flex-direction:column;gap:10px}[data-theme=light] .sk-form{background:var(--bg-card);border-color:color-mix(in srgb,var(--accent) 30%,var(--border));box-shadow:var(--shadow)}.sk-field{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--text)}.sk-form-row{display:flex;gap:12px}.sk-form-row .sk-field{flex:1}.sk-form-actions{display:flex;justify-content:flex-end;gap:8px}.sk-file-picker{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sk-file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.sk-file-btn{flex-shrink:0;font-weight:600!important}.sk-file-name{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 12px;border-radius:999px;background:color-mix(in srgb,var(--accent-teal) 16%,transparent);color:var(--accent-teal);font-size:13px;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sk-file-clear{background:transparent;border:none;color:var(--accent-teal);cursor:pointer;font-size:14px;padding:0 2px;line-height:1;opacity:.7}.sk-file-clear:hover{opacity:1}.sk-file-empty{color:var(--text-muted);font-size:13px;font-style:italic}.sk-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.sk-item{padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);border:1px solid color-mix(in srgb,var(--text) 12%,transparent);display:flex;align-items:flex-start;gap:14px}[data-theme=light] .sk-item{background:var(--bg-card);border-color:var(--border);box-shadow:var(--shadow)}.sk-item.is-expired{opacity:.7}.sk-item-icon{font-size:28px;line-height:1;flex-shrink:0}.sk-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.sk-item-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.sk-item-title{color:var(--text);font-size:14.5px}.sk-badge-expired{padding:2px 9px;border-radius:999px;background:color-mix(in srgb,#ef4444 14%,transparent);color:#ef4444;font-size:11.5px;font-weight:700;letter-spacing:.02em}.sk-item-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:12.5px;color:var(--text-muted)}.sk-item-validity{font-variant-numeric:tabular-nums}.sk-item-notes{margin:6px 0 0;font-size:13px;color:var(--text);white-space:pre-wrap;padding:6px 10px;border-radius:6px;background:color-mix(in srgb,var(--text) 4%,transparent)}.sk-item-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.sk-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.sk-preview-modal{background:var(--bg-card);border-radius:12px;width:100%;max-width:1100px;height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 12px 40px #0006}.sk-preview-head{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border);color:var(--text)}.sk-preview-iframe{flex:1;width:100%;border:none;background:#525659}.svi-list{display:flex;flex-direction:column;gap:10px}.svi-summary{margin:0 0 6px;font-size:13px;color:var(--text-muted)}[data-theme=light] .svi-summary{color:#ffffffe6}.svi-empty-msg{margin:0;color:var(--text-muted);font-size:14px;line-height:1.5}[data-theme=light] .svi-empty-msg{color:#ffffffe6}.svi-card{border-radius:12px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);border:1px solid color-mix(in srgb,var(--text) 12%,transparent);overflow:hidden}[data-theme=light] .svi-card{background:var(--bg-card);border-color:var(--border);box-shadow:var(--shadow)}.svi-card.is-open{box-shadow:0 2px 6px color-mix(in srgb,var(--text) 10%,transparent)}.svi-card-head{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:none;background:transparent;cursor:pointer;text-align:left;color:var(--text);font-size:14px}.svi-card-head:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.svi-card-project{font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.svi-card-date{font-size:12.5px;color:var(--text-muted);font-variant-numeric:tabular-nums}.svi-card-arrow{font-size:14px;color:var(--text-muted);width:16px;text-align:center}.svi-card-body{padding:12px 16px 16px;border-top:1px dashed color-mix(in srgb,var(--text) 10%,transparent)}.svi-state{padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.02em}.svi-state.is-none{background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text-muted)}.svi-state.is-progress{background:color-mix(in srgb,#f59e0b 14%,transparent);color:#b45309}.svi-state.is-ok{background:color-mix(in srgb,#16a34a 14%,transparent);color:#16a34a}.svi-state.is-rej{background:color-mix(in srgb,#ef4444 18%,transparent);color:#ef4444}.svi-state.is-pub{background:color-mix(in srgb,var(--accent-teal) 16%,transparent);color:var(--accent-teal)}.svi-empty-card{padding:16px;border-radius:10px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);border:1px dashed color-mix(in srgb,var(--text) 18%,transparent);display:flex;flex-direction:column;gap:12px;align-items:flex-start}[data-theme=light] .svi-empty-card{background:var(--bg-card);border-color:var(--border);box-shadow:var(--shadow)}.project-title-input.hxp-title-input{background:transparent;border:1px solid transparent;box-shadow:none;font-size:2rem;font-weight:700;width:100%;margin:0 0 16px -6px;padding:2px 6px;color:var(--text);background-image:linear-gradient(100deg,color-mix(in srgb,var(--accent) 25%,var(--text)),color-mix(in srgb,var(--accent) 60%,var(--text)),color-mix(in srgb,var(--accent) 25%,var(--text)));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;caret-color:var(--accent);animation:hxp-title-shimmer 8s linear infinite;border-radius:var(--radius-sm);transition:background-color .15s ease,border-color .15s ease}.project-title-input.hxp-title-input::placeholder{-webkit-text-fill-color:var(--text-muted);color:var(--text-muted);font-style:italic}.project-title-input.hxp-title-input:hover{background-color:color-mix(in srgb,var(--accent) 8%,transparent)}.project-title-input.hxp-title-input:focus{outline:none;-webkit-text-fill-color:var(--text);background-image:none;color:var(--text);border-color:color-mix(in srgb,var(--accent) 55%,transparent);background-color:var(--bg-input);box-shadow:0 0 0 3px var(--accent-glow, color-mix(in srgb, var(--accent) 22%, transparent))}@keyframes hxp-title-shimmer{0%{background-position:0% 50%}to{background-position:200% 50%}}.hxp-save-status{font-size:12px;color:var(--text-muted)}.hxp-save-status.saved{color:var(--accent);font-weight:600}.hxp-progress-bar{position:relative;height:8px;background:color-mix(in srgb,var(--text-muted) 12%,transparent);border-radius:999px;overflow:hidden;margin:-28px 0 36px}.hxp-progress-fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 60%,transparent),var(--accent));border-radius:999px;transition:width .3s ease;box-shadow:0 0 12px color-mix(in srgb,var(--accent) 35%,transparent)}.hxp-progress-label{position:absolute;top:-22px;right:0;font-size:11px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.04em}[data-theme=light] .hxp-progress-bar{background:#ffffff40}[data-theme=light] .hxp-progress-label{color:#fffffff2}.hxp-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:22px 24px;margin-bottom:18px}.hxp-section-title{margin:0 0 16px;font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.hxp-section-header{display:flex;align-items:center;gap:14px;margin-bottom:14px}.hxp-section-header h2{margin:0;font-size:11px;font-weight:700;flex:1;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.hxp-total{font-size:13px;color:var(--text-muted)}.hxp-total strong{color:var(--accent);font-size:1.05rem;margin-left:4px}.hxp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.hxp-grid-wide{grid-column:1 / -1}.hxp-completion-row{display:flex;align-items:center;gap:10px}.hxp-completion-slider{flex:1;accent-color:var(--accent);height:4px}.hxp-completion-num{width:70px!important;text-align:center;font-weight:700}.hxp-pct{color:var(--text-muted);font-size:13px;font-weight:600}.hxp-articles-wrap{overflow-x:auto;margin:0 -24px -22px;padding:0 24px 22px}.hxp-articles{width:100%;border-collapse:collapse;font-size:13px}.hxp-articles th{color:var(--text-muted);font-weight:600;padding:8px 10px;text-align:left;text-transform:uppercase;letter-spacing:.04em;font-size:10px;border-bottom:2px solid var(--border)}.hxp-articles td{padding:6px 8px;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent)}.hxp-articles tr:hover td{background:color-mix(in srgb,var(--accent) 4%,transparent)}.hxp-articles tr:last-child td{border-bottom:none}.hxp-input-sm{height:32px!important;font-size:13px!important;padding:4px 8px!important}.hxp-input-num{text-align:right}.hxp-line-total{text-align:right;font-weight:700;color:var(--accent)}.hxp-catalog-btn{display:inline-flex;align-items:center;gap:6px;background:var(--bg-elevated);border:1px dashed var(--border);border-radius:6px;padding:6px 10px;width:100%;min-height:32px;cursor:pointer;font:inherit;font-size:12px;color:var(--text);text-align:left}.hxp-catalog-btn:hover{border-style:solid;border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:color-mix(in srgb,var(--accent) 5%,var(--bg-elevated))}.hxp-catalog-btn.has-pick{background:color-mix(in srgb,var(--accent) 10%,var(--bg-elevated));border-style:solid;border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.hxp-catalog-btn-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hxp-catalog-btn-empty{color:var(--text-muted);font-style:italic}.hxp-catalog-btn-clear{color:var(--text-muted);padding:0 4px;border-radius:3px}.hxp-catalog-btn-clear:hover{background:#ef444426;color:#ef4444}.hxp-picker-modal{max-width:720px;width:100%}.hxp-picker-list{display:flex;flex-direction:column;gap:6px;max-height:460px;overflow-y:auto;margin-top:6px}.hxp-picker-row{display:flex;flex-direction:column;gap:4px;padding:10px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;cursor:pointer;font:inherit;text-align:left;color:var(--text);transition:var(--transition)}.hxp-picker-row:hover{border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:color-mix(in srgb,var(--accent) 8%,var(--bg-card))}.hxp-picker-row-main{display:flex;align-items:center;gap:10px;justify-content:space-between}.hxp-picker-desc{font-weight:600;font-size:13px;flex:1}.hxp-picker-cat{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:var(--bg-elevated);padding:2px 8px;border-radius:999px}.hxp-picker-row-meta{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--text-muted)}.hxp-picker-row-meta code{background:var(--bg-elevated);padding:1px 6px;border-radius:3px;font-size:11px}.hxp-picker-price{margin-left:auto;font-weight:700;color:var(--accent);font-size:13px}.hxp-tabs{display:flex;gap:6px;margin:14px 0 18px;flex-wrap:wrap}.hxp-tab{background:var(--bg-card);border:1px solid var(--border);padding:8px 16px;font-size:14px;font-weight:600;color:var(--text);cursor:pointer;border-radius:999px;transition:background-color .12s,color .12s,border-color .12s,box-shadow .12s}.hxp-tab:hover{background:var(--bg-elevated);border-color:var(--accent)}.hxp-tab.is-active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 2px 6px #00000026}.hxp-eval-section{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;padding:16px}.hxp-eval-section-title{margin:0 0 4px;font-size:14px;font-weight:700;color:var(--text)}.hxp-eval-section-desc{margin:0 0 14px;font-size:12px;color:var(--text-muted)}.hxp-eval-question{display:flex;flex-direction:column;gap:8px;padding:14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;margin-bottom:10px;transition:border-color .15s,box-shadow .15s}.hxp-eval-question:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.hxp-eval-question.is-alert{background:#dc26260f;border-left:3px solid #dc2626}.hxp-eval-question-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text)}.hxp-eval-q-alert-badge{display:inline-flex;align-items:center;font-size:10px;font-weight:700;background:#dc2626;color:#fff;padding:2px 8px;border-radius:999px;letter-spacing:.02em}.hxp-eval-attach-row{display:flex;gap:8px;flex-wrap:wrap}.hxp-eval-attach-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-size:12px;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);cursor:pointer;transition:all .12s}.hxp-eval-attach-btn:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--bg-elevated))}.hxp-eval-files{display:flex;flex-direction:column;gap:4px}.hxp-eval-file{display:flex;align-items:center;gap:10px;padding:6px 10px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;font-size:12px}.hxp-eval-file-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);text-decoration:none}.hxp-eval-file-name:hover{text-decoration:underline}.hxp-eval-file-del{background:none;border:0;color:var(--text-muted);font-size:16px;cursor:pointer;padding:0 4px}.hxp-eval-file-del:hover{color:#b00020}.hxp-eval-note{display:flex;flex-direction:column;gap:4px}.hxp-eval-note textarea{font-size:12px;min-height:44px}.hxp-eval-alert-toggle{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.hxp-eval-alert-toggle.is-on{color:#b00020;font-weight:600}.hxp-eval-final{display:flex;flex-direction:column;gap:14px;margin-top:14px;padding:14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.hxp-eval-final-title{margin:0;font-size:13px;font-weight:700;color:var(--text)}.hxp-eval-score-row{display:flex;gap:6px;flex-wrap:wrap}.hxp-eval-score-btn{min-width:42px;padding:6px 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated);font-weight:700;cursor:pointer;transition:all .12s}.hxp-eval-score-btn.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.hxp-eval-decision-row{display:flex;gap:8px;flex-wrap:wrap}.hxp-eval-decision-btn{padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated);font-weight:600;font-size:13px;cursor:pointer;transition:all .12s}.hxp-eval-decision-btn.is-bom{color:#1b5e20}.hxp-eval-decision-btn.is-mau{color:#b00020}.hxp-eval-decision-btn.is-bom.is-active{background:#1b5e20;color:#fff;border-color:#1b5e20}.hxp-eval-decision-btn.is-mau.is-active{background:#b00020;color:#fff;border-color:#b00020}.hxp-eval-alert-hint{font-size:11px;color:#b00020}.hxp-eval-flag{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border);border-radius:999px;background:var(--bg-card);font:inherit;cursor:pointer;transition:border-color .12s,box-shadow .12s,background .12s}.hxp-eval-flag:hover{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.hxp-eval-flag-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:700;color:#fff;letter-spacing:.02em}.hxp-eval-flag-pending{background:#b00020}.hxp-eval-flag-done{background:#1b5e20}.hxp-eval-flag.is-complete{background:color-mix(in srgb,#16a34a 15%,transparent);border-color:#16a34a;color:#14532d}.hxp-eval-flag.is-complete:hover{border-color:#14532d;box-shadow:0 0 0 3px color-mix(in srgb,#16a34a 22%,transparent)}.hxp-help{margin-top:32px;padding-top:8px}.hxp-help details{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 18px}.hxp-help details>summary{cursor:pointer;font-weight:700;font-size:15px;color:var(--text);list-style:none}.hxp-help details>summary::-webkit-details-marker{display:none}.hxp-help details[open]>summary{margin-bottom:10px;border-bottom:1px solid var(--border);padding-bottom:8px}.hxp-help h4{margin:14px 0 4px;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.hxp-help p,.hxp-help li{font-size:13px;line-height:1.6;color:var(--text);margin:0 0 8px}.hxp-help ul{margin:6px 0 8px;padding-left:20px}.hxp-help code{background:color-mix(in srgb,var(--text) 6%,transparent);padding:1px 6px;border-radius:4px;font-family:ui-monospace,SFMono-Regular,monospace;font-size:12px}.spf-page{min-height:100vh;background:linear-gradient(135deg,#065772,#248279 55%,#32937c);background-attachment:fixed;display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;font-family:var(--font, system-ui, sans-serif);color:#1f2937;color-scheme:light}.spf-page input,.spf-page textarea,.spf-page select{color-scheme:light;background-color:#fff;color:#0f172a}.spf-page input:-webkit-autofill,.spf-page input:-webkit-autofill:hover,.spf-page input:-webkit-autofill:focus{-webkit-text-fill-color:#0f172a;-webkit-box-shadow:0 0 0 1000px #ffffff inset;caret-color:#0f172a}.spf-page-app{align-items:stretch;justify-content:center;gap:24px;padding:24px 16px}.spf-page-app .spf-main{flex:1;max-width:760px}.spf-sidebar{width:240px;flex-shrink:0;background:#ffffff8c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.35);border-radius:14px;padding:18px 14px;height:fit-content;position:sticky;top:24px}.spf-sidebar-header{padding:0 8px 14px;border-bottom:1px solid rgba(15,23,42,.12);margin-bottom:12px}.spf-sidebar-title{margin:0;font-size:.95rem;font-weight:700;color:#0f172a;text-transform:uppercase;letter-spacing:.06em}.spf-sidebar-supplier{margin:4px 0 0;font-size:13px;font-weight:600;color:#1e293b}.spf-sidebar-nav{display:flex;flex-direction:column;gap:2px}.spf-sidebar-item{display:flex;align-items:center;gap:10px;background:none;border:none;padding:9px 12px;font-size:13px;font-weight:600;color:#334155;text-align:left;border-radius:8px;cursor:pointer;transition:background .15s ease,color .15s ease}.spf-sidebar-item:hover{background:#ffffff73;color:#0f172a}.spf-sidebar-item.is-active{background:#32937c;color:#fff}.spf-sidebar-icon{font-size:15px}.spf-sidebar-label{flex:1}.spf-sidebar-badge{background:#ffffff4d;color:#fff;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:700}.spf-sidebar-item:not(.is-active) .spf-sidebar-badge{background:#32937c;color:#fff}@media(max-width:760px){.spf-page-app{flex-direction:column;align-items:center}.spf-sidebar{width:100%;max-width:760px;position:static}}.spf-emails-list{display:flex;flex-direction:column;gap:8px}.spf-email-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px 14px}.spf-email-summary{display:flex;justify-content:space-between;gap:8px;cursor:pointer;font-size:13px;font-weight:600;color:#0f172a;flex-wrap:wrap}.spf-email-subject{flex:1}.spf-email-recipient{font-weight:500;color:#64748b;font-size:12px}.spf-email-date{font-size:11px;color:#64748b;font-weight:500}.spf-email-body{margin:10px 0 0;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:10px 12px;font-size:12px;font-family:var(--font-mono, monospace);white-space:pre-wrap;word-break:break-word;color:#1f2937}.spf-empty-section{padding:20px 0}.spf-empty-section p{margin:0 0 6px}.spf-empty-hint{font-size:12px;color:#64748b}.spf-card{background:#fff;border-radius:14px;padding:32px 36px;max-width:420px;width:100%;box-shadow:0 8px 32px #00000026}.spf-card-wide{max-width:760px}.spf-card-error{border-top:4px solid #dc2626}.spf-card-success{border-top:4px solid #16a34a;text-align:center}.spf-card h1{margin:0 0 4px;font-size:1.5rem;font-weight:700;color:#0f172a}.spf-subtitle{margin:0 0 24px;font-size:14px;color:#475569}.spf-form{display:flex;flex-direction:column;gap:6px}.spf-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#475569}.spf-input{padding:10px 14px;font-size:14px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#0f172a;outline:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%;box-sizing:border-box}.spf-input:focus{border-color:#32937c;box-shadow:0 0 0 3px #32947c2e}.spf-btn-primary{margin-top:16px;background:#32937c;color:#fff;border:none;padding:12px 16px;font-size:14px;font-weight:700;border-radius:8px;cursor:pointer;transition:background .15s ease}.spf-btn-primary:hover:not(:disabled){background:#248279}.spf-btn-primary:disabled{opacity:.5;cursor:not-allowed}.spf-btn-ghost{margin-top:14px;background:transparent;color:#32937c;border:1px solid #32937c;padding:8px 14px;font-size:13px;font-weight:600;border-radius:8px;cursor:pointer}.spf-btn-ghost:hover{background:#32947c14}.spf-error{margin:8px 0 0;color:#dc2626;font-size:13px}.spf-header{margin-bottom:20px}.spf-tabs{display:flex;gap:4px;border-bottom:1px solid #e5e7eb;margin-bottom:18px;flex-wrap:wrap}.spf-tab{background:none;border:none;padding:10px 16px;font-size:13px;font-weight:600;color:#64748b;cursor:pointer;border-bottom:2px solid transparent}.spf-tab:hover{color:#0f172a}.spf-tab.is-active{color:#32937c;border-bottom-color:#32937c}.spf-form-view{display:flex;flex-direction:column;gap:24px}.spf-section{border-top:1px solid #f1f5f9;padding-top:18px}.spf-section:first-of-type{border-top:none;padding-top:0}.spf-section-title{margin:0 0 6px;font-size:1rem;font-weight:700;color:#0f172a}.spf-section-desc{margin:0 0 12px;font-size:13px;color:#475569}.spf-question{display:flex;flex-direction:column;gap:6px;padding:10px 0}.spf-question.is-alert{background:#dc26260d;border-left:3px solid #dc2626;padding-left:12px;border-radius:6px}.spf-q-alert-badge{display:inline-flex;align-items:center;font-size:10px;font-weight:700;background:#dc2626;color:#fff;padding:2px 8px;border-radius:999px;margin-left:8px}.spf-q-locked-badge{display:inline-flex;align-items:center;font-size:10px;font-weight:700;background:#475569;color:#fff;padding:2px 8px;border-radius:999px;margin-left:8px}.spf-question.is-locked{opacity:.75}.spf-question.is-locked .spf-input,.spf-question.is-locked .spf-pill,.spf-question.is-locked .spf-star{cursor:not-allowed}.spf-autosave-status{margin-top:22px;padding:10px 14px;background:#32947c14;border:1px solid rgba(50,148,124,.25);border-radius:8px;font-size:12px;color:#0f172a;display:flex;align-items:center;gap:8px}.spf-autosave-dot{width:8px;height:8px;border-radius:50%;background:#16a34a;flex-shrink:0}.spf-autosave-saving{background:#f59e0b}.spf-autosave-error{background:#dc2626}.spf-decision{margin-bottom:22px;padding:24px 28px;border-radius:14px;border:1px solid;box-shadow:0 8px 24px #0000000f}.spf-decision-approved{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#16a34a66;border-left:6px solid #16a34a}.spf-decision-rejected{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-color:#dc262666;border-left:6px solid #dc2626}.spf-decision-none{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-color:#47556959;border-left:6px solid #475569}.spf-decision-title{margin:0 0 6px;font-size:1.8rem;font-weight:800;letter-spacing:.02em}.spf-decision-approved .spf-decision-title{color:#166534}.spf-decision-rejected .spf-decision-title{color:#991b1b}.spf-decision-none .spf-decision-title{color:#334155}.spf-decision-meta{margin:0;font-size:13px;color:#475569}.spf-decision-history{margin-bottom:22px;padding:14px 18px;background:#fff;border:1px solid #e2e8f0;border-radius:10px}.spf-decision-history-toggle{background:none;border:none;padding:0;font-size:13px;font-weight:700;color:#0f172a;cursor:pointer}.spf-decision-history-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.spf-decision-history-item{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:6px 10px;border-radius:6px;background:#f8fafc;border-left:3px solid #cbd5e1;font-size:12px;color:#1f2937}.spf-decision-history-approved{border-left-color:#16a34a}.spf-decision-history-rejected{border-left-color:#dc2626}.spf-decision-history-reverted{border-left-color:#475569}.spf-decision-history-action{font-weight:700}.spf-decision-history-date,.spf-decision-history-user{color:#64748b}.spf-q-extras{display:flex;gap:6px;margin-top:4px;flex-wrap:wrap}.spf-q-extra-btn{background:#fff;border:1px solid #d1d5db;color:#475569;padding:4px 10px;font-size:11px;font-weight:600;border-radius:999px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.spf-q-extra-btn:hover{border-color:#32937c;color:#0f172a}.spf-q-extra-btn.is-active{background:#32947c1f;border-color:#32937c;color:#0f172a}.spf-q-extra-btn.is-active-alert{background:#dc2626;border-color:#dc2626;color:#fff}.spf-q-note{margin-top:4px;font-size:13px}.spf-q-extra-btn.is-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.spf-q-files{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.spf-q-file{position:relative;display:inline-flex;align-items:center;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:4px 6px}.spf-q-file-photo{padding:4px}.spf-q-file-thumb{width:80px;height:80px;object-fit:cover;border-radius:4px;display:block}.spf-q-file-link{font-size:12px;color:#0f172a;padding:4px 10px;text-decoration:none;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spf-q-file-del{position:absolute;top:-6px;right:-6px;background:#dc2626;color:#fff;border:none;width:20px;height:20px;border-radius:50%;font-size:14px;line-height:1;cursor:pointer;box-shadow:0 2px 6px #0003}.spf-q-label{font-size:13px;font-weight:600;color:#0f172a}.spf-required{color:#dc2626;margin-left:4px}.spf-q-desc{margin:0;font-size:12px;color:#64748b}.spf-pills{display:flex;gap:6px;flex-wrap:wrap}.spf-pill{padding:6px 14px;font-size:13px;font-weight:600;background:#fff;color:#475569;border:1px solid #d1d5db;border-radius:999px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.spf-pill:hover{border-color:#32937c;color:#0f172a}.spf-pill.is-selected{background:#32937c;border-color:#32937c;color:#fff}.spf-rating{display:inline-flex;align-items:center;gap:4px}.spf-star{background:none;border:none;font-size:24px;color:#d1d5db;cursor:pointer;padding:0 2px;line-height:1}.spf-star.is-filled{color:#f59e0b}.spf-scale{display:flex;align-items:center;gap:10px;max-width:360px}.spf-scale input[type=range]{flex:1}.spf-scale-val{font-size:12px;font-weight:600;min-width:24px}.spf-submit-row{margin-top:24px;display:flex;justify-content:flex-end;border-top:1px solid #f1f5f9;padding-top:16px}.spf-notifs{margin-bottom:22px;padding:16px 18px;background:#d977060f;border:1px solid rgba(217,119,6,.25);border-radius:10px}.spf-notifs-resolved{background:#32947c0f;border-color:#32947c40}.spf-notifs-title{margin:0 0 6px;font-size:1rem;font-weight:700;color:#0f172a}.spf-notifs-hint{margin:0 0 12px;font-size:12px;color:#475569}.spf-notifs-toggle{background:none;border:none;font-size:13px;font-weight:700;color:#0f172a;cursor:pointer;padding:0;margin-bottom:8px}.spf-notif{background:#fff;border-radius:8px;padding:10px 14px;border-left:3px solid #d97706;margin-top:8px}.spf-notif-resolved{border-left-color:#16a34a;opacity:.85}.spf-notif-head{display:flex;align-items:center;gap:10px;font-size:11px;flex-wrap:wrap;margin-bottom:4px}.spf-notif-status{font-weight:700;color:#0f172a}.spf-notif-q{color:#475569}.spf-notif-date{color:#64748b;margin-left:auto}.spf-notif-msg{margin:4px 0 8px;font-size:13px;color:#0f172a;white-space:pre-wrap;line-height:1.5}.spf-btn-small{padding:6px 12px;font-size:12px;margin-top:0}.spf-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.spf-modal{background:#fff;border-radius:14px;padding:28px 32px;max-width:420px;width:100%;text-align:center;box-shadow:0 12px 40px #00000040}.spf-modal h2{margin:0 0 8px;font-size:1.4rem;color:#16a34a}.spf-modal p{margin:0 0 18px;font-size:14px;color:#475569;line-height:1.55}.spf-empty{padding:24px;text-align:center;color:#64748b;background:#f8fafc;border-radius:10px}.spf-results-list,.spf-tofill-list{display:flex;flex-direction:column;gap:10px}.spf-tofill-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;background:#fff;border:1px solid var(--border, #e2e8f0);border-radius:10px}.spf-tofill-main{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.spf-tofill-name{font-size:14px;color:#0f172a}.spf-tofill-notes{font-size:12px;color:#64748b;margin:0}.spf-changes-block{margin-top:22px;padding-top:18px;border-top:1px dashed var(--border, #e2e8f0)}.spf-changes-title{margin:0 0 8px;font-size:16px;color:#0f172a}.spf-changes-list{display:flex;flex-direction:column;gap:12px}.spf-changes-card{background:#fff;border:1px solid color-mix(in srgb,#f59e0b 35%,transparent);border-radius:10px;padding:14px 16px}.spf-changes-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.spf-changes-card-name{font-size:14px;color:#0f172a}.spf-changes-req-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.spf-changes-req{padding:8px 10px;border-left:3px solid color-mix(in srgb,#f59e0b 60%,transparent);background:color-mix(in srgb,#f59e0b 5%,transparent);border-radius:4px}.spf-changes-req-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.spf-changes-req-note{margin:0;font-size:13px;color:#0f172a;white-space:pre-wrap}.spf-docs-list{display:flex;flex-direction:column;gap:10px}.spf-docs-item{display:flex;align-items:center;gap:14px;padding:12px 16px;background:#fff;border:1px solid var(--border, #e2e8f0);border-radius:10px;text-decoration:none;color:inherit;transition:border-color .15s ease,background .15s ease}.spf-docs-item:hover{border-color:#32937c;background:#f8fffb}.spf-docs-icon{font-size:26px;width:32px;text-align:center;flex-shrink:0}.spf-docs-main{flex:1;min-width:0}.spf-docs-name{display:block;font-size:14px;color:#0f172a;margin:0}.spf-docs-desc{font-size:13px;color:#1f2937;margin:2px 0 0}.spf-docs-meta{font-size:11px;color:#64748b;margin:4px 0 0}.spf-docs-action{font-size:13px;color:#32937c;font-weight:600;white-space:nowrap}.spf-result-card{border-radius:10px;border:1px solid #e2e8f0;background:#fff;overflow:hidden}.spf-result-card[open]{box-shadow:0 2px 8px #0f172a0f}.spf-result-summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 14px;font-size:14px}.spf-result-summary::-webkit-details-marker{display:none}.spf-result-badge{padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.04em}.spf-result-approved .spf-result-badge{background:#dcfce7;color:#16a34a}.spf-result-rejected .spf-result-badge{background:#fee2e2;color:#ef4444}.spf-result-kind{font-weight:600;color:#1e293b}.spf-result-project{color:#475569;font-size:13px}.spf-result-date{margin-left:auto;color:#94a3b8;font-size:13px;font-variant-numeric:tabular-nums}.spf-result-body{padding:0 14px 14px;border-top:1px dashed #e2e8f0}.spf-result-label{display:block;margin:12px 0 4px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.spf-result-comment{margin:0;font-size:14px;line-height:1.55;color:#1f2937;white-space:pre-wrap}.spf-result-score{display:inline-block;background:#32937c1f;color:var(--accent, #32937c);border:1px solid rgba(50,147,124,.35);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;letter-spacing:.02em;margin-left:6px}.itm{padding:8px 0}.itm-editor-header{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px 20px;margin-bottom:12px}[data-theme=light] .itm-editor-header{background:#fff}.itm-editor-header-row1{display:flex;align-items:center;gap:10px;margin-bottom:8px}.itm-editor-name-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);white-space:nowrap}.itm-editor-name-input{flex:1;font-size:20px;font-weight:700;padding:4px 6px;border:none;border-bottom:1px dashed var(--border);background:transparent;color:inherit;outline:none}.itm-editor-name-input:focus{border-bottom-color:var(--accent);border-bottom-style:solid}.itm-editor-version{font-size:14px;font-weight:700;padding:4px 10px;border-radius:6px;background:color-mix(in srgb,var(--accent) 15%,transparent);color:color-mix(in srgb,var(--accent) 80%,var(--text));letter-spacing:.3px;white-space:nowrap}[data-theme=light] .itm-editor-version{background:color-mix(in srgb,var(--accent) 12%,#ffffff);color:color-mix(in srgb,var(--accent) 70%,#000)}.itm-editor-header-row2{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:8px}.itm-editor-header-save{margin-left:auto;font-size:11px}.itm-editor-notes-row{display:flex;align-items:center;gap:10px}.itm-editor-notes-input{flex:1;border:none;border-bottom:1px dashed var(--border);background:transparent;color:var(--text);font-size:13px;padding:4px 6px;outline:none}.itm-editor-notes-input:focus{border-bottom-color:var(--accent);border-bottom-style:solid}.itm-editor-notes-input::placeholder{color:var(--text-muted);opacity:.7}.itm-editor-badge{display:inline-flex;align-items:center;font-size:11px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;padding:3px 8px;border-radius:4px;white-space:nowrap}.itm-editor-badge-draft{background:color-mix(in srgb,#f59e0b 18%,transparent);color:#92400e}.itm-editor-badge-active{background:color-mix(in srgb,#16a34a 18%,transparent);color:#166534}.itm-editor-badge-archived{background:color-mix(in srgb,var(--text) 12%,transparent);color:var(--text-muted)}.itm-editor-badge-supplier{background:color-mix(in srgb,#3b82f6 18%,transparent);color:#1e40af}.itm-editor-badge-internal{background:color-mix(in srgb,#8b5cf6 18%,transparent);color:#5b21b6}.itm-editor-badge-normative{background:color-mix(in srgb,#ef4444 18%,transparent);color:#991b1b}.itm-editor-badge-locked{background:color-mix(in srgb,#f59e0b 18%,transparent);color:#92400e}.itm-editor-badge-unlocked{background:color-mix(in srgb,#16a34a 14%,transparent);color:#166534}.itm-editor-meta-grid{background:var(--bg-card);border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:14px;padding:18px 22px;display:grid;grid-template-columns:1fr;gap:4px 16px;box-shadow:0 2px 8px color-mix(in srgb,var(--text) 3%,transparent)}[data-theme=light] .itm-editor-meta-grid{background:#fff;box-shadow:0 2px 12px #0f172a0a}.itm-editor-meta-grid .itm-editor-meta-field{display:grid;grid-template-columns:140px 1fr;align-items:center;gap:10px 16px;padding:8px 0;border-bottom:1px solid color-mix(in srgb,var(--text) 5%,transparent);min-width:0}.itm-editor-meta-grid .itm-editor-meta-field:last-child{border-bottom:none}.itm-editor-meta-grid .itm-editor-meta-field>span:first-child{font-size:13px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--text)}.itm-editor-meta-grid .itm-editor-meta-field>small{grid-column:1 / -1;font-size:11px;color:var(--text-muted);margin-top:2px}.itm-editor-lock-banner-actions{display:flex;gap:6px}.itm-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-wrap:wrap;gap:12px}.itm-title{font-size:1.05rem;font-weight:700;margin:0;color:var(--text)}[data-theme=light] .itm-title{color:#fff}.itm-recommended-banner{background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;padding:12px 16px;margin-bottom:14px}.itm-recommended-banner p{margin:0;font-size:13px;line-height:1.55;color:var(--text)}.itm-recommended-info{color:var(--text)}.itm-recommended-warning{color:#d97706}.itm-recommended-link{background:none;border:none;color:var(--accent);font-weight:700;text-decoration:underline;cursor:pointer;padding:0}.itm-recommended-link:hover{color:var(--accent-strong, var(--accent))}.itm-template-card.is-recommended{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-glow)}.itm-recommended-star{color:var(--accent);font-weight:700;margin-right:6px}.itm-new-row{display:flex;align-items:center;gap:8px;padding:10px 14px;margin-bottom:14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.itm-new-row .form-input{flex:1}.itm-empty{padding:30px 20px;text-align:center;background:var(--bg-card);border:1px dashed var(--border);border-radius:10px;color:var(--text-muted);font-size:13.5px}.itm-templates-list{display:flex;flex-direction:column;gap:10px}.itm-template-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #0000000a;transition:border-color .12s,box-shadow .12s}.itm-template-card.is-active{border-color:var(--accent);box-shadow:0 2px 8px #32947c26}.itm-template-row{display:flex;align-items:center;gap:10px;padding:12px 16px}.itm-code{font-size:10.5px;padding:2px 7px;background:var(--bg-input);color:var(--text-muted);border-radius:4px;font-weight:600}.itm-template-name{flex:1;font-weight:600;color:var(--text)}.itm-template-meta{font-size:11.5px;color:var(--text-dim)}.itm-template-actions{display:flex;gap:4px}.itm-editor{border-top:1px solid var(--border);background:var(--bg)}.itm-editor-toolbar{display:flex;gap:10px;padding:12px 16px;background:var(--bg-input);border-bottom:1px solid var(--border);align-items:center;flex-wrap:wrap}.itm-editor-name{flex:0 1 240px;font-weight:600}.itm-editor-notes{flex:1 1 200px;font-size:13px}.itm-save-status{font-size:11.5px;color:var(--text-dim);min-width:80px;text-align:right}.itm-save-status.saving{color:var(--accent)}.itm-save-status.saved{color:var(--text-muted)}.itm-editor-grid{display:grid;grid-template-columns:280px 1fr;gap:0;min-height:400px}.itm-library{background:var(--bg-card);border-right:1px solid var(--border);padding:12px;display:flex;flex-direction:column;gap:10px;max-height:700px;overflow-y:auto}.itm-library-head{display:flex;justify-content:space-between;align-items:baseline}.itm-library-search{width:100%;height:30px;font-size:12.5px}.itm-library-list{display:flex;flex-direction:column;gap:8px}.itm-library-cat{background:var(--bg-input);border-radius:6px;padding:6px}.itm-library-cat-title{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--text-muted);padding:4px 6px 6px}.itm-library-q{display:flex;align-items:center;gap:6px;padding:5px 8px;background:var(--bg-card);border:1px solid var(--border);border-radius:5px;margin:2px 0;cursor:grab;font-size:12.5px;transition:background .1s,border-color .1s,transform .1s}.itm-library-q:hover{background:var(--bg-elevated);border-color:var(--accent)}.itm-library-q:active{cursor:grabbing;transform:scale(.98)}.itm-q-type{font-size:12px;min-width:22px;text-align:center;flex-shrink:0}.itm-q-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}.itm-library-quick{border-top:1px dashed var(--border);padding-top:10px;display:flex;flex-direction:column;gap:6px}.itm-quick-types{display:flex;flex-wrap:wrap;gap:4px}.itm-quick-type{font-size:11px;padding:4px 8px;background:var(--bg-input);border:1px dashed var(--border);border-radius:5px;cursor:grab;color:var(--text-muted);transition:all .1s}.itm-quick-type:hover{background:var(--bg-elevated);color:var(--accent);border-color:var(--accent);border-style:solid}.itm-quick-type:active{cursor:grabbing}.itm-schema{padding:16px;display:flex;flex-direction:column;gap:14px;overflow-y:auto;max-height:700px}.itm-section{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 16px;box-shadow:0 1px 3px #0000000a}.itm-section-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.itm-section-title{flex:1;font-weight:700;font-size:14px;background:transparent;border:1px solid transparent;padding:5px 8px}.itm-section-title:hover,.itm-section-title:focus{border-color:var(--border);background:var(--bg-input)}.itm-section-desc{width:100%;font-size:12.5px;background:transparent;border:1px solid transparent;padding:5px 8px;color:var(--text-muted);margin-bottom:10px}.itm-section-desc:hover,.itm-section-desc:focus{border-color:var(--border);background:var(--bg-input)}.itm-section-actions{display:flex;gap:4px}.itm-section-questions{display:flex;flex-direction:column;gap:0}.itm-question{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--bg-input);border:1px solid var(--border);border-radius:6px;margin:2px 0;cursor:grab;transition:background .1s,border-color .1s}.itm-question:hover{background:var(--bg-elevated)}.itm-question.is-editing{border-color:var(--accent);background:#32947c0d}.itm-question:active{cursor:grabbing}.itm-q-grip{color:var(--text-dim);font-size:11px;-webkit-user-select:none;user-select:none}.itm-q-required{color:#c47a7e;font-weight:700}.itm-q-actions{display:flex;gap:4px;opacity:0;transition:opacity .12s}.itm-question:hover .itm-q-actions,.itm-question.is-editing .itm-q-actions{opacity:1}.itm-q-edit{margin:4px 0 8px 28px;border-left:3px solid var(--accent);padding-left:10px}.itm-drop-zone{height:6px;margin:1px 0;border-radius:3px;transition:background .1s,height .1s}.itm-drop-zone.is-over{background:var(--accent);height:14px}.itm-drop-zone.itm-drop-empty{height:auto;padding:20px;text-align:center;border:2px dashed var(--border);color:var(--text-muted);font-size:13px;background:var(--bg-input)}.itm-drop-zone.itm-drop-empty.is-over{border-color:var(--accent);background:#32947c14;color:var(--accent)}.itm-add-section{background:transparent;border:1.5px dashed var(--border);border-radius:8px;padding:12px;color:var(--text-muted);cursor:pointer;font-size:13px;font-weight:600;transition:all .12s}.itm-add-section:hover{border-color:var(--accent);color:var(--accent);background:#32947c0a}@media(max-width:900px){.itm-editor-grid{grid-template-columns:1fr}.itm-library{max-height:320px;border-right:none;border-bottom:1px solid var(--border)}}.itm-schema-full{padding:0}.itm-editor-meta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:14px;padding:10px 14px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px}.itm-editor-meta-field{display:flex;flex-direction:column;gap:4px;min-width:200px}.itm-editor-meta-field>span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.itm-template-badges{display:inline-flex;align-items:center;gap:6px;flex-shrink:0}.itm-template-level{display:inline-flex;align-items:center;padding:2px 8px;background:#32947c24;color:var(--accent);border:1px solid rgba(50,148,124,.35);border-radius:999px;font-size:10px;font-weight:700}.itm-template-kind{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.02em}.itm-kind-initial{background:#3b82f624;color:#1d4ed8;border:1px solid rgba(59,130,246,.35)}.itm-kind-decisao{background:#a855f724;color:#6b21a8;border:1px solid rgba(168,85,247,.35)}.itm-kind-post-obra{background:#f59e0b24;color:#92400e;border:1px solid rgba(245,158,11,.4)}.itm-kind-annual{background:#10b98124;color:#047857;border:1px solid rgba(16,185,129,.4)}.itm-groups{display:flex;flex-direction:column;gap:22px}.itm-group{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:14px 18px}.itm-group-title{margin:0 0 12px;display:flex;align-items:center;gap:10px}.itm-group-count{font-size:12px;font-weight:700;color:var(--text-muted);background:var(--bg-elevated);padding:2px 10px;border-radius:999px}.itm-group .itm-template-card{margin-bottom:6px}.itm-create-start{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:24px 28px}.itm-section-empty{padding:16px;background:var(--bg-elevated);border:1px dashed var(--border);border-radius:8px;text-align:center;font-size:12px;color:var(--text-muted);margin:8px 0}.itm-section-add{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.itm-add-inline-wrap{position:relative}.itm-add-inline-menu{position:absolute;top:calc(100% + 4px);left:0;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 16px #0000001f;z-index:10;min-width:200px;padding:4px;display:flex;flex-direction:column}.itm-add-inline-item{background:none;border:none;text-align:left;padding:6px 10px;font-size:13px;color:var(--text);cursor:pointer;border-radius:4px}.itm-add-inline-item:hover{background:var(--bg-elevated)}.itm-import-modal{max-width:640px;width:95vw}.itm-import-tree,.itm-import-list{max-height:60vh;overflow-y:auto;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:var(--bg-elevated)}.itm-import-super{margin-bottom:8px}.itm-import-super-head,.itm-import-cat-head,.itm-import-q{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:4px;cursor:pointer}.itm-import-super-head{font-size:13px}.itm-import-super-head:hover,.itm-import-cat-head:hover,.itm-import-q:hover{background:var(--bg-card)}.itm-import-cats{padding-left:22px}.itm-import-cat-head{font-size:13px;font-weight:600}.itm-import-qs{padding-left:22px;display:flex;flex-direction:column;gap:1px}.itm-import-q{font-size:12px}.itm-q-edit-bank-cats{margin-top:10px;padding:10px 12px;background:color-mix(in srgb,var(--accent) 5%,transparent);border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);border-radius:6px}.itm-q-edit-bank-cats .form-label{display:block;font-size:11px;color:var(--text-muted);margin-bottom:4px}.itm-q-edit-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--border);flex-wrap:wrap}.itm-q-edit-bank-tag{font-size:12px;color:var(--text-muted)}.itm-q-edit-actions{display:flex;gap:6px}.itm-editor-lock-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:8px;background:var(--bg-card);border:1px solid var(--border);border-left:4px solid #f59e0b;color:#92400e;font-size:13px;margin-bottom:12px}[data-theme=light] .itm-editor-lock-banner{background:#fff}.itm-editor-lock-banner.is-unlocked{border-left-color:#16a34a;color:#166534}.itm-editor-lock-banner button{background:var(--bg-card);border:1px solid var(--border);color:inherit}[data-theme=light] .itm-editor-lock-banner button{background:#fff}.itm-editor-lock-banner button:hover{background:color-mix(in srgb,var(--text) 5%,transparent)}[data-theme=light] .itm-editor-lock-banner button:hover{background:#f3f4f6}.itm-editor-body{border:none;padding:0;margin:0;min-width:0}.itm-editor.is-locked .itm-editor-body{opacity:.65}.itm-editor.is-locked .itm-editor-body button{pointer-events:none}.itm-editor-lock-history{margin:16px 0;padding:10px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;font-size:12px}[data-theme=light] .itm-editor-lock-history{background:#fafafa}.itm-editor-lock-history summary{cursor:pointer;font-weight:600}.itm-editor-lock-history ul{list-style:none;padding-left:0;margin-top:8px}.itm-editor-lock-history li{padding:4px 0;border-bottom:1px dashed color-mix(in srgb,var(--text) 8%,transparent)}.itm-editor-lock-history li:last-child{border-bottom:none}.itm-editor-lock-note{margin-left:16px;color:var(--text-muted);font-style:italic}.itm-editor-lifecycle-help{margin-top:24px;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;font-size:13px;line-height:1.5;color:var(--text-muted)}[data-theme=light] .itm-editor-lifecycle-help{background:#fafafa}.itm-editor-lifecycle-help strong,.itm-editor-lifecycle-help li,.itm-editor-lifecycle-help h4{color:var(--text)}.itm-editor-lifecycle-help h4{margin:0 0 8px;font-size:14px}.itm-editor-lifecycle-help ol,.itm-editor-lifecycle-help ul{padding-left:20px;margin:0 0 12px}.itm-editor-lifecycle-help li{margin-bottom:4px}.itm-editor-lifecycle-help p{margin:8px 0 0}.itm-editor-lifecycle-help code{background:color-mix(in srgb,var(--text) 8%,transparent);padding:1px 4px;border-radius:3px;font-size:12px}.itm-bank-modal{width:100%;max-width:460px}.itm-bank-modal .modal-actions{padding:12px 20px 16px;gap:10px}.itm-docs{margin:16px 0;padding:14px 18px;border:1px solid var(--border);border-radius:10px;background:var(--bg-card)}[data-theme=light] .itm-docs{background:#fff}.itm-docs-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.itm-docs-head h3{margin:0;font-size:14px;font-weight:600}.itm-docs-empty{font-size:12px;margin:4px 0 0}.itm-doc-block{border:1px solid var(--border);border-radius:6px;padding:10px 12px;margin-top:8px;background:var(--bg-card)}.itm-doc-block-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.itm-doc-block-label{font-size:12px;color:var(--text-muted);font-weight:600}.itm-doc-intro{width:100%;margin-bottom:8px;resize:vertical}.itm-doc-files{list-style:none;padding:0;margin:0 0 8px;display:flex;flex-direction:column;gap:4px}.itm-doc-file{display:flex;align-items:center;gap:8px;padding:4px 8px;border-radius:4px;background:color-mix(in srgb,var(--text) 4%,transparent)}.itm-doc-file-name{flex:1;text-decoration:none;font-size:13px}.itm-doc-file-name:hover{text-decoration:underline}.itm-doc-file-size{font-size:11px}.itm-doc-upload{display:inline-block;cursor:pointer}.itm-doc-upload input[type=file]{display:none}.itm-submissions{margin:24px 0;padding:14px 18px;border:1px solid var(--border);border-radius:10px;background:var(--bg-card)}[data-theme=light] .itm-submissions{background:#fff}.itm-submissions-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:8px}.itm-submissions-head h3{margin:0;font-size:14px;font-weight:600}.itm-submissions-toggle{display:flex;align-items:center;gap:8px;background:none;border:none;padding:0;cursor:pointer;color:inherit;font:inherit;flex:1;text-align:left}.itm-submissions-toggle:hover h3{text-decoration:underline}.itm-submissions-caret{font-size:12px;color:var(--text-muted);width:12px;display:inline-block}.itm-submissions-empty{font-size:12px;margin:4px 0 0}.itm-submissions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.itm-submission{border:1px solid var(--border);border-radius:6px;background:var(--bg-card);overflow:hidden}.itm-submission-head{display:flex;align-items:center;gap:8px;padding:6px 10px}.itm-submission-head-main{flex:1;display:flex;align-items:center;gap:8px;background:none;border:none;color:inherit;font:inherit;cursor:pointer;text-align:left;padding:4px 0}.itm-submission-head-main:hover .itm-submission-who{text-decoration:underline}.itm-submission.is-draft{border-left:3px solid #f59e0b}.itm-submission-lock{font-size:13px;color:var(--text-muted)}.itm-submissions-head-actions{display:flex;gap:6px}.itm-submission-lock-history{margin:10px 0;padding:8px 12px;background:color-mix(in srgb,var(--text) 4%,transparent);border-radius:6px;font-size:12px}.itm-submission-lock-history summary{cursor:pointer;font-weight:600}.itm-submission-lock-history ul{list-style:none;padding-left:0;margin-top:8px}.itm-submission-lock-history li{padding:4px 0;border-bottom:1px dashed color-mix(in srgb,var(--text) 8%,transparent)}.itm-submission-lock-history li:last-child{border-bottom:none}.itm-submission-lock-note{margin-left:16px;color:var(--text-muted);font-style:italic}.itm-submission-status{font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;padding:2px 6px;border-radius:4px;white-space:nowrap}.itm-submission-status.is-draft{background:color-mix(in srgb,#f59e0b 18%,transparent);color:#92400e}.itm-submission-status.is-submitted{background:color-mix(in srgb,#16a34a 18%,transparent);color:#166534}.itm-submission-decision{font-size:11px;font-weight:700;letter-spacing:.3px;padding:2px 7px;border-radius:4px;white-space:nowrap;border:1px solid transparent}.itm-submission-decision.is-ok{background:color-mix(in srgb,#16a34a 14%,transparent);border-color:color-mix(in srgb,#16a34a 45%,transparent);color:#166534}.itm-submission-decision.is-cond{background:color-mix(in srgb,#f59e0b 16%,transparent);border-color:color-mix(in srgb,#f59e0b 50%,transparent);color:#92400e}.itm-submission-decision.is-rej{background:color-mix(in srgb,#b00020 14%,transparent);border-color:color-mix(in srgb,#b00020 45%,transparent);color:#991b1b}.itm-submission-who{flex:1;font-weight:600;font-size:13px}.itm-submission-date{font-size:11px}.itm-submission-toggle{font-size:12px;color:var(--text-muted)}.itm-submission-body{padding:10px 12px;border-top:1px solid var(--border)}.itm-submission-meta{font-size:12px;color:var(--text-muted);margin-bottom:8px}.itm-submission-answers .itm-sub-section h4{margin:8px 0 4px;font-size:13px;font-weight:600;color:var(--text-muted)}.itm-sub-answer{display:grid;grid-template-columns:minmax(180px,1fr) 2fr;gap:12px;padding:4px 0;font-size:13px;border-bottom:1px dashed color-mix(in srgb,var(--text) 8%,transparent)}.itm-sub-answer:last-child{border-bottom:none}.itm-sub-q{color:var(--text-muted)}.itm-sub-a{word-break:break-word}.inqueritos-code{font-family:var(--font-mono, "Courier New", monospace);font-size:12px;color:var(--accent);background:#32947c1a;padding:1px 6px;border-radius:4px;font-weight:600}.inq-card-dup,.projects-flat-action{margin-left:auto;background:transparent;border:1px solid transparent;color:var(--text-dim);cursor:pointer;font-size:14px;padding:2px 8px;border-radius:var(--radius-sm);transition:color .15s,background .15s,border-color .15s}.inq-card-dup:hover,.projects-flat-action:hover{color:var(--accent);background:#32947c1a;border-color:#32947c4d}.inqueritos-page .itm-editor{border-top:none;background:transparent;animation:inq-fade-up .5s cubic-bezier(.4,0,.2,1)}@keyframes inq-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.inqueritos-page .itm-editor-toolbar{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg, 16px);padding:16px 20px;margin-bottom:16px;gap:14px;box-shadow:0 2px 8px #0000000a}.inqueritos-page .itm-editor-toolbar .form-input{border-radius:var(--radius-sm, 8px);transition:border-color .2s,box-shadow .2s}.inqueritos-page .itm-editor-toolbar .form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.inqueritos-page .itm-editor-meta{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg, 16px);padding:16px 20px;margin-bottom:24px;display:flex;gap:24px;flex-wrap:wrap;box-shadow:0 2px 8px #0000000a}.inqueritos-page .itm-editor-meta-field{display:flex;flex-direction:column;gap:6px;min-width:180px}.inqueritos-page .itm-editor-meta-field>span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.inqueritos-page .itm-schema{padding:0;gap:18px;max-height:none;overflow:visible}.inqueritos-page .itm-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg, 16px);padding:20px 22px;box-shadow:0 2px 12px #0000000d;transition:box-shadow .25s ease,border-color .25s ease,transform .25s ease;animation:inq-section-in .4s cubic-bezier(.4,0,.2,1) backwards}@keyframes inq-section-in{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.inqueritos-page .itm-schema>.itm-section:nth-child(1){animation-delay:.05s}.inqueritos-page .itm-schema>.itm-section:nth-child(2){animation-delay:.1s}.inqueritos-page .itm-schema>.itm-section:nth-child(3){animation-delay:.15s}.inqueritos-page .itm-schema>.itm-section:nth-child(4){animation-delay:.2s}.inqueritos-page .itm-schema>.itm-section:nth-child(5){animation-delay:.25s}.inqueritos-page .itm-schema>.itm-section:nth-child(n+6){animation-delay:.3s}.inqueritos-page .itm-section:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:0 4px 16px #0000000f,0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent)}.inqueritos-page .itm-section-head{margin-bottom:12px;gap:10px}.inqueritos-page .itm-section-title{font-size:16px;font-weight:700;padding:8px 12px;border-radius:var(--radius-sm, 8px);transition:background .15s,border-color .15s}.inqueritos-page .itm-section-title:hover,.inqueritos-page .itm-section-title:focus{background:var(--bg-input);border-color:var(--border)}.inqueritos-page .itm-section-desc{font-size:13px;padding:6px 12px;margin-bottom:14px;border-radius:var(--radius-sm, 8px)}.inqueritos-page .itm-question{padding:12px 14px;margin:4px 0;border-radius:var(--radius-sm, 8px);background:var(--bg-input);border:1px solid transparent;transition:all .18s cubic-bezier(.4,0,.2,1)}.inqueritos-page .itm-question:hover{background:var(--bg-elevated);border-color:color-mix(in srgb,var(--accent) 30%,transparent);transform:translate(2px)}.inqueritos-page .itm-question.is-editing{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--bg-card));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.inqueritos-page .itm-drop-zone{height:8px;margin:2px 0;border-radius:4px;transition:background .2s,height .2s}.inqueritos-page .itm-drop-zone.is-over{height:18px;background:var(--accent);animation:inq-drop-pulse 1s ease-in-out infinite}@keyframes inq-drop-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--accent) 50%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 0%,transparent)}}.inqueritos-page .itm-add-section{border-radius:var(--radius-lg, 16px);padding:18px;font-size:14px;font-weight:700;border:2px dashed var(--accent);background:var(--bg-card);color:var(--accent);transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0000000a}.inqueritos-page .itm-add-section:hover{background:color-mix(in srgb,var(--accent) 10%,var(--bg-card));border-style:solid;transform:translateY(-2px);box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 25%,transparent),0 0 0 1px color-mix(in srgb,var(--accent) 25%,transparent)}.inqueritos-page .itm-save-status{transition:color .3s,opacity .3s}.inqueritos-page .itm-save-status.saved{color:var(--success, #22c55e);animation:inq-saved-pop .4s cubic-bezier(.34,1.56,.64,1)}@keyframes inq-saved-pop{0%{transform:scale(.85);opacity:0}60%{transform:scale(1.1);opacity:1}to{transform:scale(1);opacity:1}}.inqueritos-page .itm-library{border-radius:var(--radius-lg, 16px);background:var(--bg-card);border:1px solid var(--border);box-shadow:0 2px 12px #0000000d}.inqueritos-page .itm-library-q{border-radius:var(--radius-sm, 8px);transition:all .15s ease}.inqueritos-page .itm-library-q:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--bg-elevated));transform:translate(2px)}[data-theme=light] .inqueritos-page .itm-section-title,[data-theme=light] .inqueritos-page .itm-editor-meta-field>span{color:var(--text)}.inq-hero-action{height:32px;padding:0 14px;display:inline-flex;align-items:center;white-space:nowrap;font-size:13px}.inq-hero-action-back{margin-right:auto}.qbm{padding:8px 0}.qbm-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-wrap:wrap;gap:12px}.qbm-title{font-size:1.05rem;font-weight:700;margin:0;color:var(--text)}.qbm-actions{display:flex;gap:8px}.qbm-help{font-size:13px;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:10px 14px;margin:0 0 14px}.qbm-tree{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:6px;box-shadow:0 1px 3px #0000000a}.qbm-super{padding:4px;border-radius:6px}.qbm-super-orphan{opacity:.85}.qbm-super-row,.qbm-cat-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px}.qbm-super-row:hover,.qbm-cat-row:hover{background:#32947c0f}.qbm-cat{padding-left:22px}.qbm-question{display:flex;align-items:center;gap:8px;padding:6px 8px 6px 50px;border-radius:6px;font-size:13px;transition:background .12s}.qbm-question:hover{background:#32947c0f}.qbm-expand{width:22px;height:22px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:11px;border-radius:4px;flex-shrink:0}.qbm-expand:hover{background:var(--bg-elevated)}.qbm-grip{cursor:grab;color:var(--text-dim);font-size:11px;-webkit-user-select:none;user-select:none;padding:0 2px}.qbm-grip:active{cursor:grabbing}.qbm-super-icon,.qbm-cat-icon,.qbm-q-type{font-size:14px;width:20px;text-align:center;flex-shrink:0}.qbm-code{font-size:10.5px;padding:2px 7px;background:var(--bg-input);color:var(--text-muted);border-radius:4px;font-weight:600;flex-shrink:0}.qbm-label,.qbm-super-name,.qbm-q-label{flex:1;font-size:13.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qbm-label{cursor:text;padding:2px 4px;border-radius:3px}.qbm-label:hover{background:var(--bg-input)}.qbm-label-input{flex:1;height:26px;font-size:13.5px}.qbm-q-required{color:#c47a7e;font-weight:700;padding:0 4px}.qbm-count{font-size:11px;color:var(--text-dim);padding:1px 7px;background:var(--bg-input);border-radius:10px;flex-shrink:0}.qbm-row-actions{display:inline-flex;gap:4px;flex-shrink:0;opacity:0;transition:opacity .12s}.qbm-super-row:hover .qbm-row-actions,.qbm-cat-row:hover .qbm-row-actions,.qbm-question:hover .qbm-row-actions{opacity:1}.qbm-inline-add{display:flex;gap:6px;padding:6px 8px;margin:4px 0;background:var(--bg-input);border-radius:6px}.qbm-inline-add .form-input{flex:1;height:30px;font-size:13px}.qbm-empty{padding:30px 20px;text-align:center;color:var(--text-muted);font-size:13.5px}.qbm-q-modal{max-width:min(640px,92vw)}.question-bank-content{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg, 16px);padding:20px;box-shadow:0 2px 12px #0000000d;animation:qbp-fade-up .4s cubic-bezier(.4,0,.2,1)}@keyframes qbp-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.auditoria-subtitle{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}.auditoria-save-status{font-size:12px;font-weight:600;margin-right:4px}.auditoria-notes{background:var(--bg-card);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius-sm, 8px);padding:12px 16px;margin-bottom:24px;font-size:13px;color:var(--text)}.auditoria-sections{display:flex;flex-direction:column;gap:18px}.auditoria-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg, 16px);padding:22px 24px;box-shadow:0 2px 12px #0000000d;animation:ad-section-in .4s cubic-bezier(.4,0,.2,1) backwards}@keyframes ad-section-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.auditoria-sections>.auditoria-section:nth-child(1){animation-delay:.05s}.auditoria-sections>.auditoria-section:nth-child(2){animation-delay:.1s}.auditoria-sections>.auditoria-section:nth-child(3){animation-delay:.15s}.auditoria-sections>.auditoria-section:nth-child(4){animation-delay:.2s}.auditoria-sections>.auditoria-section:nth-child(n+5){animation-delay:.25s}.auditoria-section-title{font-size:1.15rem;font-weight:700;color:var(--text);margin:0 0 8px;padding-bottom:12px;border-bottom:1px solid var(--border)}.auditoria-section-desc{margin:0 0 16px;font-size:13px;color:var(--text-muted)}.auditoria-questions{display:flex;flex-direction:column;gap:18px;margin-top:12px}.auditoria-q{display:flex;flex-direction:column;gap:6px}.auditoria-q-label{font-size:14px;font-weight:600;color:var(--text)}.auditoria-q-required{color:var(--danger);font-weight:700}.auditoria-q-desc{margin:-4px 0 4px;font-size:12px;color:var(--text-muted)}.auditoria-q-choices{display:flex;flex-wrap:wrap;gap:8px}.auditoria-q-choice{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--bg-input);border:1.5px solid var(--border);border-radius:var(--radius-pill, 999px);font-size:13px;cursor:pointer;transition:all .15s ease}.auditoria-q-choice:hover{border-color:var(--accent)}.auditoria-q-choice.is-selected{background:color-mix(in srgb,var(--accent) 12%,var(--bg-card));border-color:var(--accent);color:var(--accent);font-weight:600}.auditoria-q-choice input[type=radio]{margin:0}.auditoria-q-rating{display:flex;gap:4px;align-items:center}.auditoria-q-star{background:transparent;border:none;font-size:28px;color:var(--border);cursor:pointer;padding:2px 4px;transition:color .15s}.auditoria-q-star:hover:not(:disabled),.auditoria-q-star.is-selected{color:#f59e0b}.auditoria-q-star:disabled{cursor:not-allowed}.auditoria-q-scale{display:flex;flex-wrap:wrap;gap:4px}.auditoria-q-scale-btn{width:36px;height:36px;background:var(--bg-input);border:1.5px solid var(--border);border-radius:var(--radius-sm, 8px);font-size:13px;font-weight:600;color:var(--text);cursor:pointer;transition:all .15s ease}.auditoria-q-scale-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.auditoria-q-scale-btn.is-selected{background:var(--accent);border-color:var(--accent);color:#fff}.auditoria-q-scale-btn:disabled{cursor:not-allowed}.vehicle-phase-page{max-width:var(--page-content-max);margin:0 auto;padding:24px}.vp-save{font-size:11px;color:var(--text-dim);min-width:80px}.vp-save.saving{color:var(--accent)}.vp-content{margin-top:16px}.vp-section{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:18px 20px;box-shadow:0 1px 3px #0000000a;margin-bottom:14px}.vp-section-title{font-size:1rem;font-weight:700;margin:0 0 14px;color:var(--text);padding-left:10px;border-left:4px solid var(--accent)}.vp-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.vp-field{display:flex;flex-direction:column;gap:4px}.vp-table-wrap{overflow-x:auto;border-radius:8px}.vp-table{width:100%;border-collapse:collapse;font-size:13px;background:var(--bg-input);border-radius:8px}.vp-table th,.vp-table td{padding:6px 10px;border-bottom:1px solid var(--border);text-align:left}.vp-table th{background:var(--bg-elevated);font-weight:700;font-size:10.5px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.vp-table .form-input{height:30px;font-size:12.5px}.vp-table tbody tr:last-child td{border-bottom:none}.vp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.vp-card{background:var(--bg-input);border:1px solid var(--border);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:6px}.vp-card.is-strong{background:linear-gradient(135deg,#32947c2e,#32947c0f);border-color:#32947c73}.vp-card-label{font-size:10.5px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.vp-card-value{font-size:1.3rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text)}.vp-card.is-strong .vp-card-value{color:var(--accent)}.article-page{max-width:var(--page-content-max);margin:0 auto;padding:32px 24px}.article-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px;flex-wrap:wrap}.article-picker{position:relative}.article-picker-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;color:var(--text);transition:all .15s}.article-picker-btn:hover{border-color:var(--accent);background:var(--bg-elevated)}.article-picker-chevron{color:var(--text-dim);font-size:10px}.article-picker-panel{position:absolute;top:calc(100% + 6px);right:0;width:480px;max-width:92vw;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 28px #0000001f;z-index:50;overflow:hidden}.article-picker-search{width:100%;border:none;border-bottom:1px solid var(--border);border-radius:0;padding:12px 14px;font-size:13px;background:var(--bg-input)}.article-picker-search:focus{outline:none;background:var(--bg-card)}.article-picker-list{max-height:380px;overflow-y:auto}.article-picker-empty{padding:24px;text-align:center;color:var(--text-muted);font-size:13px}.article-picker-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;background:transparent;border:none;border-bottom:1px solid var(--border);cursor:pointer;text-align:left;transition:background .1s}.article-picker-item:last-child{border-bottom:none}.article-picker-item:hover{background:var(--bg-elevated)}.article-picker-item.is-current{background:#32947c14}.article-picker-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.article-picker-item-desc{font-size:13px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.article-picker-item-supplier{font-size:11px;color:var(--text-muted)}.article-picker-item-code{font-size:11px;padding:3px 7px;background:var(--bg-input);border-radius:4px;color:var(--text-muted);white-space:nowrap}.article-header{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:24px 28px;margin-bottom:24px;box-shadow:0 1px 3px #0000000a}.article-code{font-size:12px;padding:3px 8px;background:var(--bg-input);border-radius:5px;color:var(--text-muted);font-weight:600}.article-title{font-size:1.5rem;font-weight:700;margin:8px 0 12px;color:var(--text);line-height:1.3}.article-meta{display:flex;gap:14px;flex-wrap:wrap;align-items:center;font-size:12.5px;color:var(--text-muted)}.article-meta-pill{padding:3px 10px;background:#32947c1f;color:var(--accent);border-radius:12px;font-weight:600;font-size:11.5px}.article-meta-text strong{color:var(--text)}.article-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-bottom:28px}.article-summary-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:6px;box-shadow:0 1px 3px #0000000a}.article-summary-label{font-size:10.5px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.article-summary-value{font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1}.article-tables{display:flex;flex-direction:column;gap:28px}.article-section{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px 24px;box-shadow:0 1px 3px #0000000a}.article-section-title{font-size:1.1rem;font-weight:700;margin:0 0 16px;color:var(--text);display:flex;align-items:center;gap:8px}.article-section-count{font-size:13px;font-weight:500;color:var(--text-muted)}.article-empty{padding:24px;text-align:center;color:var(--text-muted);font-size:13px;font-style:italic;background:var(--bg-input);border-radius:8px}.article-link{background:none;border:none;color:var(--accent);cursor:pointer;padding:0;font:inherit;text-decoration:underline;text-underline-offset:2px}.article-link:hover{color:var(--accent-strong, #1f6b59)}.stock-prices-page{max-width:var(--page-max-width);margin:0 auto;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom)}.stock-prices-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:20px}.stock-prices-section .section-title{font-size:1rem;font-weight:700;color:var(--text);margin:0 0 12px}.stock-prices-toolbar{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:14px}.stock-prices-paste{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.stock-prices-textarea{font-family:var(--font-mono, monospace);font-size:13px;resize:vertical;white-space:pre}.stock-prices-preview{border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:14px;overflow:hidden}.stock-prices-preview-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--bg-elevated)}.stock-prices-preview-header h3{margin:0;font-size:13px;font-weight:600}.stock-prices-preview-scroll{max-height:320px;overflow-y:auto}.stock-prices-table{width:100%;border-collapse:collapse;font-size:13px}.stock-prices-table th,.stock-prices-table td{padding:6px 10px;border-bottom:1px solid var(--border);text-align:left}.stock-prices-table th{background:var(--bg-input);color:var(--text-muted);text-transform:uppercase;font-size:11px;font-weight:600;letter-spacing:.03em}.stock-prices-table .col-code{font-family:var(--font-mono, monospace);font-weight:600}.stock-prices-table .col-price{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.stock-prices-table tr.row-invalid td{background:#c47a7e0f}.stock-prices-actions{display:flex;align-items:center;gap:14px}.stock-prices-actions-cell{display:flex;gap:6px;justify-content:flex-end;white-space:nowrap}.stock-prices-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.stock-prices-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow);cursor:pointer;transition:var(--transition);display:flex;flex-direction:column;gap:6px;min-width:0}.stock-prices-card:hover{border-color:var(--accent-teal);box-shadow:var(--shadow-teal);transform:translateY(-2px)}.stock-prices-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.stock-prices-card-name{font-size:.95rem;font-weight:700;color:var(--text);margin:0;line-height:1.3;word-break:break-word}.stock-prices-card-meta{font-size:12px;margin:0}.stock-prices-card-counts{display:flex;gap:10px;font-size:12px;flex-wrap:wrap}.stock-prices-card-notes{font-size:12px;margin:2px 0 0}.stock-prices-card-footer{display:flex;align-items:center;justify-content:flex-end;margin-top:4px;padding-top:10px;border-top:1px solid var(--border)}.stock-prices-card-footer .btn-danger-ghost{font-size:12px;padding:4px 10px}.stock-prices-detail-modal{max-width:min(960px,92vw);width:100%}@media(max-width:768px){.stock-prices-paste,.stock-prices-grid{grid-template-columns:1fr}}.quick-actions-page{padding:32px 24px;max-width:1100px;margin:0 auto}.quick-actions-hero{margin-bottom:28px}.quick-actions-hero h1{font-size:32px;margin:0 0 6px;color:var(--text)}.quick-actions-hero p{font-size:14px;margin:0}.quick-actions-scan-hint{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:18px;background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:10px;color:var(--text);font-size:13px}.quick-actions-scan-hint>span{flex:1}.quick-actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.quick-action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:42px 24px;min-height:220px;border-radius:18px;border:2px solid transparent;background:color-mix(in srgb,var(--text-muted) 8%,transparent);color:var(--text);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;font-family:inherit}.quick-action-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 30px color-mix(in srgb,#000 25%,transparent)}.quick-action-btn:disabled{opacity:.55;cursor:not-allowed}.quick-action-icon{display:flex;align-items:center;justify-content:center;width:96px;height:96px;border-radius:50%;background:#ffffff26;color:#fff}.quick-action-label{font-size:22px;font-weight:800;letter-spacing:.2px;color:inherit}.quick-action-sub{font-size:13px;opacity:.85}.quick-action-entry{background:linear-gradient(135deg,#16a34a,#22c55e);color:#fff;border-color:#15803d}.quick-action-exit{background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;border-color:#1d4ed8}.quick-action-inventory{background:linear-gradient(135deg,#ea580c,#f97316);color:#fff;border-color:#c2410c}.quick-action-qr{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border-color:#6d28d9}@media(max-width:720px){.quick-actions-page{padding:18px 12px}.quick-actions-grid{grid-template-columns:1fr;gap:14px}.quick-action-btn{min-height:160px;padding:28px 16px}.quick-action-icon{width:72px;height:72px}.quick-action-label{font-size:19px}}.purchases-page .purchases-card-amount{font-size:1.5rem;font-weight:700;margin:6px 0;color:var(--text);font-variant-numeric:tabular-nums}.purchases-tabs{display:flex;gap:4px;margin-bottom:20px;border-bottom:1px solid var(--border)}.purchases-tab{background:transparent;border:none;padding:10px 16px;font-size:13px;font-weight:600;color:#fff;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .12s,border-color .12s,background .12s;white-space:nowrap;border-radius:6px 6px 0 0}.purchases-tab:hover{color:var(--accent);background:#32947c14}.purchases-tab-active{color:var(--accent);border-bottom-color:var(--accent)}.purchases-tab-active:hover{background:transparent}.purchases-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-bottom:20px}.purchases-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:6px;box-shadow:0 2px 6px #0000000f,0 1px 2px #0000000a;transition:transform .15s,box-shadow .15s,border-color .15s}.purchases-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001f;border-color:#32947c66}.purchases-card-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--text);opacity:.75;font-weight:700}.purchases-card-value{font-size:1.4rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1}.purchases-card-paid{background:linear-gradient(135deg,#36a87b,#2e8f6a);border-color:#1f6e4e99}.purchases-card-paid .purchases-card-value,.purchases-card-paid .purchases-card-label{color:#fff}.purchases-card-unpaid{background:linear-gradient(135deg,#d28c3c,#b07128);border-color:#7a4f1c99}.purchases-card-unpaid .purchases-card-value,.purchases-card-unpaid .purchases-card-label{color:#fff}.purchases-card-paid-strong{background:linear-gradient(135deg,#2e8f6a,#1f6e4e);border-color:#1f6e4ebf;box-shadow:0 4px 14px #2e8f6a4d}.purchases-card-paid-strong .purchases-card-value{color:#fff;font-size:1.55rem}.purchases-card-paid-strong .purchases-card-label{color:#fff}.purchases-card-unpaid-strong{background:linear-gradient(135deg,#b07128,#7a4f1c);border-color:#7a4f1cbf;box-shadow:0 4px 14px #b071284d}.purchases-card-unpaid-strong .purchases-card-value{color:#fff;font-size:1.55rem}.purchases-card-unpaid-strong .purchases-card-label{color:#fff}.purchases-card-paid .purchases-card-label,.purchases-card-unpaid .purchases-card-label,.purchases-card-paid-strong .purchases-card-label,.purchases-card-unpaid-strong .purchases-card-label{opacity:.95}[data-theme=dark] .purchases-card-paid{background:linear-gradient(135deg,#2e8f6a,#1f6e4e);border-color:#86efac66}[data-theme=dark] .purchases-card-paid-strong{background:linear-gradient(135deg,#36a87b,#1f6e4e);border-color:#86efac99;box-shadow:0 4px 16px #2e8f6a59}[data-theme=dark] .purchases-card-paid .purchases-card-value,[data-theme=dark] .purchases-card-paid-strong .purchases-card-value{color:#fff}[data-theme=dark] .purchases-card-unpaid{background:linear-gradient(135deg,#b07128,#7a4f1c);border-color:#fcd34d66}[data-theme=dark] .purchases-card-unpaid-strong{background:linear-gradient(135deg,#c98a2e,#7a4f1c);border-color:#fcd34d99;box-shadow:0 4px 16px #b0712859}[data-theme=dark] .purchases-card-unpaid .purchases-card-value,[data-theme=dark] .purchases-card-unpaid-strong .purchases-card-value{color:#fff}[data-theme=dark] .purchases-card-label{color:#fff;opacity:1}.purchases-filters{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}.purchases-filters .form-input{flex:1;min-width:180px}.purchases-table-scroll{overflow-x:auto;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);box-shadow:0 1px 3px #0000000a,0 1px 2px #0000000f}.purchases-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;background:transparent}.purchases-table thead th{background:linear-gradient(180deg,var(--bg-elevated) 0%,var(--bg-input) 100%);color:var(--text-muted);text-transform:uppercase;font-size:10.5px;font-weight:700;letter-spacing:.06em;padding:12px 14px;border-bottom:2px solid var(--border);white-space:nowrap;text-align:left}.purchases-table tbody td{padding:11px 14px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle}.purchases-table tbody tr:nth-child(2n) td{background:#00000004}[data-theme=dark] .purchases-table tbody tr:nth-child(2n) td{background:#ffffff05}.purchases-table tbody tr:hover td{background:#32947c0f;transition:background .12s}.purchases-table tbody tr:last-child td{border-bottom:none}.purchases-col-amount{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.purchases-col-projects{max-width:130px}.purchases-projects-list{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px;vertical-align:middle;font-size:12px}.purchases-col-actions{display:flex;gap:4px;white-space:nowrap;justify-content:flex-end}.purchases-status{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:var(--radius-pill)}.purchases-status-po{background:#78788226;color:var(--text-muted);border:1px solid rgba(120,120,130,.3)}.purchases-status-unpaid{background:#d28c3c26;color:#b07128;border:1px solid rgba(210,140,60,.35)}.purchases-status-paid{background:#3ca06e26;color:#2e8f6a;border:1px solid rgba(60,160,110,.35)}.purchases-modal{max-width:min(720px,92vw);width:100%}.purchases-modal .modal-body>.form-group,.purchases-modal .modal-body>.purchases-form-grid{margin-top:18px}.purchases-modal .modal-body>.form-group:first-child,.purchases-modal .modal-body>.purchases-form-grid:first-child{margin-top:0}.purchases-form-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.purchases-project-chips{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border:1px solid var(--border);border-radius:var(--radius-sm);min-height:40px}.purchases-project-chip{padding:4px 10px;font-size:12px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--bg-input);color:var(--text-muted);cursor:pointer;transition:var(--transition)}.purchases-project-chip:hover{color:var(--text);border-color:var(--accent)}.purchases-project-chip-on{background:var(--accent);color:#fff;border-color:var(--accent)}.purchases-invoice-empty{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.purchases-invoice-preview{display:flex;align-items:center;gap:14px;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);flex-wrap:wrap}.purchases-invoice-img{max-width:120px;max-height:90px;border-radius:var(--radius-sm);object-fit:cover;border:1px solid var(--border)}.purchases-invoice-pdf{display:flex;align-items:center;gap:8px;font-size:13px}.purchases-invoice-pdf-icon{background:var(--danger);color:#fff;padding:4px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:700;letter-spacing:.05em}.purchases-invoice-pdf-name{color:var(--text);max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.purchases-invoice-actions{display:flex;gap:6px;flex-wrap:wrap}.purchases-invoice-link{font-size:11px;font-weight:700;color:var(--accent);text-decoration:none;padding:2px 6px;border-radius:var(--radius-sm);background:#32947c14}.purchases-invoice-link:hover{text-decoration:underline}.purchases-invoice-missing{color:var(--text-dim)}.purchases-invoice-missing-required{color:var(--danger);font-weight:700}@media(max-width:768px){.purchases-form-grid{grid-template-columns:1fr}}.gtl-scroll{overflow-x:auto;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm, 6px)}.gtl-toolbar{display:flex;gap:6px;padding:8px 10px;border-bottom:1px solid var(--border);background:var(--bg-elevated);position:sticky;left:0}.gtl-empty{padding:16px;font-size:13px}.gtl-chart{position:relative}.gtl-header{display:flex;border-bottom:1px solid var(--border);background:var(--bg-elevated);position:sticky;top:0;z-index:4}.gtl-header-spacer{flex-shrink:0;border-right:1px solid var(--border);background:var(--bg-elevated);position:sticky;left:0;z-index:5}.gtl-header-ruler{position:relative;flex-shrink:0}.gtl-header-months{position:relative;height:22px;border-bottom:1px solid var(--border)}.gtl-header-month{position:absolute;top:0;height:100%;display:flex;align-items:center;padding:0 8px;font-size:11px;font-weight:600;text-transform:capitalize;border-right:1px solid var(--border);overflow:hidden;white-space:nowrap;color:var(--text);font-variant-numeric:tabular-nums}.gtl-header-month:last-child{border-right:none}.gtl-header-days{position:relative;height:18px}.gtl-header-day{position:absolute;top:50%;transform:translate(-50%,-50%);font-size:10px;color:var(--text-dim);font-variant-numeric:tabular-nums;white-space:nowrap}.gtl-group{border-bottom:1px solid var(--border)}.gtl-group:last-child{border-bottom:none}.gtl-group-header{display:flex;align-items:baseline;gap:12px;padding:8px 12px;background:var(--bg-elevated);border-bottom:1px solid var(--border);position:sticky;left:0;z-index:1}.gtl-group-title{font-weight:700;font-size:13px;color:var(--text)}.gtl-group-title-link{background:transparent;border:none;padding:0;cursor:pointer;text-align:left;font:inherit;color:inherit}.gtl-group-title-link:hover{color:var(--accent);text-decoration:underline}.gtl-group-sub{font-size:11px}.gtl-group-empty{font-size:12px;font-style:italic;padding:8px 12px}.gtl-row{display:flex;align-items:center;border-bottom:1px solid var(--border);min-height:32px}.gtl-row.is-alt{background:var(--bg-elevated)}.gtl-row:last-child{border-bottom:none}.gtl-label{width:220px;flex-shrink:0;display:flex;align-items:center;gap:4px;padding:0 8px;border-right:1px solid var(--border);background:inherit;position:sticky;left:0;z-index:1;height:100%}.gtl-label-name{font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.gtl-row-parent .gtl-label-name{font-weight:600}.gtl-tree-glyph{flex-shrink:0;color:var(--text-dim);font-family:monospace;font-size:11px;margin-right:2px;-webkit-user-select:none;user-select:none;line-height:1}.gtl-expand-toggle{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-right:2px;padding:0;border:none;background:transparent;color:var(--text-dim);font-size:12px;line-height:1;cursor:pointer;border-radius:4px}.gtl-expand-toggle:hover{background:var(--bg-input, var(--bg-card));color:var(--text)}.gtl-expand-toggle.is-parent,.gtl-expand-toggle.has-details{color:var(--accent)}.gtl-expand-spacer{display:inline-block;width:22px;flex-shrink:0}.gtl-track-wrap{flex-shrink:0}.gtl-track{position:relative;height:22px;margin:0}.gtl-bar{position:absolute;top:0;height:100%;border-radius:3px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.gtl-bar-solid{box-shadow:0 1px 1px #00000014,inset 0 -1px #00000014}.gtl-bar-ghost{background:transparent!important;border:2px dashed currentColor;opacity:.7;z-index:2;border-radius:3px;background-image:repeating-linear-gradient(45deg,#fff0 0,#fff0 5px,#ffffff2e 5px,#ffffff2e 10px)!important;pointer-events:none}.gtl-bar-progress{position:absolute;top:0;left:0;height:100%;background:#00000040;border-radius:3px 0 0 3px}.gtl-bar-label{position:relative;z-index:1;font-size:10px;font-weight:500;color:#0000008c;font-variant-numeric:tabular-nums;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap}.gtl-bar-parent{opacity:.55}.gtl-today-dot{position:absolute;top:50%;width:6px;height:6px;margin-left:-3px;margin-top:-3px;background:#000;border-radius:50%;z-index:3;pointer-events:none}.gtl-details{padding:8px 12px 10px;background:var(--bg-elevated);border-bottom:1px solid var(--border);font-size:13px;position:sticky;left:0;width:100%}.gtl-details-desc{margin-bottom:6px;white-space:pre-wrap}.gtl-details-notes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.gtl-details-notes li{font-size:12px}.gtl-scale{display:flex;gap:4px;padding:2px;background:var(--bg-input);border-radius:var(--radius-sm)}.gtl-scale .btn-ghost.active{background:var(--bg-card);border-color:var(--border)}.planning-toolbar{display:flex;gap:12px;align-items:center;margin-left:auto;flex-wrap:wrap}.planning-hint{margin-top:12px;font-size:12px;font-style:italic}.help-intro{margin:0 0 16px;font-size:13px}.docs-item-actions{display:inline-flex;gap:6px;margin-left:auto;align-items:center}.help-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px;margin-bottom:20px}.help-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.help-section-header h2{margin:0;font-size:1rem;font-weight:700}.help-empty{font-size:13px;margin:4px 0 0}.help-list{display:flex;flex-direction:column;gap:6px}.help-entry{border:1px solid var(--border);border-radius:var(--radius-sm, 6px);background:var(--bg-elevated);overflow:hidden}.help-entry-header{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;-webkit-user-select:none;user-select:none}.help-entry-header:hover{background:var(--bg-input, var(--bg-elevated))}.help-entry-toggle{background:transparent;border:none;color:var(--text-dim);font-size:12px;width:18px;cursor:pointer;padding:0}.help-entry-title{font-weight:600;font-size:14px;flex:1}.help-entry-slug{font-size:11px;font-family:monospace}.help-entry-actions{display:flex;gap:4px}.help-entry-body{padding:12px 16px 16px;border-top:1px solid var(--border);background:var(--bg-card)}.help-entry-content{font-size:14px;line-height:1.55}.help-entry-content h3,.help-entry-content h4,.help-entry-content h5{margin:14px 0 6px}.help-entry-content p{margin:6px 0}.help-entry-content ul,.help-entry-content ol{margin:6px 0;padding-left:22px}.help-entry-content code{background:var(--bg-input, var(--bg-elevated));padding:1px 5px;border-radius:4px;font-size:12px;font-family:monospace}.help-entry-edit{display:flex;flex-direction:column;gap:6px}.help-entry-content-input{font-family:monospace;font-size:12px;resize:vertical}.help-entry-edit-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:6px}.help-entry-pages-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px 12px;margin:4px 0 8px}.help-entry-page-item{display:flex;align-items:center;gap:6px;font-size:12px;cursor:pointer}.help-entry-pages-badge{font-size:10px;padding:2px 6px;border:1px solid var(--border);border-radius:10px;font-family:monospace}.help-toggle-all{padding:7px 14px;font-size:13px;font-weight:600;color:var(--text);background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background .12s ease,border-color .12s ease,opacity .12s ease;opacity:.7}.help-toggle-all:hover{opacity:1;background:#0000000a}.help-toggle-all.is-active{opacity:1;background:var(--bg-card);border-color:var(--accent);color:var(--accent)}.help-toggle-all.is-active:hover{background:var(--bg-elevated)}.about-page{max-width:720px;margin:0 auto;padding:32px 24px}.about-hero{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:28px 24px;margin-bottom:20px;text-align:center}.about-name{font-size:1.75rem;font-weight:700;margin:0 0 6px;letter-spacing:-.02em}.about-tagline{margin:0 0 12px;color:var(--text-dim);font-size:14px}.about-version{margin:0;font-family:monospace;font-size:12px;color:var(--text-muted);letter-spacing:.04em}.about-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px;margin-bottom:16px}.about-section h3{margin:0 0 12px;font-size:.95rem;font-weight:700}.about-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:1.5}.about-list strong{font-weight:600}.about-credits{margin:0;font-size:13px;line-height:1.55}.about-footer{text-align:center;margin-top:24px;font-size:11px;letter-spacing:.04em}#root{min-height:100vh}:root{--bg-base: #0f172a;--bg-elevated: #1e293b;--bg-card: #1e293b;--bg-input: #334155;--text: #f1f5f9;--text-muted: #94a3b8;--text-dim: #64748b;--accent: #32947c;--accent-teal: #095872;--accent-hover: #4f9b8f;--accent-glow: rgba(50, 148, 124, .25);--accent-gradient: linear-gradient(135deg, #095872 0%, #32947c 50%, #4f9b8f 100%);--border: #2d3447;--border-focus: #32947c;--success: #4ade80;--danger: #c47a7e;--danger-hover: #d9888c;--danger-muted-bg: rgba(196, 122, 126, .1);--warning: #fbbf24;--info: #38bdf8;--header-bar-bg: rgba(15, 23, 42, .85);--header-bar-text: #f1f5f9;--header-bar-muted: #94a3b8;--header-bar-border: rgba(255, 255, 255, .06);--header-bar-hover: rgba(255, 255, 255, .06);--header-bar-icon-hover: rgba(255, 255, 255, .08);--header-shadow: 0 1px 0 rgba(255, 255, 255, .04), 0 4px 16px rgba(0, 0, 0, .3);--radius: 12px;--radius-lg: 16px;--radius-sm: 8px;--radius-xl: 28px;--radius-pill: 9999px;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 25px -5px rgba(0, 0, 0, .5);--shadow-glow: 0 0 20px rgba(50, 148, 124, .15);--shadow-teal: 0 4px 12px rgba(50, 148, 124, .2);--glass: rgba(30, 41, 59, .8);--glass-border: rgba(255, 255, 255, .05);--transition: .2s ease;--transition-smooth: .3s cubic-bezier(.4, 0, .2, 1);--page-content-max: 1024px;--page-max-width: 980px;--page-padding-x: 32px;--page-padding-top: 56px;--page-padding-bottom: 80px;--font: "Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Courier New", monospace}[data-theme=light]{--bg-base: #f0f4f8;--bg-elevated: #ffffff;--bg-card: #ffffff;--bg-input: #f8fafc;--text: #1e293b;--text-muted: #475569;--text-dim: #64748b;--accent: #32947c;--accent-teal: #095872;--accent-hover: #26736f;--accent-glow: rgba(46, 126, 122, .15);--accent-gradient: linear-gradient(90deg, #2e7e7a 0%, #3d918c 40%, #51a57f 100%);--border: #e2e8f0;--border-focus: #2e7e7a;--success: #22c55e;--danger: #c47a7e;--danger-hover: #d9888c;--danger-muted-bg: rgba(196, 122, 126, .08);--warning: #f59e0b;--info: #0ea5e9;--header-bar-bg: rgba(255, 255, 255, .9);--header-bar-text: #1e293b;--header-bar-muted: #64748b;--header-bar-border: rgba(0, 0, 0, .08);--header-bar-hover: rgba(0, 0, 0, .04);--header-bar-icon-hover: rgba(0, 0, 0, .06);--header-shadow: 0 1px 0 rgba(0, 0, 0, .06), 0 4px 16px rgba(0, 0, 0, .08);--shadow: 0 1px 3px rgba(0, 0, 0, .08);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .1);--shadow-glow: 0 0 20px rgba(50, 148, 124, .15);--shadow-teal: 0 4px 12px rgba(50, 148, 124, .15);--glass: rgba(255, 255, 255, .85);--glass-border: rgba(0, 0, 0, .06)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:14px}body{font-family:var(--font);font-size:14px;font-weight:400;line-height:1.6;color:var(--text);background:var(--bg-base);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=light] body{background:linear-gradient(135deg,#065772,#248279 55%,#32937c);background-attachment:fixed}[data-theme=light] .page-header h2,[data-theme=light] .page-header h3{color:#fff}[data-theme=light] .page-header>.text-muted,[data-theme=light] .page-header>.text-dim,[data-theme=light] .projects-hero-subtitle{color:#ffffffd9}[data-theme=light] [class$=-page]>.text-muted,[data-theme=light] [class$=-page]>.text-dim,[data-theme=light] [class$=-page]>p.text-muted,[data-theme=light] [class$=-page]>p.text-dim,[data-theme=light] [class$=-page]>.planning-summary,[data-theme=light] [class$=-page]>.empty-message{color:#ffffffd9}[data-theme=light] .pricing-page>.pricing-table-section>h2,[data-theme=light] .pricing-page>.pricing-chart-section>h2,[data-theme=light] .pricing-page>.pricing-calculator>h2{color:#fff}[data-theme=light] .pricing-page>.pricing-table-section>p.text-muted,[data-theme=light] .pricing-page>.pricing-table-section>p.text-dim,[data-theme=light] .pricing-page>.pricing-chart-section>p.text-muted,[data-theme=light] .pricing-page>.pricing-chart-section>p.text-dim{color:#ffffffc7}[data-theme=light] .page-loading,[data-theme=light] .page-error{color:#ffffffe6}[data-theme=light] .page-header>.btn-ghost,[data-theme=light] .page-header .proposal-toolbar-right .btn-ghost,[data-theme=light] .page-header .obra-header-right .btn-ghost,[data-theme=light] .quotation-controls-row .btn-ghost,[data-theme=light] .proposal-actions-row .btn-ghost,[data-theme=light] .obra-notes-header .btn-ghost,[data-theme=light] .obra-extras-toolbar .btn-ghost,[data-theme=light] .sip-add-section-btn,[data-theme=light] .projects-hero .btn-ghost,[data-theme=light] .projects-hero .btn-danger-ghost,[data-theme=light] .page-hero-actions .btn-ghost,[data-theme=light] .page-hero-actions .btn-danger-ghost,[data-theme=light] .page-hero-back{color:#fffffff2;border:1px solid rgba(255,255,255,.5);background:#ffffff1a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[data-theme=light] .page-header>.btn-ghost:hover:not(:disabled),[data-theme=light] .page-header .proposal-toolbar-right .btn-ghost:hover:not(:disabled),[data-theme=light] .page-header .obra-header-right .btn-ghost:hover:not(:disabled),[data-theme=light] .quotation-controls-row .btn-ghost:hover:not(:disabled),[data-theme=light] .proposal-actions-row .btn-ghost:hover:not(:disabled),[data-theme=light] .obra-notes-header .btn-ghost:hover:not(:disabled),[data-theme=light] .obra-extras-toolbar .btn-ghost:hover:not(:disabled),[data-theme=light] .sip-add-section-btn:hover:not(:disabled),[data-theme=light] .projects-hero .btn-ghost:hover:not(:disabled),[data-theme=light] .projects-hero .btn-danger-ghost:hover:not(:disabled),[data-theme=light] .page-hero-actions .btn-ghost:hover:not(:disabled),[data-theme=light] .page-hero-actions .btn-danger-ghost:hover:not(:disabled),[data-theme=light] .page-hero-back:hover:not(:disabled){color:#fff;background:#ffffff38;border-color:#fffc}[data-theme=light] .page-hero-actions .btn-danger-ghost:hover:not(:disabled){color:#ffe0e0;background:#c47a7e59;border-color:#ffc8c8b3}[data-theme=light] .page-header>.btn-ghost:disabled,[data-theme=light] .page-header .proposal-toolbar-right .btn-ghost:disabled,[data-theme=light] .quotation-controls-row .btn-ghost:disabled,[data-theme=light] .proposal-actions-row .btn-ghost:disabled,[data-theme=light] .page-hero-actions .btn-ghost:disabled{opacity:.5;color:#fff9}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}button{font-family:var(--font);cursor:pointer}input,select,textarea{font-family:var(--font)}img{max-width:100%}.text-muted{color:var(--text-muted)}.text-dim{color:var(--text-dim)}.text-accent{color:var(--accent)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}.gradient-text{background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.page-loading,.page-error{display:flex;align-items:center;justify-content:center;min-height:60vh;color:var(--text-muted);font-size:1rem}.page-error{color:var(--danger)}.btn-primary{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:8px 16px;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn-ghost{background:#ffffff0d;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:6px}.btn-ghost:hover{background:var(--bg-elevated);color:var(--text);border-color:var(--accent)}.btn-danger{background:var(--danger);color:#fff;border:none;border-radius:var(--radius-sm);padding:8px 16px;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition)}.phase-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-dim);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:var(--transition);flex-shrink:0}.phase-btn:hover:not(:disabled){color:var(--accent);border-color:var(--accent);background:#32947c14}.phase-btn-active{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important;cursor:default}.phase-btn-end:hover:not(:disabled){color:#b88500;border-color:#b88500;background:#f4b21f1a}.phase-btn-end-done{background:#b88500!important;border-color:#b88500!important;color:#fff!important}.btn-danger:hover{background:var(--danger-hover)}.btn-danger-ghost{background:transparent;color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius-sm);padding:6px 12px;font-size:13px;font-weight:500;cursor:pointer;transition:var(--transition)}.btn-danger-ghost:hover{background:var(--danger-muted-bg)}.form-input,input[type=text],input[type=password],input[type=email],input[type=number],input[type=search],select,textarea{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:8px 12px;font-family:var(--font);font-size:14px;transition:var(--transition);width:100%}.form-input:focus,input[type=text]:focus,input[type=password]:focus,input[type=email]:focus,input[type=number]:focus,input[type=search]:focus,select:focus,textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-glow)}.search-input{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:8px 12px;font-size:14px;min-width:200px;transition:var(--transition)}.search-input:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-glow)}[data-theme=light] .search-input,[data-theme=light] .obra-search .form-input,[data-theme=light] .quotation-search-wrap,[data-theme=light] .stock-search .form-input,[data-theme=light] .inv-search .form-input{background:#ffffff14;border-color:#ffffff40;color:#ffffffeb}[data-theme=light] .search-input::placeholder,[data-theme=light] .obra-search .form-input::placeholder,[data-theme=light] .quotation-search-wrap .quotation-search-input::placeholder,[data-theme=light] .stock-search .form-input::placeholder,[data-theme=light] .inv-search .form-input::placeholder{color:#ffffff8c}[data-theme=light] .search-input:focus,[data-theme=light] .obra-search .form-input:focus,[data-theme=light] .quotation-search-wrap:focus-within,[data-theme=light] .stock-search .form-input:focus,[data-theme=light] .inv-search .form-input:focus{background:#ffffff24;border-color:#ffffff80;box-shadow:0 0 0 3px #ffffff1f}[data-theme=light] .quotation-search-wrap .quotation-search-input,[data-theme=light] .quotation-search-wrap .quotation-search-filter{color:#ffffffeb}[data-theme=light] .quotation-search-wrap .quotation-search-icon,[data-theme=light] .quotation-search-wrap .quotation-search-sep{color:#ffffff8c}[data-theme=light] .projects-toolbar,[data-theme=light] .notes-toolbar,[data-theme=light] .inv-toolbar{color:#ffffffe6}[data-theme=light] .projects-toolbar .projects-filter-icon,[data-theme=light] .projects-toolbar .projects-search-icon,[data-theme=light] .notes-toolbar .projects-filter-icon,[data-theme=light] .notes-toolbar .projects-search-icon,[data-theme=light] .inv-toolbar .projects-filter-icon,[data-theme=light] .inv-toolbar .projects-search-icon{color:#ffffffc7}[data-theme=light] .projects-toolbar .projects-filter-icon-select,[data-theme=light] .projects-toolbar select,[data-theme=light] .notes-toolbar .projects-filter-icon-select,[data-theme=light] .notes-toolbar select,[data-theme=light] .inv-toolbar .projects-filter-icon-select,[data-theme=light] .inv-toolbar select,[data-theme=light] .projects-toolbar input[type=search],[data-theme=light] .projects-toolbar input[type=text],[data-theme=light] .notes-toolbar input[type=search],[data-theme=light] .notes-toolbar input[type=text],[data-theme=light] .inv-toolbar input[type=search],[data-theme=light] .inv-toolbar input[type=text]{background:#ffffff1a;border-color:#ffffff4d;color:#fffffff2}[data-theme=light] .projects-toolbar input::placeholder,[data-theme=light] .notes-toolbar input::placeholder,[data-theme=light] .inv-toolbar input::placeholder{color:#ffffff8c}[data-theme=light] .projects-toolbar input:focus,[data-theme=light] .projects-toolbar select:focus,[data-theme=light] .notes-toolbar input:focus,[data-theme=light] .notes-toolbar select:focus,[data-theme=light] .inv-toolbar input:focus,[data-theme=light] .inv-toolbar select:focus{background:#ffffff29;border-color:#ffffff80;box-shadow:0 0 0 3px #ffffff1f;outline:none}[data-theme=light] .articles-category-title,[data-theme=light] .stock-entry-items-title,[data-theme=light] .inv-toolbar-count,[data-theme=light] .planning-hint,[data-theme=light] .stock-articles-footer .text-dim,[data-theme=light] .stock-articles-footer .text-muted{color:#ffffffeb}[data-theme=light] .project-parent-link .btn-ghost{color:#146874;border:1px solid rgba(20,104,116,.4);background:#ffffffeb;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 6px #00000014}[data-theme=light] .project-parent-link .btn-ghost:hover:not(:disabled){background:#fff;border-color:#146874;color:#146874}.badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:600}.badge-pending{background:#fbbf2426;color:var(--warning)}.badge-active{background:#32947c26;color:var(--accent)}.badge-phase{background:#32947c1f;color:var(--accent);font-weight:600}.badge-done{background:#4ade8026;color:var(--success)}.badge-blocked{background:var(--danger-muted-bg);color:var(--danger)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:var(--bg-elevated);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:540px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--border)}.modal-header h2{font-size:1.1rem;font-weight:700;color:var(--text)}.modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:18px;padding:4px;border-radius:var(--radius-sm);transition:var(--transition);line-height:1}.modal-close:hover{color:var(--text);background:var(--bg-input)}.modal-body{padding:20px 24px 24px}.page-wrapper{max-width:var(--page-max-width);margin:0 auto;padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom)}.page-hero-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.page-hero-back{align-self:flex-start;margin-bottom:6px}.kind-badge{display:inline-flex;align-items:center;gap:6px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.kind-badge-sm{font-size:11px}.kind-badge-md{font-size:13px}.kind-badge-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.page-header{display:flex;align-items:center;gap:12px;margin:0 0 48px;flex-wrap:wrap}.page-header h1{margin:0;font-size:1.875rem;font-weight:700;letter-spacing:-.025em;flex:1;background:linear-gradient(100deg,color-mix(in srgb,var(--accent) 25%,#ffffff),color-mix(in srgb,var(--accent) 55%,#ffffff),color-mix(in srgb,var(--accent) 25%,#ffffff));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:page-title-shimmer 8s linear infinite}@keyframes page-title-shimmer{0%{background-position:0% 50%}to{background-position:200% 50%}}.page-content{display:flex;flex-direction:column;gap:12px}.item-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px;box-shadow:var(--shadow);transition:var(--transition)}.item-card:hover{border-color:var(--accent-teal);box-shadow:var(--shadow-teal)}body[data-role=viewer] input:not([type=search]):not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]):not([type=file]),body[data-role=viewer] textarea,body[data-role=viewer] select{pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important;opacity:.6!important;cursor:not-allowed!important;background:var(--bg-elevated)!important}body[data-role=viewer] .view-as-picker,body[data-role=viewer] .view-as-picker *,body[data-role=viewer] .view-as-select{pointer-events:auto!important;opacity:1!important;cursor:pointer!important;background:transparent!important}body[data-role=viewer] input[type=checkbox],body[data-role=viewer] input[type=radio],body[data-role=viewer] input[type=file]{pointer-events:none!important;opacity:.6!important;cursor:not-allowed!important}body[data-role=viewer] [contenteditable=true],body[data-role=viewer] [contenteditable=""]{pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important;opacity:.7!important}body[data-role=viewer] button.btn-primary,body[data-role=viewer] button.btn-danger,body[data-role=viewer] button.btn-danger-ghost,body[data-role=viewer] button[type=submit],body[data-role=viewer] [class*=-delete],body[data-role=viewer] [class*=-remove],body[data-role=viewer] [class*=delete-btn],body[data-role=viewer] [class*=add-] button,body[data-role=viewer] .btn-add,body[data-role=viewer] .btn-new{display:none!important}body[data-role=viewer] [draggable=true]{pointer-events:none!important}body[data-role=viewer] [class*=grip],body[data-role=viewer] [class*=handle]{display:none!important}@media(max-width:768px){:root{--page-padding-x: 14px;--page-padding-top: 28px;--page-padding-bottom: 48px}.page-header{margin:0 0 24px;gap:8px}.page-header h1{font-size:1.4rem;letter-spacing:-.02em}.btn-primary,.btn-ghost,.btn-danger,.btn-danger-ghost{padding:7px 12px;font-size:13px}.search-input{min-width:0;width:100%}.modal-backdrop{padding:8px;align-items:flex-end}.modal{max-width:100%;max-height:94vh;border-radius:var(--radius)}.modal-header{padding:14px 16px 10px}.modal-header h2{font-size:1rem}.modal-body{padding:14px 16px 18px}.phase-btn{width:36px;height:36px}}
