:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#162c56;background:#f5f7fc;font-synthesis:none;-webkit-text-size-adjust:100%;color-scheme:light;--navy:#101b3c;--blue:#104ab0;--gold:#cda556;--muted:#64728b;--line:#e1e7f1}*{box-sizing:border-box}html,body{margin:0;min-height:100%;width:100%}body{overscroll-behavior-y:none}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation}button:focus-visible,input:focus-visible{outline:3px solid #8e68ec;outline-offset:2px}.app-root{min-height:100dvh}.boot{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--navy);gap:12px;font-weight:700}.boot img{border-radius:22px}.noscript{text-align:center;padding:20px}.center-screen{min-height:100dvh;display:grid;place-items:center;padding:calc(24px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));background:radial-gradient(circle at 15% 0%,#eae3ff 0,transparent 42%),linear-gradient(#f9faff,#edf2fb)}.auth-card{width:100%;max-width:430px;background:white;border:1px solid #e3e9f3;border-radius:26px;padding:clamp(20px,6vw,32px);box-shadow:0 18px 60px #0b255014}.brand{display:flex;gap:12px;align-items:center;min-width:0}.brand-img{width:54px;height:54px;object-fit:contain;border-radius:14px}.brand-names{display:flex;flex-direction:column;line-height:1.2;gap:4px}.brand-names strong{font-size:17px;color:var(--navy);letter-spacing:.05em}.brand-names span{font-size:12px;color:#526c9e}.auth-card h1{font-size:25px;margin:28px 0 8px;line-height:1.3}.muted{color:var(--muted);font-size:14px;line-height:1.6;margin:8px 0 20px}.info{background:#eef2fc;padding:14px;border-radius:12px;font-size:13px;line-height:1.6;color:#4b6289}.login-form{display:flex;flex-direction:column;margin-top:24px}.login-form label{font-size:14px;font-weight:700;margin:0 0 8px}.field{width:100%;height:50px;min-height:44px;border:1px solid #cfd8e8;border-radius:12px;padding:12px 14px;margin:0 0 18px;background:#fff;color:#10244e;font-size:16px}.show-password{border:0;background:none;color:var(--blue);font-size:13px;text-align:right;align-self:flex-end;margin:-9px 0 18px;min-height:34px}.primary-btn,.secondary-btn,.danger-btn{min-height:48px;border-radius:12px;border:0;padding:12px 18px;font-weight:700}.primary-btn{color:white;background:linear-gradient(120deg,#0a4fbf,#122a70)}.primary-btn:disabled{opacity:.6}.secondary-btn{width:100%;margin:12px 0 0;background:#eaf0fc;color:#163d87}.danger-btn{width:100%;margin:10px 0 0;background:#fff0f0;color:#a52828}.form-error{font-size:13px;color:#af2525;min-height:18px;line-height:1.4}.lang-switch{display:flex;gap:6px;justify-content:center;padding-top:14px}.lang-btn{min-width:52px;min-height:38px;border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:10px;font-weight:700}.lang-btn.selected{background:var(--navy);color:#fff}.workspace{min-height:100dvh;max-width:760px;margin:auto;background:#f5f7fc;padding-bottom:calc(86px + env(safe-area-inset-bottom))}.topbar{padding:calc(16px + env(safe-area-inset-top)) 20px 17px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.topbar .brand-img{width:45px;height:45px}.topbar .brand-names strong{font-size:14px}.owner-badge{font-size:10px;letter-spacing:.12em;font-weight:800;color:#936d20;background:#fff4d8;border:1px solid #ecd697;padding:8px 10px;border-radius:999px}.content{padding:24px 18px;max-width:650px;margin:auto}.eyebrow{color:#657490;font-size:12px;margin:0 0 7px}.page-title{margin:0 0 22px;font-size:25px;letter-spacing:-.02em;line-height:1.35}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat-card{border-radius:19px;background:#172d60;padding:18px 16px;color:#fff;min-height:136px;box-shadow:0 7px 18px #132b5812}.stat-card:nth-child(2){background:#243d79}.stat-card:nth-child(3){background:#194b86}.stat-card:nth-child(4){background:#20365f}.stat-value{color:#f4d38a;font-size:32px;font-weight:800;line-height:1.1}.stat-title{font-size:14px;font-weight:700;margin-top:10px}.stat-sub{font-size:11px;color:#c2cfe7;margin-top:5px}.notice{display:flex;gap:12px;margin-top:18px;border:1px solid #dce7fc;border-radius:16px;background:#edf4ff;padding:16px}.notice-mark{display:grid;place-items:center;align-self:start;flex:0 0 27px;height:27px;border-radius:50%;background:#1e5bb2;color:white;font-size:14px}.notice-body strong{font-size:14px}.notice-body p{font-size:12px;color:#52627c;line-height:1.6;margin:6px 0 0}.section-title{font-size:17px;margin:27px 0 12px}.empty-state,.module-empty{border:1px dashed #c8d5e8;border-radius:18px;background:#fff;text-align:center;padding:25px 16px;color:#73819a;font-size:13px;line-height:1.6}.empty-icon,.module-icon{font-size:32px;color:#7592c6}.module-empty{margin-top:12px;padding:65px 20px}.module-empty h2{font-size:17px;color:#29446e}.module-empty p{max-width:300px;margin:10px auto}.setting-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px;margin-bottom:13px}.setting-card h2{font-size:15px;margin:0 0 12px}.setting-card .muted{margin:5px 0 9px}.owner-email{font-size:14px;overflow-wrap:anywhere}.setting-caption{font-size:12px;color:#4a8a65}.bottom-nav{position:fixed;z-index:5;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:760px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border-top:1px solid var(--line);padding:8px 8px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -6px 24px #18356408}.nav-item{min-height:57px;min-width:0;border:0;background:transparent;color:#7b889e;display:flex;align-items:center;justify-content:center;gap:5px;flex-direction:column;font-size:11px;line-height:1.2;border-radius:13px}.nav-item.active{color:#1450b8;background:#edf3ff;font-weight:700}.nav-icon{display:flex;align-items:center;justify-content:center}@media(min-width:700px){.workspace{min-height:100dvh;box-shadow:0 0 80px #162c560d}.content{padding:30px 26px}.stat-card{min-height:150px}}@media(prefers-reduced-motion:no-preference){button{transition:background-color .18s,color .18s,opacity .18s}}@media(max-width:350px){.auth-card{padding:20px}.stat-card{padding:14px 12px}.stat-title{font-size:12px}.brand-names strong{font-size:13px}}
