:root{--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--text: #111111;--muted: #5f5f5f;--border: #e5e5e5;--surface: #ffffff;--bg: #f5f5f5;--brand: #111111;--on-brand: #ffffff;--danger: #c93434;--success: #1c8a4f;--radius: 14px;--shadow: 0 1px 2px rgba(16, 24, 40, .05), 0 8px 24px rgba(16, 24, 40, .06)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);font-size:16px;line-height:1.5;color:var(--text);background:var(--bg)}h1,h2,h3{line-height:1.2;margin:0 0 .5em}a{color:var(--brand)}[hidden]{display:none!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:44px;padding:.6em 1.2em;border:1px solid transparent;border-radius:10px;font:inherit;font-weight:600;text-decoration:none;cursor:pointer;background:var(--brand);color:var(--on-brand);transition:filter .15s,background .15s}.btn:hover{filter:brightness(1.07)}.btn:disabled{opacity:.55;cursor:not-allowed;filter:none}.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 40%,transparent);outline-offset:2px}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.btn-ghost{background:transparent;color:var(--text)}.btn-danger{background:var(--surface);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.btn-small{min-height:34px;padding:.3em .8em;font-size:.875rem}.btn-block{width:100%}label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.35em}input[type=text],input[type=url],input[type=number],select,textarea{width:100%;min-height:44px;padding:.55em .75em;border:1px solid var(--border);border-radius:10px;font:inherit;color:var(--text);background:var(--surface)}textarea{min-height:90px;resize:vertical}.hint{color:var(--muted);font-size:.85rem;margin:.3em 0 0}.error-text{color:var(--danger);font-size:.9rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite;margin:3rem auto}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:#1c1d22;color:#fff;padding:.7em 1.1em;border-radius:10px;box-shadow:var(--shadow);z-index:100;max-width:calc(100vw - 32px)}
