:root{--brand: #0b57d0;--on-brand: #ffffff;--brand-text: var(--brand);--btn-fill: var(--brand);--on-btn-fill: var(--on-brand);--heading: var(--text);--brand-container: color-mix(in srgb, var(--brand) 18%, white);--on-brand-container: color-mix(in srgb, var(--brand-text) 70%, #041e49);--secondary-container: color-mix(in srgb, var(--brand) 22%, white);--brand-soft: color-mix(in srgb, var(--brand) 8%, white);--accent: #146c2e;--bg: #f8fafd;--surface: #ffffff;--surface-container: #f0f4f9;--surface-container-high: #e9eef6;--outline: #747775;--outline-variant: #c4c7c5;--border: #e1e3e1;--border-strong: #c4c7c5;--text: #1f1f1f;--text-2: #444746;--muted: #5e5e5e;--success: #146c2e;--success-soft: #c4eed0;--warning: #7a5900;--warning-soft: #ffdf99;--danger: #b3261e;--danger-soft: #f9dedc;--info: #6750a4;--info-soft: #e8def8;--on-info-soft: #21005d;--radius: 16px;--radius-lg: 28px;--shadow: 0 1px 2px 0 rgba(60, 64, 67, .3), 0 1px 3px 1px rgba(60, 64, 67, .15);--font-display: "Google Sans Flex", "Google Sans", "Product Sans", Roboto, system-ui, sans-serif;--font-body: Roboto, "Google Sans Text", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;height:100%}body{font-family:var(--font-body);font-size:14px;line-height:20px;letter-spacing:.0178em;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}a{color:var(--brand-text);text-decoration:none;font-weight:500}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:400;letter-spacing:0;color:var(--heading)}h1{font-size:28px;line-height:36px}h2{font-size:18px;line-height:24px;font-weight:500}h3{font-size:16px;line-height:24px;font-weight:500}p{margin:0}.card{background:var(--surface);border-radius:var(--radius);border:0}.card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 24px 8px;min-height:56px}.card-body{padding:16px 24px 24px}.card-footer{padding:12px 24px 16px}.btn{position:relative;overflow:hidden;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 24px;border-radius:20px;border:0;background:transparent;color:inherit;font-family:var(--font-display);font-weight:500;font-size:14px;line-height:20px;letter-spacing:.0178em;cursor:pointer;white-space:nowrap;text-decoration:none;-webkit-user-select:none;user-select:none;transition:box-shadow .28s cubic-bezier(.4,0,.2,1),background-color .15s;-webkit-tap-highlight-color:transparent}.btn:after{content:"";position:absolute;inset:0;z-index:-1;background:currentColor;opacity:0;transition:opacity .15s;pointer-events:none}.btn:hover:not(:disabled):after{opacity:.08}.btn:active:not(:disabled):after{opacity:.12}.btn:hover{text-decoration:none}.btn:focus-visible{outline:2px solid var(--brand-text);outline-offset:2px}.btn:disabled{cursor:default;box-shadow:none}.btn .icon{font-size:18px;width:18px;height:18px}.btn:has(.icon):not(.icon-btn){padding-left:16px}.btn-primary{background:var(--btn-fill);color:var(--on-btn-fill)}.btn-primary:hover:not(:disabled){box-shadow:0 1px 2px #0000004d,0 1px 3px 1px #00000026}.btn-primary:disabled{background:color-mix(in srgb,var(--text) 12%,transparent);color:color-mix(in srgb,var(--text) 38%,transparent)}.btn-light{background:transparent;color:var(--brand-text);box-shadow:inset 0 0 0 1px var(--outline)}.btn-light:focus-visible{box-shadow:inset 0 0 0 1px var(--brand-text)}.btn-tonal{background:var(--secondary-container);color:var(--on-brand-container)}.btn-tonal:hover:not(:disabled){box-shadow:0 1px 2px #0000004d,0 1px 3px 1px #00000026}.btn-ghost{background:transparent;color:var(--brand-text);padding:0 12px}.btn-ghost:has(.icon){padding:0 16px 0 12px}.btn-danger-light{background:var(--danger-soft);color:#410e0b}.btn-light:disabled,.btn-ghost:disabled,.btn-tonal:disabled,.btn-danger-light:disabled{opacity:.38}.btn-sm{height:32px;padding:0 16px;font-size:14px;border-radius:16px}.btn-sm:has(.icon):not(.icon-btn){padding-left:12px}.btn-block{width:100%}.icon-btn{width:40px;height:40px;padding:0;border-radius:50%;color:var(--text-2)}.icon-btn:has(.icon){padding:0}.field{display:grid;gap:6px}.field label{font-size:12px;font-weight:500;color:var(--text-2);letter-spacing:.025em}.input,textarea.input,select.input{width:100%;height:48px;padding:0 16px;border-radius:4px;border:1px solid var(--outline);background:transparent;color:var(--text);font:inherit;font-size:16px;outline:none;transition:border-color .1s,box-shadow .1s}textarea.input{height:auto;padding:12px 16px;resize:vertical;line-height:24px}.input:hover{border-color:var(--text)}.input:focus{border-color:var(--brand-text);box-shadow:inset 0 0 0 1px var(--brand-text)}.hint{font-size:12px;color:var(--muted)}.error{font-size:14px;color:#410e0b;background:var(--danger-soft);padding:12px 16px;border-radius:8px}.badge{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;border-radius:8px;font-size:13px;font-weight:500;white-space:nowrap;letter-spacing:.00714em;font-family:var(--font-display)}.badge-primary{background:var(--brand-container);color:var(--on-brand-container)}.badge-success{background:var(--success-soft);color:#072711}.badge-warning{background:var(--warning-soft);color:#261900}.badge-danger{background:var(--danger-soft);color:#410e0b}.badge-muted{background:var(--surface-container-high);color:var(--text-2)}.badge-info{background:var(--info-soft);color:var(--on-info-soft)}.muted{color:var(--muted)}.text-2{color:var(--text-2)}.small{font-size:12px;line-height:16px;letter-spacing:.025em}.strong{font-weight:500}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.stack{display:grid;gap:16px}.stack-sm{display:grid;gap:4px}.grid-2{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:960px){.grid-2,.grid-3{grid-template-columns:1fr}}.list{list-style:none;margin:0;padding:0 0 8px}.list>li{padding:14px 24px}.list>li+li{border-top:1px solid var(--surface-container-high)}.empty{padding:32px 24px;text-align:center;color:var(--muted)}.skeleton{height:16px;border-radius:8px;background:linear-gradient(90deg,var(--surface-container),var(--surface-container-high),var(--surface-container));background-size:200% 100%;animation:shimmer 1.2s infinite}@keyframes shimmer{to{background-position:-200% 0}}.avatar{width:40px;height:40px;border-radius:50%;display:inline-grid;place-items:center;flex:none;background:var(--brand-container);color:var(--on-brand-container);font-family:var(--font-display);font-weight:500;font-size:15px}.icon{font-size:20px;width:20px;height:20px;line-height:1;flex:none}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:50;min-width:288px;max-width:560px;padding:14px 16px;background:#313033;color:#f4eff4;border-radius:4px;box-shadow:0 4px 8px 3px #00000026,0 1px 3px #0000004d;font-size:14px;animation:rise .2s ease-out}@keyframes rise{0%{transform:translate(-50%,8px);opacity:0}}
