:root,[data-theme=light]{--bg: #fff1f6;--bg-elevated: #fff7fa;--surface: #ffffff;--text: #4a1836;--text-muted: #9a5b7a;--border: #f3c6d8;--accent: #e11d74;--accent-soft: #fce4ef;--accent-text: #ffffff;--danger: #be123c;--danger-soft: #ffe4e8;--success: #0f766e;--success-soft: #e6f7f4;--warning: #b45309;--warning-soft: #fff3d6;--shadow: 0 10px 30px rgba(225, 29, 116, .08);--radius: 18px;--radius-sm: 12px;--nav-height: 72px;--sidebar-width: 248px;--header-height: 72px}[data-theme=dark]{--bg: #160d22;--bg-elevated: #1f1330;--surface: #2a1840;--text: #fde7f3;--text-muted: #c9a0c4;--border: #4d2d62;--accent: #e85aaa;--accent-soft: #4a1840;--accent-text: #2a1020;--danger: #fb7185;--danger-soft: #3f1528;--success: #5eead4;--success-soft: #16332f;--warning: #fbbf24;--warning-soft: #3a2a12;--shadow: 0 10px 30px rgba(20, 8, 32, .45)}html[data-theme=light]{color-scheme:light}html[data-theme=dark]{color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}h1,h2,p{margin:0}.app-shell{min-height:100dvh;background:var(--bg)}.app-main{min-width:0}.app-header{min-height:var(--header-height);display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem .4rem}.app-header-kicker{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.app-header h1{font-size:1.45rem;letter-spacing:-.03em}.app-content{padding:.5rem 1rem calc(var(--nav-height) + 1.4rem)}.page{display:flex;flex-direction:column;gap:1rem}.page-title{font-size:1.5rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem}.stack{display:flex;flex-direction:column;gap:1rem}.stack-gap{display:flex;flex-direction:column;gap:.85rem}.section-title{font-size:1rem}.muted{color:var(--text-muted)}.eyebrow{font-size:1.25rem;font-weight:650;letter-spacing:-.03em;margin-bottom:.4rem}.field,.field-check{display:flex;flex-direction:column;gap:.4rem}.field-label{font-size:.92rem;font-weight:600}.field-control{position:relative}.field-control.has-icon .field-input{padding-left:2.65rem}.field-control.has-action .field-input{padding-right:3rem}.field-icon,.field-action{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;color:var(--text-muted)}.field-icon{left:.8rem;pointer-events:none}.field-action{right:.3rem;width:40px;height:40px;border:0;border-radius:10px;background:transparent;cursor:pointer}.field-action:hover,.field-action:focus-visible{color:var(--text);background:var(--accent-soft)}.field-input{width:100%;min-height:50px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);padding:.75rem .85rem;font-size:16px}.field-input::placeholder{color:var(--text-muted);opacity:.72}.field-input:focus{outline:2px solid var(--accent);outline-offset:1px}.field-input[readonly]{opacity:.75}.field-textarea{min-height:120px;resize:vertical}.field-hint{color:var(--text-muted);font-size:.85rem}.field-check{flex-direction:row;align-items:center;gap:.7rem;min-height:48px}.field-check input{width:1.15rem;height:1.15rem}.btn{min-height:50px;border:0;border-radius:14px;padding:.8rem 1rem;font-weight:650;cursor:pointer}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-text)}.btn-secondary{background:var(--accent-soft);color:var(--text)}.btn-ghost{background:transparent;color:var(--text)}.btn-danger{background:var(--danger-soft);color:var(--danger)}.icon-button{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:var(--surface);border:1px solid var(--border)}.icon-button.is-active{background:var(--accent-soft);color:var(--accent);border-color:transparent}.nav-icon{width:22px;height:22px}.banner{margin:0;padding:.8rem .9rem;border-radius:var(--radius-sm);font-size:.95rem}.banner-error{background:var(--danger-soft);color:var(--danger)}.banner-success{background:var(--success-soft);color:var(--success)}.banner-warning{background:var(--warning-soft);color:var(--warning)}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:20;display:grid;grid-template-columns:repeat(5,1fr);min-height:var(--nav-height);padding:.35rem .35rem calc(.35rem + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface) 92%,transparent);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.bottom-nav-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;color:var(--text-muted);font-size:.7rem;font-weight:650;border-radius:12px}.bottom-nav-link.is-active{color:var(--accent);background:var(--accent-soft)}.sidebar{display:none}.login-page,.boot-screen{min-height:100dvh;display:grid;place-items:center;padding:1.25rem}.boot-screen{color:var(--text-muted)}.login-card{width:min(100%,420px);background:var(--surface);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow);padding:1.4rem 1.2rem 1.3rem;display:flex;flex-direction:column;gap:.75rem}.login-kicker{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.login-card h1{font-size:1.8rem;letter-spacing:-.04em}.login-langs{display:flex;gap:.5rem}.login-langs button{flex:1;min-height:42px;border:1px solid var(--border);border-radius:12px;background:var(--bg-elevated);cursor:pointer}.login-langs button.is-active{border-color:var(--accent);background:var(--accent-soft);font-weight:700}@media(min-width:768px){.app-header,.app-content{padding-left:1.5rem;padding-right:1.5rem}.app-content{max-width:760px}}@media(min-width:1024px){.app-shell{display:grid;grid-template-columns:var(--sidebar-width) 1fr}.sidebar{display:flex;flex-direction:column;position:sticky;top:0;height:100dvh;padding:1.4rem 1rem;border-right:1px solid var(--border);background:var(--bg-elevated)}.sidebar-brand{font-size:1.2rem;font-weight:750;letter-spacing:-.04em;padding:.3rem .75rem 1.2rem}.sidebar-nav{display:flex;flex-direction:column;gap:.35rem}.sidebar-link{display:flex;align-items:center;gap:.75rem;min-height:46px;padding:.55rem .8rem;border-radius:12px;color:var(--text-muted);font-weight:650}.sidebar-link.is-active{background:var(--accent-soft);color:var(--text)}.bottom-nav{display:none}.app-header{padding:1.1rem 2rem .4rem}.app-content{max-width:880px;padding:.6rem 2rem 2rem}}
