:root{color-scheme:light;--canvas: #f2f5f9;--panel: #f6f8fc;--ink-strong: #0f1d3a;--ink-soft: #6f809a;--ink-muted: #8a98ad;--line: #d4dce7;--line-dark: #9ba7b8;--accent: #2f83e8}*{box-sizing:border-box}body{margin:0;color:var(--ink-strong);font-family:Plus Jakarta Sans,Avenir Next,Segoe UI,sans-serif;background:radial-gradient(1300px 600px at 50% -10%,#fbfdff 0%,var(--canvas) 60%)}#root{min-height:100vh}.assessment-shell{width:min(1760px,calc(100vw - 20px));margin:0 auto;padding:8px 0}.assessment-frame{min-height:calc(100vh - 16px);display:grid;grid-template-columns:460px minmax(0,1fr);border:1px solid var(--line-dark);border-radius:28px;overflow:hidden;background:var(--panel);box-shadow:0 18px 34px -28px #14285073}.sidebar{padding:44px 42px;border-right:1px solid var(--line);background:linear-gradient(180deg,#f7f9fc,#f3f6fb)}.brand{margin:0 0 56px;display:flex;align-items:center;gap:16px}.brand-mark{width:56px;height:56px;border-radius:50%;border:1px solid #d5dfec;background:#e8f1ff;display:inline-flex;align-items:center;justify-content:center}.brand-mark span{width:22px;height:22px;border:2px solid var(--accent);border-radius:50%;position:relative}.brand-mark span:after{content:"";position:absolute;width:7px;height:7px;top:5px;left:5px;border-radius:50%;background:var(--accent)}.brand h1{margin:0;font-size:clamp(1.65rem,1.9vw,2.15rem);font-weight:700;letter-spacing:-.03em}.sidebar-caption{margin:0 0 34px;color:var(--ink-muted);font-size:.84rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700}.field{margin-bottom:36px}.field label{display:block;margin-bottom:14px;color:#697a92;font-size:1.02rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.select-wrap{position:relative}.select-wrap:after{content:"";position:absolute;right:20px;top:50%;width:9px;height:9px;margin-top:-7px;border-right:2px solid #77879e;border-bottom:2px solid #77879e;transform:rotate(45deg);pointer-events:none}.select-icon{position:absolute;left:18px;top:50%;width:18px;height:18px;transform:translateY(-50%);pointer-events:none;border:1.5px solid #90a0b7;border-radius:4px}.select-icon-province:before{content:"";position:absolute;top:3px;right:6px;bottom:3px;left:6px;border-left:1px solid #90a0b7;border-right:1px solid #90a0b7}.select-icon-regency:before{content:"";position:absolute;left:4px;right:4px;top:4px;bottom:4px;border-top:1px solid #90a0b7;border-bottom:1px solid #90a0b7}.select-icon-district{border-radius:50%}.select-icon-district:before{content:"";position:absolute;width:5px;height:5px;left:5px;top:5px;border-radius:50%;background:#90a0b7}.select-control{width:100%;min-height:60px;padding:0 52px 0 56px;border-radius:20px;border:2px solid #8f9cb0;background:#f5f7fb;color:#1b2b46;font-size:1.05rem;font-weight:600;line-height:1.2;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.select-control:focus{border-color:#307ce0;box-shadow:0 0 0 4px #307ce029}.select-control:disabled{cursor:not-allowed;opacity:.65}.reset-button{width:100%;margin-top:22px;min-height:60px;border-radius:20px;border:3px solid #2f79df;background:transparent;color:#3a4b66;font-size:1rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:13px;transition:transform .18s ease,box-shadow .18s ease}.reset-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px -16px #2f79df}.reset-button:disabled{cursor:not-allowed;opacity:.4}.reset-icon{width:16px;height:16px;border-left:2px solid currentColor;border-top:2px solid currentColor;transform:rotate(-45deg);position:relative}.reset-icon:after{content:"";position:absolute;width:10px;height:2px;top:9px;left:3px;background:currentColor}.workspace{display:grid;grid-template-rows:120px minmax(0,1fr)}.workspace-top{display:flex;align-items:center;border-bottom:1px solid var(--line);padding:0 52px}.breadcrumb{display:inline-flex;align-items:center;gap:14px;color:#8393aa;font-size:1.12rem;font-weight:700;letter-spacing:.08em}.breadcrumb-separator{color:#a0adc0}.breadcrumb-current{color:var(--accent)}.workspace-body{position:relative;padding:36px;display:flex;align-items:center;justify-content:center}.spotlight{width:min(980px,100%);text-align:center}.spotlight-group{margin:0}.spotlight-label{margin:0 0 20px;color:#67a7ee;font-size:1.1rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase}.spotlight-value{margin:0;color:#101f3d;font-weight:800;letter-spacing:-.03em;line-height:1.08;font-size:clamp(3rem,5.5vw,7.6rem)}.spotlight-arrow{margin:clamp(18px,2.4vw,36px) 0;color:#b7c3d5;font-size:clamp(2.1rem,3vw,3rem);line-height:1}.status-error{position:absolute;top:26px;left:50%;transform:translate(-50%);border-radius:12px;border:1px solid #efc8cc;background:#fff0f1;color:#9f2c37;padding:12px 14px;font-size:1rem}@media (max-width: 1440px){.assessment-frame{grid-template-columns:380px minmax(0,1fr)}.brand h1{font-size:clamp(1.35rem,1.8vw,2rem)}.field label{font-size:.94rem}.select-control{min-height:54px;font-size:1rem;border-radius:18px}.reset-button{min-height:54px;font-size:.92rem;border-radius:18px}}@media (max-width: 980px){.assessment-shell{width:calc(100vw - 12px);padding:6px 0}.assessment-frame{grid-template-columns:1fr;min-height:auto}.sidebar{border-right:0;border-bottom:1px solid var(--line);padding:28px 20px}.brand{margin-bottom:28px}.sidebar-caption{margin-bottom:24px;letter-spacing:.13em}.field{margin-bottom:20px}.field label{font-size:1rem;margin-bottom:8px}.select-control{min-height:48px;font-size:1rem;border-width:1.5px;border-radius:14px;padding-left:46px}.reset-button{min-height:48px;margin-top:8px;border-width:2px;border-radius:14px;font-size:.92rem;letter-spacing:.06em}.workspace{grid-template-rows:auto minmax(0,1fr);min-height:560px}.workspace-top{padding:16px 20px}.breadcrumb{flex-wrap:wrap;row-gap:6px;column-gap:10px;font-size:.75rem}.workspace-body{padding:30px 20px 40px;align-items:flex-start}.spotlight-label{font-size:.72rem;letter-spacing:.17em;margin-bottom:8px}.spotlight-value{font-size:clamp(2rem,8vw,3.2rem)}.spotlight-arrow{margin:14px 0;font-size:1.8rem}.status-error{position:static;transform:none;margin:0 0 16px}}@media (prefers-reduced-motion: no-preference){.assessment-frame{animation:frame-enter .36s ease-out}}@keyframes frame-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
