*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--green: #3DB86A;--green-light: #5BC87A;--gradient: linear-gradient(to bottom, #5BC87A, #3DB86A);--surface: #2a2a2a;--surface-2: #333333;--surface-3: #3d3d3d;--text: #f1f2f2;--text-muted: #909090;--border: #464646;--error: #ef4444;--radius: 16px;--radius-sm: 10px;--radius-input: 10px;--shadow: 0 4px 24px rgba(0,0,0,.4);--shadow-sm: 0 2px 12px rgba(0,0,0,.3)}body{font-family:Futura,Century Gothic,Trebuchet MS,Gill Sans,sans-serif;background:var(--gradient);background-attachment:fixed;min-height:100dvh;color:var(--text);-webkit-font-smoothing:antialiased}a{color:var(--green);text-decoration:none}a:hover{opacity:.85;text-decoration:none}input,button,select,textarea{font:inherit;outline:none}.auth-wrap{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px}.auth-card{background:#fff;border-radius:var(--radius);box-shadow:0 10px 50px #0000004d;padding:36px 28px 28px;width:100%;max-width:420px}.auth-logo{display:block;width:160px;height:auto;margin:0 auto 32px}.auth-card h1{font-size:1.3rem;font-weight:700;color:#3db86a;text-align:center;margin-bottom:4px}.auth-card p.subtitle{text-align:center;color:#6b7280;font-size:.9rem;margin-bottom:20px}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}label{font-size:13px;font-weight:700;color:var(--text);letter-spacing:.06em;text-transform:uppercase}input[type=text],input[type=email],input[type=password],input[type=number]{width:100%;padding:11px 13px;border:1.5px solid var(--border);border-radius:var(--radius-input);font-size:14px;font-weight:500;color:var(--text);background:var(--surface-2);transition:border-color .15s}input:focus{border-color:var(--green)}select{padding:11px 13px;border:1.5px solid var(--border);border-radius:var(--radius-input);font-size:14px;font-weight:500;color:var(--text);background:var(--surface-2);transition:border-color .15s;cursor:pointer}select:focus{border-color:var(--green)}.auth-card label{font-size:15px;font-weight:600;color:#25742d;text-transform:none;letter-spacing:0}.auth-card input[type=text],.auth-card input[type=email],.auth-card input[type=password],.auth-card input[type=number]{background:#fff;color:#1a1a1a;border-color:#a5d59b;font-weight:600;padding:13px 15px;font-size:15px}.auth-card input:focus{border-color:#3db86a}.pw-wrap{position:relative}.pw-wrap input{padding-right:44px}.pw-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:4px;color:var(--text-muted);display:flex;align-items:center;line-height:0}.pw-toggle:hover{color:var(--text)}.auth-card .pw-toggle{color:#aaa}.auth-card .pw-toggle:hover{color:#333}.btn{display:block;width:100%;padding:13px;border:none;border-radius:var(--radius-input);font-size:15px;font-weight:700;cursor:pointer;transition:opacity .15s;margin-top:10px;letter-spacing:.06em;text-transform:uppercase}.btn-primary{background:var(--gradient);color:#fff}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:8px 16px;border:none;border-radius:var(--radius-sm);font-size:.82rem;font-weight:700;cursor:pointer;transition:opacity .15s;display:inline-flex;align-items:center;gap:6px;letter-spacing:.04em;text-transform:uppercase}.btn-sm:disabled{opacity:.5;cursor:not-allowed}.btn-icon{background:none;border:none;cursor:pointer;padding:6px;border-radius:8px;color:var(--text-muted);transition:color .15s;display:flex;align-items:center}.btn-icon:hover{color:var(--text)}.alert{padding:10px 14px;border-radius:var(--radius-sm);font-size:.875rem;margin-bottom:14px}.alert-error{background:#3d1818;color:#fca5a5;border:1px solid #7f1d1d}.alert-success{background:#163322;color:#86efac;border:1px solid #14532d}.auth-card .alert-error{background:#fef2f2;color:#ef4444;border:1px solid #fecaca}.auth-card .alert-success{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.auth-footer{text-align:center;margin-top:18px;font-size:15px;font-weight:500;color:#6b7280}.auth-footer a{color:#989fa9;text-decoration:underline;font-weight:500}.page{padding:16px 16px 90px;max-width:600px;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.page-header h1{font-size:1.25rem;font-weight:700;color:#f1f2f2;letter-spacing:.02em}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;color:var(--text)}.empty-state{text-align:center;padding:48px 24px;color:var(--text-muted)}.empty-state p{margin-top:8px;font-size:.95rem}.section-label{font-size:.68rem;font-weight:700;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#1a1a1a;border-top:1px solid #2c2c2c;display:flex;justify-content:space-around;padding:10px 0 calc(10px + env(safe-area-inset-bottom));z-index:100}.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:.58rem;font-weight:700;text-decoration:none;color:#555;min-width:56px;letter-spacing:.06em;text-transform:uppercase;padding:0;background:none;border:none;cursor:pointer;transition:color .15s;-webkit-tap-highlight-color:transparent}.nav-item:hover{text-decoration:none;opacity:1;color:#888}.nav-item.active{color:var(--green)}
