:root{color:#202735;font-synthesis:none;background:#fbfcfe;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0}a{color:#4657c7;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit;font-size:.875rem}button,select,input,textarea{background:#fff;border:1px solid #dce1e9;border-radius:7px}button{cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:9px 14px;font-weight:550;display:inline-flex}button:hover:enabled{background:#f4f6fa;border-color:#c7cfdd}button:disabled{opacity:.55;cursor:default}input,select,textarea{width:100%;min-width:0;max-width:100%;padding:10px 12px}textarea{resize:vertical}:focus-visible{outline-offset:3px;outline:3px solid #6678dd}button.primary-button{color:#fff;background:#4d5fd2;border-color:#4d5fd2}button.primary-button:hover:enabled{background:#3e4fb9;border-color:#3e4fb9}.ui-icon{flex:none;width:19px;height:19px}.language-control{flex-direction:column;align-items:flex-start;gap:9px;display:inline-flex}.language-caption{color:#657187;font-size:.78rem}.language-switcher{background:#fff;border:1px solid #e3e7ef;border-radius:9px;align-items:center;gap:4px;padding:3px;display:inline-flex}.language-switcher button{background:0 0;border:1px solid #0000;border-radius:6px;width:40px;height:36px;padding:7px}.language-switcher button:hover{background:#f4f6fb;border-color:#e3e7ef}.language-switcher button[aria-pressed=true]{background:#edf0ff;border-color:#a7b2e8}.language-flag{border:1px solid #d8deea;border-radius:2px;flex:none;width:26px;height:auto;display:block;overflow:hidden}.settings-panel .language-control{margin-top:24px}@media (forced-colors:active){.language-switcher button[aria-pressed=true]{border-color:highlight}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:#657187}.workspace-layout{grid-template-columns:232px minmax(0,1fr);min-height:100dvh;display:grid}.workspace-sidebar{z-index:30;background:#fff;border-right:1px solid #e6e9f0;flex-direction:column;width:232px;padding:28px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0}.workspace-brand{color:#202735;letter-spacing:-.06em;align-items:center;gap:10px;margin-bottom:30px;padding:0 12px;font-size:1.3rem;font-weight:750;display:flex}.workspace-brand:hover{text-decoration:none}.brand-mark{color:#5869d7;display:inline-flex}.brand-mark svg{width:27px;height:27px}.sidebar-section-label{color:#657187;letter-spacing:.08em;text-transform:uppercase;margin-bottom:9px;padding:0 12px;font-size:.65rem;font-weight:650}.workspace-nav{flex-direction:column;gap:5px;display:flex}.workspace-nav a{color:#657187;border-radius:7px;align-items:center;gap:12px;padding:11px 12px;font-size:.86rem;font-weight:550;display:flex}.workspace-nav a:hover{color:#303b50;background:#f6f7fb;text-decoration:none}.workspace-nav a[aria-current=page]{color:#4a5dc4;background:#eef1ff}.sidebar-bottom-nav{margin-top:auto;padding-top:32px}.sidebar-account{border-top:1px solid #edf0f5;align-items:center;gap:9px;margin-top:18px;padding-top:19px;display:flex}.avatar{color:#727fa2;background:#edf0f8;border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:.68rem;font-weight:650;display:inline-flex}.sidebar-account>div{flex-direction:column;gap:1px;min-width:0;display:flex}.sidebar-account strong{font-size:.72rem;font-weight:600}.sidebar-account>div>span{color:#657187;white-space:nowrap;text-overflow:ellipsis;font-size:.64rem;overflow:hidden}button.icon-button{color:#657187;background:0 0;border:0;padding:7px}.sidebar-account button{margin-left:auto}.workspace-main{grid-column:2;min-width:0}.workspace-topbar{background:#fff;border-bottom:1px solid #e8ebf1;align-items:center;gap:16px;height:73px;padding:0 40px;display:flex}.breadcrumbs{align-items:center;gap:12px;min-width:0;font-size:.78rem;display:flex}.breadcrumbs>span:first-child{color:#657187;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.breadcrumbs>span:nth-child(2){color:#c2c8d3}.breadcrumbs strong{font-weight:550}.workspace-role{color:#657187;margin-left:auto;font-size:.72rem}.workspace-content{min-width:0;max-width:1500px;margin:0 auto;padding:39px 40px 64px}.page-section{min-width:0}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.page-heading h1{letter-spacing:-.045em;margin:2px 0 7px;font-size:1.7rem;font-weight:650;line-height:1.3}.page-heading p{color:#657187;max-width:680px;margin:0;font-size:.83rem}.eyebrow{text-transform:uppercase;letter-spacing:.1em;color:#657187;font-size:.66rem;font-weight:600}h2{margin:0 0 12px;font-size:1rem;font-weight:600}.data-panel{background:#fff;border:1px solid #e4e8ef;border-radius:10px;min-width:0;overflow:hidden}.table-toolbar{border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:center;gap:18px;padding:20px;display:flex}.search-field{color:#a0a9b8;border:1px solid #e0e5ee;border-radius:7px;align-items:center;gap:9px;width:340px;max-width:100%;padding:0 12px;display:flex}.search-field input{outline-offset:5px;background:0 0;border:0;padding:9px 0}.search-field input::placeholder{color:#a0a9b8}.result-count{color:#657187;white-space:nowrap;font-size:.72rem}.data-table-wrap{overflow:auto}.data-table{border-collapse:collapse;width:100%;min-width:660px;font-size:.82rem}.data-table th{color:#657187;text-align:left;white-space:nowrap;background:#f7f8fb;padding:14px 20px;font-size:.72rem;font-weight:550}.data-table td{vertical-align:middle;border-bottom:1px solid #edf0f5;padding:19px 20px}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fcfcff}.record-link{color:#303a4d;align-items:center;gap:12px;min-width:160px;font-weight:600;display:flex}.record-icon{color:#7f8ac6;background:#f0f3ff;border-radius:6px;flex:none;justify-content:center;align-items:center;width:32px;height:34px;display:inline-flex}.record-icon .ui-icon{width:17px}.customer-avatar{color:#788e81;background:#eff3f0}.cell-secondary{color:#657187;margin-top:3px;font-size:.72rem;font-weight:400;display:block}.row-open{color:#a2aab7;display:inline-flex}.status-pill{white-space:nowrap;border-radius:6px;padding:4px 9px;font-size:.7rem;font-weight:550;display:inline-block}.status-open{color:#5263a7;background:#eff2ff}.status-approved{color:#357650;background:#edf8f1}.status-ordered{color:#85651e;background:#fff6e3}.count-chip{color:#657187;border:1px solid #e3e7ef;border-radius:5px;justify-content:center;min-width:28px;padding:2px 7px;font-size:.72rem;display:inline-flex}.empty-state{text-align:center;color:#657187;padding:56px 24px}.empty-state>.ui-icon{color:#b2bbcd;width:30px;height:30px;margin-bottom:12px}.empty-state h1,.empty-state h2{color:#596578;font-size:1rem}.empty-state p{max-width:520px;margin:8px auto 16px;font-size:.82rem}.empty-state.compact{padding:22px}.panel-heading{border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.panel-heading h2{margin:0}.record-form{background:#fff;border:1px solid #e4e8ef;border-radius:10px;max-width:900px;margin-bottom:24px;padding:24px}.record-form>.panel-heading{border:0;margin-bottom:24px;padding:0}.record-form p{color:#657187;font-size:.82rem}.form-grid{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:20px 0 0;padding:0;display:grid}.form-grid label,.link-form>label{color:#677386;font-size:.76rem;font-weight:500}.form-grid label input,.form-grid label select,.form-grid label textarea{margin-top:7px;display:block}.form-wide{grid-column:1/-1}.form-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.inline-form{align-items:stretch;gap:10px;margin-top:8px;display:flex}.inline-form select{flex:1;width:0}.inline-form button{flex:none}.link-form{margin-top:20px;padding:22px}.link-form p{font-size:.78rem}.back-link{color:#657187;margin-bottom:20px;font-size:.78rem;display:inline-block}.customer-detail-grid{grid-template-columns:minmax(220px,.8fr) minmax(0,1.7fr);align-items:start;gap:24px;display:grid}.contact-card{padding:24px}.contact-card dl,.settings-panel dl{margin:20px 0 0}.contact-card dl>div,.settings-panel dl>div{margin-top:20px}.contact-card dt,.settings-panel dt{color:#657187;margin-bottom:6px;font-size:.72rem}.contact-card dd,.settings-panel dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:.83rem}.linked-project-list{margin:0;padding:0;list-style:none}.linked-project-list a{color:#434e62;border-bottom:1px solid #edf0f5;align-items:center;gap:12px;padding:18px 22px;font-size:.83rem;font-weight:550;display:flex}.linked-project-list a>.ui-icon:last-child{color:#a0a9b8;margin-left:auto}.section-tabs{border-bottom:1px solid #e0e5ee;gap:28px;margin-bottom:28px;display:flex}.section-tabs a{color:#657187;padding:0 0 13px;font-size:.85rem}.section-tabs a[aria-current=page]{color:#4d5fc5;border-bottom:2px solid #6171d9}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.settings-panel{padding:26px}.settings-panel>p,.settings-note p{color:#657187;font-size:.81rem}.settings-panel label{color:#7d8798;flex-direction:column;gap:9px;max-width:260px;margin-top:24px;font-size:.78rem;display:flex}.settings-note{margin-bottom:24px}.member-admin>h4{color:#7b879a;margin:0 0 12px;font-size:.86rem}.member-admin>div[role=region]{background:#fff;border:1px solid #e4e8ef;border-radius:10px}.invite-form{grid-template-columns:minmax(0,1fr) 170px auto;gap:10px 16px;max-width:none;margin-top:26px;display:grid}.invite-form h4{grid-column:1/-1;margin:0 0 10px;font-size:1rem}.invite-form>label{color:#657187;font-size:.74rem}.invite-form>label:first-of-type{grid-area:2/1}.invite-form>label:nth-of-type(2){grid-area:2/2}.invite-form>input{grid-area:3/1}.invite-form>.role-select{grid-area:3/2}.invite-form>button{color:#fff;background:#4d5fd2;grid-area:3/3}.invite-form>p{grid-column:1/-1}.project-heading{align-items:center;gap:20px;margin:0 0 24px;display:flex}.project-heading h1{letter-spacing:-.035em;margin:0;font-size:1.5rem}.project-heading p{color:#657187;margin:3px 0 0;font-size:.79rem}.project-heading>button{color:#657187;padding:7px 10px;font-size:.74rem}.project-sections{border-bottom:1px solid #e1e6ef;gap:5px;margin:18px 0 22px;padding-bottom:8px;display:flex}.project-sections button{color:#657187;background:0 0;border-color:#0000}.project-sections button[aria-pressed=true]{color:#5a69bf;background:#edf0ff}.project-customer{background:#fff;border:1px solid #e2e7ef;border-radius:8px;margin:0 0 20px}.project-customer summary{cursor:pointer;color:#657187;justify-content:space-between;gap:15px;padding:12px 16px;font-size:.77rem;display:flex}.project-customer summary strong{color:#536077;font-weight:550}.project-customer-content{padding:0 16px 18px;font-size:.8rem}.project-customer-content form{margin-top:18px}.project-detail>section>ul{padding:0;list-style:none}.project-detail>section>ul>li{overflow-wrap:anywhere;background:#fff;border:1px solid #e4e8ef;border-radius:8px;margin-bottom:12px;padding:18px;font-size:.8rem}.project-detail h5{font-size:1rem}.page-status{color:#657187;padding:30px 0;font-size:.86rem}.skip-link{z-index:100;background:#fff;padding:10px;position:fixed;top:-100px;left:250px}.skip-link:focus{top:10px}.menu-toggle,.mobile-sidebar{display:none}.mobile-sidebar[open]{background:#fff;border:0;flex-direction:column;width:min(300px,100vw - 35px);height:100dvh;max-height:none;margin:0;padding:28px 20px 20px;display:flex;position:fixed;inset:0 auto 0 0}.mobile-sidebar::backdrop{background:#1d29455c}.dialog-close{color:#8b95a6;border:0;padding:3px 10px;font-size:1.4rem;position:absolute;top:8px;right:9px}@media (width<=1100px){.workspace-content{padding:32px 26px 50px}.workspace-topbar{padding:0 26px}.customer-detail-grid{grid-template-columns:minmax(200px,1fr) minmax(0,1.5fr)}}@media (width<=960px){.workspace-layout{grid-template-columns:minmax(0,1fr)}.workspace-main{grid-column:1}.workspace-sidebar{display:none}.menu-toggle{display:inline-flex}.skip-link{left:16px}.workspace-role{display:none}}@media (width<=650px){.workspace-topbar{gap:9px;height:62px;padding:0 13px}.workspace-content{padding:25px 14px 40px}.page-heading{flex-wrap:wrap;align-items:flex-start;gap:16px;margin-bottom:23px}.page-heading h1{font-size:1.45rem}.table-toolbar{flex-wrap:wrap;gap:10px;padding:15px}.search-field{width:100%}.form-grid,.settings-grid,.customer-detail-grid{grid-template-columns:minmax(0,1fr)}.record-form,.settings-panel,.contact-card{padding:18px}.form-wide{grid-column:1}.project-heading{flex-wrap:wrap;gap:10px}.project-heading h1{font-size:1.25rem}.invite-form{flex-direction:column;gap:9px;display:flex}.invite-form>label{margin-top:7px}.invite-form>button{margin-top:12px}.inline-form{flex-wrap:wrap}.inline-form select{flex:100%;width:100%}.inline-form button{margin-left:auto}}.upload-panel>p{color:#657187;font-size:.83rem}.upload-form{max-width:none}.upload-form fieldset{border:0;grid-template-columns:minmax(130px,.65fr) minmax(0,1fr);align-items:center;gap:9px 20px;margin:0;padding:0;display:grid}.upload-form button{grid-column:2;justify-self:end;margin-top:9px}.upload-form label{color:#657187;font-size:.78rem}@media (width<=650px){.upload-form fieldset{grid-template-columns:minmax(0,1fr);gap:8px}.upload-form label:not(:first-child){margin-top:10px}.upload-form button{grid-column:1}}.page-heading>div,.project-heading>div,.project-customer summary>span:first-child{overflow-wrap:anywhere;min-width:0}.project-customer summary>span:last-child,.breadcrumbs strong{flex:none}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23657187' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;background-size:16px;padding-right:36px}.role-select{vertical-align:middle;min-width:0;display:inline-flex}button.role-trigger{white-space:nowrap;border:1px solid #0000;border-radius:6px;gap:8px;width:auto;min-width:132px;height:32px;padding:5px 9px;font-size:.76rem;font-weight:550}.role-admin{--role-ink:#5b57a4;--role-surface:#f1effb}.role-office{--role-ink:#426c8a;--role-surface:#edf4fa}.role-installer{--role-ink:#4b7565;--role-surface:#edf6f1}button.role-trigger{color:var(--role-ink);background:var(--role-surface)}button.role-trigger:hover:enabled,button.role-trigger[aria-expanded=true]{background:var(--role-surface);border-color:currentColor}.role-dot{background:var(--role-ink);border-radius:50%;flex:none;width:6px;height:6px}.role-trigger .ui-icon{opacity:.65;width:14px;height:14px;margin-left:auto}.role-menu{background:#fff;border:1px solid #e0e5ee;border-radius:10px;width:200px;max-width:calc(100vw - 16px);margin:0;padding:6px;position:fixed;inset:auto;box-shadow:0 8px 28px #24325720,0 2px 5px #2432570a}.role-menu:popover-open{flex-direction:column;gap:2px;display:flex}button.role-option{border:0;border-radius:5px;justify-content:flex-start;gap:10px;width:100%;padding:9px 10px;font-size:.8rem;font-weight:450}button.role-option[aria-selected=true]{background:#f5f6fb;font-weight:550}button.role-option:hover:enabled{background:#f1f3fa}button.role-option:focus-visible{outline-offset:-2px}.role-option>.ui-icon{color:#6573bc;width:15px;height:15px;margin-left:auto}.invite-form>.role-select{width:100%}.invite-form .role-trigger{width:100%;height:41px}button.refresh-button{color:#657187;background:0 0;border:1px solid #0000;border-radius:6px;gap:6px;padding:6px 9px;font-size:.76rem;font-weight:500;line-height:1.4}button.refresh-button:hover:enabled{color:#3e4d66;background:#f3f5fa;border-color:#e4e8ef}.refresh-button .ui-icon{width:15px;height:15px}.file-picker{background:#fbfcfe;border:1px dashed #dce2ec;border-radius:8px;align-items:center;gap:14px;min-width:0;padding:12px;display:flex}.upload-form .file-choose-button{white-space:nowrap;color:#4b5971;grid-column:auto;margin:0;padding:8px 11px;font-size:.78rem;box-shadow:0 1px 2px #1e2e4505}.file-choose-button .ui-icon{color:#7b86b1;width:16px;height:16px}.file-selection{color:#657187;overflow-wrap:anywhere;min-width:0;font-size:.78rem}@media (width<=650px){.file-picker{flex-direction:column;align-items:flex-start;gap:10px}}@media (forced-colors:active){select{appearance:auto;background-image:none}button.role-trigger{border-color:buttontext}.role-dot{background:buttontext}}.project-upload{min-width:0;margin:18px 0}.project-upload>summary{cursor:pointer;color:#35465a;background:#fff;border:1px solid #dce3ea;border-radius:7px;padding:8px 13px;font-size:.83rem;font-weight:550;display:inline-flex}.project-upload[open]>summary{margin-bottom:12px}.project-reading{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:10px;margin:16px 0;padding:0;list-style:none;display:grid}.project-reading>li{background:#fff;border:1px solid #e1e7ed;border-radius:9px;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;padding:12px 14px;font-size:.78rem;display:flex}.project-reading-document{flex-direction:column;flex:140px;gap:4px;min-width:0;display:flex}.project-reading-document>span{color:#66758a;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-reading .reading-incomplete,.project-reading .reading-unplaced{flex-basis:100%;margin:0}.reading-failure{color:#a53339}.reading-retry{padding:5px 9px;font-size:.75rem}.project-reading-progress{margin:12px 0 18px}.project-reading-progress>summary{cursor:pointer;color:#425466;padding:8px 0;font-size:.8rem}.project-reading-progress>summary>span{color:#64748b;margin-left:8px}.home-page{max-width:1180px;margin:0 auto}.home-topline{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.home-hero{background:linear-gradient(112deg,#f0edfc,#f6f5fc 58%,#eeedf9);border:1px solid #e5e0f4;border-radius:20px;grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr);align-items:center;gap:24px;min-height:290px;padding:40px 44px;display:grid;position:relative;overflow:hidden}.home-hero-content{z-index:1;position:relative}.home-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#807398;align-items:center;gap:8px;font-size:.64rem;font-weight:650;display:inline-flex}.home-eyebrow>span{background:#ab91d1;border-radius:50%;width:6px;height:6px}.home-hero h1{color:#302b43;letter-spacing:-.055em;max-width:430px;margin:16px 0;font-size:clamp(1.8rem,3.1vw,2.5rem);font-weight:650;line-height:1.15}.home-hero p{color:#7a7489;max-width:410px;margin:0;font-size:.85rem;line-height:1.7}.home-actions{flex-wrap:wrap;align-items:center;gap:22px;margin-top:26px;display:flex}.home-actions .primary-button{background:#6b55a0;border-color:#6b55a0;border-radius:8px;padding:11px 17px;font-size:.8rem;box-shadow:0 4px 8px #4834730d}.home-actions .primary-button:hover:enabled{background:#5a458d;border-color:#5a458d}.home-browse{color:#746586;align-items:center;gap:9px;font-size:.78rem;font-weight:550;display:inline-flex}.home-browse svg{width:16px;height:16px}.home-illustration{justify-self:center;width:255px;height:210px;position:relative}.home-illustration:before{content:"";background:radial-gradient(#dcd1f280,#0000 70%);border-radius:50%;position:absolute;inset:5px -25px}.home-plan{background:#fff;border:1px solid #c3b6dd;border-radius:11px;width:132px;height:161px;position:absolute;top:29px;left:50px;transform:rotate(8deg);box-shadow:0 18px 28px #5e467c10}.home-plan-back{background:#e7e0f2;top:19px;left:26px;transform:rotate(-11deg)}.home-plan-front{grid-template-columns:1fr 1fr;gap:7px;padding:21px 15px;display:grid}.home-plan-front>span{background:linear-gradient(135deg,#f8f5fc,#ede7f5);border:1px solid #d8cde9;border-radius:2px}.home-plan-label{background:#fff;border:1px solid #ded5ec;border-radius:8px;gap:4px;width:104px;height:47px;padding:11px 13px;display:grid;position:absolute;top:142px;right:9px;transform:rotate(-3deg);box-shadow:0 8px 18px #5e467c0e}.home-plan-label i{background:#ddd3eb;border-radius:2px;width:68%;height:4px;display:block}.home-plan-label i:nth-child(2){background:#ebe5f3;width:90%}.home-plan-label i:nth-child(3){background:#e0eae5;width:45%}.home-orbit{background:#c5b4df;border-radius:50%;width:7px;height:7px;position:absolute;top:27px;right:30px}.home-orbit-b{background:#b2cfc6;width:4px;height:4px;top:auto;bottom:11px;left:15px}.home-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0 32px;display:grid}.home-stat{background:#fff;border:1px solid #e5e7ee;border-radius:12px;align-items:center;gap:15px;padding:20px 24px;display:flex}.home-stat-mark{color:#9785b8;background:#f3f0fa;border-radius:11px;flex-shrink:0;place-items:center;width:41px;height:41px;display:grid}.home-stat-approved .home-stat-mark{color:#7a9a8c;background:#f0f6f2}.home-stat-ordered .home-stat-mark{color:#8a9eaf;background:#f0f4f8}.home-stat>div{gap:2px;display:grid}.home-stat strong{letter-spacing:-.04em;color:#3e3a4b;font-size:1.5rem;font-weight:600;line-height:1.2}.home-stat>div>span{color:#726a80;font-size:.72rem}.home-content-grid{grid-template-columns:minmax(0,1.65fr) minmax(240px,1fr);align-items:start;gap:24px;display:grid}.home-recent,.home-guide{min-width:0}.home-section-heading{justify-content:space-between;align-items:center;gap:12px;margin:0 0 15px;display:flex}.home-section-heading h2,.home-guide h2{letter-spacing:-.02em;color:#484253;margin:0;font-size:.95rem;font-weight:600}.home-section-heading>span{color:#797181;white-space:nowrap;font-size:.68rem}.home-projects{background:#fff;border:1px solid #e5e7ee;border-radius:12px;overflow:hidden}.home-project{color:inherit;align-items:center;gap:13px;min-width:0;padding:18px 20px;display:flex}.home-project+.home-project{border-top:1px solid #eff0f5}.home-project:hover{background:#faf9fd;text-decoration:none}.home-project-icon{color:#b0a6c3;background:#faf8fd;border:1px solid #eeeaf4;border-radius:7px;flex-shrink:0;place-items:center;width:36px;height:39px;display:grid}.home-project-name{flex:1;gap:5px;min-width:0;display:grid}.home-project-name strong{color:#5a5369;white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:550;overflow:hidden}.home-project-name>span{color:#746d80;white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;overflow:hidden}.home-project-meta{flex-shrink:0;justify-items:end;gap:6px;margin-left:auto;display:grid}.home-project-meta .status-pill{padding:3px 7px;font-size:.59rem}.home-project-meta time{color:#736b7f;font-size:.62rem}.home-project>svg{color:#bbb4c6;width:14px}.home-guide{background:#f6f7fa;border:1px solid #e9ebf1;border-radius:12px;padding:23px}.home-guide>.eyebrow{color:#7c7487;font-size:.58rem}.home-guide h2{margin-top:8px}.home-guide ol{gap:22px;margin:24px 0 20px;padding:0;list-style:none;display:grid}.home-guide li{align-items:flex-start;gap:12px;display:flex}.home-guide li>span{color:#b2a7c5;padding-top:1px;font-size:.65rem;font-weight:600}.home-guide h3{color:#746b83;margin:0 0 4px;font-size:.74rem;font-weight:550}.home-guide li p{color:#777181;margin:0;font-size:.66rem;line-height:1.65}.home-guide-note{color:#777080;border-top:1px solid #e5e3eb;align-items:flex-start;gap:8px;margin:0;padding-top:16px;font-size:.63rem;line-height:1.6;display:flex}.home-guide-note svg{width:13px;height:13px;margin-top:2px}.home-empty{text-align:center;color:#a195b3;background:#fff;border:1px dashed #dbd7e5;border-radius:12px;padding:36px 28px}.home-empty h3{color:#70647d;font-size:.9rem;font-weight:550}.home-empty p{color:#756a80;max-width:300px;margin-inline:auto;font-size:.78rem}.project-create-dialog{box-sizing:border-box;border:1px solid #e1ddeb;border-radius:15px;width:min(600px,100vw - 32px);max-height:calc(100dvh - 32px);padding:0}.project-create-dialog::backdrop{background:#25203a55}.project-create-dialog .record-form{border:0;margin:0;padding:28px}.project-create-dialog h2{margin-top:0}.topbar-home{color:#7b68ae;display:none}@media (width<=1050px){.home-hero{grid-template-columns:minmax(0,1.5fr) minmax(170px,1fr);gap:8px;padding:32px}.home-illustration{transform:scale(.85)}.home-content-grid{grid-template-columns:minmax(0,1fr)}.home-guide ol{grid-template-columns:repeat(3,minmax(0,1fr))}.home-stat{padding:18px}}@media (width<=760px){.topbar-home{display:inline-flex}.home-hero{grid-template-columns:minmax(0,1fr);padding:28px}.home-hero h1{max-width:320px;font-size:1.85rem}.home-illustration{display:none}.home-stats{gap:9px;margin:16px 0 26px}.home-stat{padding:14px;display:block}.home-stat-mark{border-radius:8px;width:30px;height:30px;margin-bottom:11px}.home-stat-mark svg{width:16px;height:16px}.home-stat strong{font-size:1.3rem}.home-stat>div>span{font-size:.66rem}.home-guide ol{grid-template-columns:minmax(0,1fr)}.home-project{gap:10px;padding:16px 14px}.home-project>svg{display:none}.home-section-heading{align-items:baseline}}@media (width<=380px){.home-hero{padding:24px 20px}.home-actions{gap:16px}.home-stats{gap:6px}.home-stat{padding:12px 10px}.home-stat>div>span{font-size:.61rem}.home-section-heading{flex-wrap:wrap}.home-project{gap:8px}.home-project-icon{display:none}}.home-content-grid-solo{grid-template-columns:minmax(0,1fr)}.auth-shell{background:linear-gradient(110deg,#f4f6fc 0%,#f8f9fd 45%,#fff 75%);flex-direction:column;min-height:100dvh;display:flex}.auth-header{justify-content:space-between;align-items:center;gap:20px;width:100%;padding:30px 48px;display:flex}.auth-brand{letter-spacing:-.06em;align-items:center;gap:10px;font-size:1.4rem;font-weight:750;display:flex}.auth-main{flex:1;grid-template-columns:minmax(0,1fr) 420px;align-items:center;gap:90px;width:min(1100px,100%);margin:0 auto;padding:54px 40px 72px;display:grid}.auth-intro{max-width:450px;padding-bottom:14px}.auth-intro h2{letter-spacing:-.055em;text-wrap:balance;margin:0 0 20px;font-size:clamp(2.2rem,3.5vw,3.1rem);font-weight:600;line-height:1.14}.auth-intro>p{color:#657187;max-width:370px;margin:0;font-size:.91rem;line-height:1.8}.auth-documents{align-items:center;gap:14px;width:345px;max-width:100%;margin-top:44px;display:flex}.auth-document{background:#ffffffc9;border:1px solid #e1e6f2;border-radius:9px;flex:1;min-width:0;padding:14px 12px 12px;box-shadow:0 5px 15px #35427704}.auth-document-line{background:#dee4f4;border-radius:3px;width:28px;height:3px;margin-bottom:14px;display:block}.auth-document svg{color:#a8b3d2;width:100%;display:block}.auth-document>span:last-child{text-align:center;color:#657187;margin-top:8px;font-size:.66rem;display:block}.auth-document-quote{background:#fff;border-color:#cdd6f1;transform:translateY(-10px)}.auth-document-quote svg{color:#788bc9}.auth-entry{min-width:0}.auth-card{background:#fff;border:1px solid #e3e7ef;border-radius:16px;padding:36px;box-shadow:0 12px 40px #23355706,0 2px 6px #23355703}.auth-card h1{letter-spacing:-.04em;margin:0 0 12px;font-size:1.65rem;font-weight:600;line-height:1.3}.auth-description{color:#657187;margin:0 0 28px;font-size:.84rem;line-height:1.7}.auth-form{flex-direction:column;display:flex}.auth-form>label{color:#445067;margin-bottom:8px;font-size:.77rem;font-weight:550}.auth-email{align-items:center;display:flex;position:relative}.auth-email>.ui-icon{color:#8b95aa;pointer-events:none;width:17px;height:17px;position:absolute;left:13px}.auth-email input{border-color:#dbe1ec;border-radius:8px;padding:12px 13px 12px 40px;font-size:.85rem;box-shadow:0 1px 2px #23355703}.auth-email input::placeholder{color:#6d788c;opacity:1}.auth-form>button{border-radius:8px;min-height:45px;margin-top:16px;font-size:.83rem}.auth-form>button>.ui-icon{width:16px;height:16px}.auth-message{color:#365b49;overflow-wrap:anywhere;background:#f5faf7;border:1px solid #dce9e2;border-radius:8px;align-items:flex-start;gap:10px;margin-top:22px;padding:14px;font-size:.78rem;line-height:1.65;display:flex}.auth-message>.ui-icon{width:17px;height:17px;margin-top:3px}.auth-message p{margin:0}.auth-message strong{margin-bottom:4px;font-weight:600;display:block}.auth-message-warning{color:#785e30;background:#fffbf3;border-color:#efe3cc}.auth-account>p{color:#657187;margin:22px 0;font-size:.84rem;line-height:1.7}.auth-signout{width:100%;margin-top:12px}.auth-loading{color:#657187;justify-content:center;align-items:center;gap:10px;min-height:320px;font-size:.85rem;display:flex}.auth-footer{color:#68758a;justify-content:center;align-items:center;gap:7px;padding:20px 24px 28px;font-size:.71rem;display:flex}.auth-footer .ui-icon{width:13px;height:13px}@media (width<=1000px){.auth-main{grid-template-columns:minmax(0,1fr) 390px;gap:44px}.auth-card{padding:30px}}@media (width<=800px){.auth-shell{background:#f8f9fd}.auth-header{padding:24px}.auth-main{justify-content:center;padding:32px 24px 48px;display:flex}.auth-intro{display:none}.auth-email input{font-size:1rem}.auth-entry{width:420px;max-width:100%}}@media (width<=420px){.auth-header{gap:12px;padding:22px 20px}.auth-brand{gap:7px;font-size:1.25rem}.auth-brand .brand-mark svg{width:24px;height:24px}.auth-main{align-items:flex-start;padding:20px 16px 32px}.auth-card{border-radius:12px;padding:28px 22px}.auth-card h1{font-size:1.5rem}.auth-description{font-size:.82rem}.auth-footer{padding:16px 20px 24px;font-size:.68rem}}.page-skeleton{gap:26px;animation:.2s ease-out .15s both loading-appear;display:grid}.page-skeleton-compact{padding:14px 0}.skeleton-heading{gap:10px;max-width:520px;display:grid}.skeleton-line{background:linear-gradient(90deg,#eef1f6 0%,#f7f8fb 50%,#eef1f6 100%) 0 0/200% 100%;border-radius:6px;height:12px;animation:1.4s ease-in-out infinite skeleton-shimmer;display:block}.skeleton-eyebrow{width:90px;height:10px}.skeleton-title{border-radius:8px;width:260px;max-width:70%;height:26px}.skeleton-text{width:420px;max-width:100%}.skeleton-panel{background:#fff;border:1px solid #e4e8ef;border-radius:10px;padding:6px 20px;display:grid}.skeleton-row{border-bottom:1px solid #f0f2f6;align-items:center;gap:14px;padding:14px 0;display:flex}.skeleton-row:last-child{border-bottom:0}.skeleton-icon{border-radius:8px;flex:none;width:28px;height:28px}.skeleton-cell{flex:1;max-width:280px}.skeleton-cell-short{width:90px;margin-left:auto}.refresh-status{z-index:20;color:#4b5568;pointer-events:none;background:#fff;border:1px solid #e4e8ef;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:.75rem;animation:.2s ease-out .35s both loading-appear;display:inline-flex;position:fixed;top:85px;right:24px;box-shadow:0 4px 14px #2335571a}.refresh-status-dot{background:#4d5fd2;border-radius:50%;width:8px;height:8px;animation:1s ease-in-out infinite alternate refresh-pulse}.refresh-status-failed{color:#9b2c25;pointer-events:auto;border-color:#f0c9c6;animation:none}.refresh-status-failed button{padding:3px 10px;font-size:.72rem}@keyframes loading-appear{0%{opacity:0}to{opacity:1}}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes refresh-pulse{0%{opacity:.35}to{opacity:1}}@media (width<=650px){.refresh-status{top:72px;right:12px}}@media (prefers-reduced-motion:reduce){.skeleton-line,.refresh-status-dot{animation:none}}@media print{.refresh-status{display:none}}
