@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/bricolage-grotesque-vietnamese-opsz-normal-D9N6E8K1.woff2)format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/bricolage-grotesque-latin-ext-opsz-normal-IcJDqblK.woff2)format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/build/assets/bricolage-grotesque-latin-opsz-normal-Cre6nC2_.woff2)format("woff2-variations");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/build/assets/instrument-sans-latin-ext-400-normal-Q_nF8v4l.woff2)format("woff2"),url(/build/assets/instrument-sans-latin-ext-400-normal-r32jotim.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/build/assets/instrument-sans-latin-400-normal-DRC__1Mx.woff2)format("woff2"),url(/build/assets/instrument-sans-latin-400-normal-D1W7dsQl.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/build/assets/instrument-sans-latin-ext-500-normal-CTEe1bJa.woff2)format("woff2"),url(/build/assets/instrument-sans-latin-ext-500-normal-CAxz3nsc.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/build/assets/instrument-sans-latin-500-normal-Dk9ku72i.woff2)format("woff2"),url(/build/assets/instrument-sans-latin-500-normal-Z6ESRlEs.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/build/assets/instrument-sans-latin-ext-600-normal-BsaQcF38.woff2)format("woff2"),url(/build/assets/instrument-sans-latin-ext-600-normal-DMks36a2.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/build/assets/instrument-sans-latin-600-normal-B7fBEWYG.woff2)format("woff2"),url(/build/assets/instrument-sans-latin-600-normal-B9e8oLYv.woff)format("woff");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:Instrument Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/build/assets/instrument-sans-latin-ext-700-normal-ClYbKGw-.woff2)format("woff2"),url(/build/assets/instrument-sans-latin-ext-700-normal-BQc-7cTM.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/build/assets/instrument-sans-latin-700-normal-CYfAanHo.woff2)format("woff2"),url(/build/assets/instrument-sans-latin-700-normal-DfAjL1vF.woff)format("woff");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}:root{--q-mint:#a7d8c8;--q-mint-soft:#e3f2ec;--q-surface:#f2f6f5;--q-text:#1f2937;--q-muted:#4b6560;--q-line:#e3ece9;--q-alert:#c2410c;--q-alert-soft:#fff1e6;--q-alert-text:#7c2d12;--q-danger:#b42318;--q-danger-soft:#fdecea;--q-r-xs:6px 6px 6px 1px;--q-r-sm:9px 9px 9px 2px;--q-r:14px 14px 14px 3px;--q-r-lg:24px 24px 24px 5px;--q-r-xl:28px 28px 28px 6px;--q-display:"Bricolage Grotesque Variable", "Instrument Sans", system-ui, sans-serif;--q-body:"Instrument Sans", system-ui, -apple-system, sans-serif;--q-shadow:0 1px 2px #0f3d3a0a, 0 8px 24px #0f3d3a0d;--bs-body-font-family:var(--q-body);--bs-body-color:var(--q-text);--bs-link-color-rgb:15, 61, 58}body{background:var(--q-surface);font-family:var(--q-body);color:var(--q-text);-webkit-font-smoothing:antialiased}h1,h2,h3,.h1,.h2,.h3,.h4,.section-title,.stat,.display-q{font-family:var(--q-display);letter-spacing:-.025em;color:var(--ink)}h1,.h1,.h2{font-weight:800}h3,.h3,.h4,.h5,.h6{font-weight:700}.h5,.h6{font-family:var(--q-display);color:var(--ink);letter-spacing:-.015em}a{color:var(--ink);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--brand)}.text-muted{color:var(--q-muted)!important}.eyebrow{font-family:var(--q-body);letter-spacing:.14em;text-transform:uppercase;color:var(--brand);font-size:.74rem;font-weight:600}::selection{background:var(--q-mint);color:var(--ink)}:focus-visible{outline:3px solid var(--q-mint);outline-offset:2px}.sidebar{background:var(--ink);color:#e8f3ef;border-right:0;padding:30px 18px}.sidebar .brand{padding-left:8px}.sidebar .eyebrow{color:#8fbfb2}.sidebar .nav-link{color:#cfe6de;border-radius:var(--q-r);align-items:center;gap:12px;margin-bottom:3px;padding:11px 14px;font-weight:500;display:flex}.sidebar .nav-link:hover{color:#fff;background:#ffffff12}.sidebar .nav-link.active{background:var(--q-mint);color:var(--ink);font-weight:600}.sidebar .nav-symbol{place-items:center;width:20px;display:inline-grid}.sidebar .nav-symbol svg{width:19px;height:19px}.sidebar .btn-link,.sidebar .text-muted{color:#9cc4b8!important}.sidebar .bg-light{color:#cfe6de;border-radius:var(--q-r-lg)!important;background:#ffffff12!important}.sidebar .bg-light strong{color:#fff;font-family:var(--q-display)}.sidebar .bg-light .text-muted{color:#cfe6de!important}.sidebar .btn-outline-primary{--bs-btn-color:var(--q-mint);--bs-btn-border-color:var(--q-mint);--bs-btn-hover-bg:var(--q-mint);--bs-btn-hover-color:var(--ink)}.q-lockup{align-items:center;gap:10px;text-decoration:none;display:inline-flex}.q-lockup img{height:auto;display:block}.q-lockup .q-symbol{width:34px}.q-lockup .q-word{width:118px}.topbar{margin-bottom:26px}.topbar .eyebrow{color:var(--q-muted)}.avatar{background:var(--q-mint);width:44px;height:44px;color:var(--ink);border-radius:var(--q-r);font-family:var(--q-display);font-weight:800;text-decoration:none}.bell{width:44px;height:44px;box-shadow:var(--q-shadow);background:#fff;border-radius:var(--q-r)!important}.bell:hover,.bell.active{background:var(--q-mint-soft)}.bell-badge{background:var(--brand);border-radius:10px;min-width:20px;height:20px;font-size:.72rem;top:-5px;right:-5px}.bell-badge.is-danger{background:var(--q-alert)}.mobile-header{background:var(--ink);border-bottom:0}.mobile-header .avatar{width:40px;height:40px}.mobile-header .bell{color:#fff;box-shadow:none;background:#ffffff1a}.mobile-nav{border-top:1px solid var(--q-line);box-shadow:0 -6px 20px #0f3d3a0f}.mobile-nav a{color:var(--q-muted);font-weight:500}.mobile-nav a.active{color:var(--ink);font-weight:700}.mobile-nav a span{border-radius:var(--q-r-sm);place-items:center;width:44px;height:28px;display:grid}.mobile-nav a.active span{background:var(--q-mint)}.card{border-radius:var(--q-r-lg);box-shadow:var(--q-shadow);background:#fff;border:0}.card.p-0{overflow:hidden}.intro-panel{background:var(--ink);border-radius:var(--q-r-xl);padding:30px 34px;position:relative;overflow:hidden}.intro-panel:after{content:"";background:var(--brand);opacity:.55;border-radius:60px 60px 60px 12px;width:200px;height:200px;position:absolute;top:-50px;right:-50px}.intro-panel>*{z-index:1;position:relative}.intro-panel h2{color:#fff}.intro-panel p{color:#cfe6de}.intro-panel .btn{background:var(--q-mint);color:var(--ink);border-radius:var(--q-r)}.stat{letter-spacing:-.04em;font-size:2.6rem;font-weight:800;line-height:1}.stat-label{color:var(--q-muted);font-weight:500}.section-title{font-size:1.15rem;font-weight:700}.empty-icon{border-radius:var(--q-r);background:var(--q-mint-soft);color:var(--ink)}.tag{border-radius:var(--q-r-sm);background:var(--q-mint-soft);color:var(--ink);padding:4px 10px;font-size:.78rem;font-weight:600}.btn{border-radius:var(--q-r);min-height:44px;padding:.68rem 1.1rem;font-weight:600;transition:background-color .15s,color .15s,border-color .15s,transform .1s}.btn:active{transform:translateY(1px)}.btn-sm{border-radius:var(--q-r-sm);min-height:36px;padding:.4rem .8rem}.btn-primary{--bs-btn-bg:var(--ink);--bs-btn-border-color:var(--ink);--bs-btn-hover-bg:var(--brand);--bs-btn-hover-border-color:var(--brand);--bs-btn-active-bg:var(--brand);--bs-btn-active-border-color:var(--brand);--bs-btn-disabled-bg:#9cb3ad;--bs-btn-disabled-border-color:#9cb3ad}.btn-outline-primary{--bs-btn-color:var(--ink);--bs-btn-border-color:#b9d6cc;--bs-btn-bg:#fff;--bs-btn-hover-bg:var(--q-mint);--bs-btn-hover-color:var(--ink);--bs-btn-hover-border-color:var(--q-mint);--bs-btn-active-bg:var(--q-mint);--bs-btn-active-color:var(--ink)}.btn-outline-secondary{--bs-btn-color:var(--q-muted);--bs-btn-border-color:#cddad6;--bs-btn-hover-bg:var(--q-surface);--bs-btn-hover-color:var(--ink);--bs-btn-hover-border-color:#b9d6cc}.btn-link{color:var(--ink);text-underline-offset:3px;font-weight:600}.form-label{color:var(--ink);font-size:.9rem;font-weight:600}.form-control,.form-select{background-color:#fff;border:1.5px solid #d3e0dc;border-radius:12px 12px 12px 3px;min-height:46px}.form-control:focus,.form-select:focus{border-color:var(--brand);box-shadow:0 0 0 4px #a7d8c880}.form-check-input{border:1.5px solid #a9c2bb;border-radius:5px 5px 5px 1px}.form-check-input[type=radio]{border-radius:50%}.form-check-input:checked{background-color:var(--ink);border-color:var(--ink)}.form-check-input:focus{border-color:var(--brand);box-shadow:0 0 0 4px #a7d8c880}.invalid-feedback{color:var(--q-danger)}.alert{border-radius:var(--q-r-lg);border:0;padding:14px 18px}.alert-success{background:var(--q-mint-soft);color:var(--ink)}.alert-info{color:#173b63;background:#eaf2fb}.alert-warning{background:var(--q-alert-soft);color:var(--q-alert-text)}.alert-danger{background:var(--q-danger-soft);color:#7a1c14}.task-alert{border-radius:var(--q-r-lg);box-shadow:none;padding:12px 16px}.task-alert-danger{background:var(--q-alert-soft);color:var(--q-alert-text);box-shadow:none}.task-alert-warning{color:#6b4100;box-shadow:none;background:#fff7e0}.task-alert-icon{border-radius:var(--q-r-sm)}.task-alert-danger .task-alert-icon{background:var(--q-alert)}.table{--bs-table-border-color:var(--q-line);margin-bottom:0}.table>thead th{text-transform:uppercase;letter-spacing:.08em;color:var(--q-muted);background:#fafcfb;border-bottom-width:1px;padding-top:12px;padding-bottom:12px;font-size:.75rem;font-weight:600}.table>tbody td{padding-top:13px;padding-bottom:13px}.table-responsive{border-radius:var(--q-r-lg)}.pagination{--bs-pagination-color:var(--ink);--bs-pagination-active-bg:var(--ink);--bs-pagination-active-border-color:var(--ink);--bs-pagination-border-radius:10px 10px 10px 2px;--bs-pagination-hover-bg:var(--q-mint-soft);--bs-pagination-focus-box-shadow:0 0 0 4px #a7d8c880}.badge{border-radius:8px 8px 8px 2px}.pack-state{border-radius:var(--q-r-sm);padding:3px 10px;font-size:.76rem}.pack-state-draft{color:#7a4a00;background:#fff4e0}.pack-state-reviewed{color:#1d4f9a;background:#e6eefb}.pack-state-validated{background:var(--q-mint);color:var(--ink)}.review-issue{border-radius:var(--q-r-lg);box-shadow:var(--q-shadow);border-left:0;padding:14px 16px 14px 20px;position:relative;overflow:hidden}.review-issue:before{content:"";background:var(--brand);width:5px;position:absolute;top:0;bottom:0;left:0}.review-blocking:before{background:var(--q-danger)}.review-important:before{background:var(--q-alert)}.citation{border-radius:var(--q-r);background:var(--q-mint-soft);border-left:0;padding:10px 14px}.citation-unverified{background:var(--q-alert-soft)}.bell-panel{border-radius:var(--q-r-lg);border:0;box-shadow:0 16px 40px #0f3d3a2e}.bell-head strong{font-family:var(--q-display);color:var(--ink);font-size:1.05rem}.bell-tasks{border-radius:var(--q-r);background:#fff7e0}.bell-tasks.is-danger{background:var(--q-alert-soft);color:var(--q-alert-text)}.bell-item.is-unread,.notification-row.is-unread{box-shadow:inset 4px 0 0 var(--q-mint);background:#f3faf7}.notification-icon{border-radius:var(--q-r-sm);background:var(--q-mint-soft)}.task-row:hover,.notification-row:hover{background:#f6faf8}.task-action{color:var(--brand)}.q-thread{padding-top:2px;position:relative}.q-thread-track{background:var(--q-line);border-radius:2px;height:4px;position:absolute;top:13px;left:13px;right:13px}.q-thread-done{background:var(--brand);border-radius:2px;height:4px;position:absolute;top:13px;left:13px}.q-thread ol{grid-template-columns:repeat(var(--steps,7), minmax(0, 1fr));margin:0;padding:0;list-style:none;display:grid;position:relative}.q-thread li{text-align:center;color:var(--q-muted);flex-direction:column;align-items:center;gap:8px;font-size:.8rem;display:flex}.q-thread li:first-child{text-align:left;align-items:flex-start}.q-thread li:last-child{text-align:right;align-items:flex-end}.q-thread a{color:inherit;text-decoration:none;display:contents}.q-thread a:hover .q-dot{transform:scale(1.12)}.q-dot{border-radius:var(--q-r-sm);border:3px solid var(--q-line);box-sizing:border-box;color:#fff;background:#fff;place-items:center;width:28px;height:28px;font-size:.8rem;font-weight:800;transition:transform .15s;display:grid}.q-step-done .q-dot{background:var(--brand);border-color:var(--brand)}.q-step-late .q-dot{background:var(--q-alert);border-color:var(--q-alert)}.q-step-late{font-weight:600;color:var(--q-alert-text)!important}.q-step-next .q-dot{border-color:var(--brand)}.q-step-next{font-weight:600;color:var(--ink)!important}.q-step-date{opacity:.85;font-size:.72rem}.q-countdown{background:var(--ink);color:#fff;text-align:center;border-radius:18px 18px 18px 4px;flex:none;padding:12px 18px}.q-countdown strong{font-family:var(--q-display);letter-spacing:-.03em;color:#fff;font-size:2.1rem;font-weight:800;line-height:1;display:block}.q-countdown span{color:var(--q-mint);font-size:.75rem}.q-pieces{grid-template-columns:repeat(var(--pieces,10), minmax(0, 1fr));gap:4px;display:grid}.q-pieces span{border-radius:var(--q-r-xs);background:var(--q-line);height:22px}.q-pieces .is-validated{background:var(--brand)}.q-pieces .is-reviewed,.q-pieces .is-draft{background:var(--q-mint)}.pack-progress{display:none}.q-card-mint{color:var(--ink);box-shadow:none;background:var(--q-mint)!important}.q-card-ink{color:#fff;box-shadow:none;background:var(--ink)!important}.q-card-ink h2,.q-card-ink .section-title{color:#fff}.q-chip{background:var(--q-mint-soft);color:var(--ink);white-space:nowrap;border-radius:8px 8px 8px 2px;padding:3px 9px;font-size:.74rem;font-weight:700;display:inline-block}.q-chip-late{background:var(--q-alert-soft);color:#9a3412}.q-hello{letter-spacing:-.035em;margin:0;font-size:clamp(2rem,4vw,2.9rem);line-height:1.05}.q-hello span{color:var(--brand)}.footer-note{color:var(--q-muted)}.q-thread-caption{color:var(--q-muted);margin:12px 0 0;font-size:.9rem;display:none}.q-thread-caption strong{color:var(--ink)}.q-thread-late{color:var(--q-alert-text);font-weight:600}@media (width<=991px){.card{border-radius:20px 20px 20px 4px}}@media (width<=767px){.q-thread .q-step-label{display:none}.q-thread-caption{display:block}.q-countdown{padding:8px 14px}.q-countdown strong{font-size:1.6rem}}@media (prefers-reduced-motion:reduce){.btn,.q-dot{transition:none}}.creation-steps{flex-wrap:wrap;gap:6px;margin:0 0 24px;padding:0;list-style:none;display:flex}.creation-steps a{color:var(--ink,#0f3d3a);background:#fff;border:1px solid #d5dedb;border-radius:14px 14px 14px 3px;align-items:center;gap:8px;padding:8px 12px;font-size:.85rem;text-decoration:none;display:inline-flex}.creation-steps a b{background:#e3ece9;border-radius:50%;place-items:center;width:22px;height:22px;font-size:.75rem;display:inline-grid}.creation-steps a.done b{background:var(--brand,#2f7e72);color:#fff}.creation-steps a.current{border-color:var(--brand,#2f7e72);box-shadow:0 0 0 3px #a7d8c880}.creation-steps a.locked{opacity:.5;pointer-events:none}.creation-chat{position:sticky;top:16px}.chat-list{flex-direction:column;gap:8px;max-height:420px;display:flex;overflow-y:auto}.chat-msg{background:#f2f6f5;border-radius:12px 12px 12px 3px;padding:8px 10px;font-size:.9rem}.chat-msg.expert{background:#e3f2ec}.chat-msg.client{background:#fff;border:1px solid #e3ece9;border-radius:12px 12px 3px;align-self:flex-end}.chat-msg.system{background:0 0;border:1px dashed #d5dedb;font-size:.82rem}.founder-row{border-top:1px solid #e3ece9;margin-top:12px;padding-top:12px}body.focus-mode{background:var(--surface,#f2f6f5);min-height:100vh}.focus-bar{background:var(--ink,#0f3d3a);z-index:20;position:sticky;top:0}.focus-inner{justify-content:space-between;align-items:center;gap:16px;max-width:1240px;margin:0 auto;padding:12px 24px;display:flex}.focus-profile{color:#fff;background:0 0;border:0;align-items:center;gap:10px;padding:4px;font-weight:600;display:inline-flex}.focus-profile .avatar{background:var(--mint,#a7d8c8);width:36px;height:36px;color:var(--ink,#0f3d3a);border-radius:50%;place-items:center;font-weight:800;display:grid}.focus-main{max-width:1240px;margin:0 auto;padding:32px 24px 48px}.focus-exit{border-top:1px solid #d5dedb;flex-wrap:wrap;align-items:center;gap:16px;margin-top:40px;padding-top:24px;display:flex}@media (width<=600px){.focus-inner,.focus-main{padding-left:16px;padding-right:16px}}.chat-msg.ai{background:#fff;border:1px solid #a7d8c8}.chat-typing{padding:6px 2px}.sidebar{overflow:hidden}.sidebar-scroll{scrollbar-width:thin;scrollbar-color:#fff3 transparent;flex:auto;margin:0 -8px;padding:0 8px;overflow-y:auto}.app-nav .nav-link{margin-bottom:1px;padding:8px 14px}.app-nav .nav-group{letter-spacing:.12em;text-transform:uppercase;color:#8fbfb2;margin:16px 14px 6px;font-size:.72rem;font-weight:700}.app-nav .nav-logout{color:#9cc4b8;padding:8px 14px;text-decoration:none}.assoc-switch{border-radius:var(--q-r-lg);background:#ffffff12;margin:14px 0 4px}.assoc-switch summary{cursor:pointer;grid-template-columns:1fr auto;align-items:center;column-gap:8px;padding:10px 14px;list-style:none;display:grid}.assoc-switch summary::-webkit-details-marker{display:none}.assoc-switch summary .eyebrow{color:#8fbfb2;grid-column:1/-1;margin:0;font-size:.68rem}.assoc-switch-name{color:#fff;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.assoc-switch[open] summary .nav-symbol{transform:rotate(180deg)}.assoc-switch-menu{gap:2px;padding:0 8px 8px;display:grid}.assoc-switch-menu a{color:#cfe6de;border-radius:10px;padding:8px 10px;font-size:.92rem;text-decoration:none}.assoc-switch-menu a:hover{color:#fff;background:#ffffff14}.install-btn{background:var(--q-mint);color:var(--ink);border:0;font-weight:600}.mobile-nav-menu{color:#516e62;background:0 0;border:0;flex-direction:column;align-items:center;gap:3px;padding:5px;font-size:.75rem;display:flex}.mobile-menu{background:var(--ink);color:#e8f3ef;width:min(320px,86vw)!important}.mobile-menu .offcanvas-header{padding-top:max(16px, env(safe-area-inset-top))}.mobile-menu .nav-link{color:#cfe6de;border-radius:var(--q-r);align-items:center;gap:12px;padding:10px 14px;text-decoration:none;display:flex}.mobile-menu .nav-link.active{background:var(--q-mint);color:var(--ink);font-weight:600}.mobile-menu .nav-symbol{place-items:center;width:20px;display:inline-grid}.mobile-menu .offcanvas-body{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.module-group{margin-bottom:22px}.module-group>h2{margin-bottom:10px}.module-tile{flex-direction:column;gap:2px;padding:14px 16px;display:flex}.module-tile .stat{margin-bottom:4px;font-size:1.6rem;line-height:1.1}.module-tile strong{color:var(--ink)}.settings-panel>summary{cursor:pointer;font-family:var(--q-display)}.settings-block{border-top:1px solid #e1e9e7;padding:16px 0 4px}.review-group>summary{cursor:pointer;padding:6px 0;list-style-position:inside}.review-group .review-issue{margin-left:4px}.funding-list>details,.funding-more>details{border-top:1px solid #e8efed}.funding-list>details:first-child{border-top:0}.funding-item>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:14px 18px;list-style:none;display:flex}.funding-item>summary::-webkit-details-marker{display:none}.funding-item>summary:hover{background:#f6faf8}.funding-item[open]>summary{background:#f2f7f5}.funding-main{flex-direction:column;min-width:0;display:flex}.funding-meta{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:6px;display:flex}.funding-detail{padding:4px 18px 18px}.funding-more>summary{cursor:pointer;color:var(--brand);border-top:1px solid #e8efed;padding:14px 18px;font-weight:600}@media (width<=575px){.funding-item>summary{flex-direction:column;align-items:flex-start}.funding-meta{justify-content:flex-start}}.start-choice{border-radius:var(--q-r);background:var(--q-card,#fff);height:100%;color:inherit;border:1px solid #0f3d3a1f;flex-direction:column;gap:.5rem;padding:1.5rem;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.start-choice:hover,.start-choice:focus-visible{border-color:var(--ink);box-shadow:0 6px 20px #0f3d3a14}.start-choice-icon{background:var(--q-surface);border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.start-choice-title{font-size:1.15rem;font-weight:700}.start-choice-text{color:var(--bs-secondary-color);margin-bottom:.75rem}.start-steps{gap:.75rem;padding-left:1.25rem;display:grid}.start-steps li span{color:var(--bs-secondary-color);font-size:.95rem;display:block}.q-step-date,.q-chip,.tag,.pack-state,.bell-badge,.review-badge,.q-countdown span{font-size:max(.75rem,12px)}.app-nav .nav-group,.assoc-switch summary .eyebrow{font-size:max(.72rem,12px)}@media (pointer:coarse){.task-alert-close,.bell-read,.btn-link[aria-label=Supprimer]{place-items:center;min-width:44px;min-height:44px;display:inline-grid}.task-alert-link{align-items:center;min-height:44px;padding:0 8px;display:inline-flex}.btn-sm{min-height:40px;padding-top:.45rem;padding-bottom:.45rem}main a.small:not(.btn),main .table a,.federation-tabs a,.federation-tabs button{align-items:center;min-height:44px;display:inline-flex}.form-check-input{width:1.35em;height:1.35em}}.app-nav .nav-link{white-space:nowrap}.app-nav .nav-label{text-overflow:ellipsis;overflow:hidden}.nav-section>summary.nav-group{cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:2px;padding:6px 0;list-style:none;display:flex}.nav-section>summary.nav-group::-webkit-details-marker{display:none}.nav-section>summary.nav-group:hover{color:#fff}.nav-section>summary .nav-symbol{transition:transform .15s;transform:rotate(-90deg)}.nav-section[open]>summary .nav-symbol{transform:none}.nav-section>summary .nav-symbol svg{width:14px;height:14px}.mobile-menu .nav-section>summary.nav-group{min-height:44px}@media (height<=820px){.sidebar{padding-top:18px;padding-bottom:14px}.sidebar .q-lockup{margin-bottom:1.25rem!important}.app-nav .nav-link{padding-top:6px;padding-bottom:6px}.app-nav .nav-group{margin-top:10px}}.account-menu .avatar{cursor:pointer;border:0}.account-menu .dropdown-menu{border-radius:var(--q-r);border:1px solid #0f3d3a1f;min-width:260px;padding:8px;box-shadow:0 14px 30px #0f3d3a1f}.account-menu .dropdown-item{color:var(--ink);border-radius:8px;align-items:center;gap:10px;padding:9px 12px;display:flex}.account-menu .dropdown-item.active,.account-menu .dropdown-item:active{background:var(--q-mint-soft);color:var(--ink);font-weight:600}.account-menu .nav-symbol svg{width:17px;height:17px}.account-head{border-bottom:1px solid #0f3d3a1a;flex-direction:column;margin-bottom:6px;padding:8px 12px 10px;display:flex}.account-head span{color:var(--bs-secondary-color);text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.account-logout{margin-top:6px;color:#9a3412!important;border-top:1px solid #0f3d3a1a!important;border-radius:0 0 8px 8px!important}.q-chip-new{background:var(--brand);color:#fff}.deadline-row{border-top:1px solid #0f3d3a14;justify-content:space-between;gap:1rem;padding:14px 0;display:flex}.deadline-row:first-child{border-top:0}.task-main{flex:1;min-width:0}.task-meta{color:var(--bs-secondary-color);flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:.85rem;display:flex}.task-desc{white-space:pre-wrap;-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.task-side{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.task-due{white-space:nowrap;font-weight:600}.task-due.is-late{color:#b42318}.task-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.task-edit{color:var(--bs-secondary-color)}.task-count{background:var(--q-mint-soft);vertical-align:2px;border-radius:12px;place-items:center;min-width:24px;height:24px;padding:0 7px;font-size:.8rem;display:inline-grid}.task-group-late .task-count{color:#b42318;background:#fde4e1}.task-closed summary{cursor:pointer;min-height:32px}@media (width<=575px){.deadline-row{flex-direction:column}.task-side{text-align:left;align-items:flex-start}.task-actions{justify-content:flex-start}}.filter-pill{min-height:36px;color:var(--ink);background:#fff;border:1px solid #0f3d3a2e;border-radius:99px;align-items:center;padding:6px 14px;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.filter-pill:hover{border-color:var(--ink);color:var(--ink)}.filter-pill.active{background:var(--q-mint);border-color:var(--q-mint);color:var(--ink)}@media (pointer:coarse){.filter-pill{min-height:44px}}.form-check-input{width:1.2em;height:1.2em;margin-top:.15em}input[type=checkbox]:not(.form-check-input),input[type=radio]:not(.form-check-input){width:18px;height:18px;accent-color:var(--ink);vertical-align:-3px}.form-check-label{cursor:pointer}label:has(>input[type=checkbox]){cursor:pointer}label:has(>input[type=radio]){cursor:pointer}.duplicates-card{border-left:4px solid #b45309}.duplicate-row{border-top:1px solid #0f3d3a14;justify-content:space-between;align-items:center;gap:1rem;padding:10px 0;display:flex}.btn-outline-primary{--bs-btn-disabled-color:#7f9a93;--bs-btn-disabled-border-color:#d5e3de;--bs-btn-disabled-bg:#f4f7f6}.btn-outline-secondary{--bs-btn-disabled-color:#9aaea8;--bs-btn-disabled-border-color:#dce6e2}.btn-link{--bs-btn-disabled-color:#9aaea8}.btn:disabled,.btn.disabled{cursor:not-allowed;pointer-events:auto;opacity:1}.btn-reason{color:var(--bs-secondary-color);margin-top:4px;font-size:.8rem;display:block}.pack-state-rejected{color:#8a1c12;background:#fde4e1}.task-row .task-action{margin-top:4px;display:block}.ag-card{color:inherit;text-decoration:none;transition:box-shadow .15s,transform .15s}.ag-card:hover{color:inherit;transform:translateY(-1px);box-shadow:0 10px 26px #0f3d3a1a}.ag-card h2{text-underline-offset:3px;text-decoration:underline}.ag-countdown{font-weight:800;font-family:var(--q-display);background:var(--ink);color:#fff;border-radius:10px 10px 10px 2px;padding:3px 10px;font-size:.9rem}.ag-create{position:relative}.ag-create>summary{list-style:none}.ag-create>summary::-webkit-details-marker{display:none}.ag-create-menu{z-index:20;border-radius:var(--q-r);background:#fff;flex-direction:column;min-width:260px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 14px 30px #0f3d3a24}.ag-create-menu a{color:var(--ink);border-radius:8px;padding:10px 12px;font-weight:600;text-decoration:none}.ag-create-menu a:hover{background:var(--q-mint-soft)}.doc-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.doc-filters .form-control{flex:260px;max-width:420px}.doc-filters .form-select{flex:0 220px}.doc-group{padding:0;overflow:hidden}.doc-group-head .small{white-space:nowrap}.doc-group-head{justify-content:space-between;align-items:baseline;gap:1rem;padding:16px 20px 10px;display:flex}.doc-list{margin:0;padding:0;list-style:none}.doc-list li{border-top:1px solid #0f3d3a14;grid-template-columns:1fr auto 110px;align-items:center;gap:12px;padding:10px 20px;display:grid}.doc-list li:hover{background:#f6faf8}.doc-list a{color:var(--ink);min-width:0;text-decoration:none}.doc-list a:hover .doc-title{text-decoration:underline}.doc-title{font-weight:600;display:block}.doc-assoc{color:var(--bs-secondary-color);font-size:.85rem;display:block}.doc-date{color:var(--bs-secondary-color);text-align:right;white-space:nowrap;font-size:.85rem}@media (width<=575px){.doc-list li{grid-template-columns:1fr auto}.doc-date{display:none}}.health-todo{color:inherit;border-top:1px solid #0f3d3a14;border-radius:10px;justify-content:space-between;align-items:center;gap:1rem;margin:0 -12px;padding:14px 12px;text-decoration:none;display:flex}.health-todo:hover{color:inherit;background:#f6faf8}.health-todo:hover .health-todo-title{text-underline-offset:3px;text-decoration:underline}.health-todo-side{flex-shrink:0;align-items:center;gap:12px;display:flex}.health-todo-go{color:var(--brand);font-size:1.1rem;font-weight:700}.password-field{position:relative}.password-field .form-control{padding-right:92px}.password-toggle{color:var(--ink);background:0 0;border:0;border-radius:8px;min-height:36px;padding:8px 10px;font-size:.85rem;font-weight:600;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.password-toggle:hover{background:var(--q-mint-soft)}.password-field .is-invalid+.password-toggle{right:34px}.password-rules{color:var(--bs-secondary-color);gap:4px;margin:-6px 0 16px;padding:0;font-size:.85rem;list-style:none;display:grid}.password-rules li:before{content:"○";color:#9aaea8;width:1.4em;display:inline-block}.password-rules li.is-ok{color:var(--ink)}.password-rules li.is-ok:before{content:"✓";color:var(--brand);font-weight:700}.password-field:has(.is-invalid)~.invalid-feedback{display:block}.ai-text>:last-child{margin-bottom:0}.ai-text p{margin-bottom:.5rem}.ai-text ul,.ai-text ol{margin-bottom:.5rem;padding-left:1.2rem}.team-suggestion{border-top:1px solid #0f3d3a14;justify-content:space-between;align-items:center;gap:1rem;padding:10px 0;display:flex}.ai-presets{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ai-preset{color:var(--ink);background:#fff;border:1px solid #0f3d3a2e;border-radius:99px;min-height:36px;padding:6px 14px;font-size:.9rem;font-weight:600}.ai-preset:hover{background:var(--q-mint-soft);border-color:var(--q-mint)}@media (pointer:coarse){.ai-preset{min-height:44px}}.install-btn:focus-visible{outline-offset:2px;outline:3px solid #fff}.setup-progress{background:var(--q-mint-soft);border-radius:99px;height:8px;margin-bottom:10px;overflow:hidden}.setup-progress span{background:var(--brand);border-radius:99px;height:100%;display:block}.setup-steps{margin:0;padding:0;list-style:none}.setup-steps li{border-top:1px solid #0f3d3a14;grid-template-columns:32px 1fr auto;align-items:center;gap:12px;padding:12px 0;display:grid}.setup-mark{width:28px;height:28px;color:var(--ink);background:#eef3f1;border-radius:50%;place-items:center;font-size:.85rem;font-weight:700;display:grid}.setup-steps li.is-done .setup-mark{background:var(--brand);color:#fff}.setup-steps li.is-done strong{color:var(--bs-secondary-color);font-weight:500;-webkit-text-decoration:line-through #0f3d3a4d;text-decoration:line-through #0f3d3a4d}.setup-steps li.is-next .setup-mark{background:var(--ink);color:#fff}.setup-text strong{display:block}.setup-text span{color:var(--bs-secondary-color);font-size:.88rem;display:block}@media (width<=575px){.setup-steps li{grid-template-columns:32px 1fr}.setup-steps li .btn{grid-column:2;justify-self:start}}.fb-button{z-index:1035;background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:24px 24px 6px;align-items:center;gap:8px;min-height:48px;padding:10px 18px;font-weight:700;display:inline-flex;position:fixed;bottom:20px;right:20px;box-shadow:0 10px 28px #0f3d3a47}.fb-button:hover{background:var(--brand)}.fb-button:focus-visible{outline:3px solid var(--q-mint);outline-offset:3px}@media (width<=991px){.fb-button{bottom:calc(84px + env(safe-area-inset-bottom));padding:10px 14px;right:14px}.fb-button-label{display:none}}.fb-toast{z-index:1036;background:var(--brand);color:#fff;border-radius:12px;padding:10px 16px;font-weight:600;position:fixed;bottom:80px;right:20px;box-shadow:0 10px 28px #0f3d3a33}@media (width<=991px){.fb-toast{bottom:calc(144px + env(safe-area-inset-bottom));left:14px;right:14px}}.fb-dialog{border:0;border-radius:20px 20px 6px;width:min(440px,100vw - 24px);max-height:calc(100dvh - 40px);margin:auto 20px 20px auto;padding:22px;overflow:auto;box-shadow:0 24px 60px #0f3d3a40}.fb-dialog::backdrop{background:#0f3d3a40}@media (width<=575px){.fb-dialog{width:100vw;max-width:100vw;padding-bottom:calc(22px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;margin:auto auto 0}}.fb-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.fb-close{min-width:44px;min-height:44px;color:var(--ink);background:0 0;border:0;font-size:1.6rem;line-height:1}.fb-dialog fieldset{border:0;margin:0;padding:0}.fb-kinds{flex-wrap:wrap;gap:8px;display:flex}.fb-kind input{opacity:0;pointer-events:none;position:absolute}.fb-kind>span{cursor:pointer;border:1px solid #0f3d3a33;border-radius:99px;align-items:center;gap:6px;min-height:40px;padding:8px 14px;font-size:.9rem;font-weight:600;display:inline-flex}.fb-kind-sm>span{min-height:34px;padding:5px 12px;font-size:.85rem}.fb-kind input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}.fb-kind input:focus-visible+span{outline:3px solid var(--q-mint);outline-offset:2px}.fb-recent-item{border-top:1px solid #0f3d3a14;justify-content:space-between;gap:8px;padding:6px 0;font-size:.85rem;display:flex}.fb-report{padding:0}.fb-report>summary{cursor:pointer;grid-template-columns:32px 1fr auto;align-items:center;gap:12px;padding:14px 18px;list-style:none;display:grid}.fb-report>summary::-webkit-details-marker{display:none}.fb-report.is-blocking{box-shadow:inset 4px 0 #b42318}.fb-report-kind{background:var(--q-mint-soft);border-radius:10px;place-items:center;width:32px;height:32px;font-weight:700;display:grid}.fb-report-main strong{font-weight:600;display:block}.fb-report-tags{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.fb-report-body{padding:0 18px 18px 62px}.fb-context{grid-template-columns:110px 1fr;gap:4px 12px;display:grid}.fb-context dt{color:var(--bs-secondary-color);font-weight:600}.fb-context dd{overflow-wrap:anywhere;margin:0}.fb-shot{border:1px solid #0f3d3a1f;border-radius:10px;max-width:100%;max-height:320px;margin-top:8px}@media (width<=575px){.fb-report>summary{grid-template-columns:32px 1fr}.fb-report-tags{grid-column:2;justify-content:flex-start}.fb-report-body{padding-left:18px}}.status-banner{border-radius:var(--q-r-lg);border:1px solid var(--lvl-b);background:var(--lvl-bg);color:var(--ink);flex-wrap:wrap;align-items:center;gap:.75rem;margin:0 0 1rem;padding:12px 16px;text-decoration:none;display:flex}.status-banner:hover{color:var(--ink);filter:brightness(.98)}.status-banner__dot{background:var(--lvl);width:.7rem;height:.7rem;box-shadow:0 0 0 4px color-mix(in srgb, var(--lvl) 20%, transparent);border-radius:50%;flex:none}.status-banner__more{color:var(--lvl);white-space:nowrap;margin-left:auto;font-weight:600}.status-banner.is-maintenance,.status-banner.is-scheduled{--lvl:#2f5fa8;--lvl-bg:#e5edf8;--lvl-b:#c9d8ef}.status-banner.is-degraded{--lvl:#9a6a12;--lvl-bg:#f7eedd;--lvl-b:#ecdab4}.status-banner.is-partial{--lvl:#b4521f;--lvl-bg:#f9e8de;--lvl-b:#efcbb5}.status-banner.is-major{--lvl:#a42738;--lvl-bg:#fae7e9;--lvl-b:#f0c3c9}
