@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@300;400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap");:root{--ons-green:#486018;--ons-green-dark:#344510;--ons-green-mid:#5a7a20;--ons-green-light:#6e9428;--ons-green-pale:#eef3e6;--ons-gray-900:#1a1a1c;--ons-gray-700:#636266;--ons-gray-500:#8e8c91;--ons-gray-300:#c8c6cc;--ons-gray-100:#f0eff2;--ons-gray-50:#f7f6f9;--ons-yellow:#fbc90b;--ons-orange:#f76c00;--ons-blue:#4f8ad8;--ons-white:#fff;--color-bg:var(--ons-gray-100);--color-surface:var(--ons-white);--color-border:var(--ons-gray-300);--color-text:var(--ons-gray-700);--color-text-strong:var(--ons-gray-900);--color-accent:var(--ons-yellow);--font-body:"IBM Plex Sans",system-ui,sans-serif;--font-mono:"IBM Plex Mono",monospace;--radius-sm:4px;--radius:6px;--radius-lg:10px;--radius-xl:14px;--shadow-xs:0 1px 2px rgba(0,0,0,.06);--shadow-sm:0 2px 6px rgba(0,0,0,.08);--shadow-md:0 4px 16px rgba(0,0,0,.1);--shadow-lg:0 8px 32px rgba(0,0,0,.12);--header-h:60px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{font-family:inherit}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:var(--ons-gray-100)}::-webkit-scrollbar-thumb{background:var(--ons-gray-300);border-radius:3px}.container{width:100%;max-width:1080px;margin:0 auto;padding:0 1.25rem}h1{font-size:1.75rem;font-weight:700;color:var(--color-text-strong);letter-spacing:-.02em}h2{font-size:1.25rem}h2,h3{font-weight:600;color:var(--color-text-strong)}h3{font-size:1rem}.label{font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ons-gray-500)}.card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-xs)}.badge{display:inline-flex;align-items:center;padding:.18rem .55rem;border-radius:100px;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;line-height:1.4}.badge-green{background:var(--ons-green-pale);color:var(--ons-green)}.badge-yellow{background:#fef8dc;color:#9a7800}.badge-orange{background:#fef0e6;color:#b34d00}.badge-blue{background:#e8f0fb;color:#2a5ea8}.badge-gray{background:var(--ons-gray-100);color:var(--ons-gray-500)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.6rem 1.25rem;border-radius:var(--radius);font-size:.875rem;font-weight:600;cursor:pointer;border:none;transition:all .15s ease;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--ons-green);color:var(--ons-white)}.btn-primary:hover:not(:disabled){background:var(--ons-green-mid);box-shadow:var(--shadow-sm)}.btn-accent{background:var(--ons-yellow);color:var(--ons-gray-900)}.btn-accent:hover:not(:disabled){background:#e8b900}.btn-ghost{background:transparent;color:hsla(0,0%,100%,.85);border:1px solid hsla(0,0%,100%,.3)}.btn-ghost:hover:not(:disabled){background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.6)}.btn-outline{background:transparent;color:var(--ons-green);border:1.5px solid var(--ons-green)}.btn-outline:hover:not(:disabled){background:var(--ons-green-pale)}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-input{padding:.65rem .9rem;border:1.5px solid var(--color-border);border-radius:var(--radius);font-size:.9rem;font-family:var(--font-body);background:var(--color-surface);color:var(--color-text-strong);transition:border-color .15s,box-shadow .15s}.form-input:focus{outline:none;border-color:var(--ons-green);box-shadow:0 0 0 3px rgba(72,96,24,.12)}.table{width:100%;border-collapse:collapse}.table th{padding:.65rem 1rem;text-align:left;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ons-gray-500);border-bottom:1.5px solid var(--color-border);background:var(--ons-gray-50)}.table td{padding:.75rem 1rem;border-bottom:1px solid var(--color-border);font-size:.9rem}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover td{background:var(--ons-gray-50)}.divider{display:flex;align-items:center;gap:.75rem;color:var(--ons-gray-300);font-size:.78rem}.divider:after,.divider:before{content:"";flex:1 1;height:1px;background:var(--color-border)}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.anim-fade-up{animation:fadeUp .35s ease both}.anim-fade-in{animation:fadeIn .25s ease both}@media (max-width:640px){h1{font-size:1.4rem}.container{padding:0 1rem}.btn{padding:.55rem 1rem;font-size:.82rem}}