[data-skin=operator]{--bg-canvas: #f1e8d6;--bg-surface: #fbf6ec;--bg-sheet: #f7f0e2;--text-primary: #23201a;--text-secondary: #7a6f5d;--text-tertiary: #a89c86;--accent: #cf4d1a;--accent-2: #a93c12;--accent-contrast: #ffffff;--money: #4f6b34;--danger: #9e3b2a;--warning: #b06a1a;--info: #cf4d1a;--border: #e2d6bf;--radius-card: 16px;--radius-btn: 11px;--radius-pill: 7px;--font-display: "Fraunces", "Noto Serif SC", serif;--font-mono: "Fraunces", "Noto Serif SC", serif;--glow: none}[data-skin=family]{--bg-canvas: #eef5ef;--bg-surface: #ffffff;--bg-sheet: #ffffff;--text-primary: #28352f;--text-secondary: #7d8b84;--text-tertiary: #a7b3ad;--accent: #34b37a;--accent-2: #5b9df9;--accent-contrast: #ffffff;--money: #34b37a;--danger: #ff6b6b;--warning: #ff9f43;--info: #5b9df9;--border: #e6eee8;--radius-card: 20px;--radius-btn: 99px;--radius-pill: 99px;--font-display: "Baloo 2", "Noto Sans SC", cursive;--font-mono: "Baloo 2", "Noto Sans SC", cursive;--glow: 0 10px 22px -10px rgba(52, 179, 122, .8)}.console-root{background:var(--bg-canvas);color:var(--text-primary);min-height:100vh;font-family:Noto Sans SC,sans-serif}[data-skin=operator].console-root,[data-skin=operator] .console-root{background-color:#f1e8d6;background-image:radial-gradient(140% 90% at 50% -10%,#f6efe0,transparent 60%);background-attachment:fixed}.display{font-family:var(--font-display);letter-spacing:.2px}.num{font-family:var(--font-mono);font-weight:700}[data-skin=operator] .num{text-shadow:none;font-variant-numeric:tabular-nums}[data-skin=operator] .display{font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:14px;margin-bottom:12px}[data-skin=operator] .card{background:var(--bg-surface);border:1px solid var(--border);box-shadow:0 1px #3c280f08;backdrop-filter:none;-webkit-backdrop-filter:none}.pill{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;padding:3px 9px;border-radius:var(--radius-pill)}[data-skin=operator] .pill{background:transparent;border:1px solid var(--border);box-shadow:none}.pill.risk{color:var(--danger)}.pill.money{color:var(--money)}[data-skin=operator] .pill.risk{color:var(--danger);background:#9e3b2a14;border-color:#9e3b2a38}[data-skin=operator] .pill.money{color:var(--money);background:#4f6b341a;border-color:#4f6b3438}.btn{min-height:44px;border:1px solid var(--border);border-radius:var(--radius-btn);font-weight:500;cursor:pointer;background:transparent;color:var(--text-primary);transition:transform .12s ease,box-shadow .2s ease,background .2s ease}.btn:active{transform:scale(.98)}.btn.primary{background:var(--accent);color:var(--accent-contrast);box-shadow:var(--glow);border:none;font-weight:600}.btn:disabled{opacity:.6;cursor:progress}.skip{color:var(--text-tertiary);background:none;border:none;cursor:pointer}.input{width:100%;min-height:44px;background:var(--bg-canvas);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-btn);padding:10px;font-family:Noto Sans SC,sans-serif}[data-skin=operator] .input{background:#fffdf8}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #cf4d1a1f}[data-skin=operator] nav{box-shadow:0 -1px 0 var(--border)}.console-root nav{padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))!important}[data-skin=operator] .btn.primary{box-shadow:0 6px 16px -6px #cf4d1a99}[data-skin=operator] .today-hero{position:relative;overflow:hidden;background:var(--text-primary);color:#f3ead6;border-color:#23201ae0;box-shadow:0 16px 36px -30px #23201abf}[data-skin=operator] .today-hero:after{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(207,77,26,.5),transparent 70%);pointer-events:none}[data-skin=operator] .today-hero>*{position:relative;z-index:1}[data-skin=operator] .today-hero .display{color:#f3ead6}[data-skin=operator] .today-hero a{color:#f2a06a!important}[data-skin=operator] .today-hero-summary,[data-skin=operator] .today-hero-message{color:#cdbfa6!important}[data-skin=operator] .task-draft{color:var(--text-primary)!important;background:var(--bg-sheet)!important;border-left:2px solid var(--accent);border-radius:0 8px 8px 0!important}[data-skin=family].console-root,[data-skin=family] .console-root{background:var(--bg-canvas);color:var(--text-primary)}[data-skin=family] .display{font-family:var(--font-display);letter-spacing:0}[data-skin=family] .num{font-family:var(--font-display);font-variant-numeric:tabular-nums}[data-skin=family] .card{background:var(--bg-surface);border:1px solid var(--border);box-shadow:0 12px 30px -22px #283c3280}[data-skin=family] .input:focus{box-shadow:0 0 0 3px #34b37a24}[data-skin=family] .family-app{display:grid;grid-template-columns:212px 1fr;min-height:100vh;max-width:1480px;margin:0 auto}[data-skin=family] .family-side{position:sticky;top:0;align-self:start;height:100vh;padding:20px 14px}[data-skin=family] .family-brand{display:flex;align-items:center;gap:8px;padding:6px 8px 18px}[data-skin=family] .family-brand-logo{color:#2a9c69;font-family:var(--font-display);font-size:20px;font-weight:800}[data-skin=family] .family-nav{display:flex;flex-direction:column;gap:3px}[data-skin=family] .family-nav-item{display:flex;align-items:center;gap:11px;padding:11px 14px;border:0;border-radius:14px;background:transparent;color:var(--text-secondary);font-size:14.5px;font-weight:500;text-align:left;cursor:pointer}[data-skin=family] .family-nav-item .family-nav-icon,[data-skin=family] .family-bottom-nav .family-nav-icon{width:20px;height:20px;border:2px solid currentColor;border-radius:6px;opacity:.85}[data-skin=family] .family-nav-item.is-active{background:var(--accent);color:#fff;box-shadow:0 8px 18px -8px #34b37ab3}[data-skin=family] .family-side-mascot{margin-top:18px;padding:16px;border-radius:18px;background:linear-gradient(160deg,#e9f7ef,#d8f0e2);text-align:center}[data-skin=family] .family-side-mascot-face{font-size:40px}[data-skin=family] .family-side-mascot-title{margin-top:6px;color:#2a9c69;font-family:var(--font-display);font-size:14px;font-weight:700}[data-skin=family] .family-side-mascot-subtitle{margin-top:2px;color:var(--text-secondary);font-size:12px}[data-skin=family] .family-main{padding:20px 22px 40px}[data-skin=family] .family-topbar{display:flex;align-items:center;gap:14px;margin-bottom:18px}[data-skin=family] .family-hi{font-family:var(--font-display);font-size:18px;font-weight:700}[data-skin=family] .family-spacer{flex:1}[data-skin=family] .family-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--border);border-radius:99px;background:#fff;font-size:13px;font-weight:600}[data-skin=family] .family-star{color:#ffc94d}[data-skin=family] .family-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(160deg,#8fe0b6,#34b37a)}[data-skin=family] .family-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}[data-skin=family] .family-column{display:flex;min-width:0;flex-direction:column;gap:16px}[data-skin=family] .family-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}[data-skin=family] .family-section-head h2{margin:0;font-family:var(--font-display);font-size:17px;font-weight:700}[data-skin=family] .family-section-link{border:0;background:transparent;color:var(--text-secondary);font-size:12.5px;white-space:nowrap}[data-skin=family] .family-hero{position:relative;overflow:hidden;padding:22px;border:0;background:linear-gradient(120deg,#7cc8ff,#aee9c8);color:#15392b}[data-skin=family] .family-hero h1{margin:0;font-family:var(--font-display);font-size:28px;font-weight:800;letter-spacing:0;line-height:1.08}[data-skin=family] .family-hero p{margin:6px 0 14px;color:#1c4536;font-size:14px}[data-skin=family] .family-level-bar{height:8px;margin:0 0 12px;overflow:hidden;border-radius:99px;background:#fff9}[data-skin=family] .family-level-bar>i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#ffd24d,#ff9f43)}[data-skin=family] .family-hero-stats{display:flex;flex-wrap:wrap;gap:18px;padding:12px 14px;border-radius:16px;background:#ffffffb3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[data-skin=family] .family-hero-stat{display:flex;flex-direction:column}[data-skin=family] .family-hero-stat .family-stat-number{font-family:var(--font-display);font-size:20px;font-weight:800;line-height:1}[data-skin=family] .family-hero-stat .family-stat-label{color:#2c5b48;font-size:11.5px}[data-skin=family] .family-hero-face{position:absolute;right:18px;bottom:-6px;font-size:96px;line-height:1;filter:drop-shadow(0 8px 12px rgba(0,0,0,.12))}[data-skin=family] .task-list,[data-skin=family] .course-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}[data-skin=family] .task-card{position:relative;min-width:0;padding:14px;border:1px solid var(--border);border-radius:16px;background:#fff}[data-skin=family] .task-card-icon{display:grid;width:38px;height:38px;margin-bottom:10px;place-items:center;border-radius:12px;background:#e9f7ef;font-size:20px}[data-skin=family] .task-card-title{font-size:14.5px;font-weight:700}[data-skin=family] .task-card-desc{margin-top:2px;color:var(--text-secondary);font-size:12px}[data-skin=family] .task-card-action{display:inline-block;margin-top:10px;padding:5px 12px;border-radius:99px;background:#e9f7ef;color:#2a9c69;font-size:12.5px;font-weight:700}[data-skin=family] .task-card-done{position:absolute;top:12px;right:12px;color:var(--accent)}[data-skin=family] .course-card{position:relative;min-height:104px;overflow:hidden;padding:14px;border-radius:16px;background:linear-gradient(150deg,#5b9df9,#7cc0ff);color:#fff}[data-skin=family] .course-card:nth-child(2n){background:linear-gradient(150deg,#ff9f43,#ffc06b)}[data-skin=family] .course-card:nth-child(3n){background:linear-gradient(150deg,#34b37a,#8fe0b6)}[data-skin=family] .course-card-level{display:inline-block;padding:2px 8px;border-radius:99px;background:#ffffff4d;font-size:11px}[data-skin=family] .course-card-name{margin-top:30px;font-family:var(--font-display);font-size:16px;font-weight:700}[data-skin=family] .course-card-progress{height:6px;margin-top:8px;overflow:hidden;border-radius:99px;background:#fff6}[data-skin=family] .course-card-progress>i{display:block;height:100%;border-radius:99px;background:#fff}[data-skin=family] .course-card-emblem{position:absolute;top:10px;right:10px;font-size:30px}[data-skin=family] .practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;text-align:center}[data-skin=family] .practice-item-badge{display:grid;width:52px;height:52px;margin:0 auto 7px;place-items:center;border-radius:16px;background:var(--info);color:#fff;font-size:24px}[data-skin=family] .practice-item-title{font-size:12.5px;font-weight:600}[data-skin=family] .ai-bubble{margin-bottom:12px;padding:12px;border-radius:14px;background:#eef7f1;color:#2c5b48;font-size:13px;line-height:1.6}[data-skin=family] .ai-cta{width:100%;padding:12px;border:0;border-radius:14px;background:var(--accent);color:#fff;box-shadow:var(--glow);cursor:pointer;font-family:var(--font-display);font-size:15px;font-weight:700}[data-skin=family] .culture-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}[data-skin=family] .culture-tile{display:grid;overflow:hidden;aspect-ratio:1;place-items:center;border-radius:12px;background:linear-gradient(160deg,#aee9c8,#7cc8ff);color:#2a9c69;font-size:24px}[data-skin=family] .culture-tile img,[data-skin=family] .culture-tile video{width:100%;height:100%;object-fit:cover}[data-skin=family] .message-list{display:flex;flex-direction:column;gap:10px}[data-skin=family] .message-bubble{max-width:88%;padding:10px 12px;border-radius:14px;background:#eef7f1;color:#2c5b48;font-size:13px;line-height:1.5}[data-skin=family] .message-bubble.is-parent{align-self:flex-end;background:var(--accent);color:#fff}[data-skin=family] .family-message-form{display:flex;gap:8px;margin-top:12px}[data-skin=family] .family-message-form .input{flex:1;min-width:0}[data-skin=family] .family-empty{padding:16px;border:1px dashed var(--border);border-radius:16px;color:var(--text-secondary);font-size:13px}[data-skin=family] .family-bottom-nav{display:none}@media(max-width:980px){[data-skin=family] .family-grid{grid-template-columns:1fr}}@media(max-width:760px){[data-skin=family] .family-app{grid-template-columns:1fr}[data-skin=family] .family-side{display:none}[data-skin=family] .family-main{padding:calc(14px + env(safe-area-inset-top,0px)) 14px calc(76px + env(safe-area-inset-bottom,0px))}[data-skin=family] .family-hero h1{font-size:24px}[data-skin=family] .family-hero-face{font-size:72px}[data-skin=family] .family-bottom-nav{position:fixed;z-index:9;right:0;bottom:0;left:0;display:flex;justify-content:space-around;padding:8px 0 calc(8px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);background:#fff}[data-skin=family] .family-bottom-nav .family-nav-item{flex-direction:column;gap:3px;padding:0 6px;border-radius:0;color:var(--text-tertiary);font-size:11px}[data-skin=family] .family-bottom-nav .family-nav-item.is-active{background:transparent;color:var(--accent);box-shadow:none}[data-skin=family] .family-bottom-nav .family-nav-icon{width:22px;height:22px;border-radius:7px}[data-skin=family] .family-bottom-nav .family-nav-item.is-active .family-nav-icon{border-color:var(--accent);background:var(--accent)}}@media(max-width:520px){[data-skin=family] .task-list,[data-skin=family] .course-list{grid-template-columns:1fr}[data-skin=family] .practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}[data-skin=family] .family-chip{display:none}}.login-wrap{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:calc(24px + env(safe-area-inset-top,0px)) 16px calc(24px + env(safe-area-inset-bottom,0px))}.login-card{width:100%;max-width:380px;padding:30px 24px;margin:0}.login-brand{text-align:center;margin-bottom:22px}.login-mark{width:46px;height:46px;margin:0 auto 14px;border-radius:14px;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:var(--glow)}.login-title{font-size:24px;font-weight:600;letter-spacing:.5px}.login-sub{font-size:13px;color:var(--text-secondary);margin-top:6px}.login-card .input,.login-card select.input{font-size:16px}@media(min-width:768px){.login-card{max-width:400px;padding:36px 32px}}
