@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;700;800&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--bg:#f5efe2;--paper:#fff9ee;--ink:#24231f;--muted:#6f6a5f;--line:#e4d6bf;--brand:#bb5d2a;--brand-strong:#8c3f18;--brand-soft:#f2ddc7;--ok:#2f845f;--info:#2f6f9f;--shadow:0 14px 32px #352a1e1f}*{box-sizing:border-box}body{min-height:100vh;color:var(--ink);background:radial-gradient(circle at 85% 12%, #f9dcb9 0%, #f9dcb900 42%), radial-gradient(circle at 12% 78%, #e3f0df 0%, #e3f0df00 36%), var(--bg);margin:0;font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}#root{min-height:100vh}.app-shell{flex-direction:column;gap:1rem;max-width:1280px;margin:0 auto;padding:1.25rem;display:flex;position:relative}.ambient-shape{filter:blur(40px);opacity:.4;pointer-events:none;z-index:0;border-radius:999px;width:280px;height:280px;position:fixed}.ambient-shape-a{background:#f2b766;top:-100px;right:3%}.ambient-shape-b{background:#9ccbb2;bottom:-90px;left:5%}.panel{z-index:1;background:color-mix(in srgb, var(--paper) 88%, white 12%);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:1rem;position:relative;overflow:hidden}.panel:before{content:"";opacity:.65;background:linear-gradient(90deg,#bb5d2a,#d69251,#9ccbb2);height:4px;position:absolute;inset:0 0 auto}.topbar{grid-template-columns:1fr minmax(240px,380px);gap:1rem;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--brand-strong);margin:0;font-size:.72rem}h1{margin:.35rem 0;font-size:clamp(1.6rem,2.4vw,2.4rem);line-height:1.04}h2{margin:0;font-size:clamp(1.3rem,1.8vw,1.75rem)}h3,h4,p{margin:0}.subhead{color:var(--muted);max-width:72ch}.status-block{border:1px solid var(--line);background:#ffffffa8;border-radius:14px;flex-direction:column;gap:.55rem;padding:.85rem;display:flex}.status-block p{color:var(--muted);font-size:.92rem;line-height:1.45}.language-switcher{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.language-switcher-label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-right:.2rem;font-size:.72rem}.flag-button{border:1px solid var(--line);color:var(--ink);letter-spacing:.03em;background:#fffc;border-radius:999px;align-items:center;gap:.35rem;padding:.36rem .56rem;font-size:.78rem;font-weight:700;display:inline-flex}.flag-button:hover{transform:translateY(-1px)}.flag-button.active{border-color:var(--brand);color:var(--brand-strong);background:#fff2e6;box-shadow:0 0 0 2px #bb5d2a26}.flag-emoji{font-size:.98rem;line-height:1}.pill{border:1px solid var(--line);background:#f9f1e3;border-radius:999px;align-items:center;width:fit-content;padding:.24rem .64rem;font-size:.76rem;font-weight:600;display:inline-flex}.api-grid,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}label{color:var(--muted);flex-direction:column;gap:.4rem;font-size:.84rem;display:flex}input:not([type=checkbox]),select,textarea{border:1px solid var(--line);width:100%;font:inherit;color:var(--ink);background:#ffffffd9;border-radius:10px;padding:.62rem .72rem}textarea{resize:vertical}input:not([type=checkbox]):focus,select:focus,textarea:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px #bb5d2a2e}input[type=checkbox]{width:auto;accent-color:var(--brand)}.full-width{grid-column:1/-1}.row-wrap{flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:.7rem;display:flex}.inline-toggle{flex-direction:row;align-items:center;gap:.45rem;font-size:.86rem}.warning-text{color:#8c6a57;margin-top:.75rem;font-size:.8rem}.api-help{border:1px solid var(--line);background:#fffc;border-radius:10px;gap:.35rem;margin-top:.65rem;padding:.6rem .7rem;display:grid}.api-help strong{color:var(--ink);font-size:.86rem}.api-help ol{color:var(--muted);gap:.15rem;margin:0;padding-left:1rem;font-size:.83rem;display:grid}.api-help a{color:var(--brand-strong);font-size:.83rem;text-decoration:underline}.settings-checkbox-list{margin-top:.6rem}.settings-checkbox{border:1px solid var(--line);background:#fffc;border-radius:10px;gap:.3rem;padding:.55rem .65rem;display:grid}.settings-checkbox-row{color:var(--ink);align-items:center;gap:.5rem;font-size:.85rem;display:inline-flex}.settings-checkbox small{color:var(--muted);font-size:.78rem}.key-banner{margin:.75rem 0}.advanced-settings,.export-details{border:1px solid var(--line);background:#ffffffb3;border-radius:10px;margin-top:.8rem;padding:.6rem .75rem}.advanced-settings>summary,.export-details>summary{cursor:pointer;color:var(--ink);font-weight:700}.advanced-settings[open]>summary,.export-details[open]>summary{margin-bottom:.7rem}button{font:inherit;cursor:pointer;border:none}.primary,.ghost,.step-pill{transition:transform .15s,box-shadow .15s,background .15s}.primary{background:linear-gradient(120deg, var(--brand), #ca7848);color:#fff;border-radius:10px;padding:.68rem 1rem;font-weight:700;box-shadow:0 8px 20px #8c3f183d}.primary:hover:not(:disabled){transform:translateY(-1px)}.primary:disabled{opacity:.65;cursor:not-allowed}.ghost{border:1px solid var(--line);color:var(--ink);background:#ffffffb3;border-radius:10px;padding:.62rem .94rem}.ghost:hover{transform:translateY(-1px)}.ghost.mini{padding:.4rem .62rem;font-size:.8rem}.stepper{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.step-pill{border:1px solid var(--line);text-align:left;background:#ffffffc7;border-radius:12px;align-items:center;gap:.65rem;padding:.62rem;display:flex}.step-pill span{background:#f0e3ce;border-radius:999px;justify-content:center;align-items:center;width:1.65rem;height:1.65rem;font-size:.78rem;display:inline-flex}.step-pill strong{display:block}.step-pill small{color:var(--muted);font-size:.72rem}.step-pill.active{border-color:var(--brand);background:#fff4e8}.step-pill.complete span{color:var(--ok);background:#d8eedf}.step-pill:disabled{opacity:.55;cursor:not-allowed}.panel-copy{color:var(--muted);margin-top:.4rem;line-height:1.45}.council-banner{background:linear-gradient(#f1f9f5,#f8fcfa);border:1px solid #c9dfd3;border-radius:12px;gap:.2rem;margin-top:.85rem;padding:.7rem .8rem;display:grid}.council-banner strong{color:#1f6c4d}.council-banner p{color:#3f6e58;font-size:.85rem}.action-row{flex-wrap:wrap;gap:.6rem;margin-top:.85rem;display:flex}.insight-card,.summary-box,.detail-card,.report-sidebar,.report-main,.stats-grid article,.review-grid article{border:1px solid var(--line);background:#ffffffd1;border-radius:12px}.insight-card{gap:.5rem;margin-top:.85rem;padding:.8rem;display:grid}.stats-grid,.review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:.8rem;display:grid}.stats-grid article,.review-grid article{padding:.75rem}.review-grid h3{color:var(--muted);font-size:.84rem}.review-grid p{margin-top:.22rem;font-size:.96rem;font-weight:700}.stats-grid ul,.review-grid ul{gap:.35rem;margin:.55rem 0 0;padding:0;list-style:none;display:grid}.stats-grid li{color:var(--muted);justify-content:space-between;gap:.4rem;display:flex}.segment-list li{border:1px solid var(--line);background:#fff;border-radius:10px;gap:.2rem;padding:.5rem .55rem;display:grid}.segment-head{justify-content:space-between;align-items:center;gap:.45rem;display:flex}.segment-list li p{color:var(--muted);font-size:.8rem}.segment-submix{border-top:1px dashed var(--line);margin-top:.2rem;padding-top:.35rem}.segment-submix h4{color:var(--ink);font-size:.78rem}.segment-submix ul{gap:.2rem;margin:.25rem 0 0;padding:0;list-style:none;display:grid}.segment-submix li{color:var(--muted);justify-content:space-between;gap:.4rem;display:flex}.profile-mix-card{grid-column:1/-1}.mix-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:.55rem;display:grid}.mix-grid>div{border:1px solid var(--line);background:#fff;border-radius:10px;padding:.55rem}.mix-grid h4{font-size:.86rem}.mix-grid ul{gap:.25rem;margin-top:.45rem;padding:0;list-style:none;display:grid}.mix-grid li{color:var(--muted);justify-content:space-between;gap:.4rem;display:flex}.options-stack{gap:.55rem;margin-top:.75rem;display:grid}.option-row{grid-template-columns:1fr auto;gap:.45rem;display:grid}.progress-wrap{border:1px solid var(--line);background:#fffdf8;border-radius:10px;gap:.45rem;margin-top:.8rem;padding:.65rem;display:grid}.progress-wrap p{color:var(--muted);font-size:.84rem}.progress-bar{background:#efdfc5;border-radius:999px;height:8px;overflow:hidden}.progress-bar span{background:linear-gradient(90deg,#9bc7ab,#2f845f);border-radius:999px;height:100%;transition:width .18s;display:block}.error-list{color:#8c2a17;background:#fff0ec;border:1px solid #e4b3a7;border-radius:10px;gap:.3rem;margin-top:.7rem;padding:.65rem;font-size:.83rem;display:grid}.report-layout{grid-template-columns:minmax(280px,360px) 1fr;gap:.75rem;margin-top:.9rem;display:grid}.report-sidebar{max-height:74vh;padding:.8rem;position:sticky;top:1rem;overflow:auto}.report-sidebar h3{margin-bottom:.2rem}.muted{color:var(--muted);font-size:.85rem}.summary-box{gap:.4rem;margin:.7rem 0;padding:.55rem;display:grid}.summary-row{border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;justify-content:space-between;gap:.5rem;width:100%;padding:.45rem .55rem;transition:border-color .14s,background .14s,transform .14s;display:flex}.summary-row:hover{border-color:#d5b98e;transform:translateY(-1px)}.summary-row.active{border-color:var(--brand);background:#fff2e4}.profile-stack{gap:.45rem;margin-top:.65rem;display:grid}.profile-card{text-align:left;border:1px solid var(--line);background:#fff;border-radius:10px;gap:.35rem;width:100%;padding:.6rem;transition:border-color .15s,transform .15s,box-shadow .15s;animation:.34s both cardIn;display:grid}.profile-card:hover{border-color:#d8b891;transform:translateY(-1px);box-shadow:0 8px 18px #4b3a2314}.profile-card.active{border-color:var(--brand);background:#fff3e5}.profile-card-top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.profile-card-meta{color:var(--muted);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.76rem}.profile-choice{color:var(--ink);font-size:.86rem;font-weight:700}.report-main{padding:.85rem}.detail-card{gap:.9rem;padding:1rem;display:grid}.detail-card header{flex-wrap:wrap;justify-content:space-between;gap:.6rem;display:flex}.detail-card section{border-top:1px dashed var(--line);gap:.45rem;padding-top:.7rem;display:grid}.markdown-body{color:var(--ink);font-size:.93rem;line-height:1.56}.markdown-body p,.markdown-body ul,.markdown-body ol{margin:0}.markdown-body ul,.markdown-body ol{gap:.25rem;padding-left:1.2rem;display:grid}.markdown-body li{color:var(--muted)}.markdown-body strong{color:var(--ink)}.detail-accordion,.chat-accordion{border:1px solid var(--line);background:#fff;border-radius:10px;padding:.6rem .7rem}.detail-accordion>summary,.chat-accordion>summary{cursor:pointer;font-weight:700}.detail-accordion[open]>summary,.chat-accordion[open]>summary{margin-bottom:.65rem}.profile-chat-thread{gap:.45rem;max-height:240px;padding-right:.15rem;display:grid;overflow:auto}.chat-message{border:1px solid var(--line);border-radius:10px;gap:.2rem;padding:.45rem .55rem;display:grid}.chat-message.user{background:#fff4e8}.chat-message.assistant{background:#f8fbff}.filter-block{gap:.3rem;margin-top:.35rem;display:grid}.filter-block span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:700}.search-input{border-radius:9px}.chat-message strong{font-size:.78rem}.profile-chat-compose{gap:.45rem;margin-top:.55rem;display:grid}.choice-pill{color:#1f6c4d;background:#e8f7ef;border:1px solid #cde7d8;border-radius:999px;width:fit-content;padding:.3rem .7rem;font-weight:700}pre{white-space:pre-wrap;border:1px solid var(--line);background:#fffdf9;border-radius:10px;max-height:270px;margin:0;padding:.65rem;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.77rem;overflow:auto}.badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;width:fit-content;padding:.17rem .55rem;font-size:.72rem}.badge-low{background:#ffe2df;border-color:#ecb8b4}.badge-low-mid{background:#ffe8d2;border-color:#e3bf9f}.badge-mid{background:#e4eef9;border-color:#b6cee6}.badge-upper-mid{background:#e6f2ef;border-color:#bad8d1}.badge-upper{background:#f6edd8;border-color:#e3d2a0}button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:2px;outline:2px solid #bb5d2a73}.reveal{animation:.38s both reveal}.stagger-1{animation-delay:80ms}.stagger-2{animation-delay:.13s}.stagger-3{animation-delay:.18s}@keyframes reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes cardIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (width<=1100px){.api-grid,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid,.review-grid,.mix-grid,.report-layout{grid-template-columns:1fr}.report-sidebar{max-height:none;position:static}}@media (width<=760px){.app-shell{padding:.7rem}.topbar,.api-grid,.form-grid,.stepper{grid-template-columns:1fr}.step-pill{padding:.55rem}}.input-with-button{align-items:center;display:flex;position:relative}.input-with-button input{padding-right:2.2rem}.icon-button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:1.8rem;height:1.8rem;font-size:1.1rem;transition:background .15s,color .15s;display:flex;position:absolute;right:.35rem}.icon-button:hover{color:var(--ink);background:#0000000d}.app-footer{text-align:center;border-top:1px dashed var(--line);margin-top:1rem;padding:1.5rem;font-size:.85rem}.app-footer a{color:var(--brand);font-weight:600;text-decoration:none;transition:opacity .2s}.app-footer a:hover{opacity:.8}
