@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHpv4kjgoGqM7E_A8s52Hs.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHpv4kjgoGqM7E_Ass52Hs.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHpv4kjgoGqM7E_DMs5.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3_-gs6FospT4.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3_-gs6VospT4.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3_-gs51os.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E30-8s6FospT4.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E30-8s6VospT4.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E30-8s51os.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3t-4s6FospT4.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3t-4s6VospT4.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/barlow/v13/7cHqv4kjgoGqM7E3t-4s51os.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B4873z3nWuZEC.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B4873z3jWuZEC.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B4873z3bWuQ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B46r2z3nWuZEC.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B46r2z3jWuZEC.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B46r2z3bWuQ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B47b1z3nWuZEC.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B47b1z3jWuZEC.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/barlowcondensed/v13/HTxwL3I-JCGChYJ8VI-L6OO_au7B47b1z3bWuQ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/dmmono/v16/aFTU7PB1QTsUX8KYthSQBLyM.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/dmmono/v16/aFTU7PB1QTsUX8KYthqQBA.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/dmmono/v16/aFTR7PB1QTsUX8KYvumzEY2tbZX9.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/dmmono/v16/aFTR7PB1QTsUX8KYvumzEYOtbQ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--font-size-base: 16px;--bg: #ffffff;--bg2: #f7f8fb;--bg3: #ffffff;--bg4: #f1f3f9;--border: #e6e9f2;--border2: #d7dced;--text: #0b1220;--text2: #334155;--text3: #64748b;--accent: #1d4ed8;--accent-dim: rgba(29,78,216,.1);--accent-dim2: rgba(29,78,216,.18);--green: #16a34a;--green-dim: rgba(22,163,74,.12);--amber: #f59e0b;--amber-dim: rgba(245,158,11,.14);--red: #dc2626;--red-dim: rgba(220,38,38,.1);--radius: 10px;--font-mono: "DM Mono", monospace;--font-ui: "Barlow", sans-serif;--font-display:"Barlow Condensed", sans-serif;--shadow: 0 8px 24px rgba(15,23,42,.08)}:root[data-theme=dark]{--bg: #0b1220;--bg2: #0f172a;--bg3: #0f172a;--bg4: #111c33;--border: rgba(148,163,184,.18);--border2: rgba(148,163,184,.28);--text: #e8eaf0;--text2: #cbd5e1;--text3: #94a3b8;--accent: #4f8ef7;--accent-dim: rgba(79,142,247,.14);--accent-dim2: rgba(79,142,247,.22);--shadow: 0 10px 30px rgba(0,0,0,.35)}html,body{height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:var(--font-size-base);line-height:1.5;-webkit-font-smoothing:antialiased}@media print{html,body{height:auto!important;overflow:visible!important;background:#fff!important}app-root{display:block!important;height:auto!important;overflow:visible!important}.shell{display:block!important;height:auto!important;overflow:visible!important}.nav,.main-topbar{display:none!important}.main{overflow:visible!important}.content{overflow:visible!important;height:auto!important}}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--border2)}.mono{font-family:var(--font-mono)}.display{font-family:var(--font-display)}.text-muted{color:var(--text2)}.text-dim{color:var(--text3)}.text-accent{color:var(--accent)}.text-green{color:var(--green)}.text-amber{color:var(--amber)}.text-red{color:var(--red)}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius);font-family:var(--font-ui);font-size:13px;font-weight:600;letter-spacing:.02em;cursor:pointer;border:none;transition:all .12s;white-space:nowrap;text-decoration:none}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){opacity:.85}.btn-ghost{background:transparent;color:var(--text2);border:1px solid var(--border)}.btn-ghost:hover:not(:disabled){border-color:var(--border2);color:var(--text);background:var(--bg4)}.btn-danger{background:transparent;color:var(--red);border:1px solid var(--red-dim)}.btn-danger:hover:not(:disabled){background:var(--red-dim)}.btn-sm{padding:5px 10px;font-size:12px}.btn-xs{padding:3px 8px;font-size:11px}.form-group{display:flex;flex-direction:column;gap:5px}.form-label{font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text3)}.form-control{background:var(--bg3);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:8px 10px;font-family:var(--font-ui);font-size:14px;outline:none;transition:border-color .15s;width:100%}.form-control:focus{border-color:var(--accent)}.form-control.error{border-color:var(--red)}.form-error{font-size:12px;color:var(--red);margin-top:2px}select.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:34px;background-image:linear-gradient(45deg,transparent 50%,var(--text3) 50%),linear-gradient(135deg,var(--text3) 50%,transparent 50%),linear-gradient(to right,transparent,transparent);background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 13px) calc(50% - 2px),calc(100% - 34px) 50%;background-size:5px 5px,5px 5px,1px 18px;background-repeat:no-repeat}select.form-control:disabled{opacity:.6;cursor:not-allowed}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:3px;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.badge-new{background:var(--accent-dim);color:var(--accent)}.badge-draft{background:#9696961f;color:var(--text3)}.badge-active{background:var(--green-dim);color:var(--green)}.badge-blocked{background:var(--amber-dim);color:var(--amber)}.badge-complete{background:#9696961a;color:var(--text3)}.badge-approved{background:var(--green-dim);color:var(--green)}.badge-pending{background:var(--amber-dim);color:var(--amber)}.badge-rejected{background:var(--red-dim);color:var(--red)}.card{background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.card-header{padding:8px 12px;background:var(--bg2);border-bottom:1px solid var(--border);font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text3);display:flex;align-items:center;justify-content:space-between}.card-body{padding:12px}.progress-wrap{display:flex;align-items:center;gap:8px}.progress-bar{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.progress-fill{height:100%;border-radius:2px;transition:width .3s}.progress-pct{font-family:var(--font-mono);font-size:12px;color:var(--text3);min-width:32px;text-align:right}.divider{height:1px;background:var(--border)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.section-title{font-family:var(--font-display);font-size:14px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text2)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text3);text-align:center;padding:48px 24px}.empty-icon{font-size:36px;opacity:.3}.empty-title{font-size:16px;font-weight:500;color:var(--text2)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .2s ease}@keyframes routeEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.content>router-outlet+*{display:block;animation:routeEnter .34s cubic-bezier(.22,1,.36,1)}@media (prefers-reduced-motion: reduce){.content>router-outlet+*{animation:none}}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.cv-header-row,.cu-header .cu-header-row,.ck-header .ck-header-row,.ct-header .ct-header-row,.tf-header .tf-header-row,.cd-header .cd-header-row,.ch-header .ch-header-row,.cm-header .cm-header-row{max-width:1240px;margin:0 auto;padding:0 8px;display:flex;align-items:center;gap:20px;flex-wrap:nowrap}.cv-brand{display:flex;align-items:center;gap:12px;flex-shrink:0}app-customer-portal-nav{display:flex;flex:1 1 auto;min-width:0;align-items:center}.cv-portal-nav--skeleton{flex:1 1 auto;min-width:0}.cv-header-actions,.cv-header-right{display:flex;align-items:center;gap:12px;flex-wrap:nowrap;flex-shrink:0}.cv-header-right{flex:1 1 auto;min-width:0;margin-left:0;justify-content:flex-end}.cv-header-right app-customer-portal-nav{flex:1 1 auto;min-width:0}.cv-portal-nav{display:flex;flex-wrap:nowrap;gap:4px;align-items:center;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.cv-portal-nav::-webkit-scrollbar{display:none}.cv-portal-nav-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:var(--text3);text-decoration:none;padding:7px 10px;border-radius:8px;border:1px solid transparent;white-space:nowrap;flex-shrink:0;transition:color .12s,background .12s,border-color .12s}.cv-portal-nav-link:hover{color:var(--text2);background:var(--bg3);border-color:var(--border)}.cv-portal-nav-link.is-active{color:var(--accent);background:var(--accent-dim);border-color:#1d4ed840}.cv-portal-nav-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;line-height:1}.cv-portal-nav-link--preview{border-style:dashed}.cv-portal-nav-preview{font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#b45309;background:#f59e0b29;border:1px solid rgba(245,158,11,.35);border-radius:999px;padding:1px 6px;line-height:1.4}.cv-portal-nav-shell{display:flex;flex:1 1 auto;min-width:0;align-items:center;position:relative}.cv-portal-nav--desktop{display:flex}.cv-portal-nav-toggle{display:none;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;border:1px solid var(--border);background:var(--bg2);color:var(--text2);font-size:13px;font-weight:700;cursor:pointer;flex-shrink:0;transition:border-color .12s,background .12s,color .12s}.cv-portal-nav-toggle:hover{border-color:var(--border2);background:var(--bg3);color:var(--text)}.cv-portal-nav-toggle.is-open{border-color:#1d4ed859;background:var(--accent-dim);color:var(--accent)}.cv-portal-nav-toggle-icon{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:16px;height:14px}.cv-portal-nav-toggle-icon span{display:block;height:2px;border-radius:999px;background:currentColor;transition:transform .16s ease,opacity .16s ease}.cv-portal-nav-toggle.is-open .cv-portal-nav-toggle-icon span:nth-child(1){transform:translateY(6px) rotate(45deg)}.cv-portal-nav-toggle.is-open .cv-portal-nav-toggle-icon span:nth-child(2){opacity:0}.cv-portal-nav-toggle.is-open .cv-portal-nav-toggle-icon span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.cv-portal-nav-toggle-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;line-height:1}.cv-portal-nav-backdrop,.cv-portal-nav--mobile{display:none}.cv-launch-btn{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;font-size:12px;font-weight:700;letter-spacing:.02em;white-space:nowrap;text-decoration:none;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#fff;flex-shrink:0;transition:opacity .12s}.cv-launch-btn:hover{opacity:.82}.cv-launch-btn-text--short{display:none}.cv-logout-btn{display:inline-flex;align-items:center;padding:7px 12px;font-size:12px;font-weight:600;letter-spacing:.02em;white-space:nowrap;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text2);cursor:pointer;flex-shrink:0;transition:border-color .12s,color .12s,background .12s}.cv-logout-btn:hover{border-color:var(--border2);color:var(--text);background:var(--bg3)}body.cv-portal-nav-menu-open{overflow:hidden}@media (max-width: 900px){.customer-view>.cv-header,.cu-page>.cv-header,.ct-page>.cv-header,.cd-page>.cv-header,.tf-page>.cv-header,.cm-page>.cv-header,.ch-page>.cv-header,.ck-page>.cv-header{--cv-portal-header-height: 68px;padding:12px 16px;position:sticky;top:0;z-index:110}.cv-header-row,.cu-header .cu-header-row,.ck-header .ck-header-row,.ct-header .ct-header-row,.tf-header .tf-header-row,.cd-header .cd-header-row,.ch-header .ch-header-row,.cm-header .cm-header-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand menu" "actions actions";gap:10px 12px;align-items:center}.cv-brand{grid-area:brand;min-width:0}.cv-brand-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}app-customer-portal-nav{grid-area:menu;justify-self:end;flex:0 0 auto}.cv-header-actions{grid-area:actions;width:100%;gap:8px}.cv-header-right{display:contents}.cv-header-right .cv-launch-btn{grid-area:actions;width:100%;justify-content:center}.cv-header-actions .cv-launch-btn{flex:1 1 auto;justify-content:center;min-width:0}.cv-header-actions .cv-logout-btn{flex:0 0 auto}.cv-launch-btn,.cv-logout-btn{padding-top:10px;padding-bottom:10px}app-customer-portal-nav .cv-portal-nav--desktop{display:none!important}app-customer-portal-nav .cv-portal-nav-toggle{display:inline-flex!important}.cv-portal-nav--skeleton{grid-area:menu;justify-self:end;flex:0 0 auto;overflow:visible}.cv-portal-nav--skeleton .cv-skel--nav-pill{display:none}.cv-portal-nav--skeleton .cv-skel--nav-pill:first-child{display:block;width:90px;height:40px;border-radius:10px}.cv-header-actions .cv-skel--launch-btn{flex:1 1 auto;width:auto;min-width:0;height:40px}.cv-header-actions .cv-skel--logout-btn{flex:0 0 auto;height:40px}app-customer-portal-nav .cv-portal-nav-backdrop{display:block;position:fixed;inset:0;z-index:120;border:none;padding:0;margin:0;background:#0f172a6b;cursor:pointer}:root[data-theme=dark] app-customer-portal-nav .cv-portal-nav-backdrop{background:#00000094}app-customer-portal-nav .cv-portal-nav--mobile{display:flex;flex-direction:column;align-items:stretch;gap:4px;position:fixed;top:calc(var(--cv-portal-header-height, 68px) + 8px);left:12px;right:12px;z-index:130;max-height:calc(100dvh - var(--cv-portal-header-height, 68px) - 24px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:10px;border-radius:14px;border:1px solid var(--border);background:color-mix(in srgb,var(--bg2) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 18px 40px #0f172a2e;animation:cvPortalNavMenuIn .16s ease-out}:root[data-theme=dark] app-customer-portal-nav .cv-portal-nav--mobile{box-shadow:0 18px 40px #0000006b}app-customer-portal-nav .cv-portal-nav--mobile .cv-portal-nav-link{justify-content:space-between;width:100%;padding:12px 14px;font-size:14px;border-radius:10px}}@keyframes cvPortalNavMenuIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 420px){.cv-brand-text{font-size:13px}.cv-launch-btn-text--full{display:none}.cv-launch-btn-text--short{display:inline}.cv-launch-btn{font-size:11px;padding-left:10px;padding-right:10px}}.cv-customer-desc-section{background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius, 12px);padding:16px 18px;box-shadow:0 1px 2px #0f172a0a;min-width:0;max-width:100%}.cv-customer-desc-section--note{background:linear-gradient(135deg,var(--accent-dim) 0%,var(--bg3) 70%);border-color:#1d4ed833}.cv-customer-desc-section--description{background:var(--bg2);border-color:var(--border);box-shadow:none}.cv-customer-desc-icon--description{background:var(--bg4);border-color:var(--border)}.cv-customer-desc-icon--description:after{inset:8px;border-radius:4px;opacity:.45}.cv-customer-desc-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.cv-customer-desc-icon{width:32px;height:32px;border-radius:10px;flex-shrink:0;background:var(--bg4);border:1px solid var(--border);position:relative}.cv-customer-desc-icon:after{content:"";position:absolute;inset:9px;border-radius:3px;background:var(--accent);opacity:.85}.cv-customer-desc-icon--note:after{border-radius:50%;opacity:.7}.cv-customer-desc-section--attention{background:linear-gradient(135deg,color-mix(in srgb,var(--amber) 18%,transparent) 0%,var(--bg3) 70%);border-color:color-mix(in srgb,var(--amber) 40%,transparent)}.cv-customer-desc-section--attention .cv-customer-desc-title{color:color-mix(in srgb,var(--amber) 75%,var(--text))}.cv-customer-desc-icon--attention{background:color-mix(in srgb,var(--amber) 20%,var(--bg4));border-color:color-mix(in srgb,var(--amber) 45%,transparent)}.cv-customer-desc-icon--attention:after{background:var(--amber);opacity:.9}.cv-customer-desc-title{margin:0;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text);line-height:1.3}.cv-attention-bullets{margin:0 0 8px;padding-left:18px;font-size:14px;font-weight:600;line-height:1.5;color:color-mix(in srgb,var(--amber) 85%,var(--text))}.cv-attention-bullets+.cv-customer-desc-rich{margin-top:10px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--amber) 25%,transparent)}.cv-customer-request+.cv-customer-request{margin-top:14px;padding-top:14px;border-top:1px dashed color-mix(in srgb,var(--amber) 30%,transparent)}.cv-customer-request--targeted{margin:6px -10px 0;padding:10px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--accent) 5%,var(--bg));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 8%,transparent)}.cv-customer-request-date{display:block;margin-bottom:4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:color-mix(in srgb,var(--amber) 70%,var(--text3))}.cv-customer-request-due-badge{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;font-size:10px;font-weight:700;text-transform:none;letter-spacing:normal;color:var(--amber);background:color-mix(in srgb,var(--amber) 16%,transparent)}.cv-customer-request-due-badge--overdue{color:var(--red, #dc2626);background:color-mix(in srgb,var(--red, #dc2626) 16%,transparent)}.cv-customer-request-message-badge{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;font-size:10px;font-weight:700;text-transform:none;letter-spacing:normal;color:var(--text3);background:var(--bg3)}.cv-communication-teaser{margin:4px 0 0;font-size:13px;color:color-mix(in srgb,var(--amber) 85%,var(--text))}.cv-customer-response-reply-btn{margin-top:8px;padding:5px 12px;border:1px solid color-mix(in srgb,var(--amber) 45%,var(--border));border-radius:999px;background:none;font-size:12px;font-weight:600;color:color-mix(in srgb,var(--amber) 80%,var(--text));cursor:pointer}.cv-customer-response-reply-btn:hover{background:color-mix(in srgb,var(--amber) 10%,transparent)}.cv-customer-response-reply-btn--full{display:flex;align-items:center;justify-content:center;width:100%;margin:12px 0 0;padding:9px 14px;border-radius:8px}.cv-customer-response-entry-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:5px;color:var(--text3);font-size:11px}.cv-customer-response-entry-meta>span{margin-right:auto}.cv-customer-response-edit-btn{padding:2px 7px;border:0;border-radius:6px;background:transparent;color:var(--accent);font:inherit;font-weight:700;cursor:pointer}.cv-customer-response-edit-btn:hover{background:color-mix(in srgb,var(--accent) 9%,transparent)}.cv-customer-response-delete-btn{padding:2px 7px;border:0;border-radius:6px;background:transparent;color:var(--red, #dc2626);font:inherit;font-weight:700;cursor:pointer}.cv-customer-response-delete-btn:hover:not(:disabled){background:color-mix(in srgb,var(--red, #dc2626) 9%,transparent)}.cv-response-delete-confirm{color:var(--text2);font-size:11px;font-weight:600}.cv-response-delete-cancel{padding:2px 7px;border:0;border-radius:6px;background:transparent;color:var(--text3);font:inherit;font-weight:700;cursor:pointer}.cv-response-delete-cancel:hover{background:var(--bg3);color:var(--text)}.cv-response-attachment-edit{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.cv-response-attachment-edit>span:first-child{margin-right:auto;min-width:0;overflow-wrap:anywhere}.cv-customer-response-dismiss-btn{margin-top:8px;margin-left:8px;padding:5px 12px;border:1px solid var(--border);border-radius:999px;background:none;font-size:12px;font-weight:600;color:var(--text3);cursor:pointer}.cv-customer-response-dismiss-btn:hover:not(:disabled){background:var(--bg3);color:var(--text2)}.cv-customer-response-dismiss-btn:disabled{opacity:.6;cursor:default}.cv-customer-response{margin-top:10px;padding:10px 12px;border-radius:8px;background:color-mix(in srgb,var(--accent) 8%,var(--bg2));border:1px solid color-mix(in srgb,var(--accent) 20%,transparent)}.cv-customer-response-label{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--accent);margin-bottom:4px}.cv-customer-response-text{margin:0;font-size:13px;line-height:1.5;color:var(--text2);white-space:pre-wrap}.cv-customer-response-form{margin-top:10px;display:flex;flex-direction:column;gap:8px}.cv-customer-response-input{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font:inherit;font-size:13px;resize:vertical}.cv-customer-response-upload{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cv-customer-response-files{margin:0;padding-left:18px;font-size:12px;color:var(--text3)}.cv-customer-response-error{margin:0;font-size:12px;color:var(--red, #dc2626)}.cv-customer-response-actions{display:flex;justify-content:flex-end;gap:8px}.cv-file-picker{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cv-file-picker-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cv-file-picker-btn{flex-shrink:0;display:inline-flex;align-items:center;border:1px solid var(--border);background:var(--bg2);color:var(--text);border-radius:8px;padding:6px 14px;font-size:12px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}.cv-file-picker-btn:hover{background:var(--bg3);border-color:var(--accent)}.cv-file-picker-input:focus-visible+.cv-file-picker-btn{outline:2px solid var(--accent);outline-offset:2px}.cv-file-picker-name{font-size:12px;color:var(--text2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.cv-file-picker-name--empty{color:var(--text3);font-style:italic}.cv-rich-wrap{position:relative}.cv-rich-wrap--collapsible:not(.cv-rich-wrap--expanded){max-height:130px;overflow:hidden}.cv-rich-wrap--collapsible:not(.cv-rich-wrap--expanded):after{content:"";position:absolute;left:0;right:0;bottom:0;height:40px;background:linear-gradient(to bottom,transparent,var(--bg3));pointer-events:none}.cv-rich-toggle{display:inline-flex;align-items:center;margin-top:8px;padding:0;border:none;background:none;font-size:12px;font-weight:700;color:var(--accent);cursor:pointer}.cv-rich-toggle:hover{text-decoration:underline}.cv-customer-desc-rich{font-size:14px;line-height:1.65;color:var(--text2);min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.cv-customer-desc-rich *{font-family:inherit!important;font-size:14px!important;font-weight:400!important;line-height:1.65!important;color:inherit!important;background:transparent!important}.cv-customer-desc-rich p{margin:0 0 .65em}.cv-customer-desc-rich p:last-child{margin-bottom:0}.cv-customer-desc-rich ul,.cv-customer-desc-rich ol{margin:.5em 0;padding-left:1.25em}.cv-customer-desc-rich li{margin-bottom:.35em}.cv-customer-desc-rich a{color:var(--accent)!important;text-decoration:underline;text-underline-offset:2px}.cv-customer-desc-rich strong,.cv-customer-desc-rich b{font-weight:600!important;color:var(--text)!important}.cv-customer-desc-rich h1,.cv-customer-desc-rich h2,.cv-customer-desc-rich h3,.cv-customer-desc-rich h4,.cv-customer-desc-rich h5,.cv-customer-desc-rich h6{font-size:15px!important;font-weight:700!important;color:var(--text)!important;margin:.9em 0 .35em!important;line-height:1.4!important}.cv-customer-desc-rich h1:first-child,.cv-customer-desc-rich h2:first-child,.cv-customer-desc-rich h3:first-child,.cv-customer-desc-rich h4:first-child{margin-top:0!important}.cv-customer-desc-rich blockquote{margin:.65em 0;padding:.5em 0 .5em .85em;border-left:3px solid var(--border);color:var(--text3)}.customer-view,.cu-page,.ct-page,.cd-page,.tf-page,.cm-page,.ch-page,.ck-page{position:relative;overflow-x:clip;max-width:100%}.customer-view>:not(app-customer-portal-particles),.cu-page>:not(app-customer-portal-particles),.ct-page>:not(app-customer-portal-particles),.cd-page>:not(app-customer-portal-particles),.tf-page>:not(app-customer-portal-particles),.cm-page>:not(app-customer-portal-particles),.ch-page>:not(app-customer-portal-particles),.ck-page>:not(app-customer-portal-particles){position:relative;z-index:1}.customer-view>.cv-header,.cu-page>.cv-header,.ct-page>.cv-header,.cd-page>.cv-header,.tf-page>.cv-header,.cm-page>.cv-header,.ch-page>.cv-header,.ck-page>.cv-header{background:color-mix(in srgb,var(--bg2) 90%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.customer-view .cv-panel,.cu-page .cv-panel,.ct-page .cv-panel,.cd-page .cv-panel,.tf-page .cv-panel,.cm-page .cv-panel,.ch-page .cv-panel,.ck-page .cv-panel{background:color-mix(in srgb,var(--bg2) 86%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.page-header{position:relative;z-index:1;box-shadow:0 2px 8px #0f172a0d}:root[data-theme=dark] .page-header{box-shadow:0 2px 8px #0000002e}@keyframes cv-shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.cv-skel{border-radius:6px;background:linear-gradient(90deg,var(--border) 25%,var(--bg4) 50%,var(--border) 75%);background-size:1200px 100%;animation:cv-shimmer 1.5s ease-in-out infinite}.cv-skel--nav-pill{width:88px;height:32px;border-radius:8px;flex-shrink:0}.cv-skel--nav-pill.cv-skel--w-md{width:72px}.cv-skel--nav-pill.cv-skel--w-sm{width:58px}.cv-skel--nav-pill.cv-skel--launch-btn{width:148px}.cv-skel--nav-pill.cv-skel--logout-btn{width:64px}.cv-skel--tab{width:100px;height:34px;border-radius:8px}.cv-skel--tab.cv-skel--w-md{width:80px}.cv-skel-tab-row{display:flex;gap:8px;margin-bottom:8px}.cv-skel--kicker{width:120px;height:10px;margin-bottom:10px}.cv-skel--h1{width:52%;height:22px;margin-bottom:10px}.cv-skel--subtitle{width:28%;height:13px;margin-bottom:18px}.cv-skel--lead{width:100%;height:13px;margin-bottom:6px}.cv-skel--summary{width:100%;height:56px;border-radius:8px;margin-bottom:14px}.cv-skel--progress-bar{width:100%;height:10px;border-radius:5px}.cv-skel--section-head{width:38%;height:15px;margin-bottom:14px}.cv-skel--gantt-row{width:100%;height:38px;border-radius:6px;margin-bottom:10px}.cv-skel--avatar-row{width:100%;height:20px;border-radius:4px;margin-bottom:10px}.cv-skel--card{height:80px;border-radius:var(--radius, 10px)}.cv-skel--card-tall{height:120px;border-radius:var(--radius, 10px)}.cv-skel--tile{height:56px;border-radius:var(--radius, 10px)}.cv-skel--recording{height:100px;border-radius:var(--radius, 10px)}.cv-skel--w85{width:85%}.cv-skel--w80{width:80%}.cv-skel--w70{width:70%}.cv-skel--w65{width:65%}.cv-skel--w50{width:50%}.modal-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .12s ease}.modal-box{background:var(--bg2);border:1px solid var(--border);border-radius:10px;width:420px;max-width:95vw;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 16px 48px #00000038;animation:fadeIn .15s ease}.modal-box-header{padding:14px 16px 12px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.modal-box-title{font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text)}.modal-box-close{background:none;border:none;color:var(--text3);font-size:20px;cursor:pointer;line-height:1;padding:0 4px}.modal-box-close:hover{color:var(--text)}.modal-box-body{padding:16px;font-size:14px;color:var(--text2);line-height:1.6}.modal-box-body .modal-input{width:100%;margin-top:10px;padding:7px 10px;font-size:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);outline:none;font-family:var(--font-ui)}.modal-box-body .modal-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.modal-box-footer{padding:12px 16px;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end}.mention-dropdown{position:fixed;background:var(--bg);border:1px solid var(--border2);border-radius:8px;box-shadow:0 8px 24px #00000038;z-index:9999;overflow:hidden;max-height:320px;overflow-y:auto}.mention-option{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;background:none;border:none;border-bottom:1px solid var(--border);cursor:pointer;text-align:left;font-family:var(--font-ui)}.mention-option:last-child{border-bottom:none}.mention-option:hover{background:var(--bg2)}.mention-option-avatar{width:26px;height:26px;background:var(--accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}.mention-option-name{font-size:13px;font-weight:500;color:var(--text);flex:1}.mention-option-role{font-size:11px;color:var(--text3);text-transform:capitalize}.mention-tag{color:var(--accent);font-weight:600;background:color-mix(in srgb,var(--accent) 10%,transparent);border-radius:3px;padding:0 2px}.sow-uc-body h1,.sow-uc-body h2,.sow-uc-body h3,.sow-uc-body h4,.sow-uc-body h5,.sow-uc-body h6,.drawer-task-desc--expanded h1,.drawer-task-desc--expanded h2,.drawer-task-desc--expanded h3,.drawer-task-desc--expanded h4,.drawer-task-desc--expanded h5,.drawer-task-desc--expanded h6,.drawer-comment-text h1,.drawer-comment-text h2,.drawer-comment-text h3,.drawer-comment-text h4,.drawer-comment-text h5,.drawer-comment-text h6{font-size:inherit;font-weight:700;margin:8px 0 3px;line-height:1.4}.cv-communication-rich>:first-child{margin-top:0}.cv-communication-rich>:last-child{margin-bottom:0}.cv-communication-rich p{margin:0 0 6px}.cv-communication-rich h1,.cv-communication-rich h2,.cv-communication-rich h3,.cv-communication-rich h4,.cv-communication-rich h5,.cv-communication-rich h6{margin:10px 0 4px;color:inherit;font-size:inherit;font-weight:700;line-height:1.4}.cv-communication-rich ul,.cv-communication-rich ol{margin:4px 0 8px;padding-left:22px}.cv-communication-rich ul{list-style:disc}.cv-communication-rich ol{list-style:decimal}.cv-communication-rich li{margin-bottom:2px}.cv-communication-rich blockquote{margin:6px 0;padding:3px 0 3px 12px;border-left:3px solid var(--border2);color:var(--text2)}.cv-communication-rich a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.cv-communication-rich img{display:block;max-width:100%;height:auto;margin:6px 0;border-radius:4px}.cv-communication-rich table{width:100%;margin:8px 0;border-collapse:collapse}.cv-communication-rich th,.cv-communication-rich td{padding:5px 7px;border:1px solid var(--border);text-align:left;vertical-align:top}.cv-communication-rich th{background:var(--bg2);font-weight:700}@media print{.sow-uc-body h1,.sow-uc-body h2,.sow-uc-body h3,.sow-uc-body h4,.sow-uc-body h5,.sow-uc-body h6{font-size:inherit;font-weight:700;margin:6pt 0 2pt;line-height:1.4}}@media (max-width: 640px){.modal-overlay{align-items:flex-start;padding:12px;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-box{width:100%;max-width:100%;margin:auto}.modal-box-footer{flex-wrap:wrap}.modal-box-footer .btn{flex:1 1 auto;justify-content:center}}
