:root{color:#eef5ff;font-synthesis:none;text-rendering:optimizelegibility;--bg:#050b16;--panel:#0a1424;--panel-strong:#0d1a2e;--panel-soft:#101e33;--line:#a6b5cc29;--line-strong:#65e5ff52;--text:#eef5ff;--muted:#a6b5cc;--muted-2:#75869f;--blue:#28a9ff;--cyan:#65e5ff;--violet:#8c6bff;--orange:#ffad42;--green:#4ee3a4;--red:#ff7184;--shadow:0 24px 80px #00000047;--radius-sm:10px;--radius:16px;--radius-lg:22px;background:#050b16;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{background:var(--bg);min-width:320px}body{background:radial-gradient(circle at 74% 0,#28a9ff1a,#0000 30rem),linear-gradient(#050b16 0%,#07101d 100%);min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent;color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}button,a,input,textarea{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--cyan)}.skip-link{z-index:999;color:#04111a;background:var(--cyan);border-radius:8px;padding:10px 14px;font-weight:700;transition:transform .16s;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.eyebrow{color:var(--cyan);letter-spacing:.13em;text-transform:uppercase;margin-bottom:9px;font-size:.72rem;font-weight:700}.muted{color:var(--muted)}.button{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:9px;min-height:43px;padding:10px 16px;font-size:.88rem;font-weight:700;line-height:1;text-decoration:none;transition:transform .16s,border-color .16s,background .16s,color .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:disabled,.icon-button:disabled,.text-button:disabled{cursor:wait;opacity:.58;transform:none}.button-primary{color:#04111a;background:linear-gradient(135deg, var(--cyan), var(--blue));box-shadow:0 10px 24px #28a9ff2e}.button-primary:hover{background:linear-gradient(135deg,#8cedff,#4bb5ff)}.button-light{color:#07111f;background:#fff}.button-ghost{border-color:var(--line);color:var(--text);background:#ffffff09}.button-ghost:hover{border-color:var(--line-strong);background:#65e5ff12}.button-full{width:100%}.icon-button{border:1px solid var(--line);width:41px;height:41px;color:var(--muted);cursor:pointer;background:#ffffff06;border-radius:10px;flex:none;place-items:center;padding:0;transition:color .15s,border-color .15s,background .15s;display:inline-grid}.icon-button:hover{border-color:var(--line-strong);color:var(--cyan);background:#65e5ff12}.demo-chip{width:max-content;color:var(--cyan);letter-spacing:.04em;text-transform:uppercase;background:#65e5ff12;border:1px solid #65e5ff38;border-radius:999px;align-items:center;gap:8px;padding:7px 11px;font-size:.75rem;font-weight:700;display:inline-flex}.demo-chip.compact{padding:6px 9px;font-size:.68rem}.form-error,.form-message{border-radius:9px;margin:0;padding:10px 12px;font-size:.82rem;line-height:1.45}.form-error{color:#ffc2ca;background:#ff718414;border:1px solid #ff718447}.form-message{color:var(--text);background:#65e5ff0f;border:1px solid #65e5ff3d}.form-hint{color:var(--muted);margin:-4px 0 8px;font-size:.78rem;line-height:1.5}.sign-in-reset{width:max-content;margin:2px auto 0}.portal-status-page{text-align:center;place-content:center;justify-items:center;gap:16px;min-height:100vh;padding:32px 20px;display:grid}.portal-status-page img{width:74px;margin-bottom:8px}.portal-status-page h1{max-width:620px;margin-bottom:0;font-size:clamp(1.7rem,5vw,2.6rem)}.portal-status-page p{max-width:620px;color:var(--muted);margin-bottom:0;line-height:1.65}.portal-status-page>svg{color:var(--orange)}.status-spinner{border:3px solid #65e5ff2e;border-top-color:var(--cyan);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite status-spin}@keyframes status-spin{to{transform:rotate(360deg)}}.empty-state{color:var(--muted);margin:0;padding:20px;font-size:.88rem;line-height:1.55}.status-dot{background:var(--green);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #4ee3a41f}.toast{z-index:120;max-width:min(420px,100vw - 44px);color:var(--text);box-shadow:var(--shadow);background:#102a28;border:1px solid #4ee3a44d;border-radius:12px;align-items:center;gap:10px;padding:13px 16px;font-size:.86rem;font-weight:600;animation:.2s both toast-in;display:flex;position:fixed;bottom:22px;right:22px}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.sign-in-page{grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);min-height:100vh;display:grid}.sign-in-story{isolation:isolate;background:linear-gradient(140deg,#050b1633,#050b16bf),radial-gradient(circle at 65% 45%,#28a9ff3d,#0000 20rem),radial-gradient(circle at 82% 68%,#8c6bff24,#0000 18rem),#081529;flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(30px,5vw,76px);display:flex;position:relative;overflow:hidden}.sign-in-story:before{z-index:-1;aspect-ratio:1;content:"";border:1px solid #65e5ff1f;border-radius:50%;width:min(42vw,570px);position:absolute;top:18%;right:7%;box-shadow:0 0 0 70px #65e5ff06,0 0 0 140px #65e5ff05}.sign-in-story:after{z-index:-1;content:"";background-image:linear-gradient(#65e5ff09 1px,#0000 1px),linear-gradient(90deg,#65e5ff09 1px,#0000 1px);background-size:52px 52px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 20%,#0000 90%);mask-image:linear-gradient(#0000,#000 20%,#0000 90%)}.sign-in-brand,.portal-brand{color:var(--text);align-items:center;gap:12px;font-weight:700;text-decoration:none;display:flex}.sign-in-brand img,.portal-brand img{width:118px;height:auto}.sign-in-brand span,.portal-brand span{color:var(--muted);border-left:1px solid #eef5ff2e;padding-left:12px;font-size:.84rem}.story-copy{max-width:710px}.story-copy h1{letter-spacing:-.055em;max-width:680px;margin-bottom:24px;font-size:clamp(2.65rem,5.1vw,5.3rem);line-height:.98}.story-copy>p:last-child{max-width:600px;color:var(--muted);margin-bottom:0;font-size:clamp(1rem,1.45vw,1.18rem);line-height:1.65}.story-proof{flex-wrap:wrap;gap:12px 26px;display:flex}.story-proof div{color:var(--muted);align-items:center;gap:9px;font-size:.84rem;display:flex}.story-proof svg{width:18px;color:var(--cyan)}.sign-in-panel{background:radial-gradient(circle at 50% 12%,#28a9ff14,#0000 20rem),#07101d;flex-direction:column;justify-content:center;min-height:100vh;padding:clamp(28px,5vw,80px);display:flex}.sign-in-panel>.demo-chip{margin-bottom:20px}.sign-in-card{border:1px solid var(--line);border-radius:var(--radius-lg);width:min(100%,460px);box-shadow:var(--shadow);background:#0a1424d1;padding:clamp(24px,4vw,40px)}.sign-in-card h2{letter-spacing:-.035em;margin-bottom:12px;font-size:clamp(1.8rem,3vw,2.35rem)}.sign-in-card>.muted{margin-bottom:28px;font-size:.92rem;line-height:1.6}.sign-in-card form{gap:10px;display:grid}.sign-in-card label,.approval-actions label,.message-compose label,.support-form-panel label{color:var(--text);font-size:.8rem;font-weight:700}.sign-in-card input,.approval-actions textarea,.message-compose textarea,.support-form-panel textarea{border:1px solid var(--line);width:100%;color:var(--text);background:#ffffff09;border-radius:10px;transition:border-color .15s,background .15s}.sign-in-card input{height:48px;margin-bottom:8px;padding:0 14px}.password-input-wrap{position:relative}.sign-in-card .password-input-wrap input{padding-right:52px}.password-visibility{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;transition:color .15s,background .15s;display:grid;position:absolute;top:6px;right:6px}.password-visibility:hover{color:var(--text);background:#ffffff14}.password-visibility:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.sign-in-card input:hover,.approval-actions textarea:hover,.message-compose textarea:hover,.support-form-panel textarea:hover{border-color:#a6b5cc52}.sign-in-note{border-top:1px solid var(--line);color:var(--muted);gap:10px;margin-top:20px;padding-top:20px;display:flex}.sign-in-note svg{color:var(--cyan);flex:none}.sign-in-note p{margin-bottom:0;font-size:.77rem;line-height:1.55}.sign-in-links{justify-content:space-between;gap:18px;width:min(100%,460px);margin-top:22px;display:flex}.sign-in-links a{color:var(--muted);text-underline-offset:4px;font-size:.78rem}.sign-in-links a:hover{color:var(--cyan)}.portal-app{grid-template-columns:270px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{z-index:50;border-right:1px solid var(--line);background:linear-gradient(#65e5ff06,#0000 24%),#07101d;flex-direction:column;justify-content:space-between;width:270px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-top{padding:25px 20px 16px}.sidebar-close{display:none}.portal-brand{min-height:38px;margin:0 8px 25px}.portal-brand img{width:96px}.portal-brand span{font-size:.74rem}.workspace-switcher{border:1px solid var(--line);background:#ffffff06;border-radius:12px;align-items:center;gap:10px;padding:11px;display:flex}.workspace-switcher>span:nth-child(2){flex:1;min-width:0}.workspace-switcher strong,.workspace-switcher small,.profile-row strong,.profile-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.workspace-switcher strong,.profile-row strong{font-size:.78rem}.workspace-switcher small,.profile-row small{color:var(--muted-2);margin-top:3px;font-size:.67rem}.workspace-switcher>svg{color:var(--muted-2)}.workspace-mark,.avatar{color:#04111a;background:linear-gradient(135deg, var(--cyan), var(--blue));border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:.7rem;font-weight:800;display:grid}.primary-nav{gap:4px;padding:6px 20px;display:grid}.primary-nav a{min-height:44px;color:var(--muted);border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;padding:0 12px;font-size:.82rem;font-weight:600;text-decoration:none;transition:color .15s,background .15s,border-color .15s;display:flex}.primary-nav a:hover{color:var(--text);background:#ffffff09}.primary-nav a.active{color:var(--cyan);background:linear-gradient(90deg,#28a9ff1f,#28a9ff09);border-color:#65e5ff26}.primary-nav svg{flex:none}.nav-badge{color:#06101c;background:var(--orange);border-radius:999px;place-items:center;min-width:22px;height:22px;margin-left:auto;font-size:.66rem;font-weight:800;display:grid}.sidebar-bottom{padding:16px 20px 22px}.walkthrough-card{background:linear-gradient(135deg,#28a9ff1a,#8c6bff0d);border:1px solid #65e5ff29;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-bottom:12px;padding:12px;text-decoration:none;display:grid}.walkthrough-card:hover{border-color:var(--line-strong)}.walkthrough-card strong,.walkthrough-card small{display:block}.walkthrough-card strong{font-size:.72rem}.walkthrough-card small{color:var(--muted);margin-top:3px;font-size:.62rem}.walkthrough-card>svg{color:var(--cyan)}.walkthrough-icon{width:32px;height:32px;color:var(--cyan);background:#65e5ff1a;border-radius:9px;place-items:center;display:grid}.profile-row{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:100%;padding:11px 8px;display:grid}.profile-row:hover{background:#ffffff08}.profile-row>svg{color:var(--muted-2)}.portal-stage{grid-column:2;min-width:0}.topbar{z-index:30;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#050b16d6;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(20px,3vw,42px);display:flex;position:sticky;top:0}.topbar-title{align-items:center;gap:12px;display:flex}.topbar-title small,.topbar-title strong{display:block}.topbar-title small{color:var(--muted-2);margin-bottom:2px;font-size:.68rem}.topbar-title strong{font-size:.94rem}.menu-button{display:none}.topbar-actions{align-items:center;gap:8px;display:flex}.notification-button{position:relative}.notification-button>span{border:2px solid var(--bg);color:#06101c;background:var(--orange);border-radius:50%;place-items:center;width:18px;height:18px;font-size:.58rem;font-weight:800;display:grid;position:absolute;top:-5px;right:-4px}.portal-content{width:min(100%,1540px);margin:0 auto;padding:clamp(28px,4vw,56px)}.page-stack{gap:24px;animation:.26s both page-in;display:grid}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}}.page-intro{justify-content:space-between;align-items:end;gap:24px;display:flex}.page-intro h1{letter-spacing:-.045em;max-width:780px;margin-bottom:9px;font-size:clamp(2rem,3vw,3rem);line-height:1.05}.page-intro>div:first-child>p:last-child{max-width:720px;color:var(--muted);margin-bottom:0;font-size:.93rem;line-height:1.55}.page-intro-action{flex:none}.panel,.metric-card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(150deg,#65e5ff04,#0000 32%),#0a1424c2;box-shadow:0 18px 50px #0000001f}.next-action{border-radius:var(--radius);background:radial-gradient(circle at 88% 30%,#8c6bff38,#0000 18rem),linear-gradient(120deg,#28a9ff33,#0a1424db 44%);border:1px solid #65e5ff47;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:22px 24px;display:grid;position:relative;overflow:hidden}.next-action:after{content:"";border:1px solid #65e5ff1f;border-radius:50%;width:230px;height:230px;position:absolute;bottom:-90px;right:-50px}.next-action-icon{color:#06101c;background:var(--cyan);border-radius:14px;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 12px 30px #65e5ff33}.next-action-copy{z-index:1;position:relative}.next-action-copy .eyebrow{margin-bottom:5px}.next-action-copy h2{margin-bottom:5px;font-size:1.22rem}.next-action-copy>p:last-child{color:var(--muted);margin-bottom:0;font-size:.84rem}.next-action-meta{z-index:1;align-items:center;gap:18px;display:flex;position:relative}.next-action-meta>span{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:.75rem;display:flex}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.metric-card{flex-direction:column;justify-content:center;min-height:135px;padding:20px;display:flex}.metric-card>strong{letter-spacing:-.04em;margin-bottom:8px;font-size:clamp(1.65rem,2.3vw,2.15rem);line-height:1}.metric-card>span{color:var(--text);margin-bottom:7px;font-size:.8rem;font-weight:700}.metric-card>small{color:var(--muted-2);font-size:.7rem}.metric-card.metric-accent{background:linear-gradient(150deg,#ffad4217,#0a1424c2 54%);border-color:#ffad4240}.metric-card.metric-accent>strong{color:var(--orange)}.content-grid{grid-template-columns:minmax(0,1.45fr) minmax(330px,.8fr);gap:16px;display:grid}.content-grid.lower-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;display:flex}.panel-header h2{margin-bottom:4px;font-size:.98rem}.panel-header p{color:var(--muted-2);margin-bottom:0;font-size:.69rem}.text-button{color:var(--cyan);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:6px;font-size:.73rem;font-weight:700;display:inline-flex}.text-button:hover{color:#a6f1ff}.project-list{display:grid}.project-row{grid-template-columns:auto minmax(0,1fr);gap:15px;padding:20px 22px;display:grid}.project-row+.project-row{border-top:1px solid var(--line)}.project-mark{width:42px;height:42px;color:var(--cyan);background:#65e5ff12;border:1px solid #65e5ff29;border-radius:12px;flex:none;place-items:center;font-size:.7rem;font-weight:800;display:grid}.project-row-title{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.project-row-title strong,.project-row-title span{display:block}.project-row-title strong{margin-bottom:4px;font-size:.84rem}.project-row-title>div>span{color:var(--muted-2);font-size:.66rem}.status-pill{border:1px solid var(--line);border-radius:999px;flex:none;align-items:center;gap:6px;padding:6px 9px;font-size:.62rem;font-weight:700;display:inline-flex}.status-pill>span{background:currentColor;border-radius:50%;width:6px;height:6px}.status-on_track{color:var(--green);background:#4ee3a40f;border-color:#4ee3a438}.status-needs_attention{color:var(--orange);background:#ffad420f;border-color:#ffad423d}.status-planning{color:#b3a2ff;background:#8c6bff12;border-color:#8c6bff42}.progress-line{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin:14px 0 8px;display:grid}progress{background:#ffffff12;border:0;border-radius:999px;width:100%;height:6px;overflow:hidden}progress::-webkit-progress-bar{background:#ffffff12;border-radius:999px}progress::-webkit-progress-value{background:linear-gradient(90deg, var(--blue), var(--cyan));border-radius:999px}progress::-moz-progress-bar{background:linear-gradient(90deg, var(--blue), var(--cyan));border-radius:999px}.progress-line>span{color:var(--cyan);font-size:.66rem;font-weight:700}.project-row-main>p{color:var(--muted);margin-bottom:0;font-size:.68rem}.project-row-main>p span{color:var(--muted-2);margin-left:7px}.attention-list{padding:6px 10px 10px;display:grid}.attention-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;width:100%;padding:13px 11px;display:grid}.attention-list button:hover{background:#ffffff08}.attention-icon{width:34px;height:34px;color:var(--orange);background:#ffad4214;border-radius:10px;place-items:center;display:grid}.attention-list strong,.attention-list small{display:block}.attention-list strong{font-size:.75rem}.attention-list small{color:var(--muted-2);margin-top:4px;font-size:.64rem}.attention-list>button>svg{color:var(--muted-2)}.schedule-list,.activity-list{padding:8px 20px 16px;display:grid}.schedule-item,.activity-item{align-items:center;gap:12px;padding:11px 0;display:flex}.schedule-item+.schedule-item,.activity-item+.activity-item{border-top:1px solid var(--line)}.date-tile{border:1px solid var(--line);background:#ffffff06;border-radius:10px;flex:none;align-content:center;place-items:center;width:42px;height:46px;display:grid}.date-tile strong{font-size:.88rem;line-height:1}.date-tile small{color:var(--cyan);text-transform:uppercase;margin-top:3px;font-size:.54rem;font-weight:700}.schedule-item>span:last-child strong,.schedule-item>span:last-child small,.activity-item>span:last-child strong,.activity-item>span:last-child small{display:block}.schedule-item>span:last-child strong,.activity-item>span:last-child strong{font-size:.74rem}.schedule-item>span:last-child small,.activity-item>span:last-child small{color:var(--muted-2);margin-top:4px;font-size:.63rem}.activity-icon{width:34px;height:34px;color:var(--cyan);background:#65e5ff12;border-radius:10px;flex:none;place-items:center;display:grid}.activity-icon svg{width:16px}.project-workspace{grid-template-columns:minmax(250px,.36fr) minmax(0,1fr);gap:16px;display:grid}.project-selector{align-content:start;gap:8px;display:grid}.project-selector button{border:1px solid var(--line);width:100%;color:var(--muted);text-align:left;cursor:pointer;background:#0a14249e;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px;display:grid}.project-selector button:hover,.project-selector button.selected{border-color:var(--line-strong);color:var(--text);background:#28a9ff14}.project-selector button strong,.project-selector button small{display:block}.project-selector button strong{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.project-selector button small{color:var(--muted-2);margin-top:4px;font-size:.64rem}.project-selector button>svg{color:var(--muted-2)}.project-detail{overflow:hidden}.project-detail-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:22px;padding:clamp(22px,3vw,34px);display:flex}.project-detail-head h2{letter-spacing:-.035em;margin-bottom:10px;font-size:clamp(1.45rem,2.2vw,2rem)}.project-detail-head>div>p:last-child{max-width:700px;color:var(--muted);margin-bottom:0;font-size:.84rem;line-height:1.6}.project-external-link{width:-moz-fit-content;width:fit-content;color:var(--cyan);align-items:center;gap:8px;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.project-external-link:hover{text-underline-offset:4px;text-decoration:underline}.project-facts{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));padding:18px clamp(22px,3vw,34px);display:grid}.project-facts>div{border-left:1px solid var(--line);padding:5px 18px}.project-facts>div:first-child{border-left:0;padding-left:0}.project-facts span,.project-facts strong{display:block}.project-facts span{color:var(--muted-2);margin-bottom:6px;font-size:.64rem}.project-facts strong{font-size:.74rem}.project-progress{border-bottom:1px solid var(--line);padding:22px clamp(22px,3vw,34px)}.project-progress>span{justify-content:space-between;margin-bottom:10px;display:flex}.project-progress strong{font-size:.75rem}.project-progress small{color:var(--cyan);font-weight:700}.timeline{padding:24px clamp(22px,3vw,34px) 30px}.timeline h3{margin-bottom:18px;font-size:.86rem}.timeline-item{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;min-height:55px;display:grid;position:relative}.timeline-item:not(:last-child):after{background:var(--line);content:"";width:1px;position:absolute;top:36px;bottom:-12px;left:12px}.timeline-dot{z-index:1;border:1px solid var(--line);background:var(--panel);border-radius:50%;place-items:center;width:25px;height:25px;display:grid;position:relative}.timeline-complete .timeline-dot{border-color:var(--green);color:#06101c;background:var(--green)}.timeline-current .timeline-dot{background:var(--cyan);background-clip:padding-box;border:5px solid #65e5ff2e}.timeline-item strong,.timeline-item small{display:block}.timeline-item strong{font-size:.76rem}.timeline-item small{color:var(--muted-2);margin-top:4px;font-size:.63rem}.timeline-state{color:var(--muted-2);text-transform:capitalize;font-size:.61rem;font-weight:700}.approval-list{gap:14px;display:grid}.approval-card{border:1px solid var(--line);border-radius:var(--radius);background:#0a1424bd;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;padding:clamp(20px,3vw,28px);display:grid}.approval-title-row{color:var(--muted-2);align-items:center;gap:10px;margin-bottom:18px;font-size:.66rem;display:flex}.approval-state{border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-weight:700;display:inline-flex}.approval-pending{color:var(--orange);background:#ffad4214}.approval-approved{color:var(--green);background:#4ee3a414}.approval-changes_requested{color:#b3a2ff;background:#8c6bff17}.approval-main .eyebrow{margin-bottom:6px}.approval-main h2{margin-bottom:8px;font-size:1.06rem}.approval-main>p{max-width:760px;color:var(--muted);margin-bottom:14px;font-size:.8rem;line-height:1.55}.approval-meta{gap:8px;display:flex}.approval-meta span{border:1px solid var(--line);color:var(--muted-2);border-radius:7px;padding:5px 8px;font-size:.62rem}.feedback-note{border-left:3px solid var(--violet);background:#8c6bff0f;border-radius:0 9px 9px 0;margin-top:16px;padding:13px 15px}.feedback-note strong{color:#c1b5ff;margin-bottom:5px;font-size:.67rem;display:block}.feedback-note p{color:var(--muted);margin-bottom:0;font-size:.74rem}.approval-actions{align-items:center;gap:9px;display:flex}.approval-actions form{gap:8px;width:min(390px,38vw);display:grid}.approval-actions textarea{resize:vertical;min-height:92px;padding:11px 12px;font-size:.77rem;line-height:1.5}.approval-actions form>small{color:var(--muted-2);text-align:right;font-size:.62rem}.approval-actions form>div{justify-content:flex-end;gap:8px;display:flex}.filter-row{flex-wrap:wrap;gap:7px;display:flex}.filter-row button{border:1px solid var(--line);min-height:36px;color:var(--muted);cursor:pointer;background:#ffffff05;border-radius:999px;padding:7px 13px;font-size:.72rem;font-weight:700}.filter-row button:hover,.filter-row button.active{border-color:var(--line-strong);color:var(--cyan);background:#65e5ff14}.file-panel,.invoice-panel{overflow:hidden}.file-table-head,.file-row{grid-template-columns:minmax(230px,1.2fr) minmax(170px,.9fr) 100px 100px 70px;align-items:center;gap:16px;display:grid}.file-table-head,.invoice-table-head{border-bottom:1px solid var(--line);color:var(--muted-2);letter-spacing:.07em;text-transform:uppercase;background:#ffffff05;padding:12px 18px;font-size:.62rem;font-weight:700}.file-row{min-height:72px;color:var(--muted);padding:12px 18px;font-size:.72rem}.file-row+.file-row,.invoice-row+.invoice-row{border-top:1px solid var(--line)}.file-name{align-items:center;gap:11px;min-width:0;display:flex}.file-name strong,.file-name small{display:block}.file-name strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;font-size:.76rem;overflow:hidden}.file-name small{color:var(--muted-2);font-size:.61rem}.file-icon{width:36px;height:36px;color:var(--cyan);background:#65e5ff12;border-radius:10px;flex:none;place-items:center;display:grid}.message-workspace{border:1px solid var(--line);border-radius:var(--radius);background:#0a1424b8;grid-template-columns:310px minmax(0,1fr);min-height:610px;display:grid;overflow:hidden}.conversation-list{border-right:1px solid var(--line);background:#050b163d;padding:20px 12px}.conversation-list>.eyebrow{margin:0 10px 12px}.conversation-list button{width:100%;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 10px;display:grid}.conversation-list button:hover,.conversation-list button.selected{color:var(--text);background:#28a9ff12;border-color:#65e5ff21}.conversation-list strong,.conversation-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.conversation-list strong{font-size:.7rem}.conversation-list small{color:var(--muted-2);margin-top:4px;font-size:.59rem}.conversation-avatar{width:34px;height:34px;color:var(--cyan);background:#65e5ff17;border-radius:10px;flex:none;place-items:center;font-size:.64rem;font-weight:800;display:grid}.unread-dot{background:var(--cyan);border-radius:50%;width:7px;height:7px}.message-thread{grid-template-rows:auto minmax(0,1fr) auto;min-width:0;display:grid}.message-thread>header{border-bottom:1px solid var(--line);align-items:center;gap:11px;min-height:68px;padding:12px 20px;display:flex}.message-thread>header strong,.message-thread>header small{display:block}.message-thread>header strong{font-size:.78rem}.message-thread>header small{color:var(--muted-2);margin-top:4px;font-size:.64rem}.message-history{flex-direction:column;gap:12px;padding:22px;display:flex;overflow-y:auto}.date-divider{color:var(--muted-2);align-items:center;gap:12px;font-size:.61rem;display:flex}.date-divider:before,.date-divider:after{background:var(--line);content:"";flex:1;height:1px}.message-bubble{border:1px solid var(--line);background:#ffffff09;border-radius:4px 14px 14px;align-self:flex-start;max-width:min(620px,82%);padding:13px 15px}.message-bubble.message-own{background:#28a9ff1a;border-color:#28a9ff33;border-radius:14px 4px 14px 14px;align-self:flex-end}.message-bubble strong{color:var(--cyan);margin-bottom:6px;font-size:.65rem;display:block}.message-bubble p{color:var(--text);margin-bottom:7px;font-size:.76rem;line-height:1.55}.message-bubble small{color:var(--muted-2);font-size:.58rem}.message-compose{border-top:1px solid var(--line);gap:8px;padding:16px 20px 20px;display:grid}.message-compose textarea{resize:vertical;min-height:84px;padding:12px;font-size:.77rem;line-height:1.5}.message-compose>div{justify-content:space-between;align-items:center;gap:16px;display:flex}.message-compose>div>small{color:var(--muted-2);font-size:.62rem}.invoice-policy-banner{background:#65e5ff0e;border:1px solid #65e5ff38;border-radius:13px;align-items:flex-start;gap:13px;padding:17px 18px;display:flex}.invoice-policy-banner>svg{color:var(--cyan);flex:none}.invoice-policy-banner strong{margin-bottom:4px;font-size:.79rem;display:block}.invoice-policy-banner p{color:var(--muted);margin-bottom:0;font-size:.72rem;line-height:1.5}.invoice-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.invoice-table-head,.invoice-row{grid-template-columns:110px minmax(210px,1fr) 120px 100px 100px 65px;align-items:center;gap:14px;display:grid}.invoice-row{min-height:66px;color:var(--muted);padding:11px 18px;font-size:.7rem}.invoice-row>button:first-child{width:max-content;color:var(--cyan);cursor:pointer;background:0 0;border:0;padding:5px 0;font-size:.72rem;font-weight:800}.invoice-row>button:first-child:hover{text-underline-offset:4px;text-decoration:underline}.invoice-row>strong{color:var(--text)}.invoice-status{border-radius:999px;width:max-content;padding:5px 8px;font-size:.61rem;font-weight:700}.invoice-paid{color:var(--green);background:#4ee3a414}.invoice-due{color:var(--orange);background:#ffad4214}.invoice-processing{color:#b3a2ff;background:#8c6bff14}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#01050bc7;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.invoice-dialog{border:1px solid var(--line-strong);border-radius:var(--radius-lg);width:min(100%,660px);box-shadow:var(--shadow);background:#091424;animation:.18s both dialog-in;overflow:hidden}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.985)}}.invoice-dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px 24px;display:flex}.invoice-dialog h2{margin-bottom:0}.invoice-detail-meta{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));padding:18px 24px;display:grid}.invoice-detail-meta div{border-left:1px solid var(--line);padding-left:16px}.invoice-detail-meta div:first-child{border-left:0;padding-left:0}.invoice-detail-meta span,.invoice-detail-meta strong{display:block}.invoice-detail-meta span{color:var(--muted-2);margin-bottom:5px;font-size:.62rem}.invoice-detail-meta strong{font-size:.74rem}.invoice-lines{padding:10px 24px;display:grid}.invoice-lines>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:14px 0;display:flex}.invoice-lines strong,.invoice-lines small{display:block}.invoice-lines strong{font-size:.76rem}.invoice-lines small{color:var(--muted-2);margin-top:4px;font-size:.61rem}.invoice-total{justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.invoice-total span{color:var(--muted);font-size:.75rem}.invoice-total strong{font-size:1.35rem}.invoice-dialog-note{color:var(--orange);background:#ffad420f;border:1px solid #ffad422e;border-radius:10px;align-items:center;gap:8px;margin:0 24px 20px;padding:12px;font-size:.69rem;display:flex}.invoice-dialog>footer{border-top:1px solid var(--line);background:#ffffff04;justify-content:flex-end;gap:9px;padding:17px 24px;display:flex}.support-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.support-card{padding:clamp(22px,3vw,30px)}.support-icon{width:44px;height:44px;color:var(--cyan);background:#65e5ff14;border-radius:13px;place-items:center;margin-bottom:22px;display:grid}.support-card h2{margin-bottom:10px;font-size:1.1rem}.support-card>p:not(.eyebrow){color:var(--muted);margin-bottom:18px;font-size:.78rem;line-height:1.6}.support-card a{color:var(--cyan);text-underline-offset:4px;font-size:.73rem;font-weight:700}.support-form-panel{grid-template-columns:minmax(0,.7fr) minmax(340px,1fr);gap:30px;padding:clamp(22px,3vw,30px);display:grid}.support-form-panel h2{margin-bottom:9px}.support-form-panel>div>p:last-child{color:var(--muted);margin-bottom:0;font-size:.78rem;line-height:1.6}.support-form-panel form{gap:9px;display:grid}.support-form-panel textarea{resize:vertical;min-height:110px;padding:12px;font-size:.77rem;line-height:1.5}.support-form-panel form .button{justify-self:end}.demo-controls{border:1px dashed #a6b5cc38;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;display:flex}.demo-controls strong{margin-bottom:4px;font-size:.78rem;display:block}.demo-controls p{color:var(--muted-2);margin-bottom:0;font-size:.68rem}@media (max-width:1180px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid{grid-template-columns:1fr}.content-grid.lower-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.approval-card{grid-template-columns:1fr}.approval-actions{justify-content:flex-end}.approval-actions form{width:100%}.file-table-head,.file-row{grid-template-columns:minmax(210px,1fr) minmax(150px,.8fr) 90px 65px}.file-table-head>span:nth-child(4),.file-row>span:nth-child(4){display:none}.invoice-table-head,.invoice-row{grid-template-columns:100px minmax(180px,1fr) 90px 90px 60px}.invoice-table-head>span:nth-child(3),.invoice-row>span:nth-child(3){display:none}}@media (max-width:900px){.sign-in-page{grid-template-columns:1fr}.sign-in-story{min-height:48vh;padding:32px}.story-copy{margin:70px 0}.story-copy h1{font-size:clamp(2.5rem,9vw,4.2rem)}.sign-in-panel{align-items:center;min-height:52vh;padding:48px 24px}.portal-app{grid-template-columns:1fr}.sidebar{width:min(310px,88vw);transition:transform .2s;transform:translate(-102%)}.sidebar.sidebar-open{transform:translate(0)}.sidebar-close{display:grid;position:absolute;top:18px;right:14px}.sidebar-scrim{z-index:45;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#01050bad;border:0;position:fixed;inset:0}.portal-stage{grid-column:1}.menu-button{display:grid}.portal-content{padding:32px 22px 48px}.project-workspace{grid-template-columns:1fr}.project-selector{grid-template-columns:repeat(3,minmax(0,1fr))}.project-selector button{grid-template-columns:auto minmax(0,1fr)}.project-selector button>svg{display:none}.message-workspace{grid-template-columns:1fr}.conversation-list{border-right:0;border-bottom:1px solid var(--line);gap:8px;display:flex;overflow-x:auto}.conversation-list>.eyebrow{display:none}.conversation-list button{min-width:270px}.message-thread{min-height:540px}.support-form-panel{grid-template-columns:1fr}}@media (max-width:680px){.sign-in-story{min-height:auto;padding:26px 22px 34px}.story-copy{margin:60px 0 52px}.story-copy h1{font-size:clamp(2.3rem,12vw,3.6rem)}.story-proof{display:grid}.sign-in-panel{align-items:stretch;padding:38px 18px}.sign-in-card{padding:25px 20px}.sign-in-links{flex-direction:column;align-items:center}.topbar{height:64px;padding:0 14px}.topbar-title small,.topbar-actions .demo-chip{display:none}.portal-content{padding:26px 14px 44px}.page-intro{flex-direction:column;align-items:flex-start}.page-intro h1{font-size:2rem}.page-intro-action,.page-intro-action .button{width:100%}.next-action{grid-template-columns:auto minmax(0,1fr);padding:19px}.next-action-meta{flex-direction:column;grid-column:1/-1;align-items:stretch;gap:12px}.next-action-meta .button{width:100%}.metric-grid,.invoice-metrics,.content-grid.lower-grid,.support-grid{grid-template-columns:1fr}.metric-card{min-height:115px}.project-row{padding:17px}.project-row-title{flex-direction:column;align-items:flex-start}.project-selector{grid-template-columns:1fr}.project-facts{grid-template-columns:1fr;gap:14px}.project-facts>div,.project-facts>div:first-child{border-left:2px solid var(--line);padding:0 0 0 12px}.approval-actions,.approval-actions form>div{flex-direction:column-reverse;align-items:stretch}.approval-actions .button,.approval-actions form .button{width:100%}.file-table-head,.invoice-table-head{display:none}.file-row,.invoice-row{grid-template-columns:1fr auto;gap:8px 12px;min-height:auto;padding:16px;display:grid;position:relative}.file-row>span:nth-child(2),.file-row>span:nth-child(3),.invoice-row>span:nth-child(2),.invoice-row>span:nth-child(3){grid-column:1}.file-row>.icon-button,.invoice-row>.icon-button{grid-area:1/2}.invoice-row>strong,.invoice-row>.invoice-status{grid-column:1}.message-workspace{min-height:700px}.message-history{padding:16px}.message-bubble{max-width:92%}.message-compose{padding:14px}.message-compose>div{flex-direction:column;align-items:stretch}.message-compose .button{width:100%}.invoice-detail-meta{grid-template-columns:1fr;gap:12px}.invoice-detail-meta div,.invoice-detail-meta div:first-child{border-left:2px solid var(--line);padding-left:12px}.invoice-dialog>footer{flex-direction:column-reverse;align-items:stretch}.demo-controls{flex-direction:column;align-items:stretch}.demo-controls .button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
