:root{--ink:#102b2d;--ink-soft:#315052;--deep:#0c272a;--deep-2:#12383a;--teal:#19a58f;--teal-dark:#087965;--mint:#dff4ed;--paper:#f5f3ec;--surface:#ffffff;--line:#d9dfd9;--muted:#687776;--danger:#a13f39;--shadow:0 18px 50px rgba(15,43,45,0.09)}*{box-sizing:border-box}body,html{background:var(--paper)}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}button,input,select,textarea{font:inherit}a,button,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.brand-lockup{display:flex;align-items:center;gap:12px;letter-spacing:.04em}.brand-lockup div{display:grid;grid-gap:2px;gap:2px}.brand-lockup strong{font-size:.94rem}.brand-lockup small{color:#8fb0ad;font-size:.66rem;letter-spacing:.15em;text-transform:uppercase}.brand-lockup--light{color:white}.brand-mark{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:11px;color:#b9f3e7;background:rgba(255,255,255,.08);font-family:Georgia,Times New Roman,serif;font-size:1.4rem}.eyebrow{margin:0 0 12px;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.eyebrow--accent{color:var(--teal-dark)}.muted{color:var(--muted)}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,.95fr) minmax(440px,1.05fr);background:var(--surface)}.auth-intro{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:clamp(34px,6vw,74px);color:white;background:radial-gradient(circle at 82% 20%,rgba(24,165,142,.3),transparent 26%),linear-gradient(145deg,#0a2528,#0d3133 58%,#0f4644)}.auth-intro:after,.auth-intro:before{position:absolute;content:"";border:1px solid rgba(184,242,230,.14);border-radius:50%}.auth-intro:before{width:430px;height:430px;right:-250px;bottom:-150px}.auth-intro:after{width:260px;height:260px;right:-140px;bottom:-65px}.auth-copy{position:relative;z-index:1;max-width:620px}.auth-copy .eyebrow{color:#86d8c9}.auth-copy h1{max-width:600px;margin:0 0 24px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.55rem,5.1vw,5.7rem);font-weight:400;line-height:.97;letter-spacing:-.045em}.auth-copy>p:last-child{max-width:560px;margin:0;color:#c5d8d6;font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.7}.auth-footnote{position:relative;z-index:1;margin:0;color:#7fa39f;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.auth-panel{display:grid;min-height:100vh;place-items:center;padding:48px;background:linear-gradient(rgba(16,43,45,.035) 1px,transparent 0),linear-gradient(90deg,rgba(16,43,45,.035) 1px,transparent 0),#faf9f5;background-size:32px 32px}.login-card{width:min(100%,440px);padding:clamp(32px,5vw,56px);border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.95);box-shadow:var(--shadow)}.login-card h2{margin:0 0 8px;font-family:Georgia,Times New Roman,serif;font-size:2.7rem;font-weight:400;letter-spacing:-.035em}.login-card>.muted{margin:0 0 32px;line-height:1.55}.form-stack{display:grid;grid-gap:19px;gap:19px}.field{display:grid;grid-gap:8px;gap:8px}.field span{font-size:.8rem;font-weight:700}.field input,.field select,.field textarea,.topbar select{width:100%;min-height:48px;border:1px solid #cfd8d5;border-radius:10px;outline:none;color:var(--ink);background:white;transition:border-color .16s ease,box-shadow .16s ease}.field input{padding:0 14px}.field select{padding:0 36px 0 14px}.field textarea{min-height:84px;padding:12px 14px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus,.topbar select:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(25,165,143,.13)}.field input::placeholder{color:#9aa7a4}.form-error{margin:-4px 0 0;padding:11px 13px;border-left:3px solid var(--danger);color:var(--danger);background:#fbefed;font-size:.82rem;line-height:1.45}.primary-button{min-height:50px;border:0;border-radius:10px;color:white;background:var(--teal-dark);cursor:pointer;font-weight:700;box-shadow:0 8px 20px rgba(8,121,101,.18);transition:transform .16s ease,background .16s ease}.primary-button:hover:not(:disabled){transform:translateY(-1px);background:#076e5d}.primary-button:disabled{cursor:not-allowed;opacity:.62}.primary-button--compact{min-height:44px;padding:0 20px;white-space:nowrap}.link-button{display:inline-flex;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content}.secondary-button{min-height:44px;padding:0 15px;border:1px solid #bdd4cf;border-radius:9px;color:var(--teal-dark);background:white;cursor:pointer;font-weight:700;font-size:.79rem}.secondary-button:hover{border-color:var(--teal);background:#f2fbf8}.security-note{display:flex;gap:10px;align-items:flex-start;margin-top:28px;padding-top:22px;border-top:1px solid var(--line);color:var(--muted);font-size:.75rem;line-height:1.5}.security-note span{flex:0 0 auto;width:8px;height:8px;margin-top:4px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px var(--mint)}.app-frame{min-height:100vh;display:grid;grid-template-columns:270px minmax(0,1fr)}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:28px 20px 20px;color:white;background:var(--deep)}.sidebar-brand{padding:0 9px 34px}.side-nav{display:grid;grid-gap:5px;gap:5px}.side-nav>p{margin:0 12px 9px;color:#789997;font-size:.65rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.side-nav__item{display:grid;grid-template-columns:10px 1fr auto;grid-gap:10px;gap:10px;align-items:center;min-height:45px;padding:0 12px;border-radius:9px;color:#a9bfbd;font-size:.87rem}.side-nav__item[aria-disabled=true]{cursor:default}.side-nav__item small{color:#64817f;font-size:.59rem;text-transform:uppercase}.side-nav__item.is-active{color:white;background:rgba(255,255,255,.09)}.nav-dot{width:6px;height:6px;border:1px solid #71928f;border-radius:50%}.is-active .nav-dot{border-color:var(--teal);background:var(--teal);box-shadow:0 0 0 4px rgba(25,165,143,.16)}.sidebar-footer{display:grid;grid-template-columns:35px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;margin-top:auto;padding:18px 8px 2px;border-top:1px solid rgba(255,255,255,.1)}.sidebar-footer>div{min-width:0;display:grid;grid-gap:3px;gap:3px}.sidebar-footer strong{overflow:hidden;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer small{color:#759592;font-size:.61rem}.avatar{display:grid;width:35px;height:35px;place-items:center;border-radius:9px;color:#d4fbf3;background:#18514e;font-size:.68rem;font-weight:700}.text-button{border:0;color:#8aaba7;background:transparent;cursor:pointer;font-size:.68rem}.text-button:hover{color:white}.app-main{min-width:0}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:30;min-height:74px;display:flex;justify-content:space-between;align-items:center;padding:12px clamp(22px,4vw,54px);border-bottom:1px solid var(--line);background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar>div{display:flex;gap:10px;align-items:baseline}.topbar p{margin:0;color:var(--muted);font-size:.69rem;text-transform:uppercase;letter-spacing:.1em}.topbar strong{font-size:.85rem}.topbar form{display:flex;gap:8px}.topbar select{min-height:36px;padding:0 34px 0 10px;font-size:.82rem}.topbar form button{border:1px solid var(--line);border-radius:8px;color:var(--ink);background:white;cursor:pointer;font-size:.75rem}.environment-badge,.phase-pill{border:1px solid #bddfd8;border-radius:999px;color:var(--teal-dark);background:var(--mint);font-size:.67rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.environment-badge{padding:7px 11px}.mobile-brand,.mobile-nav{display:none}.dashboard{width:min(100%,1360px);margin:0 auto;padding:clamp(34px,5vw,68px) clamp(22px,4vw,54px) 70px}.welcome-row{display:flex;justify-content:space-between;gap:32px;align-items:flex-end;margin-bottom:38px}.welcome-row h1{max-width:760px;margin:0 0 14px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.3rem,4.5vw,4.5rem);font-weight:400;line-height:1.02;letter-spacing:-.045em}.welcome-row>div>p:last-child{margin:0;color:var(--muted)}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px;margin-bottom:26px}.metric-card{min-height:165px;display:flex;flex-direction:column;padding:22px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.78)}.metric-card--feature{color:white;border-color:var(--deep-2);background:var(--deep-2)}.metric-card p{margin:0;color:var(--muted);font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.metric-card--feature p,.metric-card--feature span{color:#a8c6c2}.metric-card strong{margin:auto 0 8px;font-family:Georgia,Times New Roman,serif;font-size:2.2rem;font-weight:400}.metric-card .metric-card__role{font-family:Arial,Helvetica,sans-serif;font-size:1.4rem;font-weight:700}.metric-card span{color:var(--muted);font-size:.75rem}.foundation-panel{border:1px solid var(--line);border-radius:17px;overflow:hidden;background:var(--surface);box-shadow:0 12px 35px rgba(16,43,45,.05)}.panel-heading{display:flex;justify-content:space-between;gap:22px;align-items:center;padding:27px 30px;border-bottom:1px solid var(--line)}.panel-heading .eyebrow{margin-bottom:8px}.panel-heading h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.8rem;font-weight:400}.phase-pill{padding:8px 12px;white-space:nowrap}.module-list{padding:0 30px}.module-row{display:grid;grid-template-columns:45px minmax(0,1fr) auto;grid-gap:18px;gap:18px;align-items:center;padding:22px 0;border-bottom:1px solid #e8ece8}.module-row:last-child{border-bottom:0}.module-row>span{color:var(--teal-dark);font-family:Georgia,Times New Roman,serif;font-size:1.25rem}.module-row h3{margin:0 0 5px;font-size:.91rem}.module-row p,.module-row small{margin:0;color:var(--muted);font-size:.76rem;line-height:1.5}.workspace-page{width:min(100%,1360px);min-height:calc(100vh - 74px);margin:0 auto;padding:clamp(34px,5vw,64px) clamp(22px,4vw,54px) 72px}.workspace-page--form{width:min(100%,1240px)}.workspace-header{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:32px}.quote-detail-header h1,.workspace-header h1{margin:0 0 10px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.35rem,4vw,4.1rem);font-weight:400;line-height:1;letter-spacing:-.045em}.quote-detail-header>div>p:last-child,.workspace-header>div>p:last-child{margin:0;color:var(--muted);line-height:1.55}.back-link{display:inline-block;margin-bottom:19px;color:var(--teal-dark);font-size:.78rem;font-weight:700}.success-banner{margin:0 0 22px;padding:12px 15px;border-left:3px solid var(--teal);color:#146856;background:var(--mint);font-size:.82rem}.management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:15px;gap:15px;margin-bottom:26px}.create-panel{border:1px solid var(--line);border-radius:13px;background:white}.create-panel--wide{margin-bottom:26px}.create-panel summary{padding:17px 20px;color:var(--teal-dark);cursor:pointer;font-size:.83rem;font-weight:700;list-style-position:inside}.create-panel[open] summary{border-bottom:1px solid var(--line)}.compact-form{padding:22px}.compact-form,.form-grid{display:grid;grid-gap:15px;gap:15px}.form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid--4{grid-template-columns:.7fr 1.4fr .75fr .85fr}.form-grid__wide{grid-column:1/-1}.record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.record-card{padding:24px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.84)}.record-card__top{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.record-card__top>div{display:grid;grid-template-columns:8px 1fr;grid-gap:10px;gap:10px;align-items:center}.record-card__top h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:400}.record-card__top>span{color:var(--muted);font-size:.71rem}.status-dot{width:7px;height:7px;border-radius:50%;background:#98a4a1}.status-dot--active{background:var(--teal);box-shadow:0 0 0 4px var(--mint)}.record-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin:22px 0}.record-details div{min-width:0}.document-meta span,.record-details dt,.scope-block>span,.site-list>p,.version-note>span{margin:0 0 5px;color:var(--muted);font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.record-details dd{overflow:hidden;margin:0;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.site-list{padding-top:18px;border-top:1px solid #e7ece8}.site-list>p{margin-bottom:9px}.site-list>div{display:flex;justify-content:space-between;gap:15px;padding:8px 0;font-size:.77rem}.empty-inline,.site-list>div span{color:var(--muted)}.empty-state{grid-column:1/-1;display:grid;justify-items:center;padding:60px 24px;border:1px dashed #bdcac6;border-radius:16px;text-align:center;background:rgba(255,255,255,.45)}.empty-state>span{color:var(--teal-dark);font-size:1.4rem}.empty-state h2,.empty-state>span{font-family:Georgia,Times New Roman,serif}.empty-state h2{margin:12px 0 7px;font-size:1.8rem;font-weight:400}.empty-state p{margin:0 0 20px;color:var(--muted)}.header-stat{min-width:150px;padding:15px 18px;border-left:2px solid var(--teal);background:var(--mint)}.header-stat span,.header-stat strong{display:block}.header-stat strong{font-family:Georgia,Times New Roman,serif;font-size:1.8rem;font-weight:400}.header-stat span{color:var(--muted);font-size:.69rem}.data-table-wrap{overflow-x:auto;max-width:100%;border:1px solid var(--line);border-radius:14px;background:white;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-gutter:stable}.data-table{width:100%;border-collapse:collapse;font-size:.79rem}.data-table th{padding:13px 16px;color:var(--muted);background:#f2f4ef;font-size:.64rem;letter-spacing:.08em;text-align:left;text-transform:uppercase}.data-table td{padding:16px;border-top:1px solid #e7ece8;line-height:1.45}.table-category{display:block;margin-bottom:4px;color:var(--teal-dark);font-size:.62rem;font-weight:700;text-transform:uppercase}.money-cell{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.empty-table{padding:36px 20px;color:var(--muted);text-align:center;font-size:.8rem}.quote-list{display:grid;grid-gap:9px;gap:9px}.quote-list-row{display:grid;grid-template-columns:140px minmax(220px,1fr) 145px 145px 90px;grid-gap:18px;gap:18px;align-items:center;min-height:82px;padding:16px 20px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.86);transition:border-color .15s ease,transform .15s ease}.quote-list-row:hover{transform:translateY(-1px);border-color:#a9cbc4}.quote-number,.quote-value{display:grid;grid-gap:4px;gap:4px}.quote-number span{font-size:.76rem;font-weight:800}.quote-list-row time,.quote-number small,.quote-summary p,.quote-value small{color:var(--muted);font-size:.68rem}.quote-summary h2{margin:0 0 5px;overflow:hidden;font-size:.88rem;text-overflow:ellipsis;white-space:nowrap}.quote-summary p{margin:0}.quote-value{text-align:right}.quote-value strong{font-family:Georgia,Times New Roman,serif;font-size:1.03rem;font-weight:400}.status-badge{display:inline-flex;width:-moz-fit-content;width:fit-content;padding:6px 9px;border-radius:999px;color:#536360;background:#e8ece9;font-size:.63rem;font-weight:700}.status-badge--draft{color:#58625f;background:#e9ecea}.status-badge--ready_for_review{color:#8a5a10;background:#fff0cf}.status-badge--changes_requested,.status-badge--rejected{color:#913d37;background:#fae6e3}.status-badge--accepted,.status-badge--approved{color:#08715f;background:var(--mint)}.status-badge--sent{color:#355d88;background:#e3edf8}.quote-form{display:grid;grid-gap:18px;gap:18px}.form-section{padding:clamp(22px,3vw,34px);border:1px solid var(--line);border-radius:16px;background:white}.section-title{display:grid;grid-template-columns:40px minmax(0,1fr);grid-gap:13px;gap:13px;align-items:start;margin-bottom:25px}.section-title--with-action{grid-template-columns:40px minmax(0,1fr) auto}.section-title>span{color:var(--teal-dark);font-size:1.22rem}.section-title h2,.section-title>span{font-family:Georgia,Times New Roman,serif}.section-title h2{margin:0 0 4px;font-size:1.45rem;font-weight:400}.section-title p{margin:0;color:var(--muted);font-size:.75rem}.quote-items{display:grid;grid-gap:12px;gap:12px}.quote-item-editor{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:start;padding:18px;border:1px solid #e0e6e1;border-radius:12px;background:#fbfcf9}.quote-item-number{padding-top:27px;color:var(--teal-dark);font-family:Georgia,Times New Roman,serif}.quote-item-fields{display:grid;grid-template-columns:.65fr 2fr .65fr .7fr .9fr 1fr;grid-gap:12px;gap:12px}.quote-item-fields .form-grid__wide{grid-column:1/-1}.quote-item-code{grid-column:span 1}.quote-item-description{grid-column:span 2}.line-total{display:grid;grid-gap:8px;gap:8px;align-content:end;min-height:74px;padding-bottom:10px;text-align:right}.line-total span{color:var(--muted);font-size:.65rem}.line-total strong{font-family:Georgia,Times New Roman,serif;font-weight:400;white-space:nowrap}.remove-button{margin-top:27px;border:0;color:#a14c46;background:transparent;cursor:pointer;font-size:.66rem}.remove-button:disabled{opacity:.35;cursor:not-allowed}.calculation-layout{display:grid;grid-template-columns:1fr minmax(300px,.65fr);grid-gap:28px;gap:28px;align-items:start}.percentage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:15px;gap:15px}.totals-card{padding:21px;border-radius:13px;color:white;background:var(--deep-2)}.totals-card>div{display:flex;justify-content:space-between;gap:20px;padding:7px 0;color:#bdd1ce;font-size:.74rem}.totals-card strong{color:white;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.totals-card .grand-total{margin-top:8px;padding-top:15px;border-top:1px solid rgba(255,255,255,.16);color:white;font-size:1rem}.grand-total strong{font-family:Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:400}.totals-card p{margin:12px 0 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.1);color:#90b7b2;font-size:.68rem}.form-actions{display:flex;justify-content:flex-end;padding:5px 0 20px}.quote-detail-header{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:28px}.quote-heading-line{display:flex;gap:12px;align-items:center;margin-bottom:13px}.quote-heading-line p{margin:0;color:var(--muted);font-size:.72rem;font-weight:700}.quote-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.quote-document{padding:clamp(22px,4vw,42px);border:1px solid var(--line);border-radius:16px;background:white;box-shadow:var(--shadow)}.document-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:20px;gap:20px;margin-bottom:26px;padding-bottom:23px;border-bottom:1px solid var(--line)}.document-meta div{display:grid;grid-gap:3px;gap:3px}.document-meta strong{font-size:.82rem}.scope-block{margin-bottom:24px;padding:16px 18px;border-left:3px solid var(--teal);background:#f3f8f5}.scope-block p{margin:7px 0 0;color:var(--ink-soft);font-size:.81rem;line-height:1.6;white-space:pre-wrap}.quote-table{min-width:760px}.document-bottom{display:grid;grid-template-columns:1fr minmax(310px,.55fr);grid-gap:35px;gap:35px;margin-top:28px}.version-note p{color:var(--muted);font-size:.78rem;line-height:1.55}.version-note small{color:#899592;font-size:.67rem}.document-totals{margin:0}.document-totals div{display:flex;justify-content:space-between;gap:25px;padding:8px 0;color:var(--muted);font-size:.77rem}.document-totals dd{margin:0;color:var(--ink);font-weight:700}.document-totals .document-total{margin-top:5px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink);font-size:1rem}.document-total dd{font-family:Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:400}.version-history{margin-top:22px;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:white}.version-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;grid-gap:15px;gap:15px;padding:16px 28px;border-top:1px solid #e8ece8;font-size:.76rem}.version-row>:last-child{text-align:right}.version-row span{color:var(--muted)}.dashboard-quote-list{padding:0 30px}.dashboard-quote-row{display:grid;grid-template-columns:130px minmax(0,1fr) 130px 130px;grid-gap:15px;gap:15px;align-items:center;min-height:68px;border-bottom:1px solid #e8ece8;font-size:.76rem}.dashboard-quote-row:last-child{border-bottom:0}.dashboard-quote-row small,.dashboard-quote-row>span{color:var(--muted)}.dashboard-quote-row div{display:grid;grid-gap:4px;gap:4px}.dashboard-quote-row em{color:var(--teal-dark);font-style:normal}.dashboard-quote-row>strong:last-child{text-align:right}.roadmap-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;margin-top:20px}.roadmap-strip article{display:grid;grid-template-columns:36px 1fr;grid-gap:12px;gap:12px;padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.55)}.roadmap-strip article>span{color:var(--teal-dark);font-family:Georgia,Times New Roman,serif}.roadmap-strip strong{font-size:.78rem}.roadmap-strip p{margin:5px 0 0;color:var(--muted);font-size:.7rem;line-height:1.45}.module-row small{text-transform:uppercase;letter-spacing:.08em}@media (max-width:1050px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-shell{grid-template-columns:minmax(320px,.85fr) minmax(390px,1.15fr)}.quote-list-row{grid-template-columns:125px minmax(200px,1fr) 130px 130px}.quote-list-row time{display:none}.quote-item-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.quote-item-description{grid-column:span 2}}@media (max-width:1023px){.auth-shell{display:block;background:#faf9f5}.auth-intro{min-height:390px;padding:32px 28px}.auth-copy h1{font-size:clamp(2.45rem,10vw,4.2rem)}.auth-copy>p:last-child,.auth-footnote{display:none}.auth-panel{min-height:auto;margin-top:-28px;padding:0 18px 45px;background:transparent}.login-card{position:relative;z-index:2}.app-frame{display:block}.sidebar{display:none}.mobile-nav{position:-webkit-sticky;position:sticky;top:74px;z-index:29;display:flex;gap:4px;overflow-x:auto;padding:8px max(18px,env(safe-area-inset-right)) 8px max(18px,env(safe-area-inset-left));border-bottom:1px solid var(--line);background:white;box-shadow:0 8px 18px rgba(15,43,45,.05);-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-width:none}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav a{flex:0 0 auto;min-height:44px;display:inline-flex;align-items:center;padding:0 13px;border-radius:7px;color:var(--muted);font-size:.72rem}.mobile-nav a.is-active{color:var(--teal-dark);background:var(--mint);font-weight:700}.mobile-brand{display:inline;color:var(--ink);font-size:.8rem;font-weight:800;letter-spacing:.07em}.topbar>div{flex-wrap:wrap}.topbar p{display:none}.calculation-layout,.document-bottom,.management-grid,.record-grid{grid-template-columns:1fr}.form-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-list-row{grid-template-columns:110px minmax(180px,1fr) 130px}.quote-list-row .quote-value{display:none}.document-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:590px){.topbar{min-height:62px;padding:10px max(18px,env(safe-area-inset-right)) 10px max(18px,env(safe-area-inset-left))}.mobile-nav{top:62px}.environment-badge{display:none}.dashboard{padding:30px max(18px,env(safe-area-inset-right)) calc(50px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}.welcome-row{display:block}.welcome-row .primary-button{width:100%;margin-top:24px}.metric-grid{grid-template-columns:1fr}.metric-card{min-height:140px}.panel-heading{display:block;padding:23px 20px}.phase-pill{display:inline-block;margin-top:18px}.module-list{padding:0 20px}.module-row{grid-template-columns:35px 1fr;gap:12px}.module-row small{display:none}.workspace-page{padding:30px max(18px,env(safe-area-inset-right)) calc(50px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}.quote-detail-header,.workspace-header{display:block}.quote-actions,.workspace-header>.primary-button{width:100%;margin-top:23px}.quote-actions{justify-content:flex-start}.quote-actions>a,.quote-actions>button{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 5px);width:auto}.quote-actions>form{flex:1 1 100%;display:flex}.quote-actions>form>button{width:100%}.form-grid--2,.form-grid--4,.percentage-grid,.record-details,.roadmap-strip{grid-template-columns:1fr}.record-details{gap:15px}.quote-list-row{grid-template-columns:1fr auto;gap:8px 12px}.quote-summary{grid-column:1/-1;grid-row:2}.quote-list-row .status-badge{grid-column:2;grid-row:1}.section-title--with-action{grid-template-columns:35px 1fr}.section-title--with-action .secondary-button{grid-column:2;width:-moz-fit-content;width:fit-content}.quote-item-editor{grid-template-columns:1fr}.quote-item-number{padding-top:0}.quote-item-fields{grid-template-columns:1fr}.quote-item-description,.quote-item-fields .form-grid__wide,.quote-item-fields>*{grid-column:1}.line-total{min-height:auto;text-align:left}.remove-button{margin-top:0;min-height:44px;padding:0 4px;text-align:left}.document-meta{grid-template-columns:1fr}.version-row{grid-template-columns:1fr 1fr;padding:14px 20px}.dashboard-quote-list{padding:0 20px}.dashboard-quote-row{grid-template-columns:1fr auto;padding:14px 0}.dashboard-quote-row em,.dashboard-quote-row>span{display:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important}}.assistant-workspace,.integration-grid{display:grid;grid-gap:20px;gap:20px}.assistant-input-card{display:grid;grid-template-columns:48px 1fr;grid-gap:18px;gap:18px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:18px}.assistant-number{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;color:#087965;background:#dff4ed;font-weight:800}.assistant-fields,.assistant-textarea,.file-list,.upload-dropzone{grid-column:2}.upload-dropzone{padding:24px;border:1px dashed #7aa99f;border-radius:14px;background:#f5fbf9;cursor:pointer;display:grid;grid-gap:5px;gap:5px}.upload-dropzone input{margin-bottom:8px}.file-list{margin:0;padding:0;list-style:none}.file-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.assistant-submit-row{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.assistant-status{flex:1 1 320px;color:var(--muted)}.assistant-status--error{color:#a32828}.assistant-status--done{color:#087965;font-weight:700}.integration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.integration-grid .form-error{grid-column:1/-1}.stack-form{display:grid;grid-gap:14px;gap:14px;margin-top:20px}.stack-form label{display:grid;grid-gap:6px;gap:6px;font-weight:700}.secret-once{display:grid;grid-gap:8px;gap:8px;margin-top:18px;padding:14px;border-radius:12px;background:#fff5ce}.secret-once code{overflow-wrap:anywhere;-webkit-user-select:all;-moz-user-select:all;user-select:all}.integrations-list{margin-top:20px}@media (max-width:760px){.assistant-input-card{grid-template-columns:1fr;padding:20px}.assistant-fields,.assistant-textarea,.file-list,.upload-dropzone{grid-column:1}.integration-grid{grid-template-columns:1fr}.assistant-submit-row{align-items:stretch}.assistant-submit-row>.primary-button,.assistant-submit-row>.secondary-button{width:100%}.assistant-status{flex-basis:100%}.upload-dropzone{padding:20px}}@media (max-width:1023px){.topbar{padding-left:max(22px,env(safe-area-inset-left));padding-right:max(22px,env(safe-area-inset-right))}.dashboard,.workspace-page{min-height:calc(100vh - 118px)}.record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-table-wrap{background:linear-gradient(90deg,white 30%,rgba(255,255,255,0)) 0,linear-gradient(270deg,white 30%,rgba(255,255,255,0)) 100%,white;background-attachment:local,local,scroll}}@media (max-width:590px){input,select,textarea{font-size:16px}.auth-intro{min-height:340px;padding:26px max(22px,env(safe-area-inset-right)) 46px max(22px,env(safe-area-inset-left))}.auth-copy h1{font-size:clamp(2.3rem,12vw,3.15rem);line-height:.98}.auth-panel{padding-right:max(14px,env(safe-area-inset-right));padding-left:max(14px,env(safe-area-inset-left))}.login-card{padding:28px 24px;border-radius:20px}.login-card h2,.quote-detail-header h1,.welcome-row h1,.workspace-header h1{font-size:clamp(2rem,11vw,2.8rem)}.record-grid{grid-template-columns:1fr}.form-section,.quote-document,.record-card{padding:20px;border-radius:14px}.data-table{min-width:680px}.data-table-wrap:after{content:"Desliza horizontalmente para ver todas las columnas";position:-webkit-sticky;position:sticky;left:0;display:block;width:min(100vw - 38px,100%);padding:8px 12px;color:var(--muted);background:#f7f8f4;font-size:.68rem;text-align:center}.form-actions>.primary-button,.form-actions>.secondary-button{width:100%}.section-title{margin-bottom:20px}.quote-item-editor{padding:16px}}@media (hover:none) and (pointer:coarse){a,button,input[type=file],select,summary{touch-action:manipulation}.primary-button:hover:not(:disabled),.quote-list-row:hover,.side-nav__item:hover{transform:none}}:focus-visible{outline:3px solid rgba(25,165,143,.42);outline-offset:3px}.member-page-message{margin-bottom:22px}.form-help{margin:0;color:var(--muted);font-size:.76rem;line-height:1.55}.member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.member-card{padding:23px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.88)}.member-card__header{display:grid;grid-template-columns:44px minmax(0,1fr) auto;grid-gap:13px;gap:13px;align-items:center;padding-bottom:19px;border-bottom:1px solid #e7ece8}.member-avatar{width:44px;height:44px;color:white;background:var(--deep-2)}.member-card__header h2,.role-guide h2{margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400}.member-card__header h2{font-size:1.24rem}.member-card__header h2,.member-card__header p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-card__header p{margin:4px 0 0;color:var(--muted);font-size:.74rem}.member-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;grid-gap:12px;gap:12px;align-items:end;margin-top:18px}.member-current{display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:66px;margin-top:18px;padding:13px 15px;border-radius:10px;background:#f3f8f5}.member-current strong{color:var(--teal-dark);font-size:.8rem}.member-current span{color:var(--muted);font-size:.7rem;text-align:right}.role-guide{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:1px;gap:1px;margin-top:24px;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--line)}.role-guide h2{grid-column:1/-1;padding:20px;background:white;font-size:1.35rem}.role-guide div{display:grid;grid-gap:7px;gap:7px;padding:18px;background:#fbfcf9}.role-guide strong{color:var(--teal-dark);font-size:.78rem}.role-guide span{color:var(--muted);font-size:.72rem;line-height:1.5}@media (max-width:1100px){.member-grid,.role-guide{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.member-form,.member-grid,.role-guide{grid-template-columns:1fr}.member-card{padding:19px}.member-card__header{grid-template-columns:44px minmax(0,1fr)}.member-card__header .status-badge{grid-column:2;width:-moz-fit-content;width:fit-content}.member-form .secondary-button{width:100%}.role-guide h2{grid-column:1}}