@font-face{font-family:Oswald;font-style:normal;font-weight:200 700;font-display:swap;src:url(../media/efadc3f7fcf6ac94-s.1ltw8rh7yk6gc.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-weight:200 700;font-display:swap;src:url(../media/8e410338cab7e12e-s.0gyyyiscluuys.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-weight:200 700;font-display:swap;src:url(../media/7e93c0a52799e849-s.0-1vxvac6fapl.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald;font-style:normal;font-weight:200 700;font-display:swap;src:url(../media/037b6aa687f94b32-s.1i63hwl5wdzz6.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald;font-style:normal;font-weight:200 700;font-display:swap;src:url(../media/9a800f173b8d9e8f-s.p.17wwyr13fqy14.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Oswald Fallback;src:local(Arial);ascent-override:146.51%;descent-override:35.49%;line-gap-override:0.0%;size-adjust:81.43%}.oswald_e7c187da-module__ACREMG__className{font-family:Oswald,Oswald Fallback;font-style:normal}.oswald_e7c187da-module__ACREMG__variable{--font-display:"Oswald", "Oswald Fallback"}
@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/13ae3e01af63c0ce-s.3-5_uhe2g8vfj.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/0ee4b8f05dcd9fee-s.27tgfqm6_tedn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9eba4caf7edd2921-s.2r0cv3f07u_0l.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/f6752bd2263820da-s.12_ze2_d4hpxy.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/f285987c35230861-s.318-mahh4esyg.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b8d1f0a88dfecec3-s.0yot_wy8hf-md.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ab57efd000576a30-s.p.2q0khlq77_eaw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Tight Fallback;src:local(Arial);ascent-override:100.51%;descent-override:25.03%;line-gap-override:0.0%;size-adjust:96.39%}.inter_tight_427df167-module__AJt4Na__className{font-family:Inter Tight,Inter Tight Fallback;font-style:normal}.inter_tight_427df167-module__AJt4Na__variable{--font-body:"Inter Tight", "Inter Tight Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.3zhtymus0wdqb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.3nkuoiize4urq.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.1da667lu-u79a.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1i05ju5aeyhye.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.1dgcou5jor5q_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.31-2bzhq1gx_9.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.3xauquyg2sixn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.2taws-qdxmzlf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.0htwiiqufp3l9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.28xcb7557rbh2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_9d88f727-module__1NxLqG__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_9d88f727-module__1NxLqG__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--bg:#f4f1ea;--surface:#fbf9f4;--field:#fff;--ink:#23272a;--muted:#5e5a52;--line:#ddd6c8;--accent:#2f4a47;--accent-ink:#fff;--accent-soft:#dce6e2;--com:#1f3b37;--brass:#8a6a2e;--brass-soft:#f0e4c9;--ok:#2e7a4e;--warn:#a8701a;--bad:#ae3a2e;--char:#1f2325;--char-2:#2e3436;--char-line:#3a4143;--char-edge:#485052;--cream:#ede8dd;--cream-soft:#b9b4a9;--teal:#8fc4b9;--teal-deep:#2f4a47;--teal-edge:#5fa396;--gold:#d4b47c;--orange:#f0a46a;--display:var(--font-display), Georgia, "Times New Roman", serif;--body:var(--font-body), system-ui, -apple-system, "Segoe UI", sans-serif;--mono:var(--font-mono), ui-monospace, Menlo, monospace}@media (prefers-color-scheme:dark){:root{--bg:#1f2325;--surface:#2a2f31;--field:#24292b;--ink:#ede8dd;--muted:#b9b4a9;--line:#3e4648;--accent:#8fc4b9;--accent-ink:#14201e;--accent-soft:#2f4a47;--com:#6fa58c;--brass:#d4b47c;--brass-soft:#3a3021;--ok:#6cc28f;--warn:#e2ab4c;--bad:#e77f72;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.5}a{color:inherit}h1,h2,h3{font-family:var(--display);text-wrap:balance;letter-spacing:.01em;text-transform:uppercase;margin:0;font-weight:400}h1{font-size:clamp(32px,4.6vw,48px);font-weight:300;line-height:1.05}h2{font-size:24px;line-height:1.15}h3{letter-spacing:.04em;font-size:16px;font-weight:500}p{margin:0}button{font:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.muted{color:var(--muted)}.eyebrow{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--brass);font-size:11.5px}.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.page{padding:0 16px}.wrap{flex-direction:column;gap:28px;max-width:1120px;margin:0 auto;padding-block:28px 80px;display:flex}.narrow{max-width:440px}.nav{border-bottom:1px solid var(--line);background:var(--surface);z-index:5;padding:0 16px;position:sticky;top:0}.nav-in{flex-wrap:wrap;align-items:center;gap:18px;max-width:1120px;min-height:58px;margin:0 auto;display:flex}.brand{align-items:flex-end;gap:10px;margin-right:auto;text-decoration:none;display:flex}.brand img{width:auto;height:26px;display:block}.logo{height:auto;display:block}@media (prefers-color-scheme:dark){.brand img,.logo{filter:invert()}}.brand small{font-family:var(--mono);color:var(--brass);letter-spacing:.1em;text-transform:uppercase;padding-bottom:2px;font-size:11px}.nav-in{padding-block:8px}@media (max-width:560px){.nav-in{gap:12px}.brand small{display:none}.brand img{height:22px}.nav .btn{padding:7px 10px;font-size:13px}}.nav a.link,.nav button.link{color:var(--muted);background:0 0;border:0;padding:0;font-size:14px;font-weight:600;text-decoration:none}.btn{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:9px 14px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--muted)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn.primary:hover{filter:brightness(1.08)}.btn.big{padding:13px 22px;font-size:15.5px}.btn.ghost{background:0 0}.btn.danger{color:var(--bad)}.btn:disabled{opacity:.5;cursor:not-allowed}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px}.banner{background:var(--brass-soft);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:14px;display:flex}.banner.ok{background:var(--accent-soft)}.alert{border:1px solid var(--line);border-radius:8px;padding:10px 14px;font-size:14px}.alert.err{border-color:var(--bad);color:var(--bad)}.alert.ok{border-color:var(--ok);color:var(--ok)}.grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px 18px;display:grid}.f{flex-direction:column;gap:6px;min-width:0;display:flex}.f.wide{grid-column:1/-1}.f>label,.f>.lbl,fieldset legend{font-size:13px;font-weight:600}.f .hint{color:var(--muted);font-size:12.5px}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],select,textarea{font:inherit;color:var(--ink);background:var(--field);border:1px solid var(--line);border-radius:7px;width:100%;padding:9px 11px;font-size:14.5px}textarea{resize:vertical;min-height:96px;line-height:1.45}textarea.mono{font-family:var(--mono);min-height:260px;font-size:12.5px}.suffix{align-items:stretch;display:flex}.suffix input{border-top-right-radius:0;border-bottom-right-radius:0}.suffix span{border:1px solid var(--line);font-family:var(--mono);color:var(--muted);background:var(--bg);border-left:0;border-radius:0 7px 7px 0;align-items:center;padding:0 10px;font-size:12.5px;display:flex}fieldset{border:0;min-width:0;margin:0;padding:0}fieldset legend{margin-bottom:8px;padding:0}.chips{flex-wrap:wrap;gap:7px;display:flex}.chip{position:relative}.chip input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.chip span{border:1px solid var(--line);background:var(--field);-webkit-user-select:none;user-select:none;border-radius:999px;flex-direction:column;padding:6px 13px;font-size:13.5px;display:inline-flex}.chip.card span{border-radius:9px;max-width:260px;padding:8px 12px}.chip span small{color:var(--muted);font-size:12px}.chip input:checked+span{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.chip input:checked+span small{color:var(--accent-ink);opacity:.85}.chip input:focus-visible+span{outline:2px solid var(--brass);outline-offset:2px}.check{align-items:flex-start;gap:10px;font-size:14px;display:flex}.check input{margin-top:3px}.form-stack{flex-direction:column;gap:16px;display:flex}.step{grid-template-columns:220px minmax(0,1fr);gap:28px;display:grid}@media (max-width:820px){.step{grid-template-columns:minmax(0,1fr);gap:14px}}.step-head{flex-direction:column;gap:6px;display:flex}.step-head .n{font-family:var(--mono);color:var(--brass);font-size:12px}.step-head p{color:var(--muted);font-size:13.5px}.qgroup{flex-direction:column;gap:18px;display:flex}.qgroup+.qgroup{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.qgroup>h3{font-size:18px}details.cal{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}details.cal summary{cursor:pointer;font-size:14px;font-weight:600}details.cal[open] summary{margin-bottom:14px}.params{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;display:grid}.go{flex-wrap:wrap;align-items:center;gap:16px;margin-top:24px;display:flex}.go .hint{color:var(--muted);max-width:52ch;font-size:13px}.drop{border:1.5px dashed var(--line);text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:8px;padding:26px 16px;display:flex}.drop.over{border-color:var(--accent);background:var(--accent-soft)}.drop .fmt{font-family:var(--mono);color:var(--muted);font-size:12px}.files{flex-direction:column;gap:8px;margin-top:16px;display:flex}.file{border:1px solid var(--line);background:var(--field);border-radius:8px;align-items:center;gap:12px;min-width:0;padding:8px 12px;display:flex}.file .kind{font-family:var(--mono);color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:2px 6px;font-size:11px}.file b{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.file .st{color:var(--muted);font-size:12.5px}.file .st.err{color:var(--bad)}.file button{color:var(--muted);background:0 0;border:0;font-size:12.5px;text-decoration:underline}.status{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 16px;display:flex}.status.err{border-color:var(--bad)}.status .msg{flex:1;min-width:200px}.spin{border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:16px;height:16px;animation:.9s linear infinite sp}@keyframes sp{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spin{animation:none}}.result{flex-direction:column;gap:22px;display:flex}.res-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.res-head .sub{color:var(--muted);max-width:70ch;margin-top:6px}.pill{border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.pill.ok{color:var(--ok)}.pill.warn{color:var(--warn)}.pill.bad{color:var(--bad)}.pill.ex{color:var(--brass)}.summary{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px;display:grid}@media (max-width:820px){.summary{grid-template-columns:minmax(0,1fr)}}.total{background:var(--accent);color:var(--accent-ink);border-radius:12px;flex-direction:column;gap:14px;padding:22px;display:flex}.total .lab{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;opacity:.8;font-size:11.5px}.total .big{font-family:var(--display);font-size:clamp(34px,5vw,48px);line-height:1}.total .rng{font-family:var(--mono);opacity:.9;font-size:14px}.total .meta{opacity:.92;flex-wrap:wrap;gap:12px 18px;font-size:13px;display:flex}.gauge{height:34px;margin-top:4px;position:relative}.gauge .track{background:color-mix(in srgb, var(--accent-ink) 22%, transparent);border-radius:3px;height:6px;position:absolute;top:14px;left:0;right:0}.gauge .band{background:var(--accent-ink);opacity:.9;border-radius:4px;height:14px;position:absolute;top:10px}.gauge .mid{background:var(--brass-soft);width:2px;height:22px;position:absolute;top:6px}.gauge .bud{border-left:2px dashed var(--accent-ink);width:0;height:34px;position:absolute;top:0}.gauge .bud i{font-size:11px;font-style:normal;font-family:var(--mono);white-space:nowrap;position:absolute;top:-2px;left:5px}.tablebox{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow-x:auto}.breakdown{border-collapse:collapse;width:100%;font-size:13.5px}.breakdown th,.breakdown td{text-align:right;white-space:nowrap;padding:9px 14px}.breakdown th:first-child,.breakdown td:first-child{text-align:left;white-space:normal}.breakdown thead th{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);font-size:11px;font-weight:500}.breakdown tbody td{border-bottom:1px solid var(--line)}.breakdown tr.tot td{font-weight:700}.breakdown td.mid{background:var(--accent-soft)}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.seg{border:1px solid var(--line);border-radius:8px;display:inline-flex;overflow:hidden}.seg button{background:var(--surface);color:var(--muted);border:0;padding:7px 13px;font-size:13px;font-weight:600}.seg button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.lines{border-collapse:collapse;width:100%;min-width:760px;font-size:13.5px}.lines th{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:left;border-bottom:1px solid var(--line);padding:10px 12px;font-size:11px;font-weight:500}.lines th.r{text-align:right}.lines td{border-bottom:1px solid var(--line);vertical-align:top;padding:9px 12px}.lines tr.grp td{background:var(--bg);padding:8px 12px;font-size:13px;font-weight:700}.lines tr.grp td .num{color:var(--muted);float:right;font-weight:500}.lines td.desc{min-width:280px}.lines .desc input{background:0 0;border-color:#0000;padding:3px 5px;font-weight:600}.lines .desc input:hover,.lines .desc input:focus{border-color:var(--line);background:var(--field)}.lines .desc small{color:var(--muted);font-family:var(--mono);padding-left:6px;font-size:11.5px;display:block}.lines td.amt{text-align:right;width:104px}.lines td.amt input{text-align:right;width:98px;font-family:var(--mono);background:0 0;border-color:#0000;padding:5px 6px;font-size:13px}.lines td.amt input:hover,.lines td.amt input:focus{border-color:var(--line);background:var(--field)}.lines td.amt.m input{font-weight:600}.lines td.bar{vertical-align:middle;width:170px}.rbar{height:10px;position:relative}.rbar .t{background:var(--line);height:2px;position:absolute;inset:4px 0}.rbar .b{background:var(--brass);opacity:.55;border-radius:3px;height:8px;position:absolute;top:1px}.rbar .m{background:var(--ink);width:2px;height:14px;position:absolute;top:-2px}.lines td.x{width:34px}.lines td.x button{color:var(--muted);background:0 0;border:0;padding:4px;font-size:16px;line-height:1}.lines td.x button:hover{color:var(--bad)}.notes{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;display:grid}.note{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px}.note h3{margin-bottom:8px}.note ul{flex-direction:column;gap:5px;margin:0;padding-left:18px;font-size:14px;display:flex}.note li small{color:var(--muted)}.refine{flex-wrap:wrap;gap:10px;display:flex}.refine input{flex:1;min-width:220px}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.disclaimer{color:var(--muted);border-top:1px solid var(--line);max-width:90ch;padding-top:14px;font-size:12.5px}.dash-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.projects{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.proj{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:8px;padding:16px 18px;text-decoration:none;display:flex}.proj:hover{border-color:var(--muted)}.proj .tag{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);align-items:center;gap:6px;font-size:11px;display:flex}.proj .tag i{border-radius:2px;width:8px;height:8px;display:inline-block}.proj b{font-family:var(--display);text-transform:uppercase;letter-spacing:.01em;font-size:19px;font-weight:400;line-height:1.2}.proj .amt{font-family:var(--mono);font-size:14px}.proj .date{color:var(--muted);font-size:12.5px}.picks{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;display:grid}.pick{background:var(--surface);border:1px solid var(--line);color:var(--ink);text-align:left;border-radius:14px;flex-direction:column;gap:10px;width:100%;padding:24px;text-decoration:none;display:flex}.pick:hover{border-color:var(--muted)}.pick .swatch{border-radius:3px;width:56px;height:6px}.swatch.res{background:#2e5345}.swatch.com{background:var(--com)}.pick-title{font-family:var(--display);text-transform:uppercase;font-size:24px;font-weight:400;line-height:1.1}.pick-list{font-size:14.5px}.pick-go{border-top:1px solid var(--line);margin-top:6px;padding-top:14px;font-size:14px;font-weight:600}.empty{text-align:center;color:var(--muted);padding:40px 20px}.hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:40px;padding-block:40px 20px;display:grid}@media (max-width:860px){.hero{grid-template-columns:minmax(0,1fr)}}.hero h1{font-size:clamp(40px,6vw,68px);line-height:1}.hero .lede{color:var(--muted);max-width:52ch;margin-top:16px;font-size:17px}.hero .cta{flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px;display:flex}.sheet{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:10px;padding:20px;font-size:13.5px;display:flex}.sheet .r{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding-bottom:8px;display:flex}.sheet .r span:last-child{font-family:var(--mono)}.sheet .tot{background:var(--accent);color:var(--accent-ink);border-radius:10px;justify-content:space-between;align-items:baseline;padding:14px;display:flex}.sheet .tot b{font-family:var(--display);font-size:28px;font-weight:400}.how{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;display:grid}.how div{border-top:2px solid var(--ink);flex-direction:column;gap:6px;padding-top:14px;display:flex}.how .n{font-family:var(--mono);color:var(--brass);font-size:12px}.prices{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;display:grid}.price{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:12px;padding:24px;display:flex}.price.feat{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.price .amount{font-family:var(--display);font-size:40px;line-height:1}.price .amount small{font-family:var(--body);color:var(--muted);font-size:14px}.price ul{flex-direction:column;gap:6px;margin:0;padding-left:18px;font-size:14px;display:flex}.price form{margin-top:auto}.price .btn{width:100%}.footer{border-top:1px solid var(--line);color:var(--muted);padding:24px 16px;font-size:13px}.footer-in{flex-wrap:wrap;gap:18px;max-width:1120px;margin:0 auto;display:flex}.prose{flex-direction:column;gap:14px;max-width:72ch;display:flex}.prose h2{margin-top:10px;font-size:20px}.prose ul{margin:0;padding-left:20px}.report{color:#1c2521;max-width:860px;font-family:var(--body);background:#fff;border-radius:8px;margin:24px auto;padding:40px}.report h1{color:#1c2521;font-size:34px}.report h2{border-bottom:1px solid #ccd3cb;margin:28px 0 10px;padding-bottom:6px;font-size:20px}.report .m{color:#5b6862;font-family:var(--body);font-size:13px}.report table{border-collapse:collapse;width:100%;font-family:var(--body);font-size:13px}.report td,.report th{text-align:right;border-bottom:1px solid #e1e5df;padding:6px 8px}.report td:first-child,.report th:first-child{text-align:left}.report th{text-transform:uppercase;letter-spacing:.05em;color:#5b6862;font-size:11px}.report .g td{background:#eef1ec;font-weight:700}.report .t td{border-top:2px solid #1c2521;font-weight:700}.report .box{color:#fff;font-family:var(--body);border-radius:8px;margin:20px 0;padding:20px}.report .box b{font-family:var(--display);font-size:38px;font-weight:400;display:block}.report ul{font-family:var(--body);font-size:14px}.report small{color:#5b6862}.noprint{justify-content:center;gap:8px;margin-top:16px;display:flex}@media print{body{background:#fff}.nav,.noprint,.footer{display:none!important}.report{max-width:none;margin:0;padding:0}.report .box,.report .g td{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.dir-filters{grid-template-columns:minmax(0,1.6fr) repeat(4,minmax(0,1fr));align-items:end;gap:14px;display:grid}.dir-toggles{flex-flow:wrap;grid-column:1/-1;gap:8px 22px}@media (max-width:820px){.dir-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dir-filters>.f:first-child{grid-column:1/-1}}.dir-list{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px;display:grid}.dir-card{text-align:left;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:12px;flex-direction:column;gap:8px;padding:16px 18px;display:flex}.dir-card:hover{border-color:var(--muted)}.dir-card.archived{opacity:.6}.dir-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.dir-top b{font-family:var(--display);text-transform:uppercase;letter-spacing:.01em;font-size:18px;font-weight:400;line-height:1.2}.dir-tags{flex-wrap:wrap;gap:6px;display:flex}.dir-tags i{border:1px solid var(--line);background:var(--bg);border-radius:999px;padding:2px 9px;font-size:12px;font-style:normal}.dir-checks{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.dir-checks .pill{font-size:11.5px;font-weight:600}.lic-row{border-bottom:1px dashed var(--line);padding-bottom:12px}.btn.ghost.danger{color:var(--bad)}.dir-meta{color:var(--muted);flex-wrap:wrap;gap:4px 10px;font-size:12.5px;display:flex}.dir-meta b{color:var(--ink);font-weight:600;font-family:var(--mono);font-size:12px}.dir-meta em{border-left:1px solid var(--line);padding-left:10px;font-style:normal}.back{font-size:13px;font-weight:600;text-decoration:none}.banner.err{background:color-mix(in srgb, var(--bad) 14%, var(--surface))}.banner>span{align-items:center;gap:10px;display:inline-flex}.pk-note{color:var(--muted);border-left:3px solid var(--brass);max-width:80ch;padding-left:12px;font-size:13.5px}.pk-preview{flex-wrap:wrap;gap:6px;display:flex}.pk-select{width:auto;max-width:260px}.pk-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:14px;padding:18px 20px;display:flex}.pk-card.open{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.pk-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.pk-head>div:first-child{flex-direction:column;gap:6px;min-width:0;display:flex}.pk-head h3{letter-spacing:.01em;font-size:19px;font-weight:400}.pk-budget{text-align:right;flex-direction:column;align-items:flex-end;gap:2px;display:flex}.pk-budget small{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px}.pk-budget b{font-family:var(--mono);font-size:14px;font-weight:500}.pk-scope{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;max-width:90ch;font-size:14px;display:-webkit-box;overflow:hidden}.warn-t{color:var(--warn);font-weight:600}.pk-qty{flex-direction:column;gap:6px;display:flex}.pk-qty-row{grid-template-columns:minmax(0,1fr) 90px 110px auto;align-items:center;gap:6px;display:grid}.pk-private{background:var(--brass-soft);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:12px 14px;display:flex}.pk-private>div{flex-direction:column;gap:2px;max-width:60ch;display:flex}.pk-private b{font-size:14px}.pk-lines{border:1px solid var(--line);background:var(--field);border-radius:10px;margin:0;padding:0;list-style:none}.pk-lines li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto 170px;align-items:center;gap:12px;padding:9px 12px;font-size:13.5px;display:grid}.pk-lines li:last-child{border-bottom:0}.pk-lines li small{color:var(--muted);font-size:12px;display:block}.pk-lines .num{font-family:var(--mono);white-space:nowrap;font-size:12.5px}.pk-lines select{padding-block:6px;font-size:13px}.pk-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:14px;display:flex}.pk-next{border-style:dashed;flex-direction:column;gap:4px;font-size:14px;display:flex}.project-tenders{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}@media (max-width:640px){.pk-lines li{grid-template-columns:minmax(0,1fr) auto}.pk-lines li select{grid-column:1/-1}.pk-qty-row{grid-template-columns:minmax(0,1fr) 70px 80px auto}.pk-budget{text-align:left;align-items:flex-start}}.bid-print h1{margin:8px 0 6px;font-size:26px}.bid-text{white-space:pre-wrap;margin-top:22px;font-size:14px;line-height:1.6}.bid-pick{border:1px solid var(--line);background:var(--field);border-radius:10px;margin:0;padding:0;list-style:none}.bid-pick li{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:11px 14px;display:flex}.bid-pick li:last-child{border-bottom:0}.bid-pick li.taken{opacity:.65}.bid-pick label{cursor:pointer;align-items:flex-start;gap:12px;min-width:0;display:flex}.bid-pick input{margin-top:4px}.bid-who{flex-direction:column;min-width:0;display:flex}.bid-who b{font-size:14.5px}.bid-who small{color:var(--muted);font-size:12.5px}.bid-go{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.bid-go .f{width:200px}.bid-preview summary{cursor:pointer;font-size:13.5px;font-weight:600}.bid-preview .bid-text{background:var(--field);border:1px solid var(--line);border-radius:10px;max-height:420px;margin-top:10px;padding:14px 16px;font-size:13.5px;overflow:auto}.bid-track{border-top:1px solid var(--line);padding-top:14px}.pk-reqs{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.bid-docs{flex-direction:column;gap:10px;display:flex}.bid-docs>div:first-child{flex-direction:column;gap:2px;display:flex}.bid-docs .hint{font-size:12.5px}.price-btns{grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;display:grid}.price-btns form{margin:0}.starter-filters{grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr))}@media (max-width:820px){.starter-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.starter-card{cursor:default}.starter-card:hover{border-color:var(--line)}.starter-card a{color:inherit}.bid-suggest{border-top:1px solid var(--line);padding-top:14px}.bid-suggest>summary{cursor:pointer;margin-bottom:12px;font-size:14px;font-weight:600}.cmp{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13.5px}.cmp th,.cmp td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.cmp thead th{background:var(--surface);font-weight:600;position:sticky;top:0}.cmp thead th b{font-family:var(--display);text-transform:uppercase;letter-spacing:.01em;margin-bottom:4px;font-size:16px;font-weight:400;display:block}.cmp tbody th{width:170px;font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);background:var(--surface);font-size:11px;font-weight:500;position:sticky;left:0}.cmp td.sel,.cmp th.sel{background:var(--accent-soft)}.cmp-amount td b{font-family:var(--mono);font-size:16px;font-weight:500;display:block}.cmp-amount td small{margin-top:2px;font-size:12px;display:block}.cmp-list{flex-direction:column;gap:3px;margin:0;padding-left:16px;display:flex}.cmp-actions td{border-bottom:0}.link-btn{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.quote-drop{background:var(--brass-soft);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:12px 14px;display:flex}.quote-drop>div:first-child{flex-direction:column;gap:2px;max-width:64ch;display:flex}.quote-drop label.btn{cursor:pointer}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pill.neutral{color:var(--muted)}@media print{.cmp-print{break-inside:avoid}}.contact-link{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.contact-link:hover{text-decoration-thickness:2px}.dir-cell{flex-direction:column;display:flex;position:relative}.dir-cell>.dir-card{flex:1;padding-right:44px}.dir-x{width:30px;height:30px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;font-size:20px;line-height:1;display:grid;position:absolute;top:10px;right:10px}.dir-x:hover,.dir-x:focus-visible{border-color:var(--line);background:var(--bg);color:var(--bad)}.dir-confirm{background:var(--surface);border:1px solid var(--bad);border-radius:12px;flex-direction:column;justify-content:center;gap:12px;padding:16px 18px;font-size:14px;display:flex;position:absolute;inset:0}.net-box{background:var(--accent-soft);border-radius:8px;flex-direction:column;gap:4px;padding:8px 10px;font-size:13px;display:flex}.net-box small{color:var(--muted);font-size:12px}.net-rating{flex-direction:column;gap:2px;display:flex}.net-box q{font-size:12.5px;font-style:italic}.net-box cite{color:var(--muted);font-style:normal}.net-share{background:var(--accent-soft);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:12px 14px;display:flex}.net-share>div:first-child{flex-direction:column;gap:2px;max-width:64ch;display:flex}.rate-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 18px;display:grid}.rate{gap:2px;display:flex}.rate button{color:var(--line);cursor:pointer;background:0 0;border:0;padding:2px;font-size:26px;line-height:1}.rate button:focus-visible{outline:2px solid var(--brass);border-radius:4px}.net-mine{border-top:1px dashed var(--line);flex-wrap:wrap;gap:6px 16px;padding-top:8px;font-size:13px;display:flex}.net-mine.form-stack{flex-flow:column}.rate-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:13px;display:flex}.rate-row .rate button{font-size:20px}.dir-cell{border:1px solid var(--line);background:var(--surface);border-radius:12px}.dir-cell:hover{border-color:var(--muted)}.dir-cell>.dir-card{background:0 0;border:0}.dir-foot{flex-direction:column;gap:8px;padding:0 18px 14px;display:flex}.dir-foot:empty{display:none}.rate-wrap{align-items:center;gap:8px;display:inline-flex}.rate button{color:color-mix(in srgb, var(--muted) 45%, transparent)}.rate button.on{color:var(--brass)}.rate button:hover{transform:scale(1.12)}.rate-n{font-family:var(--mono);color:var(--muted);min-width:28px;font-size:12px}.dir-cell>.dir-card{flex:none}.file b .file-name{all:unset;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:block;overflow:hidden}.file b .file-name:hover{text-decoration:underline}.project-reperes{margin-top:18px}.btn.primary{font-family:var(--display);letter-spacing:.03em;font-size:16px;font-weight:400}.btn.primary.big{font-size:18px}.project-tenders .btn{min-width:150px}.site-h2{align-items:center;gap:10px;margin:0;font-size:20px;display:flex}.site-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.site-saved{color:var(--accent);min-height:1.5em;font-size:13px;font-weight:600}.site-saved.err{color:var(--bad)}.site-visit{flex-direction:column;gap:22px;margin-top:10px;display:flex}.site-tabs{z-index:5;background:var(--bg);grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:8px 0;display:grid;position:sticky;top:0}.site-tabs a{background:var(--accent-soft);min-height:44px;color:var(--ink);border-radius:9px;justify-content:space-between;align-items:center;padding:8px 14px;font-size:14.5px;font-weight:600;text-decoration:none;display:flex}.site-tabs a b{font-family:var(--mono);color:var(--accent);font-weight:400}.site-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end;gap:12px 16px;display:grid}.site-span{grid-column:1/-1}.site-obs{flex-direction:column;gap:12px;display:flex}.site-obs-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.site-obs-top>b{font-size:16px}.seg{border:1px solid var(--line);border-radius:9px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.seg button{border:0;border-right:1px solid var(--line);background:var(--field);color:var(--muted);min-height:40px;font:inherit;cursor:pointer;padding:0 12px;font-size:13.5px;font-weight:600}.seg button:last-child{border-right:0}.seg button.on{background:var(--accent);color:var(--accent-ink)}.site-action-fields summary{cursor:pointer;color:var(--accent);align-items:center;gap:8px;min-height:32px;font-size:13.5px;font-weight:600;display:flex}.site-action-fields[open] summary{margin-bottom:10px}.site-photos{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.site-photo{flex-direction:column;gap:10px;margin:0;padding:10px;display:flex}.site-photo img{aspect-ratio:4/3;object-fit:cover;background:var(--accent-soft);border-radius:8px;width:100%;display:block}.site-photo-ph{aspect-ratio:4/3;background:var(--accent-soft);width:100%;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;font-size:13px;display:flex}input.warn{border-color:var(--warn)!important}.site-report-bar{padding:16px 18px}.site-report-bar>span:first-child{font-family:var(--display);letter-spacing:.01em;max-width:70ch;font-size:17px;display:block}.site-report-bar small{font-family:var(--body);color:var(--warn);font-size:13px}.link-btn.danger{color:var(--bad)}.link-btn:disabled{opacity:.5;cursor:default}.site-list{flex-direction:column;display:flex}.site-row{border-bottom:1px solid var(--line);color:var(--ink);grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;align-items:center;gap:12px;min-height:52px;padding:12px 4px;text-decoration:none;display:grid}.site-row:last-child{border-bottom:0}.site-row:hover b{text-decoration:underline}.site-row b:first-letter{text-transform:uppercase}.site-row-tags{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.site-actions{flex-direction:column;gap:4px;margin-top:10px;display:flex}.site-action{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:10px 4px;display:grid}.site-action:last-child{border-bottom:0}.site-action .check{min-height:44px;color:var(--muted);align-items:center;font-size:13px}.site-action-body{flex-direction:column;gap:2px;display:flex}.site-action-body .muted{font-size:13px}.site-action.late .site-action-body .muted{color:var(--bad)}.site-report-tools{gap:10px}.site-edit h2{margin-top:8px}.site-report{position:relative;overflow:hidden}.site-report h3{font-family:var(--display);margin:14px 0 4px;font-size:16px}.site-report .site-p{white-space:pre-line;margin:6px 0;font-size:14px;line-height:1.55}.site-report td{vertical-align:top;text-align:left!important}.site-report-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.site-report-photos figure{break-inside:avoid;margin:0}.site-report-photos img{aspect-ratio:4/3;object-fit:cover;border-radius:6px;width:100%;display:block}.site-report-photos figcaption{margin-top:6px;font-size:12.5px}.site-foot{border-top:1px solid #e1e5df;margin-top:32px;padding-top:10px}.site-watermark{font-family:var(--display);text-transform:uppercase;color:#ae3a2e1a;white-space:nowrap;pointer-events:none;font-size:64px;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)rotate(-24deg)}@media print{.site-report-photos{grid-template-columns:repeat(2,1fr)}.site-watermark{position:fixed}}@media (max-width:760px){.site-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.site-row{grid-template-columns:1fr;gap:4px}.site-row-tags{justify-content:flex-start}.site-action{grid-template-columns:auto minmax(0,1fr)}.site-action>.link-btn{grid-column:2}.site-report-photos{grid-template-columns:1fr}}.site-visit input,.site-visit select,.site-visit textarea,.site-edit input,.site-edit textarea{min-height:44px;font-size:16px}.site-visit .check{align-items:center;min-height:44px}.site-visit .check input{width:20px;height:20px;min-height:0;margin-top:0}@media (max-width:760px){.seg{grid-template-columns:1fr 1fr;width:100%;display:grid}.seg button{border-bottom:1px solid var(--line)}}.gestion-tabs{border-bottom:1px solid var(--line);gap:6px;display:flex}.gestion-tabs a{min-height:44px;color:var(--muted);font-family:var(--display);letter-spacing:.02em;border-bottom:3px solid #0000;align-items:center;margin-bottom:-1px;padding:10px 16px;font-size:17px;text-decoration:none;display:inline-flex}.gestion-tabs a[aria-current=page]{color:var(--ink);border-bottom-color:var(--accent)}.res-sel{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.res-s{box-sizing:border-box;border:1px solid #0000;border-radius:14px;align-items:center;gap:16px;min-height:84px;padding:14px 20px;text-decoration:none;transition:background-color .15s,border-color .15s;display:flex;position:relative}.res-s:focus-visible{outline-offset:3px;outline:2px solid #c89b4a}.res-ic{border-radius:999px;flex:none;place-items:center;width:44px;height:44px;display:grid}.res-tx{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.res-nm{font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;font-size:24px;line-height:1.05}.res-sb{font-size:14px}.res-st{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;flex:none;font-size:11px}.res-s.on:after{content:"";background:#c89b4a;border-radius:4px 4px 0 0;height:4px;position:absolute;bottom:-1px;left:20px;right:20px}.res-s.on{color:#ede8dd;background:#2f4a47;border-color:#2f4a47}.res-s.on .res-ic{background:#3d5e5a}.res-s.on .res-sb{color:#c9ddd8}.res-s.on .res-st{color:#d4b47c}.res-s:not(.on){color:#3a3f41;background:#f1ede5;border-color:#ddd6c9}.res-s:not(.on):hover{background:#e9e3d8;border-color:#c9bfae}.res-s:not(.on) .res-ic{background:#fff;border:1px solid #ddd6c9}.res-s:not(.on) .res-sb,.res-s:not(.on) .res-st{color:#6b675f}@media (prefers-color-scheme:dark){.res-s:not(.on){color:#e3dccd;background:#2e2c28;border-color:#4a463e}.res-s:not(.on):hover{background:#36332e;border-color:#5c574d}.res-s:not(.on) .res-ic{background:0 0;border-color:#4a463e}.res-s:not(.on) .res-sb,.res-s:not(.on) .res-st{color:#b9b1a1}}@media (max-width:900px){.res-st{display:none}}@media (max-width:560px){.res-s{flex-direction:column;align-items:flex-start;gap:10px;min-height:0;padding:12px 14px 14px}.res-s.on:after{left:14px;right:14px}.res-ic{width:36px;height:36px}.res-nm{font-size:19px}.res-sb{font-size:12.5px}}.schedule{flex-direction:column;gap:14px;display:flex}.schedule-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.schedule-sum{flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;display:flex}.schedule-bar .check{align-items:center}.gantt{--row:44px;--head:60px;border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:minmax(420px,560px) minmax(0,1fr);display:grid;overflow:hidden}.gantt-left{border-right:1px solid var(--line);min-width:0}.gantt-lrow{height:var(--row);border-bottom:1px solid #edf0eb;grid-template-columns:minmax(0,1fr) 70px 104px 96px 40px;align-items:center;padding-left:12px;font-size:14px;display:grid}.gantt-lrow.gantt-lhead{height:var(--head);color:var(--muted);border-bottom:1px solid var(--line);background:#fafbf8;align-items:end;padding-bottom:8px;font-size:13px}.gantt-lrow.lot{background:#f6f8f4}.gantt-toggle{all:unset;cursor:pointer;align-items:center;gap:10px;min-width:0;height:100%;display:flex}.gantt-toggle i{border:1px solid var(--muted);width:18px;height:18px;color:var(--muted);border-radius:3px;flex:none;justify-content:center;align-items:center;font-size:13px;font-style:normal;display:inline-flex}.gantt-toggle b{font-family:var(--display);white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:400;overflow:hidden}.gantt-title{all:unset;cursor:pointer;color:#3d4843;white-space:nowrap;text-overflow:ellipsis;align-items:center;height:100%;padding-left:28px;display:flex;overflow:hidden}.gantt-title:hover{text-decoration:underline}.gantt-lrow.late .gantt-title{color:var(--bad)}.gantt-rep{border:1px solid var(--line);background:var(--accent-soft);min-width:34px;height:28px;font:inherit;color:var(--accent);cursor:pointer;border-radius:6px;font-size:12.5px;font-weight:600}.gantt-st{white-space:nowrap;align-items:center;gap:7px;font-size:13.5px;display:inline-flex}.gantt-st i{background:var(--muted);border-radius:50%;flex:none;width:8px;height:8px}.gantt-st.st-en_cours i{background:var(--warn)}.gantt-st.st-terminee i{background:#4a9bbf}.gantt-st.st-bloquee i{background:var(--bad)}.gantt-st.st-a_faire i{background:#b9c2bc}.gantt-st.st-annulee{color:var(--muted);text-decoration:line-through}.gantt-pr{white-space:nowrap;color:#3d4843;font-size:13.5px}.gantt-pr.pr-haute,.gantt-pr.pr-urgente{color:var(--warn)}.gantt-pr.pr-urgente{font-weight:700}.gantt-pr.pr-faible{color:var(--muted)}.gantt-more{all:unset;cursor:pointer;text-align:center;height:100%;color:var(--muted);letter-spacing:1px;font-size:16px}.gantt-more:hover{color:var(--ink)}.gantt-right{-webkit-overflow-scrolling:touch;min-width:0;overflow-x:auto}.gantt-canvas{position:relative}.gantt-head{height:var(--head);border-bottom:1px solid var(--line);background:#fafbf8;flex-direction:column;display:flex}.gantt-months,.gantt-weeks{flex:1;display:flex}.gantt-months span{border-left:1px solid var(--line);color:#3d4843;white-space:nowrap;padding:6px 8px 0;font-size:13px;font-weight:600;overflow:hidden}.gantt-weeks span{text-align:center;color:var(--muted);border-left:1px solid #e6eae4;flex:none;padding-top:6px;font-size:12.5px}.gantt-rrow{height:var(--row);background-image:linear-gradient(to right, #e6eae4 1px, transparent 1px), linear-gradient(to right, transparent calc(var(--day) * 5), #2e53450b calc(var(--day) * 5));background-size:calc(var(--day) * 7) 100%;border-bottom:1px solid #edf0eb;position:relative}.gantt-rrow.lot{background-color:#f6f8f4}.gantt-rrow.unplanned{cursor:copy}.gantt-span{background:#c9d7cf;border-radius:4px;height:8px;position:absolute;top:18px}.gantt-hint{line-height:var(--row);color:var(--muted);pointer-events:none;padding-left:10px;font-size:12.5px;font-style:italic;position:sticky;top:0;left:10px}.gantt-bar{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:linear-gradient(to right, var(--accent) var(--p), color-mix(in srgb, var(--accent) 55%, #fff) var(--p));height:28px;box-shadow:inset 0 0 0 1px var(--accent);border-radius:5px;position:absolute;top:8px}.gantt-bar:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 40%, transparent);outline-offset:2px}.gantt-bar.dragging{cursor:grabbing;opacity:.85;z-index:3}.gantt-bar.st-terminee{box-shadow:none;background:#4f7d68}.gantt-bar.st-bloquee{background:repeating-linear-gradient(135deg, var(--warn) 0 6px, color-mix(in srgb, var(--warn) 70%, #fff) 6px 12px);box-shadow:none}.gantt-bar.st-annulee{box-shadow:none;background:#cfd5cf}.gantt-bar.late{box-shadow:inset 0 0 0 2px var(--bad)}.gantt-bar .h{cursor:ew-resize;touch-action:none;width:14px;position:absolute;top:0;bottom:0}.gantt-bar .h.l{left:-4px}.gantt-bar .h.r{right:-4px}.gantt-bar .h:after{content:"";background:#ffffffb3;border-radius:1px;width:2px;position:absolute;top:7px;bottom:7px;left:6px}.gantt-tip{background:var(--ink);color:#fff;white-space:nowrap;pointer-events:none;border-radius:5px;padding:3px 8px;font-size:12px;position:absolute;bottom:calc(100% + 6px);left:0}.gantt-today{top:var(--head);background:var(--brass);pointer-events:none;width:2px;position:absolute;bottom:0}.gantt-today:before{content:"Aujourd'hui";color:var(--brass);white-space:nowrap;font-size:11px;font-weight:600;position:absolute;top:-18px;left:4px}.schedule-list{flex-direction:column;gap:10px;display:flex}.schedule-card{all:unset;box-sizing:border-box;cursor:pointer;border:1px solid var(--line);background:var(--field);border-radius:9px;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;min-height:44px;padding:12px;display:grid}.schedule-card .muted{grid-column:1/-1;font-size:13px}.schedule-card.late .muted{color:var(--bad)}.schedule-prog{background:var(--accent-soft);border-radius:3px;grid-column:1/-1;height:5px;overflow:hidden}.schedule-prog i{background:var(--accent);height:100%;display:block}.side-overlay{z-index:50;background:#1c252147;justify-content:flex-end;display:flex;position:fixed;inset:0}.side-panel{background:var(--surface);width:min(460px,100%);height:100%;padding:22px;padding-bottom:max(22px, env(safe-area-inset-bottom));flex-direction:column;gap:14px;display:flex;overflow-y:auto;box-shadow:-8px 0 30px #0000001f}.side-panel input,.side-panel select,.side-panel textarea{font-size:16px}.side-panel input[type=range]{accent-color:var(--accent);min-height:32px}.sched-pics{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.sched-pics img{aspect-ratio:1;object-fit:cover;border-radius:6px;width:100%;display:block}.sched-note{border-top:1px solid var(--line);padding-top:10px;font-size:14px}.sched-note p{white-space:pre-line;margin:4px 0}.sched-note .muted{font-size:12.5px}.toast{left:50%;bottom:max(20px, env(safe-area-inset-bottom));background:var(--ink);color:#fff;z-index:60;border-radius:10px;align-items:center;gap:16px;max-width:calc(100% - 32px);padding:12px 18px;font-size:14px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #0003}.toast .link-btn{color:#bfe3cf;font-weight:600}@media (max-width:1000px){.gantt{grid-template-columns:300px minmax(0,1fr)}.gantt-lrow{grid-template-columns:minmax(0,1fr) 54px 0 0 34px}.gantt-lrow>:nth-child(3),.gantt-lrow>:nth-child(4){visibility:hidden;overflow:hidden}}.gantt-months span{flex:none;overflow:visible!important}.gantt-months em{font-style:normal;position:sticky;left:8px}.gantt-lrow.lot{grid-template-columns:22px minmax(0,1fr) 70px 104px 96px 40px;padding-left:4px}.gantt-grip{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;color:var(--muted);letter-spacing:-3px;justify-content:center;align-items:center;height:100%;font-size:14px;display:flex}.gantt-grip:focus-visible{outline:2px solid var(--accent);border-radius:4px}.gantt-lrow.lot.moving{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.gantt-lrow.lot.moving .gantt-grip{cursor:grabbing}@media (max-width:1000px){.gantt-lrow.lot{grid-template-columns:22px minmax(0,1fr) 54px 0 0 34px}.gantt-lrow.lot>:nth-child(3){visibility:visible;overflow:visible}.gantt-lrow.lot>:nth-child(4),.gantt-lrow.lot>:nth-child(5){visibility:hidden;overflow:hidden}}.schedule.ro .gantt-bar,.schedule.ro .gantt-title,.schedule.ro .schedule-card,.schedule.ro .gantt-rrow.unplanned{cursor:default}.schedule.ro .gantt-bar .h{display:none}.schedule.ro .gantt-title:hover{text-decoration:none}.share-row{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 4px;display:flex}.share-row:last-child{border-bottom:0}.share-row b{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.share-page h1{font-size:clamp(30px,5vw,48px)}.share-url{align-items:center;gap:8px;width:100%;max-width:640px;margin-top:6px;display:flex}.share-url input{font-family:var(--mono);background:#fff;font-size:13px!important}.share-row>.form-stack{flex:360px;min-width:0}.step-toggle-h{align-items:center;gap:12px;display:flex}.step-toggle{background:var(--accent);width:34px;min-width:34px;height:34px;color:var(--accent-ink);font-family:var(--body);cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;font-size:22px;line-height:1;display:inline-flex}.q-closed{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}@media (max-width:760px){.file{flex-wrap:wrap;row-gap:6px}.file b{flex:calc(100% - 60px);order:0}.file .kind{order:-1}.file .st{order:1;margin-right:auto}.file button{order:2;min-height:36px}}.starter-card.editable{cursor:pointer;transition:border-color .15s}.starter-card.editable:hover{border-color:var(--accent)}.starter-card.is-hidden{opacity:.6;border-style:dashed}.mod-tools{border-top:1px dashed var(--line);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:12px;padding-top:12px;flex-direction:row!important}.sg-specs{border:0;margin:0;padding:0}.sg-chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.grp-lots{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;margin-top:8px;display:grid}.grp-lot{border:1px solid var(--line);background:var(--field);cursor:pointer;border-radius:9px;align-items:flex-start;gap:10px;min-height:44px;padding:10px 12px;display:flex}.grp-lot.on{border-color:var(--accent);background:var(--accent-soft)}.grp-lot input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin-top:3px}.grp-lot span{flex-direction:column;gap:2px;font-size:14px;display:flex}.grp-lot small{font-size:12.5px}.grp-members{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.grp-members li{flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;display:flex}.grp-members a{color:var(--ink);font-weight:600}.grp-quote{border-top:1px dashed var(--line);padding-top:14px}.grp-quote h4{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;margin:0;font-size:17px;font-weight:400}.grp-table{border-collapse:collapse;width:100%;font-size:14px}.grp-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--line);padding:6px 8px;font-size:12px}.grp-table td{vertical-align:middle;border-bottom:1px solid #edf0eb;padding:8px}.grp-table td .suffix{max-width:220px}.grp-table tr.t td{border-top:2px solid var(--ink);border-bottom:0;font-weight:700}.grp-cmp{background:var(--accent-soft);border-radius:10px;padding:12px 14px;font-size:14px}.grp-cmp p{margin:0}.grp-cmp .grp-table td{border-bottom-color:#0000000f}a.pill{text-decoration:none}.mono{font-family:var(--mono);font-size:13px}.mat-filters{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:12px 14px;display:grid}.mat-filters .mat-q{grid-column:span 2}.mat-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.mat-card{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:12px;flex-direction:column;text-decoration:none;transition:border-color .15s;display:flex;overflow:hidden}.mat-card:hover{border-color:var(--accent)}.mat-card img,.mat-card .mat-ph{aspect-ratio:1;object-fit:cover;width:100%;display:block}.mat-ph{box-sizing:border-box;color:#5b6862;background:linear-gradient(135deg,#f1eee8,#ddd9d1);border-radius:0;align-items:flex-end;padding:10px;font-size:12px;display:flex}.mat-ph.sm{border-radius:6px;width:44px;height:44px;padding:0;display:block}.mat-body{flex-direction:column;gap:3px;padding:12px 14px 14px;display:flex}.mat-body b{font-weight:600}.mat-body .muted{font-size:12.5px}.mat-price{font-family:var(--mono);color:var(--accent);font-size:12.5px}.mat-table,.spec-table{border-collapse:collapse;background:var(--surface);width:100%;min-width:760px;font-size:14px}.mat-table th,.spec-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--line);background:var(--surface);padding:11px 10px;font-size:11.5px}.mat-table td,.spec-table td{vertical-align:middle;border-bottom:1px solid #edf0eb;padding:8px 10px}.mat-table img,.spec-table img{object-fit:cover;border-radius:6px;width:44px;height:44px;display:block}.mat-table .n,.spec-table .n{text-align:right;white-space:nowrap}.mat-table a{color:var(--ink)}.mf-lbl{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.mf-lbl label{font-size:13px;font-weight:600}.mf-found{color:var(--ok);font-size:11.5px;font-weight:600}.mf-todo{color:var(--warn);font-size:11.5px;font-weight:600}.mf-urlrow input{flex:999 380px;min-width:0}.mf-top{flex-wrap:wrap;align-items:flex-start;gap:20px;display:flex}.mf-photo{flex:320px;min-width:0}.mf-photo img,.mf-ph{aspect-ratio:1;object-fit:cover;background:linear-gradient(135deg,#f3f1ec,#e4e1da);border-radius:9px;width:100%;display:block}.mf-ph{color:var(--muted);justify-content:center;align-items:center;font-size:13px;display:flex}.mf-fiche{flex:999 540px;min-width:0}.mf-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;display:grid}.mf-grid3{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;display:grid}.mf-grid4{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:12px 16px;display:grid}.mf-span{grid-column:1/-1}.mf-more summary{cursor:pointer;color:var(--accent);align-items:center;min-height:32px;font-size:13.5px;font-weight:600;display:flex}.mf-chip{border:1px solid var(--line);background:var(--field);cursor:pointer;border-radius:999px;min-height:36px;padding:0 14px;font-size:13.5px}.mf-chip.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.mf-order{background:var(--accent-soft);color:#1f3b30;border-radius:9px;flex-direction:column;gap:4px;padding:10px 14px;display:flex}.mf-order span{font-size:12.5px;font-weight:600}.mf-order b{font-family:var(--display);font-size:26px;font-weight:400}.mf-order small{font-size:12px}.mf-private{border-color:var(--accent);background:var(--field)}.mf-tiles,.spec-tiles{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.mf-tiles>div,.spec-tiles>div{border:1px solid var(--line);background:#f4f6f2;border-radius:10px;flex-direction:column;gap:4px;padding:14px;display:flex}.mf-tiles span,.spec-tiles span{color:var(--muted);font-size:12.5px;font-weight:600}.mf-tiles b,.spec-tiles b{font-family:var(--display);font-size:25px;font-weight:400}.mf-tiles small,.spec-tiles small{color:var(--muted);font-size:12px}.mf-tiles .dark,.spec-tiles .dark{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.mf-tiles .dark span,.mf-tiles .dark small,.spec-tiles .dark span,.spec-tiles .dark small{color:var(--accent-ink)}.mf-actions{z-index:5;background:color-mix(in srgb, var(--bg) 94%, transparent);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:12px 0;display:flex;position:sticky;bottom:0}.mf-outline{border-color:var(--accent);color:var(--accent)}@media (max-width:900px){.mf-grid4{grid-template-columns:repeat(2,minmax(0,1fr))}.mf-grid3{grid-template-columns:1fr}}@media (max-width:560px){.mf-grid,.mf-grid4{grid-template-columns:1fr}.mat-filters .mat-q{grid-column:auto}}.spec-bar{flex-wrap:wrap;align-items:center;gap:10px 18px;padding:12px 14px;display:flex}.spec-bar .check{align-items:center}.spec-g td{border-top:1px solid var(--line);background:#f4f6f2}.spec-g span{justify-content:space-between;align-items:center;gap:10px;display:flex}.spec-g b{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;font-size:17px;font-weight:400}.spec-g small{color:var(--muted);font-size:12.5px}.spec-table .grip{color:#a5aea8;width:22px}.spec-table .grip span{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;letter-spacing:-3px;align-items:center;min-height:40px;font-size:15px;display:inline-flex}.spec-table tr.drag td{background:var(--accent-soft)}.spec-table tr.rep{opacity:.55}.spec-table tr.rep .spec-name b{text-decoration:line-through}.spec-name{all:unset;cursor:pointer;flex-direction:column;justify-content:center;gap:2px;min-height:40px;display:flex}.spec-name code{font-family:var(--mono);color:#3d4843;font-size:12px}.spec-name b{font-weight:600}.spec-name small{color:var(--muted);font-size:12.5px}.spec-name:hover b{text-decoration:underline}.spec-pill{cursor:pointer;border:0;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-block;width:auto!important;min-height:0!important}select.spec-pill{padding-right:24px}.st-ok{color:#1f5c3a;background:#dcefe3}.st-pro{color:#2c3f63;background:#e3e9f2}.st-rev{color:#7a4e08;background:#f6e7cc}.st-sel{color:#3d4843;background:#fff;box-shadow:inset 0 0 0 1px #8a948e}.st-rep{color:#5b6862;background:#eceeea}.spec-fiche{width:min(560px,100%)}.sf-img{object-fit:cover;border-radius:9px;width:96px;height:96px}.sf-private{background:var(--field);border:1px solid var(--line);border-radius:10px;padding:12px}.sf-k{color:var(--accent);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.sf-calc{grid-template-columns:1fr auto;gap:4px 12px;margin:0;font-size:13.5px;display:grid}.sf-calc dt{color:var(--muted)}.sf-calc dd{text-align:right;margin:0}.sf-hist{border-left:2px solid var(--line);flex-direction:column;gap:10px;margin:0;padding:0 0 0 14px;list-style:none;display:flex}.sf-hist li{flex-direction:column;gap:2px;font-size:13.5px;display:flex}.sf-hist li.big{background:#eceeea;border-radius:8px;padding:8px 10px}.sf-hist small{color:var(--muted);font-size:12px}.sf-hist em{color:#3d4843;font-size:13px}.pk-list{flex-direction:column;gap:8px;display:flex}.pk-item{border:1px solid var(--line);background:var(--field);border-radius:9px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px;display:grid}.pk-item img{object-fit:cover;border-radius:6px;width:44px;height:44px}.pk-item span{flex-direction:column;gap:2px;min-width:0;display:flex}.pk-item small{font-size:12px}input[type=url],input[type=tel],input[type=search]{font:inherit;color:var(--ink);background:var(--field);border:1px solid var(--line);box-sizing:border-box;border-radius:7px;width:100%;padding:9px 11px;font-size:14.5px}.suffix span{white-space:nowrap}.mf input,.mf select,.mf textarea,.spec-fiche input,.spec-fiche select,.spec-fiche textarea{min-height:44px}.paint-calc{border:1px solid var(--line);background:#f4f6f2;border-radius:10px;margin-bottom:4px;padding:12px 14px}.mf-order .mf-pack{font-size:12.5px;font-weight:600}.mf-paste{border:1px dashed var(--accent);background:var(--field);border-radius:10px;padding:12px 14px;font-size:14px}.mf-paste ol{flex-direction:column;gap:2px;margin:0;padding-left:20px;display:flex}kbd{font-family:var(--mono);border:1px solid var(--line);background:var(--surface);border-bottom-width:2px;border-radius:4px;padding:0 5px;font-size:12px}.mf-drop{border-radius:9px;outline:none}.mf-drop:focus-visible,.mf-drop.on{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 40%, transparent)}.mf-ph small{text-align:center;margin-top:6px;padding:0 16px;font-size:12px;display:block}.mf-ph{text-align:center;flex-direction:column}.ss{color:#1c2521;max-width:1500px;font-family:var(--body);background:#fff;border-radius:8px;margin:16px auto 40px;padding:36px 44px;font-size:11px}.ss-head{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.ss-head dl{grid-template-columns:auto auto;gap:2px 10px;margin:0;line-height:1.45;display:grid}.ss-head dt{color:#5b6862}.ss-head dd{margin:0}.ss-mark{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.ss-logo{letter-spacing:-.5px;font-family:Georgia,serif;font-size:34px;font-weight:700;line-height:1}.ss-mark span:last-child{font-family:var(--mono);letter-spacing:.14em;color:#8a6420;font-size:9px}.ss-sub{color:#3d4843;margin:14px 0 0;font-size:12px}.ss-row{break-inside:avoid;border-bottom:1px solid #dde2db;grid-template-columns:56px 84px minmax(150px,1.3fr) minmax(80px,.7fr) minmax(130px,1fr) 70px minmax(150px,1.3fr);align-items:center;column-gap:12px;padding:8px 0;display:grid}.ss-row:not(.ent){grid-template-columns:56px 84px minmax(150px,1.3fr) minmax(80px,.7fr) minmax(120px,1fr) 70px 86px minmax(140px,1.2fr)}.ss-row.wp:not(.ent){grid-template-columns:56px 84px minmax(150px,1.3fr) minmax(80px,.7fr) minmax(120px,1fr) 70px 86px 90px minmax(130px,1.1fr)}.ss-cols{text-transform:uppercase;letter-spacing:.05em;color:#3d4843;border-top:2px solid #1c2521;border-bottom:1px solid #c9d0c7;margin-top:16px;padding:9px 0 8px;font-size:9.5px;font-weight:600}.ss-row .r{text-align:right;flex-direction:column;align-items:flex-end;gap:2px;display:flex}.ss-row small{color:#5b6862;font-size:9.5px}.ss-row img,.ss-ph{object-fit:cover;background:#eef0ec;border-radius:6px;width:78px;height:78px;display:block}.ss-ref{font-family:var(--mono);font-size:10.5px;font-weight:500}.ss-kv{grid-template-columns:auto minmax(0,1fr);gap:2px 6px;margin:0;line-height:1.35;display:grid}.ss-kv dt{color:#5b6862;text-align:right}.ss-kv dd{overflow-wrap:anywhere;margin:0}.ss-sup{overflow-wrap:anywhere;flex-direction:column;gap:2px;line-height:1.35;display:flex}.ss-sup em{color:#8a5a0b;font-size:9.5px;font-style:normal}.ss-group h2{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;break-after:avoid;align-items:center;gap:8px;margin:12px 0 2px;font-size:12.5px;font-weight:400;display:flex}.ss-group h2 span{border:1px solid #c9d0c7;border-radius:999px;padding:2px 10px}.ss-group h2 small{font-family:var(--body);text-transform:none;letter-spacing:0;color:#5b6862;font-size:9.5px}.ss-pill{-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:999px;padding:2px 8px;font-size:9.5px;font-weight:600;display:inline-block}.ss-total{text-align:right;margin:12px 0 0;font-size:12px}.ss-foot{color:#5b6862;border-top:1px solid #c9d0c7;margin-top:14px;padding-top:10px;font-size:9px}.print-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:16px auto 0;padding:0 16px;display:flex}@media print{.ss{border-radius:0;max-width:none;margin:0;padding:0}.ss-row img,.ss-ph{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.seg a{border-right:1px solid var(--line);background:var(--field);color:var(--muted);align-items:center;min-height:40px;padding:0 12px;font-size:13.5px;font-weight:600;text-decoration:none;display:inline-flex}.seg a:last-child{border-right:0}.seg a.on{background:var(--accent);color:var(--accent-ink)}.ss.tl{max-width:860px;font-size:11.5px}.tl-title{border-top:2px solid #1c2521;justify-content:space-between;align-items:flex-end;gap:16px;margin-top:18px;padding-top:14px;display:flex}.tl-title h1{margin:4px 0;font-size:32px}.tl-title p{color:#3d4843;margin:0}.tl-item{break-inside:avoid;border-bottom:1px solid #dde2db;grid-template-columns:140px minmax(0,1fr);gap:18px;padding:14px 0;display:grid}.tl-item img,.tl-item .ss-ph{object-fit:cover;border-radius:8px;width:140px;height:140px}.tl-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.tl-top b{font-family:var(--display);text-transform:uppercase;font-size:17px;font-weight:400}.tl-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;display:grid}.tl-qty{text-align:center;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.tl-qty span{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#f4f6f2;border-radius:6px;flex-direction:column;gap:2px;padding:6px 4px;display:flex}.tl-qty span.on{background:#dce7e1}.tl-qty small{color:#5b6862;font-size:9px}.tl-note{background:#fafbf8;border:1px solid #e3e7e1;border-radius:6px;margin:0;padding:8px 10px;line-height:1.45}.bv{color:#1c2521;background:#fff;border-radius:8px;max-width:1200px;margin:16px auto 40px;padding:40px 44px}.bv-head{border-bottom:2px solid #1c2521;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:16px;display:flex}.bv-head h1{margin:6px 0;font-size:38px}.bv-head p{color:#3d4843;white-space:pre-line;max-width:70ch;margin:0;font-size:14px;line-height:1.5}.bv-group h2{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;break-after:avoid;margin:22px 0 10px;font-size:18px;font-weight:400}.bv-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;gap:14px;display:grid}.bv-tile{break-inside:avoid;flex-direction:column;gap:8px;margin:0;display:flex}.bv-tile.l{grid-area:span 2/span 2}.bv-tile img,.bv-ph{aspect-ratio:1;object-fit:cover;-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#eef0ec;border-radius:8px;width:100%;display:block}.bv-tile.l img,.bv-tile.l .bv-ph{aspect-ratio:auto;flex:1;min-height:260px}.bv-tile figcaption{flex-direction:column;gap:3px;font-size:12.5px;display:flex}.bv-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.bv-top b{font-weight:600}.bv-meta{color:#5b6862}.bv-cap{color:#3d4843;font-style:italic}.bv-price{font-family:var(--mono);font-size:11.5px}.bv-code{font-family:var(--mono);color:#8a948e;font-size:10.5px}@media (max-width:760px){.bv{padding:20px}.bv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{.bv{max-width:none;margin:0;padding:0}}.bd-edit{margin:0}.bd-edit .bv-tile{position:relative}.bd-edit .bv-tile.drag{opacity:.6;outline:2px dashed var(--accent);outline-offset:4px;border-radius:8px}.bd-tools{z-index:2;justify-content:space-between;align-items:center;gap:6px;display:flex;position:absolute;top:6px;left:6px;right:6px}.bd-grip{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;letter-spacing:-3px;color:#3d4843;background:#ffffffeb;border-radius:6px;justify-content:center;align-items:center;min-width:34px;min-height:34px;display:inline-flex}.bd-tools .seg{background:#ffffffeb}.bd-tools .seg button{min-height:30px;padding:0 9px;font-size:12px}.bd-x{cursor:pointer;min-width:34px;min-height:34px;color:var(--bad);background:#ffffffeb;border:0;border-radius:6px;font-size:18px}.bd-edit figcaption input{padding:6px 8px;font-size:13px}.bd-pick{max-height:420px;overflow-y:auto}.spec-menu{display:inline-flex;position:relative}.spec-pop{z-index:20;background:var(--surface);border:1px solid var(--line);border-radius:10px;flex-direction:column;min-width:260px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 28px #0000001f}.spec-pop a{color:var(--ink);border-radius:7px;justify-content:space-between;align-items:center;gap:10px;min-height:40px;padding:10px 12px;font-size:14px;text-decoration:none;display:flex}.spec-pop a:hover{background:var(--accent-soft)}.spec-pop small{font-family:var(--mono);color:var(--muted)}.sa-zone{font-family:var(--display);text-transform:uppercase;margin:6px 0 0;font-size:18px;font-weight:400}.sa-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.sa-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.sa-card img,.sa-card .bv-ph{aspect-ratio:4/3;object-fit:cover;border-radius:8px;width:100%}.sa-card .bv-meta{font-size:13px}.ss-pill{white-space:nowrap}.brand-logo{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;max-width:220px;max-height:56px;display:block}.report .brand-logo{max-height:48px}.doc-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.logo-box{border:1px dashed var(--line);box-sizing:border-box;background:#fff;border-radius:9px;justify-content:center;align-items:center;width:200px;height:80px;padding:8px;display:flex}.logo-box img{object-fit:contain;max-width:100%;max-height:100%}.brand-contact{color:#5b6862;text-align:right;font-size:9.5px;line-height:1.35;font-family:var(--body);letter-spacing:0}.report .brand-contact{font-size:11px}.doc-top .ss-mark{flex-direction:column;align-items:flex-end;gap:3px;display:flex}.contact-set{border:1px solid var(--line);border-radius:10px;margin:0;padding:12px 14px}.contact-set legend{padding:0 6px;font-size:13px;font-weight:600}.brand-row{justify-content:flex-end;align-items:center;gap:14px;display:flex}.brand-txt{text-align:right;flex-direction:column;align-items:flex-end;gap:1px;display:flex}.brand-txt small{font-family:var(--body);color:#5b6862;letter-spacing:0;font-size:9.5px;line-height:1.35}.report .brand-txt small,.bv .brand-txt small{font-size:10.5px}.brand-row .brand-logo{max-width:170px;max-height:46px}.tour-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:18px;display:grid}@media (max-width:980px){.tour-layout{grid-template-columns:1fr}}.tour-side{gap:14px}.tour-drop{border-style:dashed;padding:28px}.tour-drop.over{border-color:var(--accent);background:var(--accent-soft)}.tour-track{background:var(--line);border-radius:6px;max-width:520px;height:6px;overflow:hidden}.tour-track i{background:var(--accent);height:100%;transition:width .25s;display:block}.tour-qr{flex-wrap:wrap;align-items:flex-start;gap:14px;display:flex}.tour-qr img{border:1px solid var(--line);background:#fff;border-radius:8px;width:150px;height:150px;padding:6px}.tour-qr .form-stack{flex:140px;min-width:0}.tour-badge{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:3px 9px;font-size:11px}.tour-badge.on{border-color:var(--ok);color:var(--ok)}.tv{--tv-ink:#f3f1ec;--tv-soft:#c9c5bb;--tv-mute:#918c82;--tv-glass:#181715c7;--tv-glass-hi:#302e2aeb;--tv-line:#ffffff21;--tv-accent:#e8c27a;--tv-warn:#f0a46a;--tv-stage:#2a2926;background:var(--tv-stage);height:min(72vh,760px);min-height:380px;color:var(--tv-ink);font-family:var(--body);isolation:isolate;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:12px;position:relative;overflow:hidden}.tv.tv-full{z-index:300;border-radius:0;height:auto;min-height:0;position:fixed;inset:0}.tv-canvas{touch-action:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.tv button,.tv select,.tv input{font:inherit;color:inherit}.tv-pill{background:var(--tv-glass);-webkit-backdrop-filter:blur(10px);border:1px solid var(--tv-line);border-radius:999px}.tv-bar{pointer-events:none;z-index:2;padding:calc(12px + env(safe-area-inset-top,0px)) max(14px, env(safe-area-inset-right,0px)) 0 max(14px, env(safe-area-inset-left,0px));justify-content:space-between;align-items:flex-start;gap:10px;display:flex;position:absolute;top:0;left:0;right:0}.tv-bar>*{pointer-events:auto}.tv-brand{align-items:center;gap:10px;min-width:0;min-height:40px;padding:6px 14px;display:flex}.tv-brand b{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;font-size:14px;font-weight:500}.tv-brand img{object-fit:contain;filter:brightness(0)invert();width:auto;max-width:110px;height:24px}.tv-brand span{color:var(--tv-soft);white-space:nowrap;text-overflow:ellipsis;max-width:34vw;font-size:13px;overflow:hidden}.tv-right{align-items:center;gap:8px;display:flex}.tv-seg{padding:3px;display:flex}.tv-seg button{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--tv-soft);white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:7px 13px;font-size:13px}.tv-seg button[aria-pressed=true]{background:var(--tv-ink);color:#1d1c1a}.tv-seg button:disabled{opacity:.5}.tv-icon{border:1px solid var(--tv-line);background:var(--tv-glass);-webkit-backdrop-filter:blur(10px);border-radius:999px;flex:none;place-items:center;width:40px;height:40px;display:grid}.tv-icon:disabled{opacity:.5}.tv-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.tv-bottom{pointer-events:none;z-index:2;padding:0 max(14px, env(safe-area-inset-right,0px)) calc(14px + env(safe-area-inset-bottom,0px)) max(14px, env(safe-area-inset-left,0px));flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:8px;display:flex;position:absolute;bottom:0;left:0;right:0}.tv-bottom>*{pointer-events:auto}.tv-hint{color:var(--tv-soft);text-align:center;max-width:560px;padding:9px 16px;font-size:13px}.tv-hint b{color:var(--tv-ink);font-weight:600}.tv-act{padding:9px 15px;font-size:13px}.tv-done{z-index:3;right:max(14px, env(safe-area-inset-right,0px));top:calc(62px + env(safe-area-inset-top,0px));border-color:var(--tv-accent);color:var(--tv-accent);position:absolute}.tv-toast{z-index:3;left:50%;top:calc(64px + env(safe-area-inset-top,0px));text-align:center;max-width:calc(100% - 32px);padding:9px 16px;font-size:13px;position:absolute;transform:translate(-50%)}.tv-toast.warn{border-color:#f0a46a8c}.tv-loader{z-index:4;background:var(--tv-stage);place-items:center;padding-inline:16px;display:grid;position:absolute;inset:0}.tv-card{gap:14px;width:min(360px,100%);display:grid}.tv-word{font-family:var(--display);letter-spacing:.14em;font-size:28px}.tv-card p{color:var(--tv-soft);font-size:14px;line-height:1.5}.tv-card p.err{color:var(--tv-warn)}.tv-card small{color:var(--tv-mute);font-variant-numeric:tabular-nums}.tv-track{background:#ffffff1a;border-radius:4px;height:4px;overflow:hidden}.tv-track i{background:var(--tv-accent);height:100%;transition:width .2s;display:block}.tv-sheet{z-index:5;-webkit-backdrop-filter:blur(14px);border-left:1px solid var(--tv-line);overscroll-behavior:contain;width:min(370px,100%);padding:calc(16px + env(safe-area-inset-top,0px)) max(18px, env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) 18px;background:#161513f2;align-content:start;gap:20px;display:grid;position:absolute;top:0;bottom:0;right:0;overflow-y:auto}.tv-sheet header{justify-content:space-between;align-items:center;gap:10px;display:flex}.tv-sheet h2{letter-spacing:.08em;color:var(--tv-ink);font-size:17px}.tv-sheet section{gap:10px;display:grid}.tv-sheet h3{font-family:var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--tv-accent);font-size:11px;font-weight:600}.tv-sheet p{color:var(--tv-soft);font-size:13px;line-height:1.5}.tv-field{gap:6px;font-size:13px;display:grid}.tv-row{justify-content:space-between;gap:8px;display:flex}.tv-field output{color:var(--tv-ink);font-variant-numeric:tabular-nums}.tv-sheet select,.tv-btn{background:var(--tv-glass-hi);border:1px solid var(--tv-line);color:var(--tv-ink);border-radius:10px;padding:9px 11px;font-size:13px}.tv-btn.on{border-color:var(--tv-accent);color:var(--tv-accent)}.tv-btn:disabled{opacity:.5}.tv-btns{flex-wrap:wrap;gap:8px;display:flex}.tv-btns .tv-btn{flex:130px}.tv-sheet input[type=range]{width:100%;accent-color:var(--tv-accent)}.tv-check{align-items:flex-start;gap:10px;font-size:13px;line-height:1.4;display:flex}.tv-check input{accent-color:var(--tv-accent);flex:none;width:16px;height:16px;margin-top:2px}.tv-check small{color:var(--tv-mute);display:block}.tv-list{border:1px solid var(--tv-line);border-radius:10px;gap:2px;max-height:220px;padding:6px;display:grid;overflow-y:auto}.tv-list label{border-radius:6px;padding:6px}.tv-empty{color:var(--tv-mute);padding:6px;font-size:13px}.tv-stat{font-variant-numeric:tabular-nums;color:var(--tv-mute)!important;font-size:12px!important}@media (max-width:640px){.tv-sheet{border-left:0;border-top:1px solid var(--tv-line);width:100%;max-height:72%;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));border-radius:18px 18px 0 0;top:auto}.tv-brand span{display:none}.tv-seg button{padding:7px 9px;font-size:12px}}@media (prefers-reduced-motion:reduce){.tv-track i,.tour-track i{transition:none}}.nav{background:var(--char);border-bottom-color:var(--char-line);color:var(--cream)}.nav .brand img{filter:invert()brightness(1.08)}.nav .brand small{color:var(--teal);font-family:var(--body);letter-spacing:.16em;font-size:12.5px;font-weight:600}.nav a.link,.nav button.link{color:var(--cream-soft)}.nav a.link:hover,.nav button.link:hover,.nav a.link[aria-current=page]{color:var(--cream)}.nav .pill.ok,.nav .pill.ex{color:var(--teal)}.nav .pill.warn{color:var(--gold)}.nav .pill.bad{color:var(--orange)}.nav .pill.neutral{color:var(--cream-soft)}.nav .btn{color:var(--cream);border-color:var(--char-edge);background:0 0}.nav .btn.primary{background:var(--cream);color:var(--char);border-color:var(--cream)}.proj-nav{background:var(--char);border-bottom:1px solid var(--char-line);margin:0 -16px;padding:0 16px}.proj-nav-in{scrollbar-width:none;align-items:center;gap:4px;max-width:1120px;margin:0 auto;padding-block:8px;display:flex;overflow-x:auto}.proj-nav-in::-webkit-scrollbar{display:none}.proj-nav a{white-space:nowrap;color:var(--cream-soft);border-radius:999px;align-items:center;min-height:36px;padding:8px 12px;font-size:14px;text-decoration:none;display:inline-flex}.proj-nav a:hover{color:var(--cream)}.proj-nav a.on{background:var(--cream);color:var(--char);font-weight:600}.proj-nav .proj-home{color:var(--cream);text-overflow:ellipsis;flex:none;max-width:220px;margin-right:8px;font-weight:600;overflow:hidden}.hub-stage{background:var(--char);color:var(--cream);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;flex-direction:column;min-height:calc(100vh - 59px);margin:0 -16px;padding:0 16px;display:flex}.hub{flex-direction:column;flex:1;gap:28px;width:100%;max-width:1120px;margin:0 auto;padding-block:34px 40px;display:flex}.hub-head{flex-direction:column;gap:14px;display:flex}.hub-back{color:var(--cream-soft);align-self:flex-start;align-items:center;gap:10px;font-size:15px;text-decoration:none;display:inline-flex}.hub-back:hover{color:var(--cream)}.hub-title{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.hub-eyebrow{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;font-size:12px}.hub h1{color:var(--cream);font-size:clamp(40px,6vw,64px);font-weight:400}.hub-meta,.hub-note{color:var(--cream-soft);font-size:14px}.hub-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.hub-actions{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.hub-files-btn{border:1px solid var(--char-edge);min-height:44px;color:var(--cream);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:9px;padding:0 16px;font-size:14px;font-weight:600;transition:background-color .15s,border-color .15s;display:inline-flex}.hub-files-btn:hover{background:var(--char-2);border-color:#5c6668}.hub-files-btn:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.hub-files-btn .n{font-family:var(--mono);color:var(--cream-soft);font-size:12px;font-weight:400}.hub-tile.wide{border-radius:18px;grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));align-items:end;gap:28px;min-height:0;padding:26px 28px;display:grid}.hub-main{flex-direction:column;gap:22px;display:flex}@media (min-width:641px){.hub-tile.wide .hub-top svg:last-child{display:none}}.hub-tile.wide .hub-name{font-size:26px}.hub-figs{border:1px solid var(--teal-edge);border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.hub-figs>span{border-right:1px solid #4e7f77;flex-direction:column;gap:4px;min-width:0;padding:14px 16px;display:flex}.hub-figs>span:last-child{border-right:0}.hub-figs>span.mid{background:#355652}.hub-figs small{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#c9ddd8;font-size:11px}.hub-figs b{font-family:var(--display);white-space:nowrap;font-size:24px;font-weight:400}.files-drawer{border:0;border-left:1px solid var(--char-edge);background:var(--char);width:min(460px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;color:var(--cream);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;margin:0 0 0 auto;padding:0}.files-drawer::backdrop{background:#0f12139e}.fd-in{box-sizing:border-box;flex-direction:column;gap:16px;height:100%;padding:22px 22px 18px;display:flex}.fd-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.fd-head h2{font-family:var(--display);text-transform:uppercase;color:var(--cream);margin:0;font-size:28px;font-weight:400}.fd-head h2 span{font-family:var(--mono);color:var(--cream-soft);font-size:14px}.fd-close{border:1px solid var(--char-edge);width:44px;height:44px;color:var(--cream);cursor:pointer;background:0 0;border-radius:999px;place-items:center;display:grid}.files-drawer .fd-search{box-sizing:border-box;border:1px solid var(--char-edge);background:var(--char-2);width:100%;min-height:44px;color:var(--cream);font:inherit;border-radius:10px;padding:0 14px;font-size:15px}.fd-search::placeholder{color:var(--cream-soft)}.fd-chips{flex-wrap:wrap;gap:8px;display:flex}.fd-chips button{border:1px solid var(--char-edge);min-height:36px;color:var(--cream-soft);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:0 14px;font-size:13px}.fd-chips button.on{background:var(--teal-deep);border-color:var(--teal-edge);color:var(--cream)}.fd-list{flex-direction:column;flex:1;gap:20px;margin-inline:-4px;padding-inline:4px;display:flex;overflow-y:auto}.fd-group h3{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin:0 0 8px;font-size:11.5px;font-weight:500}.fd-group h3 span{color:var(--cream-soft)}.fd-group ul{border:1px solid var(--char-line);border-radius:12px;flex-direction:column;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.fd-group li{border-top:1px solid var(--char-line);background:var(--char-2);align-items:center;gap:10px;padding:0 12px 0 0;display:flex}.fd-group li:first-child{border-top:0}.fd-file{min-width:0;color:var(--cream);flex:1;align-items:center;gap:12px;padding:12px 0 12px 14px;text-decoration:none;display:flex}.fd-file:hover b{text-decoration:underline}.fd-name{flex-direction:column;gap:2px;min-width:0;display:flex}.fd-name b{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;overflow:hidden}.fd-name small{font-family:var(--mono);color:var(--cream-soft);font-size:11.5px}.fd-mod{font-family:var(--mono);color:var(--teal);border:1px solid var(--char-edge);border-radius:999px;flex:none;padding:3px 9px;font-size:11px;text-decoration:none}.fd-mod:hover{border-color:var(--teal-edge)}.fd-empty{color:var(--cream-soft);margin:0;font-size:14px}.fd-foot{border-top:1px solid var(--char-line);color:var(--cream-soft);margin:0;padding-top:12px;font-size:12.5px}.hub-tile{color:var(--cream);background:var(--char-2);border:1px solid var(--char-edge);border-radius:16px;flex-direction:column;justify-content:space-between;gap:34px;min-height:196px;padding:22px 22px 20px;text-decoration:none;transition:background-color .15s,border-color .15s;display:flex}.hub-tile:hover{background:#3a4143;border-color:#5c6668}.hub-tile.on{background:var(--teal-deep);border-color:var(--teal-edge)}.hub-tile.on:hover{background:#355652}.hub-tile:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.hub-top{justify-content:space-between;display:flex}.hub-body{flex-direction:column;gap:6px;display:flex}.hub-name{letter-spacing:.04em;text-transform:uppercase;font-size:21px;font-weight:600}.hub-sub{color:var(--cream-soft);font-size:14px}.hub-tile.on .hub-sub{color:#c9ddd8}.hub-state{font-family:var(--mono);color:var(--cream);flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;font-size:12.5px;display:flex}.hub-state.warn{color:var(--orange)}.hub-state.muted span:last-child{color:var(--cream)}.hub-badge{background:var(--gold);color:var(--char);border-radius:999px;padding:2px 9px;font-weight:500}.hub-dot{background:var(--teal);border-radius:99px;width:8px;height:8px;display:inline-block}.hub-bar{background:var(--char-edge);border-radius:4px;height:4px;display:block;overflow:hidden}.hub-bar i{background:var(--teal);height:100%;display:block}.hub-foot{border-top:1px solid var(--char-line);letter-spacing:.12em;text-transform:uppercase;width:100%;max-width:1120px;color:var(--cream-soft);flex-wrap:wrap;justify-content:space-between;gap:16px;margin:0 auto;padding-block:18px;font-size:13px;display:flex}@media (max-width:640px){.hub{gap:22px;padding-block:22px 24px}.hub-grid{grid-template-columns:1fr;gap:10px}.hub-tile{border-radius:14px;flex-direction:row;align-items:center;gap:14px;min-height:84px;padding:14px 16px}.hub-top{display:contents}.hub-top svg:first-child{flex:none;order:0;width:26px;height:26px}.hub-top svg:last-child{flex:none;order:2;width:16px;height:16px}.hub-body{flex:1;order:1;gap:3px;min-width:0}.hub-name{font-size:17px}.hub-sub{display:none}.hub-state{margin-top:0;font-size:12px}.hub-bar{display:none}.hub-tile.wide{border-radius:16px;flex-direction:column;grid-column:auto;align-items:stretch;gap:16px;padding:18px 16px;display:flex}.hub-tile.wide .hub-main{flex-direction:row;align-items:center;gap:14px;display:flex}.hub-tile.wide .hub-name{font-size:19px}.hub-tile.wide .hub-sub{font-size:13px;display:block}.hub-figs>span{gap:3px;padding:10px}.hub-figs small{font-size:10px}.hub-figs b{font-size:18px}.hub-actions{gap:12px}.fd-in{padding:18px 16px 16px}.hub-tile[data-m="1"]{order:1}.hub-tile[data-m="2"]{order:2}.hub-tile[data-m="3"]{order:3}.hub-tile[data-m="4"]{order:4}.hub-tile[data-m="5"]{order:5}.hub-tile[data-m="6"]{order:6}.hub-grid{flex-direction:column;display:flex}.hub-foot{font-size:11.5px}}.btn-teal{background:var(--teal);min-height:48px;color:var(--char);border:1px solid var(--teal);border-radius:10px;align-items:center;gap:8px;padding:0 22px;font-size:15px;font-weight:600;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.btn-teal:hover{background:#a6d3c9;border-color:#a6d3c9}.btn-teal:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.dash-dark .projects{gap:16px}.dash-dark .proj{background:var(--char-2);border:1px solid var(--char-edge);color:var(--cream);border-radius:16px;gap:10px;padding:20px 22px;transition:background-color .15s,border-color .15s}.dash-dark .proj:hover{border-color:var(--teal-edge);background:#323a3b}.dash-dark .proj:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.dash-dark .proj .tag{color:var(--gold)}.dash-dark .proj b{color:var(--cream);font-size:21px}.dash-dark .proj .amt{color:var(--teal)}.dash-dark .proj .amt .muted,.dash-dark .proj .date{color:var(--cream-soft)}.dash-dark .banner{background:var(--char-2);border:1px solid var(--char-edge);color:var(--cream)}.dash-dark .banner strong{color:var(--teal)}.dash-dark .panel.empty{background:var(--char-2);border-color:var(--char-edge);color:var(--cream)}.dash-dark .panel.empty h2{color:var(--cream)}.dash-dark .panel.empty p{color:var(--cream-soft)}.dash-dark .btn{color:var(--cream);border-color:var(--char-edge);background:0 0}.dash-dark .btn:hover{border-color:var(--teal-edge)}.dash-dark .btn.primary{background:var(--teal);color:var(--char);border-color:var(--teal)}.dash-dark .projects{grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}.dash-dark .swatch.res{background:var(--teal)}.dash-dark .swatch.com{background:var(--cream-soft)}@media (max-width:640px){.dash-dark .btn-teal{justify-content:center;width:100%}}.prices-wrap{flex-direction:column;gap:18px;max-width:920px;display:flex}.prices-wrap .prices{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.trial-band{background:var(--accent-soft);border:1px solid var(--accent);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.trial-band>div{flex-direction:column;flex:320px;gap:4px;min-width:0;display:flex}.trial-band strong{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;font-size:24px;font-weight:400}.trial-band span{font-size:14.5px}.prices-note{font-size:14px}.bill-toggle{border:1px solid var(--line);background:var(--surface);border-radius:999px;align-self:flex-start;padding:4px;display:inline-flex}.bill-toggle button{color:var(--ink);background:0 0;border:0;border-radius:999px;min-height:40px;padding:9px 18px;font-size:14px;font-weight:600}.bill-toggle button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.home{--s1:#1f2325;--s2:#2a2f31;--s3:#3a4143;--s4:#5d625f;--s5:#b8b4a8;--s6:#d8d2c4;color:#23272a;background:#f4f1ea}.home-in{max-width:1180px;padding-inline:max(20px, env(safe-area-inset-left,0px));box-sizing:border-box;margin:0 auto}.home-split{grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));align-items:center;gap:64px;padding-block:96px;display:grid}.home-split>*{min-width:0}.home-split.flip>.home-copy{order:2}@media (max-width:900px){.home-split.flip>.home-copy{order:0}.home-split{gap:36px;padding-block:64px}}.home-copy{flex-direction:column;gap:14px;display:flex}.home-eyebrow{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#8a6a2e;font-size:12px}.home-hero{background:#f4f1ea}.home-hero .home-split{gap:56px;padding-block:80px 96px}.home-hero h1{color:#23272a;font-size:clamp(52px,7vw,84px);font-weight:400;line-height:.98}.home-sub{color:#2f4a47;margin-top:6px;font-size:clamp(20px,2.2vw,24px);font-weight:600;line-height:1.25}.home-lede{color:#4e4a43;max-width:52ch;font-size:17px;line-height:1.6}.home-cta{flex-wrap:wrap;align-items:center;gap:16px;margin-top:8px;font-size:14px;display:flex}.home-cta .muted{color:#5e5a52}.home-preview{color:#ede8dd;background:#1f2325;border-radius:20px;flex-direction:column;gap:6px;padding:26px;display:flex;box-shadow:0 30px 60px -30px #1f232573}.hp-eyebrow{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#d4b47c;font-size:10.5px}.hp-name{font-family:var(--display);text-transform:uppercase;margin-bottom:12px;font-size:30px;line-height:1}.hp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.hp-tile{background:#2e3436;border:1px solid #485052;border-radius:12px;flex-direction:column;gap:4px;min-width:0;padding:14px;display:flex}.hp-tile.on{background:#2f4a47;border-color:#5fa396}.hp-tile b{letter-spacing:.05em;text-transform:uppercase;font-size:13px}.hp-tile span{font-family:var(--mono);color:#b9b4a9;font-size:11px}.hp-tile.on span{color:#c9ddd8}.hp-tile span.gold{color:#d4b47c}.hp-tile span.teal{color:#8fc4b9}.home-sig{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:#6b4e1a;align-items:center;gap:14px;margin-top:12px;font-size:16px;display:flex}.home-sig:before{content:"";background:#c89b4a;flex:none;width:40px;height:2px}.hp-meta{color:#b9b4a9;margin-bottom:12px;font-size:12.5px}.hp-tile.wide{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.hp-col{flex-direction:column;gap:4px;min-width:0;display:flex}.hp-fig{font-family:var(--display);color:#ede8dd;white-space:nowrap;font-size:30px;line-height:1}.hp-tile .hp-fig{font-family:var(--display);color:#ede8dd;font-size:30px}.hp-beta{font-style:normal;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#1f2325;vertical-align:2px;background:#e8cd96;border-radius:999px;margin-left:6px;padding:2px 7px;font-size:9.5px}.hp-note{color:#8e8a80;margin-top:8px;font-size:11.5px}.home-who{background:#f4f1ea;border-top:1px solid #ddd6c8}.home-who-in{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:40px;padding-block:56px 72px;display:grid}.home-who-c{border-top:2px solid #c89b4a;flex-direction:column;gap:10px;padding-top:18px;display:flex}.home-who-c h2{color:#23272a;font-size:clamp(25px,2.6vw,30px);font-weight:400;line-height:1.05}.home-who-c p{color:#4e4a43;font-size:16px;line-height:1.6}.home-who-c.alt{border-top-color:#2f4a47}.home-who-c.alt h2{color:#2f4a47}.home-idx{background:var(--s1);color:#ede8dd;border-bottom:1px solid #3a4143}.home-idx-in{flex-direction:column;gap:36px;padding-block:72px 64px;display:flex}.home-idx-h{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.home-idx h2{color:#ede8dd;font-size:clamp(34px,4.4vw,52px);font-weight:400;line-height:1}.home-idx .home-eyebrow{color:#d4b47c}.home-idx ol{border-top:1px solid #3a4143;grid-template-columns:repeat(auto-fit,minmax(min(440px,100%),1fr));column-gap:56px;margin:0;padding:0;list-style:none;display:grid}.home-idx li a{color:#ede8dd;border-bottom:1px solid #3a4143;grid-template-columns:44px minmax(0,1fr) auto;align-items:baseline;gap:6px 16px;padding:22px 0;text-decoration:none;display:grid}.home-idx li a:hover .v{color:#8fc4b9}.home-idx li a:focus-visible{outline-offset:2px;outline:2px solid #d4b47c}.home-idx .n{font-family:var(--mono);color:#d4b47c;font-size:12px}.home-idx .v{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;font-size:30px;line-height:1;transition:color .15s}.home-idx .d{color:#c9c4b8;grid-column:2;font-size:15px;line-height:1.45}.home-idx .m{font-family:var(--mono);letter-spacing:.06em;color:#8fc4b9;white-space:nowrap;grid-area:1/3;font-size:11px}.home-modtag{letter-spacing:.06em;text-transform:uppercase;border:1px solid;border-radius:999px;padding:3px 10px;font-size:11px}.home-mod h3{text-transform:uppercase}@media (max-width:600px){.home-idx-in{gap:24px;padding-block:48px 44px}.home-idx li a{grid-template-columns:30px minmax(0,1fr);row-gap:4px;padding:16px 0}.home-idx .v{font-size:24px}.home-idx .m{grid-area:auto/2}.home-who-in{gap:26px;padding-block:36px 44px}.hp-fig,.hp-tile .hp-fig{font-size:24px}}.home-band{background:var(--s1);color:#ede8dd;border-bottom:1px solid #3a4143}.home-band-in{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;padding-block:56px;display:flex}.home-band h2{text-wrap:balance;font-size:clamp(28px,3.6vw,46px);font-weight:400;line-height:1.05}.home-band .home-eyebrow{color:#d4b47c}.home-mod h3{letter-spacing:.01em;font-size:clamp(44px,5.4vw,64px);font-weight:400;line-height:1}.home-num{font-family:var(--mono);letter-spacing:.1em;flex-wrap:wrap;align-items:center;gap:12px;font-size:13px;display:flex}.home-badge{letter-spacing:.08em;text-transform:uppercase;color:#1f2325;background:#e8cd96;border-radius:999px;padding:4px 10px;font-size:11px}.home-hook{font-size:clamp(18px,1.9vw,21px);font-weight:600;line-height:1.3}.home-desc{max-width:48ch;font-size:16.5px;line-height:1.65}.home-mod.s1{background:var(--s1)}.home-mod.s2{background:var(--s2)}.home-mod.s3{background:var(--s3)}.home-mod.s4{background:var(--s4)}.home-mod.s1,.home-mod.s2,.home-mod.s3{color:#ede8dd}.home-mod.s1 .home-num,.home-mod.s2 .home-num,.home-mod.s3 .home-num{color:#d4b47c}.home-mod.s1 .home-hook,.home-mod.s2 .home-hook,.home-mod.s3 .home-hook{color:#8fc4b9}.home-mod.s1 .home-desc,.home-mod.s2 .home-desc,.home-mod.s3 .home-desc{color:#d6d1c6}.home-mod.s4{color:#f4f1ea}.home-mod.s4 .home-num{color:#ebd3a2}.home-mod.s4 .home-hook{color:#bfe3da}.home-mod.s4 .home-desc{color:#f4f1ea}.home-mod.s5{background:var(--s5);color:#23272a}.home-mod.s5 .home-num{color:#5e4416}.home-mod.s5 .home-hook{color:#1f3b37}.home-mod.s5 .home-desc{color:#2e2c28}.home-mod.s6{background:var(--s6);color:#23272a}.home-mod.s6 .home-num{color:#6b4e1a}.home-mod.s6 .home-hook{color:#2f4a47}.home-mod.s6 .home-desc{color:#3a3833}.home-prices{background:var(--bg);color:var(--ink)}.home-prices .home-in{padding-block:96px}.home-prices h2{font-size:clamp(34px,4vw,46px);font-weight:400}.hv-card{color:#23272a;background:#fbf9f4;border:1px solid #ddd6c8;border-radius:18px;flex-direction:column;gap:12px;padding:26px;display:flex;box-shadow:0 24px 48px -32px #1f232573}.hv-eyebrow{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#8a6a2e;font-size:11px}.hv-est-row{font-variant-numeric:tabular-nums;border-bottom:1px solid #ece6da;grid-template-columns:minmax(0,1fr) repeat(3,72px);gap:8px;padding:8px 0;font-size:14px;display:grid}.hv-est-row span:not(:first-child){text-align:right;color:#5e5a52}.hv-est-row span:nth-child(3){color:#23272a;font-weight:600}.hv-est-head{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:#5e5a52;border-bottom-color:#ddd6c8;font-size:11px}.hv-est-head span:nth-child(3){color:#5e5a52;font-weight:400}.hv-est-tot{color:#5e5a52;justify-content:space-between;align-items:baseline;padding-top:6px;font-size:13px;display:flex}.hv-est-tot b{font-family:var(--display);color:#2f4a47;font-size:30px;font-weight:400}.hv-specs{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.hv-spec{color:#23272a;background:#fbf9f4;border:1px solid #ddd6c8;border-radius:14px;overflow:hidden}.hv-swatch{aspect-ratio:4/3}.hv-spec-body{flex-direction:column;gap:4px;padding:12px 14px;font-size:14px;display:flex}.hv-code{font-family:var(--mono);color:#6b655a;font-size:11px}.hv-ok{color:#1e6a45;font-size:12px;font-weight:600}.hv-wait{color:#7a4f10;font-size:12px;font-weight:600}.hv-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.hv-title{font-family:var(--display);text-transform:uppercase;font-size:22px;font-weight:400}.hv-chip{font-family:var(--mono);color:#2f4a47;white-space:nowrap;background:#dce6e2;border-radius:999px;padding:4px 10px;font-size:11px}.hv-bid{font-variant-numeric:tabular-nums;flex-direction:column;gap:6px;font-size:14px;display:flex}.hv-bid>span:first-child{justify-content:space-between;gap:10px;display:flex}.hv-bar{background:#ece6da;border-radius:8px;height:8px;display:block;overflow:hidden}.hv-bar i{background:#8fc4b9;border-radius:8px;height:100%;display:block}.hv-bar i.best{background:#2f4a47}.hv-foot{color:#5e5a52;border-top:1px solid #ece6da;padding-top:12px;font-size:13px}.hv-photos{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.hv-photos i{aspect-ratio:1;border-radius:8px;display:block}.hv-list{flex-direction:column;gap:8px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.hv-list li{gap:10px;display:flex}.hv-list .ok{color:#2f4a47;font-weight:700}.hv-list .warn{color:#a8701a;font-weight:700}.hv-dir{gap:0;padding-block:10px}.hv-person{border-bottom:1px solid #ece6da;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;display:flex}.hv-person:last-child{border-bottom:0}.hv-person>span:first-child{flex-direction:column;gap:3px;min-width:0;font-size:15px;display:flex}.hv-person>span:first-child span{color:#5e5a52;font-size:13px}.hv-tour{color:#ede8dd;background:#1f2325;border-radius:18px;flex-direction:column;gap:14px;padding:18px;display:flex;box-shadow:0 24px 48px -32px #1f23258c}.hv-brand{font-family:var(--display);letter-spacing:.14em;font-size:13px}.hv-seg{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;border:1px solid #485052;border-radius:999px;padding:3px;font-size:11px;display:flex}.hv-seg span{color:#b9b4a9;padding:5px 10px}.hv-seg span.on{color:#1f2325;background:#ede8dd;border-radius:999px}.hv-room{aspect-ratio:16/10;background:#dcd8d1;border-radius:12px;position:relative;overflow:hidden}.hv-room i{display:block;position:absolute}.hv-room .floor{background:#b49a7c;height:42%;bottom:0;left:0;right:0}.hv-room .wall{background:#cfc9bf;width:22%;top:0;bottom:42%}.hv-room .wall.l{left:0}.hv-room .wall.r{right:0}.hv-room .door{background:#2a2926;border-radius:4px 4px 0 0;width:16%;top:22%;bottom:42%;left:42%}.hv-room .ring{border:3px solid #fff;border-radius:50%;width:56px;height:18px;margin-left:-28px;bottom:16%;left:50%}.hv-room .hint{color:#ede8dd;white-space:nowrap;background:#181715cc;border-radius:999px;padding:6px 12px;font-size:11.5px;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}@media (max-width:480px){.hv-est-row{grid-template-columns:minmax(0,1fr) repeat(3,58px);font-size:13px}.hv-card,.home-preview{padding:18px}}@media (max-width:560px){.nav .hide-sm{display:none}}.hv-swatch{overflow:hidden}.hv-swatch img{object-fit:cover;width:100%;height:100%;display:block}.hv-room{aspect-ratio:1000/770;background:#2a2926}.hv-room img{object-fit:cover;width:100%;height:100%;display:block}.hv-photos span{aspect-ratio:1;text-align:center;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#2e2c28;border-radius:8px;place-items:center;padding:6px;font-size:10.5px;display:grid}.hv-photos span:nth-child(2){color:#f4f1ea}
