@import"https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap";@import"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,500,0,0";:root{--dashboard-primary: #008a7c;--dashboard-primary-hover: #00796d;--dashboard-bg: #f5f8f8;--dashboard-text: #111827;--dashboard-muted: #64748b;--dashboard-border: #e2e8f0;--dashboard-surface: #ffffff;--dashboard-field-bg: #eef3f4;--dashboard-field-border: #dbe4e8;--dashboard-danger: #b91c1c;--dashboard-danger-border: #fecaca;--dashboard-danger-bg: #fef2f2;--dashboard-success: #166534;--dashboard-success-border: #bbf7d0;--dashboard-success-bg: #f0fdf4}.dashboard-page{position:relative;min-height:100vh;background:var(--dashboard-bg);font-family:Manrope,sans-serif;color:var(--dashboard-text);padding:16px}.dashboard-bg{position:fixed;inset:0;z-index:0;pointer-events:none}.dashboard-bg-orb{position:absolute;width:min(42vw,260px);height:min(42vw,260px);border-radius:50%;background:#008a7c1f;filter:blur(48px)}.dashboard-bg-orb-left{top:-12%;left:-12%}.dashboard-bg-orb-right{right:-12%;bottom:-12%}.dashboard-shell{position:relative;z-index:1;width:100%;max-width:1540px;margin:0 auto;animation:dashboard-fade-in .28s ease-out}.dashboard-brand{margin-bottom:26px;display:flex;flex-direction:column;align-items:center;text-align:center}.dashboard-brand-icon-wrap{width:52px;height:52px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#008a7c1f;margin-bottom:14px}.dashboard-brand-icon{font-size:30px;color:var(--dashboard-primary)}.dashboard-brand h1{margin:0;color:#1e293b;font-size:clamp(1.85rem,3.6vw,2.2rem);font-weight:800;letter-spacing:-.03em;text-transform:uppercase}.dashboard-brand p{margin:4px 0 0;color:var(--dashboard-primary);font-size:.83rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.dashboard-card{width:100%;box-sizing:border-box;overflow:hidden;background:var(--dashboard-surface);border:1px solid var(--dashboard-border);border-radius:10px;box-shadow:0 14px 30px #0f232114}.dashboard-topbar{padding:22px 22px 18px;border-bottom:1px solid #edf2f7;display:grid;gap:14px}.dashboard-topbar-copy{display:grid;gap:4px}.dashboard-eyebrow{margin:0;color:var(--dashboard-primary);font-size:.83rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.dashboard-topbar-copy h2{margin:0;color:#1e293b;font-size:clamp(1.3rem,2.8vw,1.7rem);font-weight:800;letter-spacing:-.02em}.dashboard-main-nav{display:flex;flex-wrap:wrap;gap:10px}.dashboard-main-link{min-height:44px;border:1px solid transparent;border-bottom:2px solid transparent;border-radius:8px;background:var(--dashboard-field-bg);color:#64748b;font-weight:700;font-size:.94rem;padding:0 16px;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.dashboard-main-link:hover{color:#475569;background:#f3f6f7}.dashboard-main-link.active{color:#0f172a;border-color:var(--dashboard-primary);background:#fff}.dashboard-logout-btn{min-height:48px;border:0;border-radius:8px;background:var(--dashboard-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.96rem;font-weight:800;box-shadow:0 10px 22px #008a7c3d;transition:background-color .2s ease,transform .2s ease}.dashboard-logout-btn:hover:not(:disabled){background:var(--dashboard-primary-hover);transform:translateY(-1px)}.dashboard-content{padding:22px;display:grid;gap:18px}.dashboard-copy{margin:0;color:#475569;line-height:1.6}.dashboard-grid{margin:0;display:grid;gap:12px}.dashboard-grid div{border-radius:8px;border:1px solid var(--dashboard-field-border);background:var(--dashboard-field-bg);padding:14px 16px}.dashboard-grid dt{margin-bottom:6px;font-size:.85rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.08em}.dashboard-grid dd{margin:0;font-weight:800;color:#0f172a}.settings-layout{display:grid;gap:18px}.settings-menu{display:grid;gap:10px}.settings-list{display:grid;gap:10px;max-height:540px;overflow-y:auto;padding-right:4px;scrollbar-width:thin}.settings-menu h2{margin:0;color:#334155;font-size:.98rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.settings-item{display:grid;gap:3px;text-align:left;min-height:64px;border-radius:8px;border:1px solid var(--dashboard-field-border);background:var(--dashboard-field-bg);color:#0f172a;padding:12px 14px;font-weight:700;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.settings-item small{color:#64748b;font-size:.78rem;font-weight:600}.settings-item:hover{background:#f3f6f7;border-color:#cbd5e1}.settings-item.active{background:#fff;border-color:var(--dashboard-primary);color:#0f172a}.settings-panel{border:1px solid var(--dashboard-border);border-radius:8px;background:#fff;padding:20px;display:grid;gap:16px}.panel-eyebrow{margin:0;color:var(--dashboard-primary);font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.settings-panel h3{margin:0;color:#1e293b;font-size:1.35rem;font-weight:800;letter-spacing:-.02em}.settings-panel p{margin:0;color:#64748b;line-height:1.6}.master-tabs{display:flex;flex-wrap:wrap;gap:8px}.master-tab-btn{min-height:44px;border:1px solid transparent;border-bottom:2px solid transparent;border-radius:8px;background:var(--dashboard-field-bg);color:#64748b;font-weight:700;font-size:.94rem;padding:0 16px;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.master-tab-btn:hover{color:#475569;background:#f3f6f7}.master-tab-btn.active{color:#0f172a;border-color:var(--dashboard-primary);background:#fff}.master-feedback{margin:0;border-radius:8px;border:1px solid var(--dashboard-success-border);padding:9px 10px;font-size:.88rem;font-weight:600;color:var(--dashboard-success);background:var(--dashboard-success-bg)}.master-feedback.error{color:var(--dashboard-danger);background:var(--dashboard-danger-bg);border-color:var(--dashboard-danger-border)}.master-form{display:grid;gap:17px}.master-field{display:grid;gap:8px;font-size:.95rem;font-weight:700;color:#334155}.master-field input[type=text],.master-field select{width:100%;max-width:100%;height:48px;box-sizing:border-box;border-radius:8px;border:1px solid var(--dashboard-field-border);background:var(--dashboard-field-bg);color:var(--dashboard-text);padding:0 14px;font-size:.95rem;transition:border-color .2s ease,box-shadow .2s ease}.master-field input[type=text]::placeholder{color:#94a3b8}.master-field select:disabled{cursor:not-allowed;color:#475569;background:#e2e8f0}.master-field input[type=text]:focus-visible,.master-field select:focus-visible,.master-checkbox input[type=checkbox]:focus-visible{outline:none;border-color:var(--dashboard-primary);box-shadow:0 0 0 3px #008a7c24}.master-field input[aria-invalid=true],.master-field select[aria-invalid=true]{border-color:#ef4444}.master-field-error{margin:-6px 0 0;color:#b91c1c;font-size:.82rem;font-weight:600}.master-checkbox{display:inline-flex;align-items:center;gap:8px;color:#334155;font-weight:700}.master-checkbox input[type=checkbox]{width:18px;height:18px;border-radius:4px;border:1px solid var(--dashboard-field-border);accent-color:var(--dashboard-primary)}.master-form-actions,.master-list-tools,.master-actions{display:flex;flex-wrap:wrap;gap:8px}.master-primary-btn,.master-secondary-btn{min-height:46px;border-radius:8px;font-weight:800;padding:0 16px;transition:background-color .2s ease,transform .2s ease,border-color .2s ease}.master-primary-btn{border:0;background:var(--dashboard-primary);color:#fff;box-shadow:0 10px 22px #008a7c2e}.master-primary-btn:hover:not(:disabled){background:var(--dashboard-primary-hover);transform:translateY(-1px)}.master-secondary-btn{border:1px solid var(--dashboard-field-border);background:var(--dashboard-field-bg);color:#334155}.master-secondary-btn:hover:not(:disabled){background:#f3f6f7}.master-list-wrap{display:grid;gap:12px}.master-list-tools{justify-content:flex-end}.master-grid{border:1px solid var(--dashboard-border);border-radius:8px;overflow:auto;background:#fff;max-height:576px}.master-grid-row{display:grid;grid-template-columns:minmax(190px,2fr);grid-auto-flow:column;grid-auto-columns:minmax(140px,1fr);align-items:center;gap:12px;padding:12px 14px;min-height:52px;min-width:max-content;width:100%;border-bottom:1px solid #edf2f7;font-size:.92rem}.master-grid-row:last-child{border-bottom:0}.master-grid-row>span{white-space:nowrap}.master-grid-head{position:sticky;top:0;z-index:1;background:#f8fafc;color:#64748b;font-size:.79rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.master-grid-empty{padding:18px 14px;min-width:max-content;color:#64748b;font-size:.9rem;font-weight:600}.master-actions{justify-content:flex-start}.icon-btn{width:36px;height:36px;display:inline-grid;place-items:center;border:1px solid var(--dashboard-field-border);border-radius:8px;background:var(--dashboard-field-bg);color:#334155;transition:border-color .2s ease,background-color .2s ease,color .2s ease}.icon-btn svg{width:17px;height:17px;fill:currentColor}.icon-btn:hover:not(:disabled){border-color:var(--dashboard-primary);background:#fff;color:var(--dashboard-primary)}.icon-btn.danger:hover:not(:disabled){border-color:#ef4444;color:#b91c1c}.dashboard-main-link:focus-visible,.dashboard-logout-btn:focus-visible,.settings-item:focus-visible,.master-tab-btn:focus-visible,.master-primary-btn:focus-visible,.master-secondary-btn:focus-visible,.icon-btn:focus-visible{outline:2px solid rgba(0,138,124,.35);outline-offset:2px}.dashboard-loading{width:100%;box-sizing:border-box;overflow:hidden;background:#fff;border:1px solid var(--dashboard-border);border-radius:10px;box-shadow:0 14px 30px #0f232114;padding:26px 22px;text-align:center;font-weight:700;color:#64748b}.master-primary-btn:disabled,.master-secondary-btn:disabled,.icon-btn:disabled,.dashboard-logout-btn:disabled{opacity:.75;cursor:not-allowed}@keyframes dashboard-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(min-width:920px){.dashboard-topbar{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;column-gap:14px}.settings-layout{grid-template-columns:280px minmax(0,1fr);align-items:start}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:920px){.dashboard-content,.dashboard-topbar,.settings-panel{padding:18px 16px}}@media(max-width:520px){.dashboard-brand h1{font-size:1.96rem}.dashboard-page{padding:12px}.dashboard-main-link,.master-tab-btn,.dashboard-logout-btn,.master-primary-btn,.master-secondary-btn{width:100%;justify-content:center}}:root{--login-primary: #008a7c;--login-primary-hover: #00796d;--login-bg: #f5f8f8;--login-text: #111827;--login-border: #e2e8f0;--login-field-bg: #eef3f4;--login-field-border: #dbe4e8}.login-page{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--login-bg);font-family:Manrope,sans-serif}.login-shell{position:relative;width:100%;max-width:480px;animation:fade-in .28s ease-out}.login-brand{margin-bottom:26px;display:flex;flex-direction:column;align-items:center;text-align:center}.login-brand-icon-wrap{width:52px;height:52px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#008a7c1f;margin-bottom:14px}.login-brand-icon{font-size:30px;color:var(--login-primary)}.login-brand h1{margin:0;color:#1e293b;font-size:clamp(1.85rem,3.8vw,2.2rem);font-weight:800;letter-spacing:-.03em;text-transform:uppercase}.login-brand p{margin:4px 0 0;color:var(--login-primary);font-size:.83rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.login-card{width:100%;box-sizing:border-box;overflow:hidden;background:#fff;border:1px solid var(--login-border);border-radius:10px;box-shadow:0 14px 30px #0f232114}.login-tabs{width:100%;display:flex;border-bottom:1px solid #edf2f7}.login-tab{flex:1;min-height:54px;border:0;border-bottom:2px solid transparent;background:transparent;color:#94a3b8;font-weight:700;font-size:.94rem;transition:color .2s ease,border-color .2s ease}.login-tab:hover{color:#64748b}.login-tab.active{color:#0f172a;border-bottom-color:var(--login-primary)}.login-tab:focus-visible{outline:2px solid rgba(0,138,124,.35);outline-offset:-2px}.login-form{width:100%;box-sizing:border-box;padding:26px 22px 22px;display:grid;gap:17px}.auth-card-copy{display:grid;gap:6px}.auth-eyebrow{margin:0;color:var(--login-primary);font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.auth-card-copy h2{margin:0;color:#1e293b;font-size:1.35rem;font-weight:800;letter-spacing:-.02em}.auth-description{margin:0;color:#64748b;line-height:1.6}.field-group{width:100%;min-width:0;display:grid;gap:8px}.field-label{font-size:.95rem;font-weight:700;color:#334155}.field-control{width:100%;min-width:0;position:relative}.field-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:20px;pointer-events:none;z-index:1}.field-control input,.field-control select{width:100%;max-width:100%;height:48px;box-sizing:border-box;border-radius:8px;border:1px solid var(--login-field-border);background:var(--login-field-bg);color:var(--login-text);padding:0 14px 0 44px;font-size:.95rem;transition:border-color .2s ease,box-shadow .2s ease}.field-control input::placeholder{color:#94a3b8}.field-control select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:40px}.field-select-arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:20px;pointer-events:none}.field-control input:focus-visible,.field-control select:focus-visible{outline:none;border-color:var(--login-primary);box-shadow:0 0 0 3px #008a7c24}.field-control input[aria-invalid=true],.field-control select[aria-invalid=true]{border-color:#ef4444}.field-control select:disabled{cursor:not-allowed;color:#475569;background:#e2e8f0}.field-control input[type=number]{appearance:textfield}.field-control input[type=number]::-webkit-outer-spin-button,.field-control input[type=number]::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}.password-hint{margin:-6px 0 0;font-size:.82rem;font-weight:600}.password-hint.warn{color:#b45309}.password-hint.ok{color:#15803d}.feedback{margin:0;border-radius:8px;border:1px solid transparent;padding:9px 10px;font-size:.88rem;font-weight:600}.feedback.error{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.feedback.success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.login-submit{width:100%;min-height:50px;box-sizing:border-box;border:0;border-radius:8px;background:var(--login-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:1.02rem;font-weight:800;box-shadow:0 10px 22px #008a7c3d;transition:background-color .2s ease,transform .2s ease}.login-submit[data-mode=register]{background:#0f766e}.login-submit[data-mode=recovery]{background:#0e8c7f}.login-submit:hover:not(:disabled){background:var(--login-primary-hover);transform:translateY(-1px)}.login-submit-secondary{border:1px solid var(--login-field-border);background:#fff;color:#334155;box-shadow:none}.login-submit-secondary:hover:not(:disabled){background:#f8fafc;color:#0f172a}.login-submit:disabled{opacity:.75;cursor:not-allowed}.login-submit:focus-visible{outline:2px solid rgba(0,138,124,.35);outline-offset:2px}.login-help{text-align:center;padding-top:8px}.auth-actions{display:grid;gap:12px}.login-help a{color:#94a3b8;font-size:.8rem;font-weight:600;text-decoration:none}.login-help a:hover{color:var(--login-primary)}.login-bg{position:fixed;inset:0;z-index:-1;pointer-events:none}.login-bg-orb{position:absolute;width:min(42vw,260px);height:min(42vw,260px);border-radius:50%;background:#008a7c1f;filter:blur(48px)}.login-bg-orb-left{top:-12%;left:-12%}.login-bg-orb-right{right:-12%;bottom:-12%}.material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:520px){.login-brand h1{font-size:1.96rem}.login-tab{font-size:.86rem;min-height:50px}.login-form{padding:20px 16px 18px}.auth-card-copy h2{font-size:1.2rem}}
