:root{color-scheme:light;--ink: #263c32;--muted: #77817a;--line: #e5e9e3;--paper: #fff;--background: #f6f7f3;--green: #356449;--soft: #e8f0e9;--warn: #976e35;--danger: #a0664b;--info: #536157;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--background)}*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.5}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}[hidden]{display:none!important}:focus-visible{outline:3px solid #82ac92;outline-offset:3px}.skip{position:fixed;z-index:10;top:-50px;left:10px;padding:8px 14px;background:#fff}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--muted)}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:#fbfcf8;border-right:1px solid var(--line);padding:32px 20px 24px;display:flex;flex-direction:column;overflow-y:auto}.sidebar .nav-toggle{display:none}.brand{display:flex;align-items:center;gap:12px;margin:0 8px 26px;font-size:19px;font-weight:650;letter-spacing:-.6px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;background:#2b3f36;border-radius:11px;color:#c7edda;font-size:24px}.brand small{display:block;margin-top:1px;font-size:11px;font-weight:400;letter-spacing:0;color:var(--muted)}.workspace-label,.eyebrow{color:var(--muted);font-size:10px;font-weight:650;letter-spacing:1.6px}.workspace-label{margin:0 13px 13px}.sidebar nav{display:grid;gap:3px}.sidebar nav a{display:flex;align-items:center;gap:13px;padding:9px 13px;border-radius:8px;color:#6f7a72;font-weight:550}.sidebar nav a:hover{background:#f0f3ed}.sidebar nav a[aria-current]{background:var(--soft);color:#31523e}.nav-icon{width:22px;font-size:23px;line-height:1;text-align:center;font-weight:400}.sidebar nav small{display:block;font-weight:400;font-size:11px;opacity:.75}.sidebar-note{margin:auto 6px 6px;padding:22px 14px;border-top:1px solid var(--line)}.sidebar-note strong{display:block;margin-top:9px;font-size:16px}.sidebar-note p{font-size:12px;color:var(--muted);margin-bottom:0}.status-dot{display:inline-block;width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#6f9874}.workspace{margin-left:238px;min-height:100vh;display:flex;flex-direction:column}.topbar{min-height:73px;padding:12px 38px;background:#ffffffa6;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px}.topbar strong{color:#536157;font-weight:500}.topbar-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-left:auto}.breadcrumb-separator{margin:0 12px;color:#bbc3bc}.local-pill{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:20px;padding:6px 11px;color:#64756a;font-size:11px}main{width:100%;max-width:1100px;margin:0 auto;padding:39px 38px 32px;flex:1}main:focus{outline:none}footer{display:flex;justify-content:space-between;padding:0 38px 22px;font-size:10px;color:#98a396;gap:15px}.page-header{margin-bottom:24px}h1{font-size:31px;font-weight:550;letter-spacing:-1.1px;line-height:1.2;margin:0 0 8px}h1:focus{outline:none}.page-header p{color:var(--muted);margin:0 0 8px;max-width:620px}h2{font-size:15px;font-weight:600;margin:0}.panel{background:var(--paper);border:1px solid var(--line);border-radius:11px;overflow:hidden}.row{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:10px 0}.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:0;margin-bottom:22px;align-content:start}.field-label{display:block;margin:0 0 8px}label,.field-label{font-size:12px;font-weight:550}.field-hint{color:var(--muted);font-size:11px;margin:7px 0 0;overflow-wrap:anywhere}small.muted{font-size:11px}input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select{width:100%;min-width:0;border:1px solid #dfe5de;background:#fbfcfa;border-radius:6px;padding:10px 12px;color:#3e5145}input::placeholder,textarea::placeholder{color:#a0a9a1}textarea{min-height:10rem;resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--green);width:16px;height:16px;margin:3px 0}input[type=range]{width:100%}.dropzone{border:1px dashed #c6d3c8;border-radius:9px;padding:12px;background:#fafcf8}.dropzone.drag{border-color:var(--green);background:var(--soft)}.btn{display:inline-flex;justify-content:center;align-items:center;border:1px solid #dfe5dd;border-radius:6px;padding:10px 15px;font-size:12px;font-weight:550;white-space:nowrap;background:#fff;color:#596b5d}.btn:hover:not(:disabled){background:#f2f5ef}.btn-primary{background:var(--green);border-color:var(--green);color:#fff}.btn-primary:hover:not(:disabled){background:#294f38}.btn-danger{background:#fff5f0;border-color:#ead4c8;color:var(--danger)}.btn-ghost{border-color:transparent;background:transparent;padding:5px 9px;color:#60836b}.badge{display:inline-block;border:1px solid #dce7da;background:#f1f7ee;border-radius:20px;padding:3px 8px;font-size:10px;font-weight:500;color:#65855c;white-space:nowrap}.badge-warn{background:#fff6ed;border-color:#eddecb;color:#a18454}.badge-danger{background:#fff5f0;border-color:#ead4c8;color:var(--danger)}.badge-info{background:#edf3fb;border-color:#dce5f3;color:#6682ae}.badge-neutral{background:#f1f2f0;border-color:#e3e5e0;color:#8c9489}.notice{background:#f2f6f0;border:1px solid #e6ede1;border-radius:7px;padding:13px 15px;font-size:12px;margin:12px 0;color:#4c6252}.notice-warn{background:#fff7ec;border-color:#efdfc6;color:var(--warn)}.notice-danger{background:#fff5f0;border-color:#ead4c8;color:var(--danger)}.notice-success{background:#f1f7ee;border-color:#dce7da;color:#4f7a48}.empty{text-align:center;padding:22px;font-size:12px;color:var(--muted);border:1px dashed var(--line);border-radius:8px}.empty strong{display:block;color:#687b6c;margin-bottom:5px;font-weight:500}.empty p{margin:0}.file-list,.activity,.caps{list-style:none;padding:0;margin:10px 0;display:grid;gap:8px}.file-row{display:flex;gap:4px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:#fafcf8}.file-name{flex:1;overflow-wrap:anywhere;font-size:12px}.caps li{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px}.activity li{font-size:12px;padding:6px 0;border-bottom:1px solid #f1f3ee}.progress{display:flex;gap:12px;align-items:center;margin:10px 0}progress{flex:1;height:8px;accent-color:var(--green)}.status{margin:10px 0 0;font-size:12px;color:var(--muted)}.status-success{color:#4f7a48}.status-danger{color:var(--danger)}.status-warn{color:var(--warn)}.preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:10px 0}.preview-grid figure{margin:0;border:1px solid var(--line);border-radius:8px;padding:8px;background:#fafcf8;font-size:11px}.preview-grid img,.preview-grid canvas,.preview-img{max-width:100%;height:auto;display:block;margin:0 auto}pre.report{background:#fafcf8;color:#526c58;border:1px solid var(--line);padding:16px;border-radius:8px;overflow:auto;max-height:20rem;white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;line-height:1.8}table{border-collapse:collapse;width:100%;font-size:12px}th,td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line)}th{font-weight:550}.big-out{font-size:18px;font-weight:550;font-variant-numeric:tabular-nums;margin:10px 0}.toasts{position:fixed;bottom:25px;left:50%;transform:translate(-50%);display:grid;gap:8px;z-index:50;max-width:90vw}.toast{background:#304c3b;color:#f0f7ee;padding:12px 20px;border-radius:8px;font-size:12px;box-shadow:0 4px 20px #263c3222}.toast-danger{background:#7a4a35}@media(max-width:930px){.sidebar{width:205px;padding:28px 13px 20px}.workspace{margin-left:205px}main{padding:30px 26px}.topbar,footer{padding-left:26px;padding-right:26px}}@media(max-width:650px){.sidebar{position:static;width:100%;padding:12px 18px;border-right:0;border-bottom:1px solid var(--line)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{min-width:0;margin:0;gap:10px;font-size:18px}.brand-mark{flex:0 0 38px}.sidebar .nav-toggle{display:flex;flex-shrink:0;min-height:44px;gap:8px;padding:8px 10px}.nav-toggle[aria-expanded=true]{background:var(--soft);border-color:#b8cdbd;color:var(--green)}.sidebar:not(.nav-open) nav{display:none}.sidebar nav{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:12px}.workspace-label,.sidebar-note{display:none}.workspace{margin-left:0}.topbar{min-height:55px;padding:10px 20px}main{padding:25px 18px}footer{padding:0 18px 20px}.home-workspace .topbar,.topbar-actions{display:none}h1{font-size:27px}.panel{padding:18px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.page-heading h1{margin:8px 0 10px}.page-heading p{color:var(--muted);margin:0;max-width:620px}.tool-mark{display:grid;place-items:center;width:55px;height:55px;flex:0 0 55px;border:1px solid #dfe7df;border-radius:15px;color:#52815d;background:#edf3ed;font-size:28px}.page-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:19px 23px;border-bottom:1px solid var(--line)}h3{font-size:14px;font-weight:600;margin:0 0 7px}.form-content{padding:23px}.options-group{margin:0 0 22px;padding:0 0 20px;border-bottom:1px solid var(--line)}.options-group:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.options-group>h3{margin-bottom:12px}.option{display:flex;align-items:flex-start;gap:10px;margin:12px 0;cursor:pointer;font-weight:400}.option strong{display:block;font-size:12px;font-weight:550}.option small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.flow-note{display:flex;align-items:center;gap:9px;color:#9ca69e;font-size:11px;margin:-10px 0 15px}.actions{padding:19px 23px;border-top:1px solid var(--line);background:#fdfefb}.action-buttons{display:flex;gap:9px;flex-wrap:wrap}.form-divider{border:0;border-top:1px solid var(--line);margin:20px 0}.side-panels{display:grid;gap:20px}.dependency-list{padding:9px 23px 15px}.dependency{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:12px}.dependency code{color:#66766b;font-size:12px}.available{color:#6e9368;font-size:11px}.missing{color:#b39460;font-size:11px}.setup-note{margin:0 23px 20px;border-top:1px solid var(--line);padding-top:13px;font-size:11px;color:var(--muted)}.about{padding:21px 23px}.about p{margin:0 0 8px;color:var(--muted);font-size:12px}.about .eyebrow{display:block;margin-bottom:10px}.recent-list{padding:5px 15px 12px;max-height:260px;overflow:auto}.recent-run{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 8px;border-bottom:1px solid #f1f3ee}.recent-run strong{display:block;font-size:11px;font-weight:550;overflow-wrap:anywhere}.recent-run small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.empty-note{padding:26px 23px;font-size:12px;text-align:center;color:var(--muted)}.empty-note strong{display:block;color:#687b6c;margin-bottom:5px;font-weight:500}.run-panel{margin-top:24px}.run-body{padding:23px}.plain-list{margin:0;padding-left:18px;font-size:12px;color:var(--muted);display:grid;gap:6px}.plain-list strong{color:var(--ink)}.dash-grid{margin-top:28px}.dash-grid .actions{background:transparent}.dash-grid .recent-list{padding-top:12px}.activity{margin:0}.home-search{display:flex;align-items:center;gap:12px;margin:0 0 16px}.home-search input{max-width:500px}.home-search #utility-count{margin-left:auto;font-size:12px;color:var(--muted);white-space:nowrap}.utility-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:12px}.utility-card{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:12px;align-content:center;padding:15px;background:var(--paper);border:1px solid var(--line);border-radius:10px;color:var(--ink);min-height:100px;transition:border-color .15s,box-shadow .15s}.utility-card:hover{border-color:#a7bcae;box-shadow:0 4px 18px #263c320a}.utility-card-icon{grid-row:1 / 4;display:grid;place-items:center;align-self:start;width:34px;height:34px;border-radius:9px;background:var(--soft);color:var(--green);font-size:22px}.utility-card-category{font-size:10px;color:var(--muted);margin-bottom:3px}.utility-card h2{margin:0;font-size:15px;line-height:1.35}.utility-card p{grid-column:2;margin:5px 0 0;font-size:11px;color:var(--muted)}.utility-card-arrow{position:absolute;top:12px;right:12px;font-size:12px;color:var(--green)}.datetime-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.datetime-tabs{display:flex;flex-wrap:wrap;gap:5px;padding:12px 16px;border-bottom:1px solid var(--line)}.datetime-tabs button{border:0;border-radius:7px;background:transparent;color:var(--muted);padding:8px 10px;white-space:nowrap;font-size:12px;font-weight:550}.datetime-tabs button:hover,.datetime-tabs button[aria-selected=true]{color:var(--ink);background:var(--soft)}.datetime-output{margin-top:24px}.datetime-results{padding:5px 23px 20px}.datetime-result{display:grid;grid-template-columns:minmax(135px,.8fr) minmax(0,1.6fr) auto;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}.datetime-result>span{color:var(--muted);font-size:12px}.datetime-result code{min-width:0;color:#465b4d;overflow-wrap:anywhere}.world-clock-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.world-clock{min-width:0;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fafcf8}.world-clock span{display:block;overflow-wrap:anywhere;color:var(--muted);font-size:11px}.world-clock strong{display:block;margin-top:6px;font-size:13px;font-weight:550}.file-row{padding:14px;border-radius:7px}@media(min-width:1500px){.page-grid{grid-template-columns:minmax(0,1fr) 330px}}@media(max-width:930px){.page-grid,.datetime-layout{grid-template-columns:1fr}.side-panels{grid-template-columns:1fr 1fr}.about{grid-column:1 / -1}}@media(max-width:650px){.option-grid,.side-panels{grid-template-columns:1fr}.form-content,.actions{padding:20px}.tool-mark{width:42px;height:42px;flex-basis:42px;font-size:23px}.world-clock-grid{grid-template-columns:1fr}.datetime-result{grid-template-columns:1fr auto}.datetime-result code{grid-column:1 / -1;grid-row:2}.utility-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.utility-card{grid-template-columns:24px minmax(0,1fr);padding:12px 10px;min-height:76px}.utility-card p,.utility-card-arrow{display:none}.home-search{flex-wrap:wrap}.home-search #utility-count{width:100%;margin:0}}.home-workspace main{max-width:none;padding:18px 30px 12px}.home-workspace .page-heading{margin-bottom:16px}.home-workspace h1{font-size:28px;margin-bottom:0}.home-workspace .dash-grid{margin-top:24px}.utility-card[data-unavailable] .utility-card-category{color:var(--warn)}.download-links{display:flex;flex-wrap:wrap;gap:10px}@media(min-width:931px)and (max-width:1150px){.sidebar{width:205px;padding:28px 13px 20px}.brand{font-size:17px;gap:9px}.workspace{margin-left:205px}.page-grid{grid-template-columns:minmax(0,1fr) 265px;gap:18px}}@media(max-width:650px){form .panel-heading>.eyebrow{display:none}}@media(max-width:380px){.brand{font-size:16px}.brand small{font-size:10px}}@media(max-width:650px){.home-search input{flex:1;width:auto;min-width:180px}.home-search{gap:8px}.utility-card{column-gap:8px}}@media(max-width:650px){.home-workspace main{padding:18px}.home-workspace h1{font-size:23px}.utility-card-icon{width:24px;height:24px;font-size:18px;grid-row:1 / 3}.utility-card h2{font-size:12px}.utility-card-category{font-size:9px}.file-row{flex-wrap:wrap}.file-row .file-name{min-width:100%}}
