:root{--pink: #5b9dff;--pink-soft: #cfe3ff;--pink-bg: #f2f8ff;--purple: #7c8cff;--mint: #7fd8e8;--yellow: #ffe6a7;--text: #3f4a5a;--text-light: #8b95a8;--card: #ffffff;--shadow: 0 6px 18px rgba(91, 157, 255, .18);--radius: 20px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Segoe UI,Roboto,sans-serif;color:var(--text);background:linear-gradient(180deg,#eaf3ff,#eef0ff);background-attachment:fixed}button{font-family:inherit;cursor:pointer;border:none;outline:none}input{font-family:inherit}.app{max-width:480px;margin:0 auto;min-height:100vh;padding:16px 16px 40px;padding-top:calc(16px + env(safe-area-inset-top))}.app-header{margin-bottom:14px}.header-top{display:flex;align-items:center;justify-content:space-between}.app-header h1{font-size:24px;margin:0;letter-spacing:1px}.header-sub{margin:4px 0 0;font-size:13px;color:var(--text-light)}.header-btns{display:flex;align-items:center;gap:6px}.current-user{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-light);font-size:12px;font-weight:700}.admin-entry{width:40px;height:40px;border-radius:50%;background:#fff;box-shadow:var(--shadow);font-size:18px;transition:transform .15s}.admin-entry:active{transform:scale(.9) rotate(30deg)}.date-selector{background:#fff;border-radius:var(--radius);padding:12px 10px;box-shadow:var(--shadow);margin-bottom:16px}.week-nav{display:flex;align-items:center;justify-content:space-between;padding:0 6px 8px}.week-title{font-size:13px;color:var(--text-light);font-weight:600}.week-arrow{width:30px;height:30px;border-radius:50%;background:var(--pink-bg);color:var(--pink);font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center}.week-arrow:active{background:var(--pink-soft)}.week-strip{display:flex;gap:4px;justify-content:space-between}.day-cell{flex:1;background:transparent;border-radius:14px;padding:8px 0;display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;transition:all .2s}.day-week{font-size:11px;color:var(--text-light)}.day-num{font-size:16px;font-weight:700;color:var(--text)}.day-cell.selected{background:linear-gradient(160deg,var(--pink) 0%,#4a8bef 100%);box-shadow:0 4px 10px #4a8bef66}.today-dot{position:absolute;bottom:4px;width:5px;height:5px;border-radius:50%;background:var(--pink)}.day-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:0 4px}.day-heading-left{display:flex;align-items:center;gap:8px}.day-heading-date{font-size:18px;font-weight:700}.day-heading-week{font-size:13px;color:var(--text-light)}.today-badge{background:#d6e6ff;color:#3a6fc4;font-size:11px;padding:2px 8px;border-radius:10px;font-weight:700}.day-heading-count{font-size:14px;font-weight:700;color:var(--pink)}.progress-wrap{margin-bottom:16px;padding:0 4px}.progress-bar{height:10px;background:#dceaff;border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--pink),var(--purple));border-radius:10px;transition:width .4s ease}.progress-text{display:block;margin-top:6px;font-size:12px;color:var(--text-light)}.task-list{display:flex;flex-direction:column;gap:12px}.task-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px;transition:transform .15s;border:2px solid transparent}.task-card:active{transform:scale(.99)}.task-card.done{border-color:var(--mint);background:#f5fffb}.task-main{display:flex;align-items:center;gap:12px}.check{flex-shrink:0;width:30px;height:30px;border-radius:50%;border:2px dashed var(--pink-soft);display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:700;transition:all .25s;padding:0;background:transparent}.check:disabled{opacity:.65}.check.checked{background:var(--mint);border:2px solid var(--mint);animation:pop .3s ease}@keyframes pop{0%{transform:scale(.4)}60%{transform:scale(1.2)}to{transform:scale(1)}}.task-text{flex:1;min-width:0}.task-upload-add{display:flex;width:36px;height:36px;flex-shrink:0;align-items:center;justify-content:center;border:2px dashed #aac7ef;border-radius:12px;background:#f1f7ff;color:#6c9be0;font-size:24px;font-weight:300;line-height:1;transition:transform .15s,background .15s}.task-upload-add:active{transform:scale(.92);background:#e3efff}.task-upload-add:disabled{opacity:.5}.task-title{font-size:15px;font-weight:600}.task-card.done .task-title{color:var(--text-light);text-decoration:line-through}.task-note{font-size:12px;color:var(--text-light);margin-top:2px}.task-hint{font-size:12px;color:var(--pink);margin-top:4px}.task-thumb{flex-shrink:0;width:50px;height:50px;border-radius:12px;overflow:hidden;background:#eee}.task-thumb img,.task-thumb video{width:100%;height:100%;object-fit:cover}.task-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.mini-btn{background:var(--pink-bg);color:var(--pink);font-size:12px;padding:5px 12px;border-radius:12px;font-weight:600}.mini-btn:active{background:var(--pink-soft)}.mini-btn.danger{background:#ffeef0;color:#ff7a90}.empty-state{text-align:center;padding:50px 20px;color:var(--text-light)}.empty-emoji{font-size:52px;margin-bottom:10px}.empty-state p{margin:0 0 4px;font-size:15px;font-weight:600;color:var(--text)}.empty-state span{font-size:13px}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.viewer-body{max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;gap:12px}.viewer-body img,.viewer-body video{max-width:100%;max-height:75vh;border-radius:16px}.viewer-close{background:#fff;color:var(--text);padding:8px 24px;border-radius:20px;font-weight:600}.viewer-nav{display:flex;align-items:center;gap:14px}.viewer-nav .mini-btn{background:#fff}.viewer-count{color:#fff;font-size:14px;font-weight:600}.admin-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#5a4a5459;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:center;z-index:60}.admin-panel{width:100%;max-width:480px;background:var(--pink-bg);border-radius:26px 26px 0 0;padding:18px 18px calc(24px + env(safe-area-inset-bottom));max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.admin-header{display:flex;align-items:center;justify-content:space-between;font-size:18px;font-weight:700;margin-bottom:16px}.admin-login{display:flex;flex-direction:column;gap:12px;padding:20px 6px}.admin-tip{margin:0;text-align:center;color:var(--text-light)}.admin-err{color:#ff7a90;font-size:13px;text-align:center}.admin-body{display:flex;flex-direction:column}.field-label{font-size:13px;font-weight:600;color:var(--text-light);margin:12px 0 6px}.admin-panel input,.date-input{width:100%;padding:12px 14px;border-radius:14px;border:2px solid #fff;background:#fff;font-size:15px;color:var(--text);box-shadow:0 2px 6px #ff9ec41a}.admin-panel input:focus{border-color:var(--pink-soft)}.admin-date-hint{font-size:12px;color:var(--pink);margin-top:6px}.primary-btn{margin-top:16px;background:linear-gradient(160deg,var(--pink),#4a8bef);color:#fff;font-size:16px;font-weight:700;padding:13px;border-radius:16px;box-shadow:0 4px 12px #4a8bef66}.primary-btn:active{transform:scale(.98)}.admin-list-title{margin:22px 0 10px;font-size:14px;font-weight:700}.admin-list{display:flex;flex-direction:column;gap:8px}.admin-row{background:#fff;border-radius:14px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.admin-row-text{min-width:0}.admin-row-title{font-size:14px;font-weight:600}.admin-row-note{font-size:12px;color:var(--text-light);margin-top:2px}.admin-media{display:flex;align-items:center;gap:10px}.admin-row-media{margin-top:6px}.empty-mini{text-align:center;color:var(--text-light);font-size:13px;padding:12px}.thumb-box{position:relative;border-radius:12px;overflow:hidden;background:#e6eefc;flex-shrink:0}.thumb-strip{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.thumb-more{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000073;color:#fff;font-size:13px;font-weight:700}.thumb-box img,.thumb-box video{width:100%;height:100%;object-fit:cover;display:block}.thumb-play{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;background:#00000040}.thumb-empty{border-radius:12px;background:#e6eefc;flex-shrink:0}.task-gallery{margin-top:10px;padding-left:42px;display:flex;align-items:center;gap:10px}.gallery-busy{font-size:12px;color:var(--text-light)}.thumb-add{border-radius:12px;border:2px dashed #c3d4f2;background:#f5f8ff;color:#9fb6e6;font-size:26px;font-weight:300;display:flex;align-items:center;justify-content:center;flex-shrink:0}.thumb-add:active{background:#eaf1ff}.thumb-del{position:absolute;top:3px;right:3px;width:20px;height:20px;border-radius:50%;background:#0000008c;color:#fff;font-size:15px;line-height:1;display:flex;align-items:center;justify-content:center;z-index:2}.confirm-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:120;padding:30px}.confirm-box{background:#fff;border-radius:18px;padding:22px 20px 16px;width:100%;max-width:300px;text-align:center;box-shadow:0 12px 40px #0003}.confirm-title{font-size:16px;font-weight:700;color:var(--text)}.confirm-text{font-size:13px;color:var(--text-light);margin-top:6px}.confirm-actions{display:flex;gap:10px;justify-content:center;margin-top:18px}.confirm-actions .mini-btn{padding:8px 22px;font-size:14px}.detail-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:120;padding:24px}.detail-box{background:#fff;border-radius:18px;padding:20px 18px 16px;width:100%;max-width:360px;max-height:82vh;overflow-y:auto;box-shadow:0 12px 40px #0003;display:flex;flex-direction:column;gap:10px}.detail-title{font-size:16px;font-weight:700;color:var(--text)}.detail-date{font-size:12px;color:var(--text-light);margin-top:-6px}.detail-text{width:100%;min-height:96px;border:none;border-radius:12px;background:#f5f8ff;padding:10px 12px;font-size:14px;color:var(--text);resize:vertical;outline:none;font-family:inherit;box-sizing:border-box}.detail-text:focus{background:#eef3ff}.detail-media{display:flex;align-items:center;gap:10px}.detail-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.detail-actions .mini-btn{padding:8px 22px;font-size:14px}.today-overview{background:#fff;border-radius:16px;padding:12px;box-shadow:0 2px 8px #5b9dff1f;margin-bottom:6px}.today-overview-head{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:700;margin-bottom:10px}.today-overview-count{color:var(--pink)}.today-overview-list{display:flex;flex-direction:column;gap:8px}.overview-row{display:flex;align-items:center;gap:10px;padding:8px;border-radius:12px;background:#f6f9ff}.overview-row.done{background:#eafaf7}.overview-nopic{width:44px;height:44px;border-radius:12px;background:#eef1f6;color:var(--text-light);font-size:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.overview-row-text{min-width:0}.overview-row-title{font-size:14px;font-weight:600}.overview-status{font-size:12px;color:var(--text-light);margin-top:2px}.overview-status.ok{color:#2fae8f}.header-btns{display:flex;gap:8px}.section-title{font-size:14px;font-weight:800;color:var(--text);margin:6px 2px 2px}.section-title.review{color:#7c5bff}.review-tag{display:inline-block;background:#ece4ff;color:#7c5bff;font-size:11px;font-weight:700;padding:1px 7px;border-radius:8px;margin-right:6px;vertical-align:middle}.review-tag.kp{background:#e2f8ec;color:#2ea866}.review-tag.mem{background:#e0f3ff;color:#2f8fd6}.login-page{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;overflow:hidden;background:linear-gradient(160deg,#dff0ff,#eae6ff 55%,#f6eaff)}.blob{position:absolute;border-radius:50%;filter:blur(6px);opacity:.55;animation:floaty 7s ease-in-out infinite}.blob-1{width:160px;height:160px;background:radial-gradient(circle at 30% 30%,#8fc3ff,#5b9dff);top:-40px;left:-30px}.blob-2{width:120px;height:120px;background:radial-gradient(circle at 30% 30%,#c6b3ff,#9b7cff);bottom:-20px;right:-20px;animation-delay:1.5s}.blob-3{width:90px;height:90px;background:radial-gradient(circle at 30% 30%,#b6ecff,#7fd8e8);bottom:90px;left:20px;animation-delay:3s}@keyframes floaty{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-16px) scale(1.05)}}.login-card{position:relative;z-index:1;width:100%;max-width:340px;background:#ffffffb8;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.8);border-radius:28px;padding:32px 24px 28px;box-shadow:0 18px 40px #5b76ff38;display:flex;flex-direction:column;animation:cardIn .5s cubic-bezier(.22,1,.36,1)}@keyframes cardIn{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.login-logo{width:72px;height:72px;margin:0 auto;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:38px;background:linear-gradient(160deg,#eaf3ff,#efe9ff);box-shadow:0 6px 16px #5b9dff4d,inset 0 0 0 3px #fff}.login-title{text-align:center;margin:14px 0 2px;font-size:23px;letter-spacing:1px;background:linear-gradient(90deg,#5b9dff,#9b7cff);-webkit-background-clip:text;background-clip:text;color:transparent}.login-sub{text-align:center;margin:0 0 20px;font-size:13px;color:var(--text-light)}.login-field{display:flex;align-items:center;gap:10px;background:#fff;border:2px solid #eaf0fb;border-radius:16px;padding:0 14px;margin-bottom:12px;transition:all .2s}.login-field:focus-within{border-color:#9dc4ff;box-shadow:0 4px 14px #5b9dff2e}.login-field.error{border-color:#ffc0cc}.login-icon{font-size:16px;opacity:.7}.login-field input{flex:1;border:none;outline:none;background:transparent;padding:13px 0;font-size:15px;color:var(--text)}.login-err{color:#ff7a90;font-size:13px;text-align:center;margin:-2px 0 10px}.login-btn{margin-top:6px;padding:14px;border-radius:16px;font-size:16px;font-weight:700;letter-spacing:4px;color:#fff;background:linear-gradient(135deg,#5b9dff,#7c8cff,#9b7cff);box-shadow:0 8px 18px #5b7cff66;transition:transform .15s,box-shadow .15s}.login-btn:active{transform:translateY(1px) scale(.99);box-shadow:0 4px 10px #5b7cff59}.login-foot{text-align:center;margin:16px 0 0;font-size:12px;color:var(--text-light)}.memory-toggle{display:flex;align-items:center;gap:10px;margin-top:14px;padding:12px;border-radius:14px;background:#fff;border:2px solid #eef2fb;cursor:pointer}.memory-toggle.on{border-color:#cdbcff;background:#f6f2ff}.memory-toggle input{width:20px;height:20px;accent-color:#7c5bff;flex-shrink:0}.memory-toggle-text{display:flex;flex-direction:column;font-size:14px;font-weight:600}.memory-toggle-text small{font-weight:400;color:var(--text-light);font-size:11px;margin-top:2px}.mem-overview{background:#fff;border-radius:16px;padding:12px;box-shadow:0 2px 8px #5b9dff1f;margin-bottom:6px}.mem-table-wrap{overflow-x:auto}.mem-table{width:100%;border-collapse:collapse;font-size:13px}.mem-table th,.mem-table td{text-align:center;padding:8px 6px;border-bottom:1px solid #f0f3f9;white-space:nowrap}.mem-table th{color:var(--text-light);font-size:12px;font-weight:700}.mem-name-col{text-align:left!important;max-width:120px;overflow:hidden;text-overflow:ellipsis;font-weight:600}.mem-ok{color:#2fae8f;font-weight:800}.mem-no{color:#c7cdd8}.mem-na{color:#e2e6ee}.page{max-width:480px;margin:0 auto;min-height:100vh;padding:16px 16px 40px;padding-top:calc(16px + env(safe-area-inset-top))}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.page-header h1{font-size:19px;margin:0}.page-back{background:#fff;color:var(--pink);font-size:14px;font-weight:600;padding:8px 14px;border-radius:14px;box-shadow:var(--shadow);min-width:64px}.page-back.placeholder{visibility:hidden;box-shadow:none}.mem-page-body{display:flex;flex-direction:column;gap:14px}.mem-card{background:#fff;border-radius:18px;padding:14px;box-shadow:var(--shadow)}.mem-section-title{font-size:14px;font-weight:800;margin-bottom:10px}.mem-card.done-card{background:#f4f6fa}.mem-card.done-card .mem-section-title{color:var(--text-light)}.mem-row-done td{color:#b6bdc9}.mem-row-done .mem-ok{color:#b7cfc7}.mem-expand-btn{width:100%;margin-top:10px;padding:10px;border-radius:12px;background:#e9eef7;color:var(--text-light);font-size:13px;font-weight:600}.mem-expand-btn:active{background:#dde4ef}.mem-tabs{display:flex;gap:8px;background:#e9eef7;border-radius:14px;padding:4px;margin-bottom:14px}.mem-tab{flex:1;padding:9px 0;border-radius:11px;background:transparent;color:var(--text-light);font-size:14px;font-weight:700}.mem-tab.active{background:#fff;color:var(--pink);box-shadow:0 2px 8px #5b9dff29}.kp-wrap{display:flex;flex-direction:column;gap:12px}.kp-add{display:flex;gap:8px}.kp-add-media{display:flex;align-items:center;gap:10px}.kp-media{margin-top:10px}.kp-add-input{flex:1;border:none;border-radius:14px;padding:12px 14px;font-size:14px;background:#fff;box-shadow:0 2px 8px #5b9dff1f;outline:none;color:var(--text)}.kp-add-input::placeholder{color:var(--text-light)}.kp-add-btn{padding:0 18px;border-radius:14px;background:var(--pink);color:#fff;font-size:14px;font-weight:700;box-shadow:var(--shadow)}.kp-card{background:#fff;border-radius:18px;padding:14px;box-shadow:var(--shadow)}.kp-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.kp-title{font-size:15px;font-weight:700;word-break:break-all}.kp-del{background:transparent;color:#c3cad6;font-size:14px;padding:2px 6px;flex-shrink:0}.kp-body{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.kp-dots{display:flex;gap:8px}.kp-dot{position:relative;width:18px;height:18px;border-radius:50%;border:2px solid #d8e2f2;background:#fff;transition:background .2s,border-color .2s}.kp-dot.on{background:#4cd07d;border-color:#4cd07d;cursor:pointer}.kp-dot.has-detail:after{content:"";position:absolute;top:-4px;right:-4px;width:9px;height:9px;border-radius:50%;background:var(--pink);border:1.5px solid #fff}.kp-next{font-size:12px;font-weight:700;color:var(--pink);background:var(--pink-bg);padding:5px 10px;border-radius:10px;flex-shrink:0;white-space:nowrap}.kp-full-badge{font-size:13px;font-weight:700;color:#35b56a;flex-shrink:0}.kp-sub{margin-top:8px;font-size:12px;color:var(--text-light)}.kp-next.overdue{color:#ff5470;background:#ffe9ee}.kp-side{display:flex;align-items:center;gap:8px;flex-shrink:0}.kp-adjust{display:flex;gap:6px}.kp-step{width:30px;height:30px;border-radius:50%;background:var(--pink-bg);color:var(--pink);font-size:18px;font-weight:700;line-height:1;display:flex;align-items:center;justify-content:center}.kp-step:active{background:var(--pink-soft)}.kp-step:disabled{opacity:.4}.kp-day-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}.kp-day-label{font-size:13px;font-weight:600;color:var(--text);flex-shrink:0}.kp-date-input{flex:0 0 auto;padding:6px 10px}.kp-day-options{display:flex;gap:6px;flex-wrap:wrap}.kp-day-option{padding:5px 10px;border-radius:12px;background:var(--pink-bg);color:var(--pink);font-size:12px;font-weight:600}.kp-day-option.on{background:var(--pink);color:#fff}.kp-card.kp-done{background:#f4f6fa;box-shadow:none}.kp-card.kp-done .kp-title{color:var(--text-light)}.kp-done-title{font-size:13px;font-weight:800;color:var(--text-light);margin-top:4px}button:disabled{cursor:not-allowed;opacity:.52;box-shadow:none}.field-help{margin-top:6px;color:var(--text-light);font-size:11px;line-height:1.5}.admin-row-wrap{overflow:hidden;border-radius:14px;background:#fff}.admin-row-wrap .admin-row{border-radius:0}.admin-row-actions,.inline-actions{display:flex;flex-shrink:0;gap:6px}.review-content-editor{padding:0 12px 12px;border-top:1px solid #edf2fb}.review-content-editor textarea{width:100%;resize:vertical;border:2px solid #e7eefb;border-radius:14px;background:#fff;color:var(--text);font:inherit;line-height:1.6;outline:none}.review-content-editor textarea{min-height:88px;padding:10px 12px}.review-content-editor textarea:focus{border-color:#9cc2ff;box-shadow:0 0 0 3px #5b9dff1a}.review-content-editor .inline-actions{justify-content:flex-end;margin-top:8px}.mini-btn.save{background:#e1f6f0;color:#23876e}.flower-mark{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(145deg,#fff0f2,#ffe1e8);box-shadow:var(--shadow);font-size:20px;animation:flower-pop .5s ease,fm-glow 2.2s ease-in-out .5s infinite}@keyframes flower-pop{0%{transform:scale(0) rotate(-40deg)}70%{transform:scale(1.25) rotate(8deg)}to{transform:scale(1) rotate(0)}}@keyframes fm-glow{0%,to{box-shadow:var(--shadow);transform:scale(1)}50%{box-shadow:0 0 16px #ff6b8ca6;transform:scale(1.1)}}.flower-banner{position:relative;overflow:hidden;display:flex;align-items:center;gap:12px;margin:12px 0 4px;padding:14px 16px;border:1px solid #ffd3dd;border-radius:18px;background:linear-gradient(135deg,#fff0f3,#ffe3ec 55%,#fff2f0);box-shadow:0 6px 18px #e95c852e;cursor:pointer;animation:fb-enter .5s cubic-bezier(.34,1.56,.64,1)}@keyframes fb-enter{0%{transform:translateY(10px) scale(.96);opacity:0}}.flower-banner:after{content:"";position:absolute;top:0;bottom:0;left:-80px;width:60px;background:linear-gradient(115deg,transparent,rgba(255,255,255,.8),transparent);animation:fb-shine 3s ease-in-out infinite;pointer-events:none}@keyframes fb-shine{0%{left:-80px}55%,to{left:110%}}.fb-flower{font-size:36px;line-height:1;filter:drop-shadow(0 3px 6px rgba(233,92,133,.4));animation:fb-float 2.6s ease-in-out infinite}@keyframes fb-float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(-7deg) scale(1.08)}}.fb-text{display:flex;min-width:0;flex:1;flex-direction:column;gap:2px}.fb-text strong{color:#d6446f;font-size:15px}.fb-text span{color:#bb8494;font-size:11px}.fb-spark{font-size:18px;animation:fb-twinkle 1.6s ease-in-out infinite}@keyframes fb-twinkle{0%,to{opacity:1;transform:scale(1) rotate(0)}50%{opacity:.4;transform:scale(.7) rotate(30deg)}}.flower-celebrate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 40%,#ffc8d880,#2e1424db);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);cursor:pointer;animation:fc-fade-in .3s ease}@keyframes fc-fade-in{0%{opacity:0}}.fc-petal{position:absolute;top:-8%;line-height:1;animation-name:fc-fall;animation-timing-function:linear;animation-fill-mode:forwards;filter:drop-shadow(0 2px 6px rgba(255,120,150,.35));pointer-events:none}@keyframes fc-fall{0%{transform:translateY(0) translate(0) rotate(0);opacity:0}8%{opacity:1}to{transform:translateY(118vh) translate(calc(var(--sway, 1) * 60px)) rotate(340deg);opacity:.85}}.fc-center{position:relative;display:flex;flex-direction:column;align-items:center;padding:0 32px;text-align:center}.fc-stage{position:relative;display:flex;align-items:center;justify-content:center;width:220px;height:220px}.fc-rays{position:absolute;top:-14px;right:-14px;bottom:-14px;left:-14px;border-radius:50%;background:repeating-conic-gradient(rgba(255,236,190,.4) 0 9deg,transparent 9deg 24deg);-webkit-mask:radial-gradient(circle,#000 18%,transparent 68%);mask:radial-gradient(circle,#000 18%,transparent 68%);animation:fc-spin 9s linear infinite}@keyframes fc-spin{to{transform:rotate(360deg)}}.fc-ring{position:absolute;width:130px;height:130px;border:3px solid rgba(255,255,255,.55);border-radius:50%;animation:fc-ring-burst 1.1s ease-out .25s both}@keyframes fc-ring-burst{0%{transform:scale(.4);opacity:1}to{transform:scale(1.9);opacity:0}}.fc-flower{font-size:104px;line-height:1;filter:drop-shadow(0 8px 22px rgba(255,90,130,.55));animation:fc-bloom .9s cubic-bezier(.34,1.56,.64,1) both,fc-breathe 2.4s ease-in-out 1s infinite}@keyframes fc-bloom{0%{transform:scale(0) rotate(-180deg)}60%{transform:scale(1.3) rotate(14deg)}to{transform:scale(1) rotate(0)}}@keyframes fc-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.07) rotate(-4deg)}}.fc-spark{position:absolute;font-size:22px;animation:fb-twinkle 1.4s ease-in-out infinite}.fc-spark.s1{top:26px;left:26px;animation-delay:.2s}.fc-spark.s2{top:40px;right:20px;font-size:26px;animation-delay:.6s}.fc-spark.s3{bottom:30px;left:44px;animation-delay:1s}.fc-title{margin-top:6px;color:#fff;font-size:30px;font-weight:900;letter-spacing:1px;text-shadow:0 3px 14px rgba(214,68,111,.65);animation:fc-rise .6s ease .35s both}.fc-sub{max-width:300px;margin-top:10px;color:#ffffffeb;font-size:14px;line-height:1.7;animation:fc-rise .6s ease .55s both}.fc-hint{margin-top:26px;color:#ffffff8c;font-size:11px;animation:fc-rise .6s ease 1.4s both}@keyframes fc-rise{0%{transform:translateY(14px);opacity:0}}.flower-panel{margin-top:24px;padding:14px;border:1px solid #ffd9e0;border-radius:18px;background:linear-gradient(150deg,#fff,#fff5f7);box-shadow:0 4px 14px #d660801a}.flower-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.flower-panel-head>div{display:flex;flex-direction:column;gap:2px}.flower-panel-head strong{font-size:15px}.flower-panel-head span{color:var(--text-light);font-size:11px}.flower-state{flex-shrink:0;padding:5px 10px;border-radius:12px;background:#f0f4fa;color:#6f7c90;font-size:11px;font-weight:800}.flower-state.on{background:#ffe1e8;color:#d6537a}.flower-panel-date{margin-top:8px;color:var(--text-light);font-size:12px}.flower-panel .primary-btn.flower-revoke{background:#f0f3f8;color:#7b8799;box-shadow:none}@media (max-width: 360px){.admin-row{align-items:flex-start;flex-direction:column}.admin-row-actions{width:100%;justify-content:flex-end}}.word-today-card{position:relative;overflow:hidden;margin:0 0 16px;padding:16px;border:1px solid rgba(122,145,255,.16);border-radius:22px;background:linear-gradient(135deg,#fffffff2,#f0f6fff5),repeating-linear-gradient(0deg,transparent 0 19px,rgba(129,153,231,.05) 19px 20px),repeating-linear-gradient(90deg,transparent 0 19px,rgba(129,153,231,.05) 19px 20px);box-shadow:var(--shadow)}.word-today-card:after{position:absolute;top:-34px;right:-28px;width:112px;height:112px;border-radius:50%;background:#7fd8e82e;content:""}.word-today-head,.word-today-progress,.word-today-actions{position:relative;z-index:1}.word-today-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.word-today-kicker{color:#557be0;font-size:9px;font-weight:900;letter-spacing:1.5px}.word-today-head h2{margin:3px 0 0;font-size:19px}.word-today-open{position:relative;z-index:2;padding:7px 10px;border-radius:12px;background:#fffc;color:#66799b;font-size:11px;font-weight:700}.word-today-progress{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:12px}.word-today-progress strong{font-size:13px}.word-today-progress span{color:var(--text-light);font-size:10px}.word-today-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.word-action{display:flex;align-items:center;gap:9px;min-height:66px;padding:10px;border-radius:16px;text-align:left}.word-action.learn{background:#e6f1ff;color:#346fc5}.word-action.review{background:#eeeaff;color:#7057c7}.word-action:disabled{opacity:.55}.word-action-icon{font-size:23px}.word-action>span:last-child{display:flex;flex-direction:column;min-width:0}.word-action strong{font-size:13px}.word-action small{margin-top:2px;opacity:.72;font-size:10px}.word-today-empty,.word-today-loading{display:flex;flex-direction:column;gap:2px;margin-top:12px;padding:12px;border-radius:14px;background:#ffffffb3;color:var(--text-light);font-size:12px}.word-today-empty strong{color:var(--text)}.word-page{width:100%;max-width:540px;min-height:100vh;margin:0 auto;padding:calc(16px + env(safe-area-inset-top)) 16px calc(34px + env(safe-area-inset-bottom))}.word-page-header{display:grid;grid-template-columns:76px 1fr 76px;align-items:center;min-height:44px;margin-bottom:14px;text-align:center;font-size:17px;font-weight:900}.word-page-header .page-back{justify-self:start}.word-step{justify-self:end;color:#71809a;font-size:12px;font-weight:800}.word-full-loading{display:flex;min-height:80vh;align-items:center;justify-content:center;color:#71809a;font-size:14px}.word-hero{position:relative;overflow:hidden;padding:24px 20px 18px;border-radius:26px;background:radial-gradient(circle at 90% 15%,rgba(255,255,255,.9) 0 8px,transparent 9px),linear-gradient(140deg,#70b8f5,#7d91ef 62%,#a586e8);color:#fff;box-shadow:0 14px 30px #516fc742}.word-hero:after{position:absolute;right:-26px;bottom:-55px;width:150px;height:150px;border:24px solid rgba(255,255,255,.13);border-radius:50%;content:""}.word-hero-day{display:inline-block;padding:4px 9px;border-radius:999px;background:#fff3;font-size:9px;font-weight:900;letter-spacing:1.5px}.word-hero h1{max-width:330px;margin:12px 0 6px;font-size:24px;line-height:1.32}.word-hero p{margin:0;color:#ffffffc7;font-size:12px}.word-hero-stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);margin-top:20px;padding:12px 5px;border:1px solid rgba(255,255,255,.18);border-radius:17px;background:#ffffff1f;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.word-hero-stats>div{display:flex;flex-direction:column;align-items:center;gap:2px}.word-hero-stats>div+div{border-left:1px solid rgba(255,255,255,.2)}.word-hero-stats strong{font-size:18px}.word-hero-stats span{color:#ffffffb8;font-size:9px}.word-mode-grid{display:flex;flex-direction:column;gap:12px;margin-top:16px}.word-mode-card{display:grid;grid-template-columns:56px 1fr 20px;align-items:center;gap:12px;width:100%;min-height:104px;padding:15px;border:1px solid #fff;border-radius:22px;background:#fff;box-shadow:0 7px 18px #4b6caa1f;text-align:left}.word-mode-card.learn{border-left:5px solid #69b5ef}.word-mode-card.review{border-left:5px solid #9b82e8}.word-mode-card:disabled{opacity:.58}.mode-illustration{display:flex;width:54px;height:54px;align-items:center;justify-content:center;border-radius:18px;background:#edf6ff;font-size:26px}.word-mode-card.review .mode-illustration{background:#f2edff}.word-mode-card>div{display:flex;flex-direction:column;gap:3px}.word-mode-card>div>span{color:var(--text-light);font-size:11px;font-weight:700}.word-mode-card strong{font-size:18px}.word-mode-card small{color:var(--text-light);font-size:10px}.word-mode-card>i{color:#aab3c2;font-size:28px;font-style:normal}.word-center-empty{display:flex;flex-direction:column;align-items:center;margin-top:18px;padding:28px 18px;border-radius:22px;background:#fff;text-align:center;box-shadow:var(--shadow)}.word-center-empty>span{font-size:42px}.word-center-empty strong{margin-top:8px}.word-center-empty p{margin:5px 0 0;color:var(--text-light);font-size:12px;line-height:1.6}.word-error{margin:12px 0;padding:11px 13px;border:1px solid #ffd2da;border-radius:14px;background:#fff1f4;color:#cc5570;font-size:12px;line-height:1.5}.word-card-progress{height:7px;overflow:hidden;margin-bottom:18px;border-radius:99px;background:#6177ac1f}.word-card-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#69b5ef,#8c87ed);transition:width .25s ease}.learn-word-card,.quiz-card{position:relative;overflow:hidden;padding:28px 22px;border:1px solid rgba(122,145,255,.14);border-radius:28px;background:repeating-linear-gradient(0deg,transparent 0 25px,rgba(122,145,255,.045) 25px 26px),repeating-linear-gradient(90deg,transparent 0 25px,rgba(122,145,255,.045) 25px 26px),#fff;box-shadow:0 12px 30px #4a69a926}.learn-word-card{display:flex;min-height:440px;flex-direction:column;align-items:center;justify-content:center}.learn-word-card:before{position:absolute;top:-38px;right:-42px;width:130px;height:130px;border-radius:50%;background:linear-gradient(135deg,#d7f0ff,#eae3ff);content:""}.learn-kicker,.quiz-prompt{color:#8291aa;font-size:9px;font-weight:900;letter-spacing:1.35px}.word-identity{position:relative;z-index:1;width:100%;text-align:center}.word-spelling-row{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:15px}.word-spelling{color:#283a59;font-family:Georgia,Times New Roman,serif;font-size:clamp(38px,11vw,58px);font-weight:700;letter-spacing:.5px}.word-phonetic{min-height:22px;margin-top:7px;color:#8490a2;font-size:16px}.word-meaning{display:inline-flex;align-items:center;gap:9px;margin-top:28px;padding:13px 17px;border-radius:16px;background:#f2f6ff}.word-meaning span{color:#6d80a0;font-family:Georgia,serif;font-size:13px;font-style:italic}.word-meaning strong{color:#354c71;font-size:23px}.word-tag{margin-top:20px;padding:5px 10px;border-radius:999px;background:#f0ecff;color:#7764bc;font-size:10px;font-weight:700}.word-speaker{display:inline-flex;width:50px;height:50px;flex-shrink:0;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(145deg,#d9eeff,#ebebff);color:#4d7ac5;box-shadow:0 5px 13px #517ec533;font-size:21px}.word-speaker.playing{animation:word-pulse 1s ease-in-out infinite;font-size:12px;letter-spacing:2px}.word-speaker.compact{width:36px;height:36px;font-size:15px;box-shadow:none}@keyframes word-pulse{50%{transform:scale(1.08);box-shadow:0 0 0 7px #5b9dff1f}}.word-card-nav,.summary-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;margin-top:16px}.word-card-nav button,.summary-actions button,.quiz-next{min-height:50px;border-radius:16px;background:#fff;color:#71809a;font-size:14px;font-weight:800;box-shadow:0 5px 14px #4666a01f}.word-card-nav button.primary,.summary-actions button.primary,.quiz-next{background:linear-gradient(135deg,#5d9ff2,#817ee7);color:#fff;box-shadow:0 7px 17px #5269d747}.quiz-card{padding:24px 18px 18px}.quiz-card .word-spelling{font-size:clamp(38px,10vw,52px)}.quiz-card .word-phonetic{font-size:16px}.quiz-options{display:flex;flex-direction:column;gap:9px;margin-top:22px}.quiz-option{display:grid;grid-template-columns:32px 1fr;align-items:center;gap:10px;width:100%;min-height:54px;padding:9px 13px;border:2px solid #edf1f8;border-radius:16px;background:#fff;color:#43516a;text-align:left}.quiz-option>span{display:flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:10px;background:#f0f4fa;color:#71809a;font-size:11px;font-weight:900}.quiz-option strong{font-size:17px;font-weight:700}.quiz-option.correct{border-color:#7bd4b4;background:#eefbf6;color:#23876e}.quiz-option.correct>span{background:#7bd4b4;color:#fff}.quiz-option.wrong{border-color:#ffabb9;background:#fff1f4;color:#bd4e65}.quiz-option.wrong>span{background:#ff9dae;color:#fff}.quiz-option:disabled{opacity:1}.quiz-feedback{display:flex;flex-direction:column;gap:3px;margin-top:14px;padding:12px 14px;border-radius:14px;font-size:12px}.quiz-feedback.right{background:#eafaf4;color:#23876e}.quiz-feedback.miss{background:#fff0f3;color:#bf5068}.quiz-feedback span{opacity:.85}.quiz-next{width:100%;margin-top:16px}.quiz-next:disabled{background:#cbd3df;box-shadow:none}.word-summary-card{padding:30px 20px;border-radius:28px;background:#fff;box-shadow:0 12px 30px #4a69a926;text-align:center}.summary-star{font-size:68px;filter:drop-shadow(0 8px 12px rgba(255,196,69,.25))}.word-summary-card h1{margin:12px 0 18px;font-size:22px}.summary-score{display:flex;align-items:baseline;justify-content:center;gap:6px}.summary-score strong{color:#657de3;font-size:46px}.summary-score span{color:var(--text-light);font-size:13px}.summary-wrongs{margin-top:20px;padding:14px;border-radius:16px;background:#fff5f6;text-align:left}.summary-wrongs>span{color:#ad7380;font-size:11px}.summary-wrongs>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.summary-wrongs b{padding:5px 9px;border-radius:9px;background:#fff;color:#b65069;font-size:12px}.retry-card{min-height:390px}.word-list-study-page{max-width:680px}.learn-word-sheet{overflow:hidden;border:1px solid rgba(122,145,255,.16);border-radius:24px;background:repeating-linear-gradient(0deg,transparent 0 24px,rgba(122,145,255,.035) 24px 25px),repeating-linear-gradient(90deg,transparent 0 24px,rgba(122,145,255,.035) 24px 25px),#fff;box-shadow:0 10px 28px #4a69a924}.learn-sheet-banner{display:flex;align-items:center;justify-content:space-between;min-height:76px;padding:14px 18px;background:linear-gradient(110deg,#72c5f3,#89a4ef 62%,#aa8be9);color:#fff}.learn-sheet-banner>div{display:flex;flex-direction:column;gap:3px}.learn-sheet-banner span{font-size:9px;font-weight:900;letter-spacing:1.5px;opacity:.8}.learn-sheet-banner strong{font-size:18px}.learn-sheet-banner>i{font-size:32px;font-style:normal;filter:drop-shadow(0 3px 7px rgba(65,84,161,.3))}.learn-word-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px 10px 12px}.learn-word-row{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr);gap:6px;min-width:0;padding:14px 9px;border-bottom:1px solid #edf0f7}.learn-word-row:nth-child(odd){border-right:1px solid #e6e9f3}.learn-word-row:nth-last-child(-n+2){border-bottom:none}.learn-word-number{display:flex;width:20px;height:20px;align-items:center;justify-content:center;margin-top:2px;border:1px solid #b7d8ee;border-radius:6px;color:#83a7bf;font-size:8px;font-weight:800}.learn-word-main{min-width:0}.learn-word-head{display:flex;align-items:center;justify-content:space-between;gap:4px}.learn-word-head>strong{overflow:hidden;color:#263951;font-family:Georgia,Times New Roman,serif;font-size:clamp(19px,5vw,26px);line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.learn-word-head .word-speaker.compact{width:34px;height:34px;font-size:15px}.learn-word-phonetic{display:block;overflow:hidden;margin-top:3px;color:#8d98aa;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.learn-word-main p{display:flex;align-items:baseline;gap:5px;min-height:23px;margin:6px 0 0;color:#47556a;font-size:15px;line-height:1.45;word-break:break-word}.learn-word-main p i{color:#8793a5;font-family:Georgia,serif;font-size:11px;white-space:nowrap}.youdao-credit{padding:10px 14px 13px;border-top:1px solid #edf0f7;color:#9aa5b5;text-align:center;font-size:9px}.youdao-credit.quiz-credit{margin-top:5px;padding:0;border:0;font-size:8px}.learn-test-dock{position:sticky;bottom:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:10px 10px 10px 14px;border:1px solid rgba(255,255,255,.82);border-radius:20px;background:#f4f8ffeb;box-shadow:0 9px 24px #3f58912e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.learn-test-dock>span{color:#7b8799;font-size:10px;line-height:1.45}.learn-test-dock button{display:flex;min-width:132px;min-height:48px;align-items:center;justify-content:center;gap:10px;padding:0 16px;border-radius:15px;background:linear-gradient(135deg,#5d9ff2,#817ee7);color:#fff;box-shadow:0 7px 17px #5269d747;font-size:14px;font-weight:900}.learn-test-dock button i{font-size:22px;font-style:normal}.admin-main-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:-4px 0 14px;padding:4px;border-radius:15px;background:#e5ecf8}.admin-main-tabs button{padding:9px;border-radius:11px;background:transparent;color:#758299;font-size:13px;font-weight:800}.admin-main-tabs button.active{background:#fff;color:#4e7bc8;box-shadow:0 3px 9px #4567a524}.word-admin{display:flex;flex-direction:column;gap:12px}.word-admin-loading{padding:30px 0;color:var(--text-light);text-align:center;font-size:13px}.word-admin-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.word-admin-summary>div{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 3px;border-radius:14px;background:#fff;box-shadow:0 3px 9px #4b6caa14}.word-admin-summary strong{color:#587bd2;font-size:17px}.word-admin-summary span{color:var(--text-light);font-size:9px}.word-admin-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:4px;border-radius:14px;background:#e6edf8}.word-admin-tabs button{padding:8px 3px;border-radius:10px;background:transparent;color:#758299;font-size:11px;font-weight:800}.word-admin-tabs button.active{background:#fff;color:#517dc9;box-shadow:0 2px 7px #4064a421}.word-admin-section{padding:13px;border-radius:17px;background:#ffffffc2;box-shadow:0 3px 10px #4b6caa14}.word-admin-section h3{margin:0 0 10px;font-size:14px}.word-book-create{display:grid;grid-template-columns:1fr 94px 66px;align-items:center;gap:7px}.word-book-create>label{display:flex;align-items:center;gap:3px;color:var(--text-light);font-size:10px;white-space:nowrap}.admin-panel .word-book-create>label input{width:44px;padding:9px 4px;text-align:center}.word-book-create .primary-btn{height:43px;margin:0;padding:6px;font-size:12px}.word-book-chips{display:flex;gap:8px;overflow-x:auto;padding:2px 0 4px;scrollbar-width:none}.word-book-chips::-webkit-scrollbar{display:none}.word-book-chips button{display:flex;min-width:110px;flex-direction:column;gap:2px;padding:10px 12px;border:2px solid transparent;border-radius:15px;background:#fff;text-align:left}.word-book-chips button.active{border-color:#8ab4f2;background:#edf5ff}.word-book-chips strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.word-book-chips span{color:var(--text-light);font-size:9px}.book-settings{display:grid;grid-template-columns:1fr 60px auto;align-items:center;gap:8px}.book-settings h3{margin:0}.book-settings>div{display:flex;flex-direction:column}.book-settings>div span{color:var(--text-light);font-size:9px}.admin-panel .book-settings>input{padding:9px 5px;text-align:center}.word-list-tools{display:grid;grid-template-columns:1fr auto;gap:8px}.word-list-tools .mini-btn{white-space:nowrap}.word-admin-list{display:flex;flex-direction:column;gap:8px}.word-admin-row{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:9px;padding:10px;border-radius:15px;background:#fff;box-shadow:0 2px 8px #4b6caa14}.word-admin-row.paused{opacity:.5}.word-admin-row-main{min-width:0}.word-admin-row-main>div{display:flex;align-items:baseline;gap:7px}.word-admin-row-main strong{color:#30425f;font-family:Georgia,serif;font-size:16px}.word-admin-row-main>div span{overflow:hidden;color:#8792a3;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.word-admin-row-main p{margin:3px 0 0;color:#526176;font-size:11px}.word-admin-row-main p i{margin-right:5px;color:#8390a4;font-family:Georgia,serif}.word-admin-row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:110px}.word-admin-row-actions .mini-btn{padding:5px 7px;font-size:9px}.word-admin-edit{padding:11px;border-radius:15px;background:#fff;box-shadow:0 2px 8px #4b6caa14}.word-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.word-edit-grid .wide{grid-column:1 / -1}.word-admin-edit .inline-actions{justify-content:flex-end;margin-top:8px}.word-admin-empty{padding:22px 12px;border-radius:15px;background:#ffffffa6;color:var(--text-light);text-align:center;font-size:12px}.import-section select{width:100%;padding:11px;border:1px solid #e2e9f4;border-radius:12px;background:#fff;color:var(--text)}.import-methods{display:grid;margin-top:10px}.import-methods button{padding:13px;border:2px dashed #9fc1ef;border-radius:14px;background:#eef6ff;color:#4b78bd;font-size:12px;font-weight:800}.import-divider{display:flex;align-items:center;gap:10px;margin:12px 0;color:#9aa5b5;font-size:9px}.import-divider:before,.import-divider:after{height:1px;flex:1;background:#e1e6ee;content:""}.import-section textarea{width:100%;min-height:120px;resize:vertical;padding:11px;border:2px solid #e7edf6;border-radius:13px;background:#fff;color:var(--text);font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;outline:none}.import-section textarea:focus{border-color:#a9c7ef}.import-preview{margin-top:15px}.import-preview-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.import-preview-head>div{display:flex;flex-direction:column;gap:2px}.import-preview-head strong{font-size:13px}.import-preview-head span{color:var(--text-light);font-size:9px}.import-preview-head .primary-btn{margin:0;padding:9px 11px;font-size:10px}.import-table-wrap{max-height:330px;overflow:auto;margin-top:10px;border:1px solid #e5ebf4;border-radius:12px;background:#fff}.import-table-wrap table{width:100%;border-collapse:collapse;font-size:10px}.import-table-wrap th{position:sticky;top:0;z-index:1;background:#edf3fb;color:#6f7d91}.import-table-wrap td,.import-table-wrap th{padding:7px;border-bottom:1px solid #edf0f5;text-align:left;white-space:nowrap}.import-table-wrap tr.invalid td{background:#fff3f5;color:#be5a6d}.mistake-list{display:flex;flex-direction:column;gap:7px}.mistake-list>div{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:8px;padding:9px;border-radius:13px;background:#fff}.mistake-list p{display:flex;min-width:0;flex-direction:column;margin:0}.mistake-list p strong{font-family:Georgia,serif;font-size:14px}.mistake-list p span,.mistake-list small{color:var(--text-light);font-size:9px}.mistake-list small{display:none}@media (min-width: 700px){.admin-panel{max-width:760px}.word-admin-list{display:grid;grid-template-columns:1fr 1fr}.word-admin-edit{grid-column:1 / -1}}@media (max-width: 420px){.word-today-actions{grid-template-columns:1fr}.word-today-progress{align-items:flex-start;flex-direction:column}.word-spelling-row{gap:9px}.word-speaker{width:44px;height:44px}.word-book-create{grid-template-columns:1fr 84px}.word-book-create .primary-btn{grid-column:1 / -1}.word-admin-row{grid-template-columns:36px 1fr}.word-admin-row-actions{grid-column:1 / -1;max-width:none}.book-settings{grid-template-columns:1fr 55px}.book-settings .danger{grid-column:1 / -1}.learn-word-grid{padding-inline:6px}.learn-word-row{grid-template-columns:18px minmax(0,1fr);gap:4px;padding:12px 6px}.learn-word-number{width:17px;height:17px;font-size:7px}.learn-word-head>strong{font-size:18px}.learn-word-phonetic{font-size:12px}.learn-word-main p{font-size:14px}.learn-test-dock{align-items:stretch;flex-direction:column}.learn-test-dock>span{text-align:center}.learn-test-dock button{width:100%}}:root{--pink: #ff6f91;--pink-soft: #ffd5e0;--pink-bg: #fff1f5;--purple: #7354de;--mint: #43d6b0;--yellow: #ffd84d;--party-blue: #36b9f3;--party-blue-dark: #2476da;--party-purple: #6541cf;--party-cream: #fffaf0;--text: #342a56;--text-light: #827aa0;--card: #ffffff;--shadow: 0 9px 0 rgba(86, 70, 160, .08), 0 18px 34px rgba(52, 94, 179, .14);--radius: 24px}html{background:#50c5f7}body{min-height:100vh;overflow-x:hidden;color:var(--text);background:radial-gradient(circle at 12% 11%,rgba(255,255,255,.9) 0 34px,transparent 35px),radial-gradient(circle at 18% 12%,rgba(255,255,255,.85) 0 52px,transparent 53px),radial-gradient(circle at 84% 20%,rgba(255,255,255,.6) 0 32px,transparent 33px),radial-gradient(circle at 90% 19%,rgba(255,255,255,.75) 0 46px,transparent 47px),linear-gradient(180deg,#36b8f2,#81dcfb 28%,#e8f8ff 59%,#f5f0ff);background-attachment:fixed;font-family:Arial Rounded MT Bold,PingFang SC,Microsoft YaHei,system-ui,sans-serif}body:before,body:after{position:fixed;z-index:-1;border-radius:999px;background:#ffffffa3;content:"";filter:blur(.2px);pointer-events:none}body:before{width:220px;height:56px;left:-70px;top:42%;box-shadow:70px -28px 0 6px #ffffffa3}body:after{width:260px;height:62px;right:-90px;top:66%;box-shadow:-82px -30px 0 9px #ffffff8c}button{transition:transform .18s ease,box-shadow .18s ease,filter .18s ease,background .18s ease}button:hover:not(:disabled){filter:brightness(1.025)}button:active:not(:disabled){transform:translateY(2px) scale(.98)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(255,216,77,.88);outline-offset:2px}.app{position:relative;max-width:760px;padding:22px 18px 38px;padding-top:calc(22px + env(safe-area-inset-top))}.sky-confetti{position:absolute;z-index:0;display:block;width:13px;height:24px;border-radius:6px;background:#ffd84d;box-shadow:0 4px 10px #413b9133;transform:rotate(25deg);pointer-events:none}.confetti-one{top:58px;left:-7px;background:#ff7093;animation:confetti-float 5s ease-in-out infinite}.confetti-two{top:205px;right:-5px;background:#57d8b2;transform:rotate(-28deg);animation:confetti-float 6s ease-in-out -2s infinite}.confetti-three{top:430px;left:-18px;background:#7354de;transform:rotate(44deg);animation:confetti-float 5.5s ease-in-out -1s infinite}.party-hero{position:relative;z-index:1;min-height:360px;overflow:hidden;margin-bottom:18px;padding:18px 20px 0;border:3px solid rgba(255,255,255,.74);border-radius:36px;background:radial-gradient(circle at 82% 28%,rgba(255,255,255,.3) 0 3px,transparent 4px),radial-gradient(circle at 88% 18%,rgba(255,242,145,.8) 0 5px,transparent 6px),linear-gradient(145deg,#42c7f6,#4c9ff2 48%,#7858df);box-shadow:0 11px #3440a026,0 25px 48px #215daa47,inset 0 1px #ffffff59;color:#fff}.party-hero:before{position:absolute;width:230px;height:74px;right:-42px;bottom:2px;border-radius:999px 999px 0 0;background:#fffc;box-shadow:-130px 32px 0 12px #ffffffa3,96px 31px 0 18px #ffffffbd;content:""}.party-hero:after{position:absolute;width:250px;height:250px;right:-88px;top:74px;border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 0 38px #ffffff0f,0 0 0 74px #ffffff09;content:""}.header-top{position:relative;z-index:5;gap:12px}.party-brand{display:flex;min-width:0;align-items:center;gap:10px}.party-brand-mark{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border:3px solid #fff7c7;border-radius:15px 18px 14px 17px;background:linear-gradient(145deg,#ffe86a,#ffbf35);color:#fff;box-shadow:0 5px #e79b24,0 8px 16px #3d328c38;font-size:22px;transform:rotate(-7deg)}.party-brand>div{display:flex;min-width:0;flex-direction:column}.party-brand>div>span{color:#ffffffb3;font-size:8px;font-weight:900;letter-spacing:1.8px}.party-hero .party-brand h1{margin:1px 0 0;color:#fffdf3;font-size:clamp(18px,4vw,24px);font-weight:1000;letter-spacing:.5px;text-shadow:0 3px 0 rgba(72,50,155,.4);white-space:nowrap}.header-btns{gap:7px}.current-user{display:flex;width:38px;height:38px;align-items:center;justify-content:center;overflow:visible;border:2px solid rgba(255,255,255,.55);border-radius:14px;background:#ffffff2e;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.current-user i{font-style:normal}.current-user b{position:absolute;top:45px;right:0;max-width:100px;overflow:hidden;padding:4px 8px;border-radius:9px;background:#3a2d7c8c;font-size:9px;text-overflow:ellipsis;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s}.current-user:hover b{opacity:1}.admin-entry{width:38px;height:38px;border:2px solid rgba(255,255,255,.55);border-radius:14px;background:#fff3;box-shadow:0 5px 12px #35308929;font-size:16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.admin-entry:hover{background:#ffffff52;transform:translateY(-2px)}.admin-entry:active{transform:translateY(2px) scale(.96)}.flower-mark{position:absolute;top:43px;right:128px;z-index:3;filter:drop-shadow(0 3px 3px rgba(84,44,118,.25));animation:flower-bob 2.3s ease-in-out infinite}.party-hero-main{position:relative;z-index:2;display:grid;min-height:288px;grid-template-columns:minmax(0,1.35fr) minmax(180px,.65fr);align-items:center;gap:8px}.party-hero-copy{position:relative;z-index:3;align-self:center;padding:18px 0 50px 5px}.party-kicker{display:inline-flex;margin-bottom:10px;padding:5px 10px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:#42389e2e;color:#fff3a2;font-size:8px;font-weight:1000;letter-spacing:1.15px}.party-hero-copy h2{max-width:420px;margin:0;color:#fff;font-size:clamp(25px,6vw,38px);line-height:1.16;text-shadow:0 4px 0 rgba(60,49,151,.28)}.party-hero-copy p{max-width:390px;margin:10px 0 18px;color:#ffffffd6;font-size:12px;font-weight:650;line-height:1.65}.party-hero-stats{display:flex;width:min(100%,360px);gap:8px}.party-hero-stats span{display:flex;min-width:0;flex:1;flex-direction:column;padding:9px 8px 8px;border:1px solid rgba(255,255,255,.26);border-radius:14px;background:#2f288730;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.party-hero-stats b{color:#fff8ae;font-size:18px;line-height:1}.party-hero-stats small{margin-top:4px;color:#ffffffb8;font-size:8px;font-weight:800;white-space:nowrap}.party-hero-visual{position:relative;z-index:2;height:100%;min-height:274px}.hero-platform{position:absolute;z-index:-1;width:210px;height:56px;right:-4px;bottom:21px;border:5px solid rgba(255,255,255,.9);border-radius:50%;background:linear-gradient(180deg,#9ef0ca 0,#9ef0ca 42%,#42c994 43%,#42c994 58%,#f7d28b 59%,#f7d28b);box-shadow:0 14px 20px #2e307e33}.hero-orbit{position:absolute;z-index:5;color:#ffef75;font-size:23px;filter:drop-shadow(0 3px 4px rgba(74,50,143,.3));animation:star-twinkle 2s ease-in-out infinite}.orbit-one{top:38px;right:8px}.orbit-two{top:82px;left:-5px;color:#fff;font-size:16px;animation-delay:-.8s}.party-mascot{position:absolute;z-index:3;width:200px;height:220px;right:4px;bottom:38px}.mascot-body{position:absolute;z-index:3;width:144px;height:164px;left:29px;top:25px;border:4px solid rgba(255,255,255,.6);border-radius:48% 48% 44% 44%/45% 45% 54% 54%;background:radial-gradient(circle at 35% 27%,#fff491 0 5%,transparent 6%),linear-gradient(145deg,#ffe76b,#ffd238 52%,#f5af28);box-shadow:inset -10px -12px 18px #d5841833,inset 9px 8px 13px #ffffff59,0 13px 16px #3b2f893d;animation:mascot-bounce 3s ease-in-out infinite}.mascot-eye{position:absolute;z-index:4;width:13px;height:20px;top:67px;border-radius:50%;background:#4b3154;box-shadow:inset 3px 4px #fff}.mascot-eye-left{left:42px}.mascot-eye-right{right:42px}.mascot-cheek{position:absolute;z-index:4;width:19px;height:9px;top:92px;border-radius:50%;background:#ff696b73;filter:blur(1px)}.mascot-cheek-left{left:24px}.mascot-cheek-right{right:24px}.mascot-mouth{position:absolute;z-index:5;width:31px;height:25px;left:54px;top:90px;overflow:hidden;border:3px solid #5c3150;border-radius:8px 8px 18px 18px;background:#6a3650}.mascot-mouth i{position:absolute;width:22px;height:10px;left:2px;bottom:-3px;border-radius:50% 50% 0 0;background:#ff7792}.mascot-cap{position:absolute;z-index:6;width:105px;height:32px;left:17px;top:-18px;border-radius:10px;background:#4e67da;box-shadow:0 6px #344cb8;transform:rotate(-5deg)}.mascot-cap:before{position:absolute;width:78px;height:78px;left:13px;top:-28px;background:#637bf0;clip-path:polygon(50% 0,100% 31%,50% 63%,0 31%);content:""}.mascot-cap i{position:absolute;z-index:2;width:7px;height:42px;right:8px;top:0;border-radius:9px;background:#ffd84d;transform:rotate(10deg)}.mascot-cap b{position:absolute;z-index:3;width:13px;height:20px;right:0;top:34px;border-radius:50% 50% 60% 60%;background:#ffd84d}.mascot-arm{position:absolute;z-index:2;width:50px;height:25px;top:98px;border:3px solid rgba(255,255,255,.45);border-radius:999px;background:#ffd13c;box-shadow:0 7px 8px #4a30792e}.mascot-arm-left{left:5px;transform:rotate(28deg)}.mascot-arm-right{right:2px;transform:rotate(-42deg);transform-origin:left center}.mascot-foot{position:absolute;z-index:4;width:45px;height:29px;top:174px;border:3px solid rgba(255,255,255,.4);border-radius:60% 60% 45% 45%;background:#f4ab2b}.mascot-foot-left{left:40px;transform:rotate(10deg)}.mascot-foot-right{right:34px;transform:rotate(-9deg)}.mascot-shadow{position:absolute;width:128px;height:22px;left:36px;bottom:10px;border-radius:50%;background:#31277438;filter:blur(5px)}.mascot-star{position:absolute;z-index:7;display:grid;width:48px;height:48px;right:-1px;top:18px;place-items:center;border:3px solid #fff9b7;border-radius:17px;background:linear-gradient(145deg,#fff36e,#ffbd2e);color:#fff;box-shadow:0 7px #e69725,0 10px 18px #3f318738;font-size:26px;transform:rotate(10deg);animation:star-twinkle 2s ease-in-out -.4s infinite}.mascot-spark{position:absolute;z-index:8;color:#fff;font-size:20px;animation:star-twinkle 1.8s ease-in-out infinite}.mascot-spark-one{left:11px;top:35px}.mascot-spark-two{right:22px;bottom:40px;color:#a7ffdd;font-size:12px;animation-delay:-.7s}.party-mascot.character-lineup{width:238px;height:228px;right:-2px;bottom:31px;transform:none}.character-sticker{position:absolute;z-index:3;overflow:visible;margin:0;border:4px solid #fff;background:#fff;box-shadow:0 8px #44318f3d,0 14px 22px #342a7f38}.character-sticker:after{position:absolute;z-index:-1;top:-10px;right:-10px;bottom:-10px;left:-10px;border:3px dashed rgba(255,255,255,.45);border-radius:inherit;content:""}.character-sticker img{display:block;width:100%;height:100%;object-fit:cover}.character-pink{width:132px;height:154px;left:1px;top:4px;border-radius:34px 25px 30px 22px;background:#f9c6ef;transform:rotate(-7deg);animation:card-float-left 3.4s ease-in-out infinite}.character-pink img{border-radius:28px 19px 24px 16px}.character-duo{width:126px;height:136px;right:0;bottom:1px;border-radius:24px 32px 22px 30px;background:#ffd763;transform:rotate(7deg);animation:card-float-right 3.6s ease-in-out -.8s infinite}.character-duo img{border-radius:18px 26px 16px 24px}.character-tag{position:absolute;z-index:4;display:inline-flex;top:-12px;left:12px;padding:4px 9px;border:2px solid #fff;border-radius:999px;background:#ff71aa;color:#fff;box-shadow:0 3px #c63e7c;font-size:7px;font-weight:1000;letter-spacing:1px}.character-duo .character-tag{right:9px;left:auto;background:#ffc536;color:#67491a;box-shadow:0 3px #db941a}.lineup-spark{position:absolute;z-index:6;color:#fff7a2;font-size:25px;filter:drop-shadow(0 3px 3px rgba(55,43,128,.24));animation:star-twinkle 1.8s ease-in-out infinite}.lineup-spark-one{left:-6px;bottom:35px}.lineup-spark-two{right:5px;top:4px;color:#a8ffe1;font-size:17px;animation-delay:-.6s}.party-board{position:relative;z-index:1;padding:20px;border:3px solid rgba(255,255,255,.88);border-radius:34px;background:#fffbf5e8;box-shadow:0 11px #5442971a,0 22px 40px #405da029;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.party-board-title{display:flex;align-items:center;justify-content:center;gap:10px;margin:-4px 0 13px;color:#74699a;font-size:10px;font-weight:1000;letter-spacing:1px}.party-board-title span{width:28px;height:3px;border-radius:99px;background:#eadff6}.date-selector{margin-bottom:20px;padding:10px;border:2px solid #fff;border-radius:22px;background:linear-gradient(180deg,#f2edff,#edf7ff);box-shadow:inset 0 2px 8px #5b4c9e12,0 6px #6351a014}.week-nav{padding:0 4px 7px}.week-title{color:#776e98;font-size:11px;font-weight:900}.week-arrow{width:32px;height:32px;border:2px solid #fff;background:#fff;color:#775dd6;box-shadow:0 4px #d9d0f0;font-weight:1000}.week-arrow:hover{transform:translateY(-2px)}.week-strip{gap:5px}.day-cell{min-height:62px;border:2px solid transparent;border-radius:16px;padding:8px 0 10px}.day-cell:hover:not(.selected){border-color:#dcd1fa;background:#fff9;transform:translateY(-2px)}.day-week{color:#968dac;font-size:9px;font-weight:800}.day-num{color:#4f456c;font-size:16px;font-weight:1000}.day-cell.selected{border-color:#fff;background:linear-gradient(145deg,#8c75ee,#6546ce);box-shadow:0 6px #5035a8,0 9px 15px #5335b040;transform:translateY(-3px)}.today-dot{width:6px;height:6px;bottom:4px;background:#ff7195;box-shadow:0 0 0 3px #ff719521}.day-heading{margin:3px 2px 13px}.day-heading-date{color:#40365f;font-size:20px;font-weight:1000}.day-heading-week{color:#9a90aa;font-weight:700}.today-badge{padding:4px 9px;border:1px solid #f5b8cb;background:#fff0f5;color:#e5527d;font-size:9px;box-shadow:0 3px #f4ccda}.day-heading-count{padding:6px 10px;border-radius:11px;background:#fff4c8;color:#d49516;font-size:12px}.word-today-card{border:3px solid #fff;border-radius:26px;background:linear-gradient(135deg,#4dcbf4,#5f92eb 48%,#8067dc);box-shadow:0 8px #5960ba,0 15px 24px #454aa638}.word-today-card:before{position:absolute;width:125px;height:125px;right:-38px;bottom:-62px;border:18px solid rgba(255,255,255,.1);border-radius:50%;content:""}.word-today-card:after{width:104px;height:104px;right:-18px;top:-30px;background:radial-gradient(circle,rgba(255,245,139,.65) 0 5%,transparent 7%);opacity:1}.word-today-kicker{color:#fff3a5;letter-spacing:1.5px}.word-today-head h2{color:#fff;text-shadow:0 3px 0 rgba(63,52,146,.22)}.word-today-open{border:1px solid rgba(255,255,255,.3);background:#392f9038;color:#fff}.word-today-progress strong{color:#fff}.word-today-progress span{color:#ffffffbf}.word-today-actions{gap:9px}.word-action{border:2px solid rgba(255,255,255,.84);border-radius:18px;box-shadow:0 5px #2c328238}.word-action.learn{background:linear-gradient(145deg,#fff8d9,#ffe377);color:#695129}.word-action.review{background:linear-gradient(145deg,#fff0f5,#ffb3c6);color:#753a5d}.word-action-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:14px;background:#ffffff9e}.flower-banner{width:100%;border:3px solid #fff;border-radius:22px;background:linear-gradient(135deg,#fff3bd,#ffbed0);color:var(--text);box-shadow:0 7px #e9a7b3,0 13px 20px #934f6e26;text-align:left}.flower-banner:hover{transform:translateY(-2px)}.flower-banner:after{background:#fff}.fb-flower{filter:drop-shadow(0 3px 2px rgba(156,62,83,.23))}.fb-text strong{color:#9a3f63}.progress-wrap{margin:20px 2px 22px;padding:14px 14px 12px;border:2px solid #efe8d9;border-radius:20px;background:#fff;box-shadow:0 6px #eee6da}.progress-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;color:#62577c;font-size:11px;font-weight:900}.progress-label strong{color:#e0a51f;font-size:13px}.progress-bar{height:15px;overflow:visible;border:3px solid #ece4d9;border-radius:999px;background:#f5f0e8}.progress-fill{position:relative;min-width:0;border:0;background:linear-gradient(90deg,#ffbe35,#ffe969);box-shadow:inset 0 3px #fff6}.progress-fill i{position:absolute;display:grid;width:27px;height:27px;right:-13px;top:-9px;place-items:center;border:3px solid #fff8bd;border-radius:10px;background:#ffc630;color:#fff;box-shadow:0 3px #dc9418;font-size:14px;font-style:normal;transform:rotate(8deg)}.progress-text{margin-top:9px;color:#a099ad;font-size:10px}.task-list{gap:13px}.section-title{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;margin:10px 2px 2px;padding:0;color:#41375e;font-size:15px;font-weight:1000}.section-title>span{display:grid;width:40px;height:40px;place-items:center;border:2px solid #fff;border-radius:14px;background:linear-gradient(145deg,#6edcf7,#3daee9);color:#fff;box-shadow:0 5px #2692ce;font-size:11px}.section-title>div{display:flex;flex-direction:column}.section-title small{color:#a099ae;font-size:7px;letter-spacing:1.5px}.section-title>i{font-size:23px;font-style:normal}.section-title.review{color:#634a92}.section-title.review>span{background:linear-gradient(145deg,#a98af1,#7957d9);box-shadow:0 5px #5e40b5}.task-card{position:relative;overflow:hidden;padding:16px;border:3px solid #fff;border-radius:22px;background:#fff;box-shadow:0 7px #e2ddeb,0 13px 22px #4f3e841a}.task-card:before{position:absolute;width:7px;height:52%;left:0;top:24%;border-radius:0 8px 8px 0;background:#5dcaf1;content:""}.task-card:hover{transform:translateY(-2px);box-shadow:0 9px #ded8e9,0 17px 26px #4f3e8421}.task-card.done{border-color:#c9f5e8;background:linear-gradient(135deg,#f8fffc,#eefff9);box-shadow:0 7px #b8e9da,0 13px 22px #35967817}.task-card.done:before{background:#45d2a9}.check{width:38px;height:38px;border:3px solid #d9d1e8;background:#f8f5fc;color:#fff;box-shadow:inset 0 -3px #55418b14}.check:hover:not(:disabled){border-color:#64c8ef;background:#eaf8ff;transform:scale(1.07)}.check.checked{border:3px solid #fff;background:linear-gradient(145deg,#68e0bd,#35be98);box-shadow:0 4px #239e7c}.task-title{color:#43395e;font-size:15px;font-weight:900}.task-note{margin-top:4px;color:#8e84a0;line-height:1.5}.task-hint{color:#55aede;font-size:10px}.task-upload-add{width:40px;height:40px;border:2px solid #cce9f7;border-radius:14px;background:#ebf9ff;color:#39aee4;box-shadow:0 4px #c4e1ef}.review-tag{border-radius:8px;background:#efe9ff;color:#7351c9}.mini-btn{border:1px solid #fff;border-radius:11px;background:#eee9ff;color:#6651bd;box-shadow:0 3px #d7cfed}.mini-btn.danger{background:#fff0f3;color:#e25d7a;box-shadow:0 3px #f3ced7}.empty-state{margin:5px 0 2px;padding:44px 20px;border:2px dashed #ddd3ed;border-radius:24px;background:linear-gradient(145deg,#ffffffb3,#f6f1ffb8)}.empty-emoji{display:inline-grid;width:76px;height:76px;place-items:center;border:3px solid #fff;border-radius:30px;background:#fff2a9;box-shadow:0 7px #e8c95e;animation:mascot-bounce 3s ease-in-out infinite}.empty-state p{margin-top:12px;color:#554a70;font-weight:900}.party-footer{display:flex;align-items:center;justify-content:center;gap:9px;padding:25px 5px 5px;color:#4234778c;font-size:10px;font-weight:900;letter-spacing:.6px}.party-footer span{color:#f5b827}.page,.word-page{max-width:760px;background:linear-gradient(180deg,#dff6ff,#f4efff)}.page-header,.word-page-header{border-bottom:2px solid rgba(255,255,255,.8);background:#ffffffb8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.page-back{border:2px solid #fff;border-radius:13px;background:#eee9ff;color:#694fbd;box-shadow:0 4px #d6cdeb;font-weight:900}.mem-card,.learn-word-sheet,.learn-word-card,.quiz-card,.word-summary-card,.word-center-empty{border:3px solid #fff;box-shadow:0 8px #5745931a,0 15px 27px #4d599d21}.word-hero{border:3px solid #fff;border-radius:28px;background:linear-gradient(135deg,#4bc8f3,#6e58d8);box-shadow:0 8px #5855b3,0 15px 25px #3f459938}.learn-sheet-banner{background:linear-gradient(110deg,#45c6f1,#5b8ce7 62%,#8568dd)}.word-card-nav button.primary,.summary-actions button.primary,.quiz-next,.learn-test-dock button{border:2px solid #fff;background:linear-gradient(135deg,#6a8cef,#7655d3);box-shadow:0 5px #5540af,0 9px 15px #5241ac2e}.admin-overlay{background:#2f276199;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.admin-panel{border:3px solid #fff;border-radius:30px 30px 0 0;background:linear-gradient(180deg,#f7f3ff,#f1f9ff);box-shadow:0 -8px 30px #342a7340}.primary-btn{border:2px solid #fff;border-radius:15px;background:linear-gradient(135deg,#4cc7ef,#6b62dd);box-shadow:0 5px #4f50b3}.login-page{min-height:100vh;padding:28px;background:radial-gradient(circle at 82% 11%,rgba(255,255,255,.35) 0 3px,transparent 4px),radial-gradient(circle at 13% 26%,rgba(255,242,127,.75) 0 5px,transparent 6px),linear-gradient(145deg,#36c0f3,#55a9f2 45%,#7558dc)}.login-page:before{position:fixed;width:320px;height:90px;left:-80px;bottom:7%;border-radius:999px;background:#ffffffbf;box-shadow:130px -35px 0 2px #ffffffa3,530px 15px 0 20px #ffffff7a,700px -25px 0 8px #fff9;content:""}.blob{opacity:.24;filter:blur(3px)}.blob-1{background:#fff}.blob-2{background:#ffde64}.blob-3{background:#ff7eaa}.login-shell{position:relative;z-index:2;display:grid;width:min(100%,940px);min-height:610px;grid-template-columns:1.08fr .92fr;overflow:hidden;border:4px solid rgba(255,255,255,.65);border-radius:42px;background:#ffffff24;box-shadow:0 18px #322b8424,0 35px 70px #2a378a4d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.login-showcase{position:relative;min-height:610px;overflow:hidden;padding:34px 38px}.login-showcase:before{position:absolute;width:390px;height:100px;left:-30px;bottom:-22px;border:6px solid rgba(255,255,255,.8);border-radius:50%;background:linear-gradient(#72e1bc 0,#72e1bc 43%,#37c394 44%,#37c394 60%,#f0c776 61%);content:"";box-shadow:0 -8px 24px #3e378f29}.login-showcase:after{position:absolute;width:280px;height:280px;left:50%;top:44%;border:1px solid rgba(255,255,255,.22);border-radius:50%;box-shadow:0 0 0 45px #ffffff0f,0 0 0 88px #ffffff09;content:"";transform:translate(-50%,-50%)}.login-brand{position:relative;z-index:4;color:#ffffffc7;font-size:10px;font-weight:1000;letter-spacing:2px}.login-brand span{display:inline-grid;width:30px;height:30px;margin-right:7px;place-items:center;border:2px solid #fff6b6;border-radius:10px;background:#ffc937;color:#fff;box-shadow:0 4px #d7911c;letter-spacing:0;transform:rotate(-8deg)}.login-copy{position:relative;z-index:4;margin-top:40px}.login-eyebrow{display:inline-flex;padding:6px 11px;border:1px solid rgba(255,255,255,.36);border-radius:999px;background:#3e2f9729;color:#fff49a;font-size:9px;font-weight:900}.login-copy h1{margin:12px 0 7px;color:#fffdf3;font-size:clamp(46px,6vw,68px);font-weight:1000;line-height:1.03;letter-spacing:2px;text-shadow:0 6px 0 rgba(69,47,154,.34)}.login-copy p{margin:0;color:#ffffffdb;font-size:15px;font-weight:800}.party-mascot.login-mascot{right:8px;bottom:41px;z-index:5;transform:scale(1.06);transform-origin:bottom right}.login-cloud{position:absolute;z-index:1;width:115px;height:32px;border-radius:999px;background:#ffffff94}.login-cloud:before{position:absolute;width:55px;height:55px;left:28px;top:-27px;border-radius:50%;background:inherit;content:""}.cloud-a{right:-20px;top:110px}.cloud-b{left:-45px;top:390px;transform:scale(.72)}.login-perks{position:absolute;z-index:6;display:flex;left:34px;bottom:22px;gap:7px}.login-perks span{padding:7px 9px;border:1px solid rgba(255,255,255,.75);border-radius:11px;background:#ffffffb8;color:#5b4d79;box-shadow:0 4px #4a3c8b1f;font-size:8px;font-weight:900;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.login-card{position:relative;z-index:4;width:auto;margin:14px;padding:46px 38px 34px;border:3px solid #fff;border-radius:32px;background:#fffdf8f5;box-shadow:0 10px #4b398f29,0 20px 40px #322b782b}.login-logo{width:64px;height:64px;margin:0 0 18px;border:3px solid #fff;border-radius:23px;background:linear-gradient(145deg,#fff6a7,#ffd243);box-shadow:0 7px #dda721,0 12px 18px #91651c24;font-size:29px;animation:mascot-bounce 3s ease-in-out infinite}.login-card-kicker{color:#8b7ed0;font-size:9px;font-weight:1000;letter-spacing:1.8px}.login-title{margin:6px 0 5px;color:#3f345d;font-size:26px;font-weight:1000}.login-sub{margin-bottom:27px;color:#92899e}.login-field{height:56px;margin-bottom:14px;border:2px solid #e9e1f2;border-radius:18px;background:#faf7ff;box-shadow:inset 0 3px 6px #50408709}.login-field:focus-within{border-color:#8c75e8;background:#fff;box-shadow:0 0 0 4px #8062dd1c}.login-icon{display:grid;width:35px;height:35px;place-items:center;border-radius:12px;background:#eee8ff}.login-field input{color:#453b61;font-weight:700}.login-field input::placeholder{color:#aaa1b6;font-weight:600}.login-btn{height:58px;margin-top:7px;border:3px solid #fff;border-radius:19px;background:linear-gradient(135deg,#765cdf,#5443bf);box-shadow:0 7px #40329d,0 12px 20px #4936a83d;font-size:15px;font-weight:1000;letter-spacing:.2px}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 9px #40329d,0 15px 24px #4936a847}.login-foot{margin-top:21px;color:#a097ac;font-size:9px;font-weight:800}.login-foot span{color:#e9b01f}.login-confetti{position:absolute;z-index:1;width:15px;height:28px;border-radius:8px;background:#ffdf51;box-shadow:0 5px 10px #31287b33;animation:confetti-float 5s ease-in-out infinite}.lc-one{left:7%;top:15%;background:#ff6f9b;transform:rotate(28deg)}.lc-two{right:8%;top:23%;background:#5be0b5;transform:rotate(-35deg);animation-delay:-1.2s}.lc-three{left:15%;bottom:11%;background:#ffe25e;transform:rotate(50deg);animation-delay:-2.5s}@keyframes mascot-bounce{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-8px) rotate(1deg)}}@keyframes star-twinkle{0%,to{transform:rotate(8deg) scale(1)}50%{transform:rotate(-5deg) scale(1.13)}}@keyframes confetti-float{0%,to{translate:0 0}50%{translate:0 -14px}}@keyframes flower-bob{0%,to{transform:rotate(-8deg) scale(1)}50%{transform:rotate(8deg) scale(1.13)}}@keyframes card-float-left{0%,to{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-8px) rotate(-4deg)}}@keyframes card-float-right{0%,to{transform:translateY(0) rotate(7deg)}50%{transform:translateY(-10px) rotate(4deg)}}@media (max-width: 760px){.login-page{padding:18px}.login-shell{width:min(100%,470px);min-height:auto;grid-template-columns:1fr;border-radius:34px}.login-showcase{min-height:310px;padding:25px 26px}.login-copy{margin-top:24px}.login-copy h1{font-size:44px}.login-copy p{font-size:12px}.party-mascot.login-mascot{right:8px;bottom:15px;transform:scale(.78)}.login-showcase:before{width:330px;height:70px;left:25%;bottom:-30px}.login-perks{display:none}.login-card{margin:10px;padding:29px 24px 25px;border-radius:27px}.login-logo{position:absolute;width:50px;height:50px;right:22px;top:25px;margin:0;border-radius:18px;font-size:22px}.login-title{padding-right:45px;font-size:22px}.login-sub{margin-bottom:21px}}@media (max-width: 560px){.app{padding:12px 10px 30px;padding-top:calc(12px + env(safe-area-inset-top))}.party-hero{min-height:350px;padding:14px 13px 0;border-radius:30px}.party-brand-mark{width:37px;height:37px;flex-basis:37px;border-radius:13px;font-size:19px}.party-brand>div>span{font-size:6px;letter-spacing:1.3px}.party-hero .party-brand h1{font-size:17px}.header-btns{gap:4px}.current-user,.admin-entry{width:34px;height:34px;border-radius:12px;font-size:14px}.flower-mark{right:108px}.party-hero-main{min-height:292px;grid-template-columns:minmax(0,1.1fr) minmax(132px,.9fr);gap:0}.party-hero-copy{padding:18px 0 52px 2px}.party-kicker{padding:5px 7px;font-size:6px}.party-hero-copy h2{font-size:clamp(22px,6.4vw,29px)}.party-hero-copy p{max-width:220px;margin:8px 0 13px;font-size:9px}.party-hero-stats{gap:4px}.party-hero-stats span{padding:8px 4px 7px;border-radius:11px}.party-hero-stats b{font-size:15px}.party-hero-stats small{font-size:6px}.party-hero-visual{min-height:260px}.party-mascot{right:-24px;bottom:35px;transform:scale(.79);transform-origin:bottom right}.hero-platform{width:158px;height:45px;right:-16px;bottom:31px}.orbit-one{right:-2px}.party-board{padding:14px 11px 18px;border-radius:29px}.date-selector{padding:8px 5px}.week-strip{gap:2px}.day-cell{min-height:58px;border-radius:13px}.day-heading{flex-wrap:wrap;gap:7px}.day-heading-left{gap:6px}.day-heading-date{font-size:17px}.word-today-card{padding:16px 14px}.task-card{padding:14px 11px}.task-main{gap:9px}.task-title{font-size:14px}}@media (max-width: 380px){.party-brand>div>span{display:none}.party-hero .party-brand h1{font-size:15px}.party-brand{gap:6px}.current-user{display:none}.party-hero-main{grid-template-columns:minmax(0,1fr) 120px}.party-mascot{right:-35px;transform:scale(.7)}.party-hero-copy h2{font-size:22px}.today-badge{display:none}.word-today-actions{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}:root{--primary-gradient: linear-gradient(135deg, #FF9A9E 0%, #FECFE6 100%);--secondary-gradient: linear-gradient(135deg, #A18CD1 0%, #FBC2EB 100%);--tertiary-gradient: linear-gradient(135deg, #84fab0 0%, #8fd3f4 100%);--accent-gradient: linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%);--success-gradient: linear-gradient(135deg, #70e000 0%, #88db00 100%);--warning-gradient: linear-gradient(135deg, #FA709A 0%, #FEE140 100%);--background-sky: #FFF5F7;--background-card: rgba(255, 255, 255, .98);--background-gold: #FFFBF0;--text-dark: #4A4A4A;--text-gray: #8B8B8B;--border-light: rgba(255, 255, 255, .8);--shadow-soft: 0 4px 16px rgba(255, 154, 158, .12);--shadow-vibrant: 0 8px 32px rgba(255, 154, 158, .2);--shadow-glow: 0 16px 48px rgba(161, 140, 209, .2);--radius-sm: 20px;--radius-md: 28px;--radius-lg: 40px;--radius-pill: 999px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;background:linear-gradient(180deg,#fff5f7,#fff9e0 40%,#f0f9ff);min-height:100vh;color:var(--text-dark);line-height:1.6;position:relative;overflow-x:hidden}.bubble-background{position:fixed;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.floating-bubble{position:absolute;border-radius:50%;background:radial-gradient(circle,#ffffffb3,#ffffff4d);border:2px solid rgba(255,255,255,.9);animation:bubbleFloat 20s ease-in-out infinite;filter:blur(50px);opacity:.5}.bubble-1{top:-10%;left:-5%;width:350px;height:350px;background:radial-gradient(circle,rgba(255,154,158,.25),transparent);animation-delay:0s}.bubble-2{bottom:-10%;right:-5%;width:420px;height:420px;background:radial-gradient(circle,rgba(161,140,209,.2),transparent);animation-delay:-7s}.bubble-3{top:30%;right:-8%;width:380px;height:380px;background:radial-gradient(circle,rgba(132,250,176,.22),transparent);animation-delay:-14s}@keyframes bubbleFloat{0%,to{transform:translate(0) rotate(0) scale(1)}25%{transform:translate(50px,-50px) rotate(90deg) scale(1.1)}50%{transform:translate(-30px,30px) rotate(180deg) scale(.9)}75%{transform:translate(40px,50px) rotate(270deg) scale(1.05)}}i[class^=ri-]:before{display:inline-block;font-style:normal;line-height:1}i[class^=ri-]{display:inline-flex;align-items:center;justify-content:center}.app{max-width:520px;margin:0 auto;padding:20px 20px 60px;position:relative;z-index:1}.app-header.futuristic{margin-bottom:30px}.header-main{background:#ffffffe6;backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border-radius:var(--radius-lg);padding:28px 32px;box-shadow:0 8px 32px #ff6b9d26,inset 0 1px #ffffffe6;border:3px solid rgba(255,107,157,.3);position:relative;overflow:visible;z-index:1}.header-main:before{content:"";position:absolute;top:-3px;left:-3px;right:-3px;bottom:-3px;background:linear-gradient(45deg,#ff6b9d,#c44eff,#ffe77c,#4ecdc4,#ff6b9d);background-size:400% 400%;border-radius:var(--radius-lg);opacity:.3;z-index:-1;animation:rainbowRotate 8s ease infinite}@keyframes rainbowRotate{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.hero-brand-container{display:flex;align-items:center;gap:20px}.logo-orb{position:relative;width:72px;height:72px}.orb-ring{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;border:3px solid transparent;animation:orbitRotate 12s linear infinite}.orb-ring-1{border-top-color:#ff6b9d;border-right-color:#c44eff;animation-duration:8s}.orb-ring-2{border-bottom-color:#ffe77c;border-left-color:#4ecdc4;animation-duration:10s;animation-direction:reverse}.orb-core{position:absolute;top:10px;right:10px;bottom:10px;left:10px;border-radius:50%;background:var(--primary-gradient);box-shadow:0 0 40px #ff6b9d99,0 0 80px #c44eff66,inset 0 0 20px #ffffff4d;animation:corePulse 3s ease-in-out infinite}@keyframes orbitRotate{0%,to{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes corePulse{0%,to{transform:scale(1);box-shadow:0 0 40px #ff6b9d99,0 0 80px #c44eff66}50%{transform:scale(1.05);box-shadow:0 0 60px #ff6b9dcc,0 0 100px #c44eff99}}.brand-text{display:flex;flex-direction:column;gap:4px}.brand-tag{font-size:11px;letter-spacing:3px;color:#6b7280;font-weight:700;text-transform:uppercase}.brand-title{font-size:clamp(22px,5vw,30px);margin:0;font-weight:900;background:linear-gradient(135deg,#ff6b9d,#c44eff,#ffe77c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.3;letter-spacing:-.5px;filter:drop-shadow(0 2px 4px rgba(255,107,157,.2))}.brand-slogan{font-size:12px;color:var(--text-gray);font-weight:500}.user-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.user-profile-badge{display:flex;align-items:center;gap:10px;padding:10px 18px;border-radius:var(--radius-pill);background:linear-gradient(135deg,#fff9e6,#e0f7ff);border:2px solid #FFD6E7;box-shadow:var(--shadow-soft)}.avatar-wrapper{position:relative}.user-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--primary-gradient);color:#fff;font-size:15px;font-weight:800;box-shadow:0 4px 12px #ff6b9d4d;border:3px solid #fff}.avatar-status{position:absolute;bottom:0;right:0;width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,#00d2fc,#3a7bd5);border:2px solid #fff;box-shadow:0 2px 4px #0003}.username{font-size:14px;font-weight:700;color:#c44eff}.admin-badge{font-size:9px;padding:4px 10px;border-radius:var(--radius-pill);background:linear-gradient(135deg,#ffd6e7,#ffb3c6);color:#fff;font-weight:800;letter-spacing:.5px;box-shadow:0 2px 8px #ff6b9d66}.flower-gift-btn{position:relative;width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#fff9e6,#ffe77c);display:grid;place-items:center;border:3px solid #FFD6E7;box-shadow:0 6px 20px #ffe77c80;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.flower-gift-btn:hover{transform:scale(1.15) rotate(10deg);box-shadow:0 8px 28px #ffe77cb3}.flower-icon{font-size:26px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.flower-pulse{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:50%;border:2px solid #FFE77C;animation:flowerGlow 2s ease-in-out infinite}@keyframes flowerGlow{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.2);opacity:.3}}.action-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;border-radius:var(--radius-sm);border:2px solid #E0F7FF;background:#fff;color:var(--text-dark);font-size:14px;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:var(--shadow-soft)}.action-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#ff6b9d1a,#c44eff1a);opacity:0;transition:opacity .3s}.action-btn:hover{border-color:#ff6b9d;background:var(--primary-gradient);color:#fff;transform:translateY(-3px);box-shadow:var(--shadow-vibrant)}.action-btn:hover:before{opacity:1}.btn-icon{font-size:18px}.card{background:var(--background-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);border:3px solid #FFF;box-shadow:var(--shadow-vibrant);overflow:hidden;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ff6b9d,#c44eff,#ffe77c,#4ecdc4)}.card:hover{transform:translateY(-6px) scale(1.02);box-shadow:var(--shadow-glow);border-color:#ffd6e7}.card.glowing{animation:cardBounce 4s ease-in-out infinite}@keyframes cardBounce{0%,to{filter:brightness(1)}50%{filter:brightness(1.08)}}.card-icon-wrapper.colorful{width:72px;height:72px;display:grid;place-items:center;border-radius:var(--radius-sm);background:linear-gradient(135deg,#fff,#f8faff);box-shadow:0 12px 32px #ff6b9d33,0 4px 12px #00000014,inset 0 1px #ffffffe6;position:relative}.card-icon-wrapper.colorful:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:var(--radius-sm);background:linear-gradient(135deg,#ff6b9d,#c44eff);opacity:.15;filter:blur(12px);z-index:0}.card-icon-wrapper.colorful .card-icon.animated{position:relative;z-index:1;font-size:36px;filter:drop-shadow(0 3px 8px rgba(255,107,157,.3));animation:iconWiggle 3s ease-in-out infinite}@keyframes iconWiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}.card-icon-wrapper.pink-glow{background:linear-gradient(135deg,#ff6b9d,#c44eff);box-shadow:0 12px 32px #ff6b9d66}.card-icon-wrapper.yellow-glow{background:linear-gradient(135deg,#ffe77c,#ff913d);box-shadow:0 12px 32px #ffe77c66}.card-icon-wrapper.green-glow{background:linear-gradient(135deg,#4ecdc4,#44a08d);box-shadow:0 12px 32px #4ecdc466}.metric-grid.playful{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:28px}.metric-card.vibrant{position:relative;padding:24px;border-radius:var(--radius-sm);background:linear-gradient(135deg,#fffffffa,#ffffffe6,#fffffffa);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:3px solid rgba(255,255,255,.9);box-shadow:0 8px 24px #ff6b9d26,0 4px 12px #0000000d,inset 0 1px #fff;transition:all .4s cubic-bezier(.4,0,.2,1);overflow:hidden}.metric-card.vibrant:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ff6b9d14,#c44eff14,#ffe77c14);opacity:0;transition:opacity .4s;z-index:0}.metric-card.vibrant:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #ff6b9d40,0 10px 20px #0000001a}.metric-card.vibrant:hover:before{opacity:1}.metric-card.pink-border{border-top:5px solid #FF6B9D}.metric-card.purple-border{border-top:5px solid #C44EFF}.metric-card.yellow-border{border-top:5px solid #FFE77C}.metric-card.teal-border{border-top:5px solid #4ECDC4}.metric-icon-wrapper.rainbow{display:grid;place-items:center;width:64px;height:64px;border-radius:var(--radius-sm);background:linear-gradient(135deg,#ff6b9d,#c44eff);color:#fff;font-size:30px;margin-bottom:14px;box-shadow:0 10px 28px #ff6b9d66;position:relative;z-index:1}.metric-icon-wrapper.sunshine{background:linear-gradient(135deg,#ffe77c,#ff913d);box-shadow:0 10px 28px #ffe77c66}.metric-icon-wrapper.ocean{background:linear-gradient(135deg,#00d2fc,#3a7bd5);box-shadow:0 10px 28px #00d2fc66}.metric-icon-wrapper.forest{background:linear-gradient(135deg,#a8e063,#56ab91);box-shadow:0 10px 28px #a8e06366}.info-chip.sparkle{position:relative;padding:20px;border-radius:var(--radius-sm);background:linear-gradient(135deg,#fffffffa,#ffffffe6 50%);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:3px solid rgba(255,255,255,.9);box-shadow:0 8px 24px #ff6b9d26;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:8px}.info-chip.sparkle:after{content:"✨";position:absolute;top:8px;right:8px;font-size:14px;animation:sparkleTwinkle 2s ease-in-out infinite}@keyframes sparkleTwinkle{0%,to{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(1.2) rotate(180deg);opacity:.6}}.info-chip.sparkle:hover{transform:translateY(-4px);box-shadow:0 16px 32px #ff6b9d33}.chip-icon.magic{font-size:32px;filter:drop-shadow(0 2px 6px rgba(255,107,157,.3));animation:chipSpin 3s ease-in-out infinite}@keyframes chipSpin{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-6px) rotate(10deg)}}.progress-track.magic{width:100%;height:14px;border-radius:var(--radius-pill);background:linear-gradient(90deg,#ffe77c33,#4ecdc433);overflow:visible;margin-bottom:12px;position:relative;box-shadow:inset 0 2px 8px #00000014}.progress-fill.prism{height:100%;border-radius:var(--radius-pill);background:linear-gradient(90deg,#ff6b9d,#c44eff,#ffe77c,#4ecdc4);background-size:300% 100%;position:relative;transition:width .8s cubic-bezier(.4,0,.2,1);animation:rainbowFlow 4s ease infinite}@keyframes rainbowFlow{0%{background-position:0% 50%}to{background-position:300% 50%}}.progress-fill.prism:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);animation:shineBeam 2s infinite}@keyframes shineBeam{0%{transform:translate(-100%)}to{transform:translate(100%)}}.btn-outline-glitter.magical{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;padding:20px 28px;border:3px solid #FF6B9D;border-radius:var(--radius-md);background:#fff;color:#ff6b9d;font-size:16px;font-weight:800;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:0 8px 24px #ff6b9d26}.btn-outline-glitter.magical:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#ff6b9d,#c44eff);opacity:0;transition:opacity .4s}.btn-outline-glitter.magical:after{content:"✨";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:20px;opacity:0;transition:opacity .3s}.btn-outline-glitter.magical:hover{color:#fff;box-shadow:0 16px 40px #ff6b9d66;transform:translateY(-4px)}.btn-outline-glitter.magical:hover:before{opacity:1}.btn-outline-glitter.magical:hover:after{opacity:1;animation:sparkleShine 1s ease-in-out infinite}@keyframes sparkleShine{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.3)}}.btn-primary-rainbow.magic{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;padding:20px 28px;border:none;border-radius:var(--radius-md);background:linear-gradient(135deg,#ff6b9d,#c44eff,#ffe77c);background-size:200% 100%;color:#fff;font-size:16px;font-weight:800;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 12px 32px #ff6b9d66;overflow:hidden;animation:rainbowMove 3s ease infinite}@keyframes rainbowMove{0%{background-position:0% 50%}to{background-position:200% 50%}}.btn-primary-rainbow.magic:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:glitterShimmer 3s infinite}@keyframes glitterShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.btn-primary-rainbow.magic:hover{transform:translateY(-4px);box-shadow:0 20px 48px #ff6b9d80}.empty-state.cute{text-align:center;padding:60px 28px;color:var(--text-gray);background:linear-gradient(180deg,#ff6b9d14,#c44eff14);border-radius:var(--radius-md)}.empty-emoji.jumpy{font-size:72px;margin-bottom:20px;animation:emojiJump 3s ease-in-out infinite;filter:drop-shadow(0 8px 24px rgba(255,107,157,.3))}@keyframes emojiJump{0%,to{transform:translateY(0) scale(1)}25%{transform:translateY(-20px) scale(1.05)}50%{transform:translateY(-10px) scale(.95)}75%{transform:translateY(-15px) scale(1.02)}}[data-icon=star]{color:#ffe77c;text-shadow:0 2px 8px rgba(255,231,124,.5)}[data-icon=rocket]{filter:drop-shadow(0 2px 8px rgba(255,107,157,.3));animation:rocketBob 2s ease-in-out infinite}@keyframes rocketBob{0%,to{transform:rotate(0)}50%{transform:rotate(10deg)}}[data-icon=sparkles]{animation:sparkleSpin 3s linear infinite}@keyframes sparkleSpin{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.2)}to{transform:rotate(360deg) scale(1)}}[data-icon=trophy]{color:gold;filter:drop-shadow(0 2px 8px rgba(255,215,0,.4))}[data-icon=book]{filter:drop-shadow(0 2px 8px rgba(196,78,255,.3))}[data-icon=pencil]{filter:drop-shadow(0 2px 8px rgba(78,205,196,.3))}@keyframes iconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes iconSqueeze{0%,to{transform:scale(1)}50%{transform:scale(1.15,.85)}}.border-rainbow{position:relative;border-radius:var(--radius-sm)}.border-rainbow:before{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;background:linear-gradient(45deg,#ff6b9d,#c44eff,#ffe77c,#4ecdc4,#00d2fc);background-size:400% 400%;border-radius:var(--radius-sm);opacity:0;transition:opacity .3s;animation:rainbowBorder 6s ease infinite;z-index:-1}.border-rainbow:hover:before{opacity:1}@keyframes rainbowBorder{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.star-animation{display:inline-block;animation:starTwinkle 2s ease-in-out infinite}@keyframes starTwinkle{0%,to{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(1.2) rotate(180deg);opacity:.7}}.confetti-effect{position:fixed;width:10px;height:10px;background:linear-gradient(135deg,#ff6b9d,#c44eff);border-radius:50%;pointer-events:none;z-index:9999;animation:confettiFall 3s ease-out forwards}@keyframes confettiFall{0%{transform:translateY(-100px) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.card.kids-card{overflow:hidden}.card.kids-card:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:radial-gradient(circle,rgba(255,107,157,.1),transparent);transform:translate(-50%,-50%);transition:width .6s,height .6s}.card.kids-card:hover:after{width:300px;height:300px}.text-rainbow{background:linear-gradient(90deg,#ff6b9d,#c44eff,#ffe77c,#4ecdc4,#00d2fc);background-size:300% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rainbowText 4s ease infinite}@keyframes rainbowText{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.sparkle{position:relative}.sparkle:before,.sparkle:after{content:"✨";position:absolute;font-size:12px;animation:sparkleFloat 2s ease-in-out infinite}.sparkle:before{top:-10px;left:-10px;animation-delay:0s}.sparkle:after{bottom:-10px;right:-10px;animation-delay:1s}@keyframes sparkleFloat{0%,to{transform:translateY(0) scale(1);opacity:.6}50%{transform:translateY(-15px) scale(1.2);opacity:1}}.progress-steps{display:flex;gap:8px;justify-content:center;margin:16px 0}.progress-step{width:20px;height:20px;border-radius:50%;background:#e0f7ff;border:2px solid #4ECDC4;transition:all .3s}.progress-step.active{background:linear-gradient(135deg,#4ecdc4,#44a08d);transform:scale(1.2);box-shadow:0 4px 12px #4ecdc466}.progress-step.completed{background:linear-gradient(135deg,#ff6b9d,#c44eff);border-color:#ff6b9d}.emoji-reaction{font-size:24px;cursor:pointer;transition:all .3s;display:inline-block}.emoji-reaction:hover{transform:scale(1.3) rotate(10deg)}.emoji-celebrate{animation:emojiJoy 1s ease-in-out infinite}@keyframes emojiJoy{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.learning-shortcut{width:100%;min-width:0;display:flex;align-items:center;gap:20px;padding:24px 28px;border-radius:var(--radius-md);background:#fff;border:3px solid transparent;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;box-shadow:0 6px 18px #00000014;position:relative;overflow:hidden}.learning-shortcut:hover:not(:disabled){transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px #ff6b9d40;border-color:#ffd6e7}.learning-shortcut:disabled{opacity:.6;cursor:not-allowed;filter:grayscale(.3)}.shortcut-icon{width:56px;height:56px;border-radius:var(--radius-sm);display:grid;place-items:center;font-size:28px;background:linear-gradient(135deg,#fff6f8,#fef3ff);color:#ff6b9d;box-shadow:0 8px 20px #ff6b9d26;position:relative}.shortcut-icon:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:inherit;background:linear-gradient(135deg,#ff6b9d,#c44eff);opacity:.12;filter:blur(12px);z-index:0}.shortcut-icon>svg{width:28px;height:28px;position:relative;z-index:1}.words .shortcut-icon{color:#d95388}.exercises .shortcut-icon{color:#b67721;background:#fff6df}.course .shortcut-icon{color:#268e85;background:#eaf9f4}.learning-shortcut>span:nth-child(2){flex:1;display:flex;flex-direction:column;gap:4px;text-align:left}.learning-shortcut small{font-size:11px;color:#6b7280;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.learning-shortcut strong{font-size:18px;font-weight:900;color:var(--text-dark);letter-spacing:-.3px}.learning-shortcut em{font-style:normal;font-size:12px;color:var(--text-gray);font-weight:600;line-height:1.4}.shortcut-arrow{font-size:20px;color:#ffd6e7;font-weight:700}.daily-home{min-height:100vh;background:linear-gradient(180deg,#fff5f7,#fff9e0 40%,#f0f9ff);padding-top:20px}.daily-header{width:calc(100% - 40px);max-width:1196px;margin:0 auto 30px;padding:25px 30px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-md);box-shadow:0 8px 32px #ff9a9e26;border:3px solid rgba(255,154,158,.15)}.daily-brand{display:flex;align-items:center;gap:15px;text-decoration:none;font-size:22px;font-weight:900;color:#bd6395}.brand-mark{flex-shrink:0;width:50px;height:50px;border-radius:14px;background:linear-gradient(135deg,#ff9a9e,#a18cd1);color:#fff;display:grid;place-items:center;font-size:28px;font-weight:900;box-shadow:0 8px 24px #ff9a9e4d}.daily-header nav button{background:none;border:none;padding:10px 18px;color:var(--text-dark);font-weight:700;border-radius:var(--radius-sm);transition:all .3s}.daily-header nav button:hover{background:linear-gradient(135deg,#fff5f7,#fff9e0);color:#a18cd1}.account-chip{display:flex;align-items:center;gap:10px;padding:10px 18px;background:linear-gradient(135deg,#fff9e0,#fff5f7);border-radius:var(--radius-pill);font-weight:700;color:#a18cd1;border:2px solid #A18CD130}.account-chip i{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;border-radius:50%;font-style:normal;background:linear-gradient(135deg,#ff9a9e,#a18cd1);color:#fff}.logout-button{background:linear-gradient(135deg,#fa709a,#fee140)!important;color:#fff!important;font-weight:800!important;border:none!important}.logout-button:hover{transform:scale(1.05);box-shadow:0 6px 20px #fa709a80}.daily-main{max-width:1256px;margin:0 auto;padding:0 30px 40px}.daily-welcome{display:flex;justify-content:space-between;align-items:center;padding:30px 0 25px;margin-bottom:20px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:2px;color:#a18cd1;text-transform:uppercase}.daily-welcome h1{font-size:32px;font-weight:900;background:linear-gradient(135deg,#4a4a4a,#8b8b8b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:10px 0 8px}.daily-welcome p{font-size:15px;color:var(--text-gray);margin:0;line-height:1.6}.daily-date-seal{width:100px;text-align:center;background:linear-gradient(135deg,#fa709a,#a18cd1);color:#fff;padding:20px 15px;border-radius:var(--radius-md);box-shadow:0 8px 24px #a18cd14d}.daily-date-seal strong{font-size:56px;display:block;line-height:1;font-weight:900}.daily-date-seal span{font-size:12px;opacity:.9}.daily-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr);gap:25px;align-items:start}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:25px 28px 20px;margin-bottom:15px}.panel-heading h2{font-size:24px;margin:5px 0 0;font-weight:900;color:var(--text-dark)}.completion-pill{font-size:13px;color:#fa709a;padding:10px 16px;background:linear-gradient(135deg,#fff5f7,#fff9e0);border-radius:var(--radius-pill);font-weight:800}.dual-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px}.btn-outline-glitter.magical,.btn-primary-rainbow.magic{width:100%;margin:0}.daily-task-panel{background:#fff;border-radius:var(--radius-md);padding:0;min-width:0;overflow:hidden;box-shadow:var(--shadow-soft)}.daily-task-panel .date-selector{margin:0 0 20px;padding:16px 24px;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}.daily-task-panel .week-nav{padding:0 8px 12px}.week-title{font-size:13px;color:var(--text-gray);font-weight:700}.week-arrow{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#ff9a9e,#a18cd1);color:#fff;font-size:20px;display:flex;align-items:center;justify-content:center;transition:all .3s}.week-arrow:hover{transform:scale(1.1);box-shadow:0 6px 20px #ff9a9e66}.day-cell{background:transparent;border-radius:16px;padding:12px 0;display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;transition:all .3s;border:2px solid transparent}.day-cell:hover:not(.selected){background:#ff9a9e14;transform:translateY(-2px)}.day-week{font-size:11px;color:var(--text-gray);font-weight:600}.day-num{font-size:18px;font-weight:800;color:var(--text-dark)}.day-cell.selected{background:linear-gradient(135deg,#fa709a,#a18cd1);box-shadow:0 8px 24px #a18cd166;border-color:#fa709a}.day-cell.selected .day-week,.day-cell.selected .day-num{color:#fff}.today-dot{position:absolute;bottom:6px;width:6px;height:6px;border-radius:50%;background:#fa709a}.day-cell.selected .today-dot{background:#fff}.task-panel-date{padding:20px 24px 16px;display:flex;justify-content:space-between;font-size:13px;border-top:2px solid rgba(255,255,255,.9);margin-top:12px}.task-panel-date span{font-size:12px;color:var(--text-gray)}.collection-teaser{width:100%;margin-top:23px;padding:25px 28px;border-radius:var(--radius-md);background:linear-gradient(135deg,#ff9a9e,#a18cd1);color:#fff;text-align:left;box-shadow:0 12px 32px #a18cd14d;overflow:hidden;transition:all .3s}.collection-teaser:hover{transform:translateY(-4px);box-shadow:0 16px 40px #a18cd166}.teaser-heading{display:flex;justify-content:space-between;letter-spacing:2px;font-size:10px;color:#ffffffe6}.teaser-heading i{font-style:normal;font-size:19px}.mini-cabinet{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;transform:perspective(400px) rotateY(-10deg);margin:18px 10px 16px;border:4px solid rgba(255,255,255,.3);box-shadow:0 8px 24px #0000001a;border-radius:8px;padding:8px}.mini-cabinet span{height:36px;background:linear-gradient(135deg,#fff3,#fff6);display:grid;place-items:center;font-size:24px;color:#fff;box-shadow:inset 0 2px 8px #fff3;border-radius:6px}.collection-teaser h2{font-size:20px;letter-spacing:2px;margin:0 0 10px;font-weight:900}.collection-teaser p{font-size:12px;opacity:.9;margin:0 0 20px}.collection-teaser>div:last-child{display:flex;align-items:center;justify-content:space-between;border-top:2px solid rgba(255,255,255,.3);padding-top:16px;font-size:12px}.collection-teaser b{font-size:11px;background:#fff3;color:#fff;padding:6px 10px;border-radius:var(--radius-sm);font-weight:700}.daily-rewards{margin-top:20px;padding:22px 24px;background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}.daily-rewards>div{display:flex;justify-content:space-between;margin-bottom:18px;font-size:13px}.daily-rewards small{font-size:11px;color:var(--text-gray);font-weight:700}.daily-rewards p{display:flex;justify-content:space-between;font-size:12px;color:var(--text-dark);margin:12px 0}.daily-rewards b{font-size:11px;font-weight:700;color:#a18cd1}.daily-rewards b.earned{color:#fa709a}.daily-footer{display:flex;justify-content:space-between;padding:25px 0 30px;color:var(--text-gray);font-size:11px;letter-spacing:.5px}.empty-note{text-align:center;padding:40px 20px;color:var(--text-gray);font-size:13px;line-height:1.8}.empty-note>span{font-size:38px;display:block;margin-bottom:15px}.daily-brand small{display:block;margin-top:4px;font-size:12px;font-weight:500;color:#817586}.daily-header nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;font-size:13px}.daily-header nav button{white-space:nowrap}.daily-home button:focus-visible,.daily-home a:focus-visible{outline:3px solid #976ac4;outline-offset:3px}.daily-home .account-chip{overflow-wrap:anywhere}.daily-side{min-width:0}.daily-home .completion-pill{flex-shrink:0}.daily-home .panel-heading{gap:12px;margin-bottom:0}.daily-progress{height:6px;margin:0 24px 16px;background:#f5edf4;border-radius:8px;overflow:hidden}.daily-progress i{display:block;height:100%;background:linear-gradient(90deg,#fa709a,#a18cd1);border-radius:inherit;transition:width .3s}.daily-task-list{display:grid;gap:12px;padding:0 24px 24px}.daily-task-list .task-card{margin:0;box-shadow:none;border:1px solid #eee4ef}.daily-task-list .task-note{white-space:pre-wrap;overflow-wrap:anywhere}.automatic-task{display:flex;align-items:center;gap:12px;width:100%;padding:18px 16px;text-align:left;color:#55465e;background:#fcf7fb;border:1px solid #efdfeb;border-radius:16px}.automatic-task>span:nth-child(2){display:grid;gap:6px;flex:1;min-width:0}.automatic-task strong{font-size:15px}.automatic-task small{font-size:12px;line-height:1.6;color:#817586}.automatic-task>span:last-child{font-size:12px;color:#a24e7b;white-space:nowrap}.automatic-check{display:grid;place-items:center;width:24px;height:24px;flex-shrink:0;border:2px solid #ddcce0;border-radius:8px;background:#fff;color:#fff}.automatic-task.done .automatic-check{background:#ab77b8;border-color:#ab77b8}.automatic-task:disabled{cursor:not-allowed;opacity:.65}.task-panel-foot{display:flex;align-items:center;gap:8px;padding:18px 24px;border-top:1px solid #f2eaf1;color:#817586;font-size:12px}.small-leaf{color:#bc72a1;font-size:18px}.side-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px}.side-label h2{font-size:18px}.side-label>span{font-size:12px;color:#817586}.quick-learning{display:grid;gap:12px}.daily-home .shortcut-icon{flex-shrink:0}.daily-home .learning-shortcut>span:nth-child(2){min-width:0}.daily-home .empty-note h3{font-size:16px;margin-bottom:8px}.daily-home .empty-note button{margin-top:16px;padding:10px 16px;border-radius:12px;background:#f7eaf2;color:#a24e7b}@media (max-width: 1100px){.daily-header{padding:20px}.daily-brand{font-size:20px;gap:10px}.daily-header nav button{padding:10px 12px}.daily-home .account-chip{padding:7px 12px}.daily-layout{grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:20px}.learning-shortcut{padding:20px 16px;gap:14px}.side-label{flex-wrap:wrap}}@media (max-width: 800px){.daily-home{padding-top:12px}.daily-header{width:calc(100% - 32px);flex-wrap:wrap;gap:16px;margin-bottom:12px}.daily-header nav{flex:1 1 100%;justify-content:flex-start}.daily-main{padding:0 16px 24px}.daily-welcome{padding:22px 0;margin-bottom:12px;gap:16px}.daily-welcome h1{font-size:27px}.daily-date-seal{flex-shrink:0;width:82px;padding:16px 10px}.daily-date-seal strong{font-size:44px}.daily-layout{grid-template-columns:minmax(0,1fr);gap:24px}.daily-home .side-label{flex-wrap:nowrap}.daily-footer{gap:10px;flex-wrap:wrap}}@media (max-width: 480px){.daily-header{padding:16px}.daily-brand{font-size:19px}.daily-brand small{font-size:11px}.daily-home .brand-mark{width:42px;height:42px;font-size:24px}.daily-header nav{gap:6px;font-size:12px}.daily-header nav button{padding:8px 10px;font-size:12px}.daily-home .account-chip{padding:5px 8px;gap:6px}.daily-home .account-chip i{width:24px;height:24px}.daily-welcome h1{font-size:23px}.daily-welcome p{font-size:13px}.daily-welcome .eyebrow{font-size:10px;letter-spacing:1px}.daily-date-seal{display:none}.daily-home .panel-heading{padding:20px 16px}.daily-home .panel-heading h2{font-size:22px}.daily-home .completion-pill{padding:8px 10px;font-size:12px}.daily-progress{margin-inline:16px}.daily-task-panel .date-selector{padding:12px;margin-bottom:0}.daily-task-panel .week-strip{gap:3px}.daily-task-panel .day-cell{min-width:0;padding:10px 0;border-radius:12px}.daily-home .task-panel-date{padding:18px 16px;gap:8px;flex-wrap:wrap}.daily-task-list{padding:0 16px 20px}.automatic-task{padding:14px 12px;gap:10px;flex-wrap:wrap}.automatic-task small{font-size:11px}.task-panel-foot{padding:16px;font-size:11px}.daily-home .collection-teaser{padding:22px}}.word-context{margin:20px 0;padding:18px;background:#f6f8ef;border-left:2px solid #b4c599;text-align:left;border-radius:0 8px 8px 0}.word-context>span{font-size:9px;color:#9ba98b;letter-spacing:1px}.word-context p{font:20px/1.7 Georgia,serif;margin:10px 0 4px;color:#6a8657}.word-context small{color:#99a888;font-size:11px}.studio-header{max-width:1200px;margin:auto;padding:25px 32px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);font-size:13px;gap:15px}.studio-header button{background:transparent;color:#617761;padding:7px 0}.muted{color:var(--muted);font-size:11px}.studio-main{max-width:1080px;padding:38px 30px 70px;margin:auto}.studio-main.narrow{max-width:850px}.page-intro{display:flex;justify-content:space-between;align-items:center;margin:7px 0 36px}.intro-symbol{font:90px Georgia;color:#cad5bc;line-height:1;padding:0 20px}.learning-overview{background:#e8eee1;border:1px solid #dfe7d6;border-radius:17px;padding:25px 32px;display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:20px}.learning-overview span{font-size:12px;color:#728568}.learning-overview h2{font-size:46px;margin:10px 0;color:#345d44;font-weight:500}.learning-overview h2 small{font-size:18px;color:#91a183;font-weight:400}.learning-overview p{font-size:12px;color:#87977c;margin:0}.overview-detail{display:grid;gap:12px;text-align:right;font-size:13px}.overview-detail span{font-size:11px}.group-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.group-card{background:#fff;border:1px solid var(--line)!important;border-radius:13px;text-align:left;padding:19px 17px;display:grid;gap:14px;position:relative;color:var(--ink)}.group-card .group-number{font:32px Georgia;color:#a5b09a}.group-card strong{font-size:15px}.group-card small{font-size:10px;color:#97a08e}.group-card>span:last-child{font-size:11px;color:#738d62;padding-top:10px;border-top:1px solid #eef1e8}.group-card.done{background:#edf4e6}.group-card:hover{transform:translateY(-3px)}.course-entry{margin-top:30px;display:flex;align-items:center;gap:25px;padding:30px;border:1px solid #e2e7dc;border-radius:15px;background:#f1f2ea}.course-entry>div{flex:1}.course-icon{font:45px Georgia;color:#aaa98b}.course-entry h2{font-size:20px;margin:10px 0}.course-entry p{font-size:12px;color:#8f9786;margin:0}.primary-action{background:#42654d!important;border:0;border-radius:9px;padding:13px 22px;color:#fff!important;font-size:12px;cursor:pointer;line-height:1.5}.primary-action:hover{background:#36563e!important}.wide{display:block;width:100%;margin-top:20px}.learning-details{margin:25px 0;color:#8a9681;font-size:12px;line-height:2}.learning-details summary{cursor:pointer}.learning-details button{padding:9px 15px;border-radius:6px;background:#e5ebdd;color:#617953}.notice{padding:14px 18px;border-radius:9px;background:#ecf0e4;color:#6d805f;font-size:12px;margin:16px 0;line-height:1.8}.notice.error,.error-text{color:#a55647}.notice.error{background:#faf0e9}.notice button{margin-left:14px;background:transparent;color:inherit;text-decoration:underline}.empty-note{text-align:center;padding:40px 20px;color:#9aa38f;font-size:12px;line-height:1.8}.empty-note>span{font-size:35px;color:#adb997}.empty-note h3{font-size:16px;font-weight:500;color:#7d8e70}.empty-note button{background:none;color:#6a8556;margin-top:12px;font-size:12px}.session-heading{text-align:center;margin:20px 0 30px}.session-heading span{font-size:12px;color:#91a084}.session-heading h1{font-size:26px;font-family:"Noto Serif SC",serif;font-weight:500}.session-heading p{font-size:12px;color:#98a18e}.recognition-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.recognition-cards article{display:flex;flex-direction:column;align-items:center;gap:18px;border:1px solid var(--line);padding:30px 15px;border-radius:15px;background:#fff}.recognition-cards strong{font:32px Georgia;color:#42684c}.recognition-cards small{color:#9aa68e}.recognition-cards p{color:#6b7c61;font-size:14px}.recognition-quiz{max-width:620px;margin:25px auto;background:#fff;padding:40px;border:1px solid var(--line);border-radius:20px;text-align:center;box-shadow:0 18px 50px #29412604}.recognition-quiz h1{font-size:30px;font-weight:500}.recognition-word{display:flex;align-items:center;justify-content:center;gap:15px}.recognition-word h1{font:52px Georgia;margin:25px 0 13px;color:#325e42}.recognition-quiz>small{color:#a1a991}.meaning-options{display:grid;gap:10px;margin:30px 0 20px}.meaning-options button{text-align:left;border:1px solid #e8ecdf;background:#fafbf7;border-radius:10px;padding:16px;font-size:15px;color:#667a59;display:flex;gap:17px}.meaning-options button>span{font-size:12px;color:#9aa98b}.meaning-options button.correct{background:#e8f3df;border-color:#9cb688}.meaning-options button.incorrect{background:#fff0e8;border-color:#d7ac94}.text-action{background:transparent;border:0;color:#92a082;font-size:11px;padding:12px;cursor:pointer}.meaning-hint{background:#f2f5ea;padding:12px;border-radius:8px;color:#7f936a;font-size:13px;margin-top:20px}.answer-feedback{padding:20px;background:#f4f5ec;border-radius:12px;display:flex;align-items:center;flex-direction:column;gap:16px;font-size:13px;line-height:1.7}.answer-feedback.success{background:#edf5e8}.answer-feedback span{color:#758a66}.session-summary{text-align:center;margin:40px auto;max-width:680px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:45px}.summary-seal{display:grid;place-items:center;background:#ebf1e0;color:#8eaa72;width:75px;height:75px;border-radius:50%;font-size:40px;margin:0 auto 25px}.session-summary>.eyebrow{display:block}.session-summary h1{font-family:"Noto Serif SC",serif;font-size:28px;font-weight:500}.session-summary p{font-size:13px;color:#93a083;line-height:2}.session-summary .summary-actions{display:flex;justify-content:center;gap:10px;margin-top:28px}.session-summary button:not(.primary-action){background:#f0f3e9;color:#7e936b;border-radius:8px;padding:12px 20px}.unit-list{display:grid;gap:12px;margin-top:25px}.unit-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);padding:20px;border-radius:10px;background:#fff;font-size:13px}.unit-list span,.unit-list p{color:#8b9a80;font-size:12px}.unit-list button{background:#eef3e7;padding:9px;border-radius:7px;color:#758967;font-size:11px}.course-study-list{display:grid;gap:10px}.course-study-list article{display:flex;align-items:center;gap:25px;padding:18px 22px;background:#fff;border:1px solid var(--line);border-radius:10px}.course-study-list strong{font:24px Georgia;min-width:140px}.course-study-list span{flex:1;color:#7f9170;font-size:13px}.field-label{display:block;color:#81906e;font-size:12px;text-align:left;line-height:2;margin:16px 0 8px}.spelling-input,.field-label input,.field-label textarea{display:block;width:100%;border:1px solid #dbe3cd;background:#fafbf8;border-radius:9px;padding:15px;color:#3a5840;font:22px Georgia;box-sizing:border-box}.field-label input,.field-label textarea{font:14px Microsoft YaHei,sans-serif;margin-top:8px}.course-admin{max-width:820px;margin:auto;padding:12px}.course-admin>p{color:#8b997b;font-size:13px;line-height:1.8}.spelling-input{text-align:center;margin:12px 0}.spelling-correct{font:30px Georgia;color:#6a8b52}.collection-page{min-height:100vh;background:#161e1a;color:#d6d9c9;font-family:Segoe UI,Microsoft YaHei,sans-serif;padding-bottom:22px}.collection-page button{font:inherit;cursor:pointer}.collection-header{display:flex;justify-content:space-between;align-items:center;padding:25px 4.5%;border-bottom:1px solid #85937220;gap:15px}.collection-header>button{background:transparent;border:1px solid #73816438;color:#a5b09b;border-radius:5px;padding:9px 14px;font-size:11px}.collection-header>div{text-align:center}.collection-header>div span{font-size:9px;letter-spacing:4px;color:#8b9679;display:block;margin-bottom:8px}.collection-header strong{font-size:17px;letter-spacing:5px;font-weight:400}.collection-header b{font-size:10px;margin-left:7px;font-weight:400;color:#ddd3a9}.collection-subhead{padding:28px 5% 25px;display:flex;justify-content:space-between;align-items:center}.room-number{font-size:9px;letter-spacing:3px;color:#949a7e}.collection-subhead h1{font-family:"Noto Serif SC",serif;font-weight:400;font-size:22px;letter-spacing:2px;margin:12px 0 0}.collection-subhead>div:last-child strong{font:33px Georgia;color:#cec6a3}.collection-subhead>div:last-child span{font-size:10px;color:#727f69;letter-spacing:1px}.room-shell{position:relative;background:#151b17;border-top:1px solid #6a755347;border-bottom:1px solid #6a755347}.room-viewport,.room-loading{width:100%;height:clamp(370px,43vw,650px);overflow:hidden;position:relative}.room-viewport canvas{display:block;touch-action:pan-y}.room-loading{display:grid;place-items:center;color:#a8ad8b;font-size:13px}.room-caption{position:absolute;left:4.5%;right:4.5%;bottom:20px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:#a7ac94;pointer-events:none;text-shadow:0 1px 5px #000}.collection-bottom{max-width:1120px;margin:auto;padding:28px 30px 0}.collection-invitation{display:flex;align-items:center;gap:22px;padding:7px 0 27px;border-bottom:1px solid #89977821}.ticket-icon{font:45px Georgia;color:#bcb68c}.collection-invitation>div{flex:1}.collection-invitation h2{font-size:17px;font-weight:400;letter-spacing:1px;margin:0 0 10px}.collection-invitation p{font-size:11px;color:#849279;margin:0}.gold-action{background:linear-gradient(120deg,#d7cca5,#a99e75);color:#343e2c;border:1px solid #d6c99b;border-radius:5px;padding:13px 22px;font-size:12px!important;cursor:pointer}.gold-action span{margin-left:20px;font-size:10px!important;color:#525d42}.collection-note{display:flex;justify-content:center;align-items:center;gap:20px;padding:23px 0;font-size:10px;color:#839076}.collection-note i{font-style:normal;color:#525f47}.collection-note button{background:none;border:0;border-left:1px solid #6d7b5e42;padding-left:20px;color:#b2b18b;font-size:10px}.local-storage-note{text-align:center;font-size:10px;color:#879579;padding:0 25px;line-height:1.8}.local-storage-note button{background:none;border:0;color:#c0bd92;text-decoration:underline;margin-left:12px}.accessible-slots{max-width:1080px;margin:0 auto;color:#77866b;font-size:10px;padding:0 30px}.accessible-slots summary{cursor:pointer}.accessible-slots>div,.webgl-fallback>div{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;padding:15px 0}.accessible-slots button,.webgl-fallback button{background:#222d24;border:1px solid #8b977032;color:#aeb995;padding:10px;font-size:10px;text-align:left}.webgl-fallback{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;background:#18231d;padding:30px;z-index:3}.webgl-fallback>p{font-size:12px;color:#b4bc9a}.collection-overlay{position:fixed;left:0;top:0;width:100vw;height:100%;background:#07130dd4;z-index:2000;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);place-items:center;padding:35px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.collection-modal{width:min(1150px,100%);max-width:100%;min-width:0;min-height:0;max-height:min(90vh,100%);max-height:min(90dvh,100%);overflow:auto;overscroll-behavior:contain;background:#242e27;color:#ced4bf;border:1px solid #a2ad7c42;border-radius:13px;box-shadow:0 30px 140px #0009;outline:none}.collection-page :is(button,input,summary){touch-action:manipulation}.collection-page :is(button,input):disabled{cursor:not-allowed;opacity:.55}.collection-page :is(button,input,summary):focus-visible{outline:2px solid #c9dff4;outline-offset:2px}.collection-header>div,.collection-subhead>div,.warehouse-heading>div,.warehouse-content,.inventory-detail{min-width:0}.collection-modal :is(h2,h3,p,small,button){overflow-wrap:anywhere}.collection-modal :is(.gold-action,.upgrade-action,.text-action),.collection-header>button{min-height:44px}.warehouse-heading>button,.draw-close{min-width:44px;min-height:44px;flex-shrink:0;line-height:1}.inventory-back{display:none}.inventory-item{scroll-margin-block:150px 16px}.single-reel{max-width:100%}.warehouse-heading{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;border-bottom:1px solid #95a47b25;gap:20px}.warehouse-heading .eyebrow{font-size:9px;letter-spacing:3px;color:#858f6e}.warehouse-heading h2{font-size:23px;font-weight:400;letter-spacing:2px;margin:10px 0}.warehouse-heading p{font-size:11px;color:#8d9a7c;margin:0}.warehouse-heading>button,.draw-close{color:#a9b394;background:transparent;border:0;font-size:30px!important;padding:5px 10px;font-weight:200!important}.warehouse-toolbar{display:flex;justify-content:space-between;gap:20px;padding:18px 25px;border-bottom:1px solid #95a47b18}.warehouse-toolbar>div{display:flex;gap:6px;flex-wrap:wrap}.warehouse-toolbar button{padding:7px 12px;font-size:11px;border-radius:5px;background:transparent;border:1px solid transparent;color:#8d9b7c}.warehouse-toolbar button.active{border-color:#b0b68d50;background:#b2b48914;color:#d4d6b4}.warehouse-toolbar input{border:1px solid #7b8a6050;background:#19241bb3;color:#b8c6a5;padding:9px 12px;border-radius:5px;font-size:11px;width:170px;min-width:0}.warehouse-content{display:grid;grid-template-columns:1fr 235px;min-height:410px}.inventory-grid{padding:22px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-content:start;max-height:55vh;overflow:auto}.inventory-item{border:1px solid #79886730;border-radius:7px;background:linear-gradient(145deg,#37413366,#1f2b22);padding:12px 10px;display:flex;flex-direction:column;align-items:center;position:relative;color:#b6c29f;min-width:0}.inventory-item.selected{border-color:#b9bf92;background:#62714830;box-shadow:inset 0 0 0 1px #b9bf9240}.inventory-item.unowned .collectible-art{opacity:.2;filter:grayscale(1)}.quality-marker{font-size:8px!important;align-self:flex-start;color:var(--quality);letter-spacing:.5px}.quality-marker:before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--quality);margin-right:5px}.collectible-art{width:100%;height:auto;max-height:145px;object-fit:contain;display:block}.inventory-item strong{font-weight:400;font-size:11px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.inventory-count{font-size:11px;margin:8px 0 10px;color:#dde0ca}.duplicate-progress{height:15px;position:relative;background:#121e1660;border:1px solid #84916a2b;border-radius:3px;width:90%;overflow:hidden}.duplicate-progress i{position:absolute;inset:0 auto 0 0;background:#76a06070}.duplicate-progress span{position:relative;display:block;font-size:9px;color:#7f8e6c;text-align:center;line-height:13px}.duplicate-progress.ready span{color:#e1f0c5}.duplicate-progress.ready{border-color:#89b36670}.inventory-item>small{font-size:8px;color:#7c8b6a;margin-top:8px}.inventory-detail{border-left:1px solid #95a47b25;padding:20px;display:flex;flex-direction:column;align-items:center;background:#1b271e50}.inventory-detail .collectible-art{max-height:175px}.inventory-detail>span{font-size:10px;margin-top:10px}.inventory-detail h3{font-size:17px;font-weight:400;margin:12px 0}.inventory-detail p{font-size:11px;text-align:center;color:#8a9c75;line-height:1.9;margin:0}.inventory-detail dl{width:100%;margin:22px 0;font-size:11px}.inventory-detail dl div{display:flex;justify-content:space-between;margin:10px 0}.inventory-detail dt{color:#869873}.inventory-detail dd{margin:0;color:#ccd4b4}.inventory-detail>.gold-action{width:100%;font-size:11px!important}.inventory-detail>small{font-size:9px;color:#7e906c;line-height:1.9;text-align:center;margin:13px 0}.upgrade-action{width:100%;padding:10px 5px;margin-top:10px;background:#7886541c;border:1px solid #97aa744c;color:#b5c98e;border-radius:5px;font-size:10px!important}.inventory-detail-empty{font-size:12px;color:#708363;line-height:2.2;text-align:center;margin:auto}.inventory-empty{grid-column:1/-1;text-align:center;padding:60px 20px;color:#7c8b6a;font-size:12px}.inventory-empty>span{font-size:48px}.inventory-empty h3{font-size:15px;font-weight:400}.inventory-empty p{font-size:11px}.draw-overlay .collection-modal{width:510px;text-align:center;padding:35px 38px;position:relative;background:radial-gradient(ellipse at 50% 40%,#43513a,#202d23 75%)}.draw-close{position:absolute;top:8px;right:12px}.draw-overlay .eyebrow{color:#819472;font-size:8px;letter-spacing:2px}.draw-overlay h2{font-family:"Noto Serif SC",serif;font-weight:400;font-size:24px;margin:18px 0}.draw-overlay p{color:#9bad89;font-size:11px;line-height:1.8}.single-reel{position:relative;margin:25px auto 18px;width:250px;padding:9px;background:linear-gradient(135deg,#97966f,#4f6343 30%,#233c27 70%,#999b70);border:1px solid #9baf7666;border-radius:8px;box-shadow:0 20px 35px #0004,inset 0 1px 2px #ffffff30}.reel-window{height:240px;overflow:hidden;border:1px solid #3a522e;background:radial-gradient(#79855645,#15261ad9);position:relative;border-radius:3px}.reel-window:after{content:"";pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(#142016dd,transparent 22%,transparent 80%,#142016cc);z-index:1}.reel-item{height:240px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px}.reel-item .collectible-art{height:170px;width:190px;max-height:170px}.reel-item strong{font-size:12px;font-weight:400;color:#c8d5b4;letter-spacing:1px}.reel-strip{transform:translateY(0)}.reel-strip.rolling{transform:translateY(var(--roll-y));transition:transform 3.25s cubic-bezier(.12,.65,.15,1)}.reel-pointer{position:absolute;top:50%;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;z-index:3}.reel-pointer.left{left:-7px;border-left:12px solid #cfcb92}.reel-pointer.right{right:-7px;border-right:12px solid #cfcb92}.reel-item.mystery>span{font:90px Georgia;color:#acb784}.reel-item.result .collectible-art{filter:drop-shadow(0 0 18px var(--quality))}.draw-result{min-height:70px;padding:8px}.draw-result>b{font-size:12px;font-weight:400}.draw-overlay>.collection-modal>.gold-action{width:100%;margin-top:8px}.draw-fineprint{font-size:9px!important;color:#718662!important;margin:23px 0 0;line-height:2.1!important}.rules-overlay .collection-modal{width:650px;padding:20px 28px 30px}.rules-overlay .warehouse-heading{padding:0 0 15px}.rules-overlay .collection-modal>p{font-size:12px;line-height:2;color:#94a47e}.probability-list{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:22px 0}.probability-list>div{display:grid;gap:10px;text-align:center;padding:15px 5px;background:#1a281c;border:1px solid #889b6630;border-radius:6px;font-size:10px}.probability-list b{font-size:20px;font-weight:400}.rules-overlay h3{font-size:14px;font-weight:400;margin:25px 0 12px}.draw-history{max-height:180px;overflow:auto}.draw-history>div{display:flex;justify-content:space-between;padding:10px;border-top:1px solid #8a9a6720;font-size:12px;gap:10px}.draw-history small{color:#819267;font-size:10px}.exercise-page{background:var(--paper)!important;min-height:100vh}.exercise-page-header{background:#f6f7f2!important;box-shadow:none!important;border-bottom:1px solid var(--line)}.exercise-page .exercise-question-card,.exercise-page .exercise-study-view-card,.exercise-page .exercise-summary-card{background:#fff;border:1px solid var(--line);box-shadow:0 15px 40px #283c1b05}.exercise-page .exercise-options button{background:#f8faf4;border-color:#e1e8d6}.exercise-page .exercise-next,.exercise-page .exercise-summary-actions>button:first-child{background:#547446;box-shadow:none}.exercise-page .exercise-session-track i{background:#9cad78}.exercise-page .exercise-pair-speaker{background:#edf3e2;color:#6b8957}.exercise-page .exercise-feedback{box-shadow:none}.exercise-page .exercise-question-label{color:#8da279}.exercise-page .exercise-summary-cup{filter:grayscale(.5)}@media (min-width:1600px){.room-viewport{height:660px}}@media (max-width:1000px){.inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.warehouse-content{grid-template-columns:1fr 210px}.collection-subhead h1{font-size:20px}.collection-note{gap:12px;font-size:9px}}@media (max-width:720px){.studio-header{padding:17px 18px;font-size:12px}.studio-header .muted{display:none}.studio-main{padding:27px 18px 50px}.page-intro{margin-bottom:25px}.page-intro h1{font-size:24px}.page-intro p{font-size:11px}.intro-symbol{display:none}.learning-overview{padding:20px;gap:12px}.overview-detail{max-width:160px;font-size:11px}.overview-detail span{font-size:9px;line-height:1.8}.learning-overview h2{font-size:37px}.learning-overview h2 small{font-size:14px}.group-grid{grid-template-columns:repeat(2,1fr);gap:10px}.group-card{padding:17px}.group-card:last-child{grid-column:1/-1;grid-template-columns:auto 1fr auto;align-items:center}.group-card:last-child small{grid-column:2}.group-card:last-child>span:last-child{grid-column:3;grid-row:1/3;border:0;padding:0}.course-entry{flex-wrap:wrap;padding:22px;gap:15px}.course-entry .primary-action{width:100%}.course-entry h2{font-size:18px}.course-icon{font-size:32px}.recognition-cards{grid-template-columns:1fr;gap:10px}.recognition-cards article{flex-direction:row;padding:18px;gap:14px;flex-wrap:wrap;justify-content:center}.recognition-cards strong{font-size:25px}.recognition-cards p{margin:0;font-size:13px}.recognition-cards small{font-size:10px}.recognition-quiz{padding:28px 20px;margin:18px auto}.recognition-word h1{font-size:42px}.session-heading h1{font-size:22px}.session-summary{padding:30px 20px;margin:15px 0}.session-summary h1{font-size:23px}.session-summary .summary-actions{flex-direction:column}.course-study-list article{gap:12px;padding:15px}.course-study-list strong{font-size:19px;min-width:95px}.course-study-list span{font-size:11px}.course-admin{padding:0}.collection-page{min-height:100dvh;padding:0 env(safe-area-inset-right) max(20px,env(safe-area-inset-bottom)) env(safe-area-inset-left)}.collection-header{padding:max(12px,env(safe-area-inset-top)) 12px 12px;gap:8px;flex-wrap:wrap}.collection-header>button{font-size:12px;padding:10px;white-space:nowrap}.collection-header>div span{font-size:8px;letter-spacing:1.5px;margin-bottom:5px}.collection-header strong{font-size:15px;letter-spacing:1px}.collection-header b{margin-left:4px;font-size:12px}.collection-subhead{padding:20px 16px;gap:12px;flex-wrap:wrap}.collection-subhead h1{font-size:17px;letter-spacing:0;line-height:1.8}.collection-subhead>div:last-child{display:flex;gap:5px;align-items:baseline}.collection-subhead>div:last-child strong{font-size:23px}.collection-subhead>div:last-child span{font-size:12px}.room-viewport,.room-loading{height:auto;aspect-ratio:6/5}.room-caption{position:static;padding:12px 16px;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:11px;line-height:1.7;letter-spacing:0}.collection-bottom{padding:16px 16px 0}.collection-invitation{flex-wrap:wrap;gap:12px;padding-bottom:20px}.ticket-icon{font-size:32px}.collection-invitation>div{min-width:0}.collection-invitation h2{font-size:16px;line-height:1.6}.collection-invitation p{font-size:12px;line-height:1.9}.collection-invitation>.gold-action{width:100%;min-height:48px;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 16px}.collection-invitation>.gold-action span{margin-left:0;font-size:12px!important}.collection-note{gap:8px;flex-wrap:wrap;line-height:1.8;font-size:11px;padding:16px 0}.collection-note button{width:100%;min-height:44px;border:0;padding:10px;font-size:12px}.local-storage-note{font-size:11px;padding:0 16px}.local-storage-note button{display:block;min-height:44px;margin:4px auto 0;padding:10px 16px}.accessible-slots{font-size:12px;padding:0 16px}.accessible-slots summary{min-height:44px;padding:14px 0;line-height:1.5}.accessible-slots>div,.webgl-fallback>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.accessible-slots button,.webgl-fallback button{min-width:0;min-height:44px;font-size:12px;line-height:1.6;overflow-wrap:anywhere;border-radius:6px}.webgl-fallback{padding:16px;overscroll-behavior:contain}.collection-overlay{padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.collection-modal{max-height:100%;border-radius:12px;scroll-padding-top:145px}.warehouse-overlay .collection-modal{height:100%}.warehouse-heading{padding:14px 16px;gap:8px;align-items:flex-start;position:sticky;top:0;z-index:5;background:inherit}.warehouse-heading h2{font-size:20px;line-height:1.5;letter-spacing:1px;margin:4px 0 8px}.warehouse-heading .eyebrow{font-size:9px;letter-spacing:1.5px}.warehouse-heading p{font-size:12px;line-height:1.7}.warehouse-heading>button{margin:-4px -8px 0 0}.warehouse-toolbar{padding:12px;gap:12px;flex-direction:column}.warehouse-toolbar>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.warehouse-toolbar input{width:100%;min-height:44px;padding:10px 12px;font-size:16px}.warehouse-toolbar button{min-width:0;min-height:44px;font-size:12px;padding:6px 4px}.warehouse-content{display:block;min-height:0}.inventory-grid{padding:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:none;overflow:visible}.inventory-item{padding:12px 8px;min-height:190px}.inventory-item strong{font-size:13px;line-height:1.5;white-space:normal;overflow:visible;text-align:center}.inventory-item .quality-marker{font-size:10px!important;line-height:1.5}.inventory-item small{font-size:10px;line-height:1.6;text-align:center}.inventory-count{font-size:13px;margin:7px 0}.inventory-item .collectible-art{max-height:120px}.duplicate-progress{height:18px}.duplicate-progress span{font-size:11px;line-height:16px}.inventory-empty{padding:36px 12px}.inventory-empty h3{font-size:16px;line-height:1.7}.inventory-empty p{font-size:12px;line-height:1.8}.warehouse-overlay.has-selection .warehouse-toolbar,.warehouse-overlay.has-selection .inventory-grid{display:none}.warehouse-overlay:not(.has-selection) .inventory-detail{display:none}.inventory-detail{border:0;padding:12px 16px 20px;display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;align-items:center}.inventory-back{display:block;grid-column:1/-1;min-height:44px;background:transparent;color:#c9dff4;text-align:left;padding:10px 0;font-size:13px!important}.inventory-detail>.collectible-art{grid-column:1;grid-row:2/5;max-height:125px}.inventory-detail>span{font-size:12px;grid-column:2;margin:0}.inventory-detail h3{font-size:20px;grid-column:2;margin:0;line-height:1.5}.inventory-detail p{font-size:13px;grid-column:2;text-align:left;line-height:1.8}.inventory-detail dl{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin:4px 0}.inventory-detail dl div{gap:10px;font-size:13px;margin:5px 0}.inventory-detail>.gold-action{grid-column:1/-1;min-height:48px;font-size:13px!important;padding:12px}.inventory-detail>.upgrade-action{grid-column:1/-1;min-height:48px;margin:0;font-size:13px!important;padding:12px}.inventory-detail>small,.inventory-detail>.text-action{grid-column:1/-1;margin:0;font-size:12px;line-height:1.8}.inventory-detail>.text-action{color:#c9dff4}.inventory-detail-empty{grid-column:1/-1;line-height:1.8;font-size:12px}.draw-overlay .collection-modal{padding:16px 18px 22px;scroll-padding-top:12px}.draw-close{position:sticky;display:block;top:0;right:auto;margin:-8px -10px -4px auto;z-index:5;border-radius:8px;background:#203247}.draw-overlay .eyebrow{display:block;font-size:9px;line-height:1.7;letter-spacing:1px}.draw-overlay h2{font-size:21px;line-height:1.6;margin:12px 0}.draw-overlay p{font-size:12px}.single-reel{margin:18px auto;width:235px}.reel-item .collectible-art{max-width:100%}.draw-result{min-height:64px;padding:6px 0}.draw-result>b{font-size:14px;line-height:1.8}.draw-overlay .collection-modal>.gold-action{min-height:48px;font-size:14px!important}.draw-overlay .text-action{font-size:13px;color:#c9dff4}.draw-overlay .draw-fineprint{font-size:11px!important;margin-top:16px;color:#a7bdd1!important}.rules-overlay .collection-modal{padding:0 16px 20px}.rules-overlay .warehouse-heading{padding:14px 0}.rules-overlay .warehouse-heading h2{font-size:19px}.probability-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}.probability-list>div{font-size:12px;padding:12px 6px;line-height:1.6}.probability-list b{font-size:22px}.draw-history{max-height:none;overflow:visible}.draw-history>div{font-size:13px;flex-wrap:wrap;gap:6px 12px;padding:12px 0}.draw-history small{font-size:12px}.rules-overlay .collection-modal>p{font-size:13px;line-height:1.9}}@media (max-width:380px){.collection-header{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.collection-header>div{grid-column:1/-1;grid-row:1;padding:4px 0 8px}.collection-header>button{width:100%}}@media (min-width:521px) and (max-width:720px){.inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.accessible-slots>div,.webgl-fallback>div{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-height:500px) and (orientation:landscape){.collection-overlay{padding:max(8px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.collection-modal{max-height:100%}.room-viewport,.room-loading{height:70vh;height:70dvh;aspect-ratio:auto}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--ink: #294866;--muted: #627b92;--paper: #f1f8ff;--green: #397cb4;--line: #dceaf6;--text: #294866;--text-light: #627b92;--text-dark: #294866;--text-gray: #627b92}body{background:#f1f8ff}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #397cb4;outline-offset:3px}.studio-page,.exercise-page{min-height:100vh;color:var(--ink);background:linear-gradient(180deg,#edf7ff,#f8fbff)}.studio-page button,.course-admin button{font-family:inherit;transition:background .18s,transform .18s}.studio-header{flex-wrap:wrap;background:#ffffffb3}.studio-header button,.text-action{color:#326da7}.studio-main{width:100%}.studio-page .eyebrow,.course-admin .eyebrow{color:#326da7}.page-intro{gap:20px}.page-intro h1{font-size:32px;line-height:1.5;margin:12px 0}.page-intro p{font-size:14px;color:var(--muted);line-height:1.9}.intro-symbol{color:#bed8ef}.learning-overview{background:#e6f2ff;border-color:#cee3f6}.learning-overview h2,.recognition-word h1,.recognition-cards strong,.spelling-correct{color:#326da7}.learning-overview :is(span,p),.learning-overview h2 small,.group-card small,.group-card>span:last-child,.course-entry p,.learning-details,.session-heading :is(span,p),.session-summary p,.recognition-cards :is(small,p),.recognition-quiz>small,.unit-list :is(span,p),.course-study-list span,.field-label,.course-admin>p{color:var(--muted)}.group-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.group-card{min-width:0;box-shadow:0 5px 18px #4f84b40b}.group-card .group-number{color:#719ac2}.group-card>span:last-child{border-color:var(--line)}.group-card.done{background:#edf7f3}.course-entry{background:#edf5ff;border-color:var(--line)}.course-entry>div{min-width:0}.course-icon{color:#7a9fc4}.primary-action{background:#397cb4!important}.primary-action:hover{background:#2f6695!important}.primary-action:disabled{opacity:.5}.learning-details button,.unit-list button,.session-summary button:not(.primary-action){background:#e5f1fc;color:#326da7}.notice{background:#eaf4ff;color:#41658a}.notice.error{color:#a55647;background:#fff0e9}.summary-seal{background:#e5f1fc;color:#397cb4}.session-heading h1,.session-summary h1{font-family:inherit;line-height:1.6}.recognition-quiz,.session-summary{box-shadow:0 10px 32px #4f84b40d}.recognition-word h1,.recognition-cards strong{overflow-wrap:anywhere;min-width:0}.meaning-options button{background:#f5faff;border-color:var(--line);color:var(--ink)}.meaning-options button>span{color:var(--muted)}.meaning-options button.correct{background:#eaf7ed;border-color:#81b593}.meaning-options button.incorrect{background:#fff0ed;border-color:#d9a095}.meaning-hint,.answer-feedback{background:#edf5ff;color:var(--ink)}.answer-feedback span{color:var(--muted)}.answer-feedback.success{background:#edf7f1}.word-context{background:#f0f7ff;border-color:#9fc5e9}.word-context :is(span,p,small){color:#526f8d}.spelling-input,.field-label input,.field-label textarea{background:#fbfdff;border-color:#c5dbed;color:var(--ink)}.course-study-list article{flex-wrap:wrap}.unit-list article{flex-wrap:wrap}.exercise-page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px max(20px,calc((100vw - 1100px)/2));background:#ffffffd9!important;border-bottom:1px solid var(--line)}.exercise-page-header button{padding:10px 14px;border-radius:12px;background:#e6f2ff;color:#326da7;box-shadow:none}.exercise-page-main{width:min(100%,820px);margin:auto;padding:36px 24px 64px}.exercise-session-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px;color:var(--muted);font-size:13px}.exercise-session-track{width:100%;height:6px;background:#deebf7;border-radius:8px;overflow:hidden}.exercise-page .exercise-session-track i{display:block;height:100%;background:#78aee0;transition:width .25s}.exercise-question-card,.exercise-study-view-card,.exercise-summary-card,.exercise-empty-card{padding:32px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 10px 32px #4f84b40d}.exercise-question-label,.exercise-study-view-head{display:flex;justify-content:space-between;gap:12px;color:#587a9e;font-size:12px;margin-bottom:24px}.exercise-question-label i,.exercise-study-view-head i{font-style:normal}.exercise-question-card h1{font-size:25px;line-height:1.7;margin:20px 0 28px;overflow-wrap:anywhere}.exercise-options{display:grid;gap:12px}.exercise-page .exercise-options button{display:flex;align-items:center;gap:14px;padding:18px;text-align:left;background:#f5faff;border:1px solid #dceaf6;border-radius:12px;color:var(--ink);font-size:16px}.exercise-options button strong{flex:1;font-weight:500;overflow-wrap:anywhere}.exercise-options button>span{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;background:#e5effb;border-radius:8px;color:#326da7}.exercise-page .exercise-options button.answer{border-color:#8eb79f;background:#edf8f1}.exercise-page .exercise-options button.selected-wrong{border-color:#d8a39b;background:#fff0ed}.exercise-feedback{display:grid;gap:10px;margin-top:24px;padding:18px;border-radius:12px;font-size:14px;line-height:1.8}.exercise-feedback.ok{background:#edf8f1;color:#39714f}.exercise-feedback.no,.exercise-error{background:#fff0ed;color:#9a5047}.exercise-next,.exercise-study-done,.exercise-summary-actions button,.exercise-empty-card button,.exercise-fill-answer button{padding:14px 20px;border-radius:12px;color:#fff;background:#397cb4;font-size:14px}.exercise-page .exercise-next,.exercise-page .exercise-summary-actions>button:first-child{background:#397cb4}.exercise-next,.exercise-study-done{width:100%;margin-top:24px}.exercise-summary-card,.exercise-empty-card{text-align:center}.exercise-summary-cup,.exercise-empty-card>span{display:block;font-size:52px;margin:8px 0 20px}.exercise-summary-card h1,.exercise-empty-card h1{font-size:26px;margin:12px 0 24px}.exercise-summary-card p,.exercise-empty-card p{color:var(--muted);line-height:1.9;font-size:14px}.exercise-summary-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}.exercise-summary-stats span{display:grid;gap:8px;background:#eff6ff;border-radius:12px;padding:20px 8px}.exercise-summary-stats b{font-size:28px;color:#326da7}.exercise-summary-stats small{color:var(--muted)}.exercise-summary-actions,.exercise-empty-card>div{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}.exercise-summary-actions .secondary,.exercise-summary-actions .ghost,.exercise-empty-card .ghost{background:#e6f2ff;color:#326da7}.exercise-full-loading{display:grid;place-items:center;min-height:65vh}.exercise-fill-answer{display:grid;gap:16px}.exercise-fill-answer input{width:100%;padding:16px;border:1px solid #c5dbed;border-radius:12px;font-size:20px}.exercise-study-image{width:100%;background:#f1f8ff;border-radius:12px;overflow:hidden}.exercise-study-image img{display:block;max-width:100%;max-height:400px;margin:auto;object-fit:contain}.exercise-study-word-list{display:grid;gap:12px;margin:20px 0}.exercise-study-word-row{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#f3f8ff;padding:16px;border-radius:12px}.exercise-study-word-change{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.exercise-study-word-change strong{font-size:23px}.exercise-study-word-change small{color:var(--muted)}.exercise-page .exercise-pair-speaker{flex-shrink:0;padding:12px;background:#e2effd;border-radius:50%}.exercise-study-tip{display:flex;gap:12px;padding:18px;margin-top:24px;background:#edf5ff;border-radius:12px;font-size:14px}.exercise-image-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#152638e6;display:grid;place-items:center;padding:30px}.exercise-image-viewer img{max-width:100%;max-height:90vh;object-fit:contain}.exercise-image-viewer>button{position:absolute;top:12px;right:20px;padding:8px 16px;border-radius:50%;font-size:26px}.exercise-error{padding:16px;margin-bottom:20px;border-radius:12px}.collection-page{background:#182838;color:#dae8f5}.collection-header{border-color:#385068}.collection-header>button{background:#20364b;color:#d3e4f5;border-color:#496078}.collection-header>div span,.collection-header b,.room-number,.collection-subhead>div:last-child span,.collection-note,.local-storage-note{color:#a7bdd1}.collection-subhead>div:last-child strong{color:#c9dff4}.collection-invitation h2{color:#e1ecf8}.collection-invitation p{color:#a7bdd1}.collection-page .eyebrow{color:#9abedc}.collection-overlay{background:#102132dc}.collection-modal{background:#203247;color:#dbe8f5;border-color:#476078}.warehouse-heading,.warehouse-toolbar,.inventory-detail{border-color:#476078}.warehouse-heading :is(p,button),.warehouse-toolbar button,.inventory-detail p,.inventory-detail small,.inventory-detail dl,.inventory-item small,.inventory-detail-empty,.inventory-empty p,.draw-overlay p{color:#acc2d7}.warehouse-toolbar input{background:#17293d;border-color:#476078;color:#e1ecf8}.warehouse-toolbar button.active{background:#334e69;border-color:#718fac;color:#e1ecf8}.inventory-item{background:#273d53;border-color:#405b75;color:#e1ecf8}.inventory-item.selected{background:#334e69;border-color:#91b8d9}.inventory-count{color:#c3d9ed}.duplicate-progress{background:#17293d}.duplicate-progress.ready i{background:#4c7498}.duplicate-progress span{color:#d7e7f5}.upgrade-action{color:#d7e7f5;background:#334e69;border-color:#597d9e}.accessible-slots{color:#aac3d9}.accessible-slots button{background:#233b52;color:#c8deef;border-color:#46637e}@media (max-width: 720px){.page-intro h1{font-size:25px}.page-intro p{font-size:13px}.learning-overview{flex-wrap:wrap}.overview-detail{max-width:none;text-align:left}.group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.group-card:last-child{grid-template-columns:auto minmax(0,1fr)}.group-card:last-child>span:last-child{grid-column:1 / -1;grid-row:auto}.exercise-page-header{gap:8px;padding:14px 12px;font-size:12px}.exercise-page-header button{font-size:12px;padding:8px 10px}.exercise-page-main{padding:24px 14px 40px}.exercise-question-card,.exercise-study-view-card,.exercise-summary-card,.exercise-empty-card{padding:22px 18px}.exercise-question-card h1{font-size:21px}.exercise-options button{padding:14px}.exercise-summary-card h1,.exercise-empty-card h1{font-size:23px}.exercise-summary-actions{flex-direction:column}.exercise-summary-stats b{font-size:24px}}.admin-overlay{align-items:center;padding:24px;background:#213c5c80}.admin-panel{width:min(1240px,100%);max-width:1240px;max-height:94dvh;padding:0;border:1px solid #dceaf6;border-radius:24px;background:#f3f8ff;color:#294866;overflow:auto}.admin-panel-locked{max-width:720px}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;margin:0;background:#fff;border-bottom:1px solid #dceaf6}.admin-title-block,.admin-header-actions{display:flex;align-items:center;gap:12px}.admin-title-block>div,.ba-title>div{display:grid;gap:5px}.admin-title-block h2{font-size:20px}.admin-title-block small,.admin-title-block p{color:#627b92;font-size:12px}.admin-title-mark,.sc-brand-mark{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;background:#e3f0ff;border-radius:14px;color:#397cb4;font-size:26px}.admin-close{display:flex;align-items:center;gap:8px;flex-shrink:0;padding:8px 12px;border-radius:12px;background:#edf5ff;color:#326da7;white-space:nowrap}.admin-close>span{font-size:24px;line-height:1}.admin-close b{font-size:12px}.admin-account{font-size:12px;color:#627b92;overflow-wrap:anywhere}.admin-acting-chip{font-style:normal;margin-left:8px;color:#397cb4}.admin-workspace{display:grid;grid-template-columns:210px minmax(0,1fr)}.admin-sidebar{padding:24px 16px;background:#eaf3ff}.admin-sidebar-intro{display:grid;gap:6px;padding:0 10px 20px;font-size:13px}.admin-sidebar-intro small,.admin-sidebar-note{color:#627b92;font-size:12px;line-height:1.8}.admin-sidebar-note{padding:20px 10px}.admin-main-tabs{display:grid;grid-template-columns:1fr;gap:8px;background:transparent;margin:0;padding:0}.admin-main-tabs button{display:flex;text-align:left;gap:12px;padding:16px 12px;color:#526f8d}.admin-main-tabs button.active{background:#fff;color:#326da7}.admin-tab-copy{display:grid;gap:5px}.admin-tab-copy strong{font-size:14px}.admin-tab-copy small{font-size:11px;font-weight:400}.admin-tab-number{color:#7597b8;font-size:12px}.admin-content{min-width:0;padding:26px}.admin-content-head,.admin-card-heading,.today-overview-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.admin-content-head h2{font-size:23px}.admin-content-head p,.admin-content-date,.admin-card-heading>span{font-size:12px;color:#627b92}.admin-body{padding:0;overflow:visible}.admin-task-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.admin-task-column{display:grid;align-content:start;gap:20px;min-width:0}.admin-card,.exercise-admin-section{background:#fff;padding:22px;border:1px solid #dceaf6;border-radius:18px;margin:0}.admin-card-heading h3{font-size:18px}.admin-card-heading small,.today-overview-head small{display:block;font-size:10px;color:#627b92;margin-bottom:6px}.admin-progress-track,.sc-progress{height:6px;border-radius:8px;background:#e5effa;overflow:hidden;margin:16px 0}.admin-progress-track i,.sc-progress i{display:block;height:100%;background:#78aee0}.admin-form-grid{display:grid;gap:16px}.admin-field{display:grid;gap:8px;font-size:13px}.admin-field small,.admin-field i,.admin-upload-field small{color:#627b92;font-size:11px;font-style:normal}.admin-panel input:not([type=checkbox]),.admin-panel textarea,.admin-panel select{min-width:0;max-width:100%;border:1px solid #c5dbed;border-radius:10px;background:#fbfdff;padding:11px 12px;color:#294866;font-size:14px;line-height:1.6;font-family:inherit}.admin-panel textarea{width:100%;min-height:140px;font-family:inherit;resize:vertical}.admin-upload-field{margin:20px 0}.admin-upload-field>div:first-child{display:grid;gap:6px;margin-bottom:12px;font-size:13px}.admin-add-task{width:100%;margin-top:18px}.admin-panel .primary-btn,.student-console .primary-btn{background:#397cb4;color:#fff;box-shadow:none;padding:13px 18px;border-radius:12px}.admin-list-empty{display:grid;justify-items:center;gap:12px;padding:30px 12px;color:#627b92}.admin-row-index{font-size:12px;color:#7597b8;margin-right:10px}.admin-login-shell{padding:32px}.admin-login-visual{text-align:center;margin-bottom:22px}.admin-lock-badge{font-size:36px;color:#78aee0}.admin-login{padding:0;display:grid;gap:16px}.admin-login-kicker,.admin-login-foot{color:#627b92;font-size:12px}.admin-password-field{display:flex;align-items:center;gap:12px}.admin-password-field input{flex:1}.exercise-admin,.exercise-report{display:grid;gap:20px}.exercise-admin-mode-tabs,.exercise-report-tabs,.exercise-set-picker{display:flex;flex-wrap:wrap;gap:10px}.exercise-admin button:not(.primary-btn):not(.mini-btn){border-radius:10px;padding:10px 14px;background:#edf5ff;color:#326da7}.exercise-admin button.active{background:#d9ebfc!important}.exercise-admin-summary,.exercise-report-summary{display:flex;flex-wrap:wrap;gap:20px;padding:18px;background:#e7f2ff;border-radius:14px}.exercise-report-summary>div{display:grid;gap:8px;min-width:90px}.exercise-admin-section-head,.exercise-report-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:18px}.exercise-admin-section-head small{color:#627b92;font-size:10px}.exercise-admin-section-head h3{margin:6px 0;font-size:18px}.exercise-admin-section-head p,.exercise-admin p,.exercise-admin-empty{color:#627b92;font-size:13px;line-height:1.8}.exercise-set-create{display:flex;gap:10px;margin-bottom:16px}.exercise-set-create input{flex:1}.exercise-delete-set{margin-top:16px;color:#a55647!important}.exercise-paste{min-height:200px!important}.exercise-format-box{margin:16px 0;padding:16px;background:#edf5ff;border-radius:12px}.exercise-format-box pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;margin:14px 0}.exercise-recognition,.exercise-word-pair-recognition{display:flex;flex-wrap:wrap;gap:14px;padding:12px 0;font-size:13px}.exercise-import-preview,.exercise-order-list,.exercise-tracking-list,.exercise-attempt-list{display:grid;gap:12px;margin:16px 0}.exercise-preview-row,.exercise-order-row,.exercise-tracking-row,.exercise-attempt-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px;background:#f5faff;border:1px solid #dceaf6;border-radius:12px;font-size:13px;overflow-wrap:anywhere}.exercise-preview-row>div:last-child,.exercise-order-main,.attempt-main{flex:1;min-width:0}.exercise-order-main{display:grid;gap:6px}.exercise-order-actions{display:flex;gap:6px;flex-wrap:wrap}.exercise-order-image img,.exercise-image-picker img{display:block;max-width:100%;max-height:170px;object-fit:contain}.exercise-order-image{max-width:100px}.exercise-study-card-form,.exercise-study-card-fields,.exercise-word-pair-editor{display:grid;gap:16px}.exercise-image-picker{min-height:100px;border:1px dashed #9fbedd}.exercise-word-pair-input{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.exercise-word-pair-input input{flex:1 1 140px;width:0}.exercise-insert-position{display:flex;align-items:center;gap:12px;margin:16px 0;font-size:13px}.exercise-admin-error,.exercise-word-pair-error,.invalid-reason,.sc-err{color:#a55647;background:#fff0ed;padding:12px;border-radius:10px}.exercise-tracking-row{display:grid}.tracking-row-head,.tracking-metrics,.tracking-answer-detail{display:flex;flex-wrap:wrap;gap:12px}.checkbox-label{display:flex;align-items:center;gap:10px;padding-right:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:20px;height:20px;border:2px solid #667eea;border-radius:6px;background:#fff;cursor:pointer;accent-color:#667eea;transition:all .2s cubic-bezier(.4,0,.2,1);-moz-appearance:none;appearance:none;-webkit-appearance:none;position:relative;flex-shrink:0}.checkbox-label input[type=checkbox]:hover{border-color:#764ba2;box-shadow:0 0 0 3px #667eea1a}.checkbox-label input[type=checkbox]:checked{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea}.checkbox-label input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:14px;font-weight:700}.checkbox-label span{font-size:13px;font-weight:700;color:#667eea;transition:all .2s}.checkbox-label:hover span{color:#764ba2}.student-console{min-height:100vh;padding:28px max(20px,calc((100vw - 1240px)/2));background:#f1f8ff;color:#294866}.sc-header,.sc-brand,.sc-header-right{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.sc-header{justify-content:space-between;padding-bottom:24px;border-bottom:1px solid #dceaf6}.sc-brand>div{display:grid;gap:4px}.sc-brand small{color:#627b92;font-size:10px}.sc-brand strong{font-size:24px}.sc-header-right{font-size:12px;gap:10px}.sc-btn{padding:10px 14px;background:#e3f0ff;color:#326da7;border-radius:10px}.sc-btn-danger{color:#a55647;background:#fff0ed}.sc-tip{margin:22px 0;font-size:13px;color:#627b92;line-height:1.8}.sc-new-card,.sc-card{background:#fff;padding:24px;border:1px solid #dceaf6;border-radius:20px}.sc-new-copy{display:grid;gap:6px;margin-bottom:20px}.sc-new-copy small,.sc-new-copy span{font-size:12px;color:#627b92}.sc-new-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px}.student-console input{width:100%;min-width:0;padding:12px;border:1px solid #c5dbed;border-radius:10px;background:#fbfdff}.sc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px}.sc-card-top{display:flex;align-items:center;gap:14px}.sc-avatar{display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;border-radius:16px;background:#e3f0ff;font-size:24px;color:#397cb4}.sc-card-id{display:grid;gap:6px;min-width:0;overflow-wrap:anywhere}.sc-card-id small{font-size:11px;color:#627b92}.sc-card-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.sc-card-stats>div{display:grid;gap:8px}.sc-card-stats b{font-size:22px}.sc-card-stats small{color:#627b92;font-size:11px}.sc-card-actions{display:flex;gap:8px;flex-wrap:wrap}.sc-enter-btn{width:100%}.sc-empty{grid-column:1 / -1;padding:60px 20px;text-align:center;color:#627b92}.sc-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#213c5c80;display:grid;place-items:center;padding:20px;z-index:1200}.sc-modal{width:min(100%,480px);max-height:90dvh;overflow:auto;padding:28px;border-radius:20px;background:#fff;display:grid;gap:16px}.sc-modal-actions{display:flex;gap:12px;justify-content:flex-end}.ba-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:#213c5c80;display:grid;place-items:center;padding:20px}.ba-panel{width:min(100%,900px);max-height:94dvh;overflow:auto;background:#f5faff;border-radius:22px;padding:26px}.ba-header,.ba-title,.ba-students-head,.ba-students-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ba-title-mark{font-size:30px}.ba-close{padding:8px 14px;border-radius:10px;background:#e3f0ff;color:#326da7}.ba-tip{margin:18px 0;font-size:13px;line-height:1.8;color:#627b92}.ba-students,.ba-body{padding:20px;background:#fff;border:1px solid #dceaf6;border-radius:16px}.ba-student-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.ba-chip{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #dceaf6;border-radius:12px;font-size:13px}.ba-chip.on{background:#e5f1ff;border-color:#9fc5e9}.ba-chip input{width:auto}.ba-chip-name{overflow-wrap:anywhere}.ba-tabs{display:flex;gap:10px;margin:20px 0}.ba-tabs button{padding:12px 20px;border-radius:12px;background:#e3f0ff;color:#326da7}.ba-tabs button.active{background:#397cb4;color:#fff}.ba-form-grid,.ba-form{display:grid;gap:16px}.ba-textarea{width:100%;min-height:180px;padding:14px;border:1px solid #c5dbed;border-radius:12px;font-family:inherit}.ba-file-row{display:flex;flex-wrap:wrap;gap:10px}.ba-results{display:grid;gap:12px;margin-top:20px}.ba-result-row{display:flex;gap:12px;padding:12px;border-radius:12px;background:#edf8f1}.ba-result-row.fail{background:#fff0ed;color:#a55647}@media (max-width: 1000px){.admin-task-layout{grid-template-columns:minmax(0,1fr)}.sc-grid,.sc-new-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.admin-overlay{padding:8px}.admin-panel{max-height:96dvh;border-radius:18px}.admin-header{padding:16px;gap:10px}.admin-title-mark,.admin-account{display:none}.admin-title-block small{font-size:9px}.admin-close b{display:none}.admin-title-block h2{font-size:18px}.admin-workspace{grid-template-columns:minmax(0,1fr)}.admin-sidebar{padding:12px}.admin-sidebar-intro,.admin-sidebar-note,.admin-tab-copy small,.admin-tab-number{display:none}.admin-main-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.admin-main-tabs button{padding:10px 4px;justify-content:center}.admin-tab-copy strong{font-size:12px}.admin-content{padding:16px 12px}.admin-content-head{flex-wrap:wrap}.admin-card,.exercise-admin-section{padding:16px}.admin-login-shell{padding:24px 18px}.exercise-admin-section-head{flex-wrap:wrap}.sc-grid,.sc-new-form{grid-template-columns:minmax(0,1fr)}.student-console{padding:20px 14px}}.daily-home{--home-ink: #294866;--home-muted: #627b92;--home-accent: #326da7;--home-line: #dceaf6;--home-soft: #edf6ff;--home-gradient: linear-gradient(135deg, #d5efff, #dee7ff);--home-highlight: linear-gradient(135deg, #397cb4, #596fb4);--text-dark: var(--home-ink);--text-gray: var(--home-muted);--text: var(--home-ink);--text-light: var(--home-muted);--shadow-soft: 0 5px 22px rgb(79 132 180 / 9%);color:var(--home-ink);background:linear-gradient(180deg,#edf7ff,#f5faff 55%,#eef5ff)}.daily-home .daily-header{border-color:#e1effb;box-shadow:0 8px 32px #4f84b417}.daily-home .daily-brand,.daily-home .eyebrow,.daily-home .small-leaf{color:var(--home-accent)}.daily-home .daily-brand small,.daily-home .side-label>span,.daily-home .automatic-task small,.daily-home .task-panel-foot{color:var(--home-muted)}.daily-home .daily-welcome h1{background:none;-webkit-text-fill-color:currentColor;color:var(--home-ink)}.daily-home .brand-mark,.daily-home .account-chip i{background:var(--home-highlight);box-shadow:0 5px 16px #4f84b429}.daily-home .account-chip{background:#f0f7ff;color:var(--home-accent);border-color:var(--home-line)}.daily-home .daily-header nav button:hover,.daily-home .empty-note button{background:var(--home-soft);color:var(--home-accent)}.daily-home .logout-button{background:#e3f0fc!important;color:var(--home-accent)!important}.daily-home .logout-button:hover{box-shadow:0 5px 16px #4f84b42e}.daily-home button:focus-visible,.daily-home a:focus-visible{outline-color:#397cb4}.daily-home .daily-date-seal,.daily-home .collection-teaser{background:var(--home-gradient);color:var(--home-ink);box-shadow:0 10px 28px #4f84b426}.daily-home .collection-teaser:hover{box-shadow:0 14px 32px #4f84b438}.daily-home .teaser-heading{color:#46688a}.daily-home .mini-cabinet{border-color:#ffffffb3;box-shadow:0 6px 18px #4f84b41f}.daily-home .mini-cabinet span{color:#527ca8;background:#ffffff85}.daily-home .collection-teaser b{color:var(--home-accent);background:#ffffffa6}.daily-home .collection-teaser>div:last-child{border-color:#ffffffa6}.daily-home .completion-pill{color:var(--home-accent);background:var(--home-soft)}.daily-home .daily-progress{background:#eaf2fa}.daily-home .daily-progress i{background:linear-gradient(90deg,#7bbde8,#8c9fde)}.daily-home .week-arrow{background:#e3f0fc;color:var(--home-accent);box-shadow:0 3px #cfdfef}.daily-home .week-arrow:hover{box-shadow:0 5px 14px #4f84b433}.daily-home .day-cell:hover:not(.selected){background:var(--home-soft)}.daily-home .day-cell.selected{background:var(--home-gradient);border-color:#a9cdec;box-shadow:0 6px 18px #4f84b42e}.daily-home .day-cell.selected .day-week,.daily-home .day-cell.selected .day-num{color:var(--home-ink)}.daily-home .today-dot{background:var(--home-accent);box-shadow:none}.daily-home .task-card,.daily-home .automatic-task{border-color:var(--home-line)}.daily-home .automatic-task{color:var(--home-ink);background:#f5faff}.daily-home .automatic-task>span:last-child{color:var(--home-accent)}.daily-home .automatic-check{border-color:#c5dbed}.daily-home .automatic-task.done .automatic-check{background:#4e82b5;border-color:#4e82b5}.daily-home .task-panel-foot{border-color:var(--home-line)}.daily-home .task-title{color:var(--home-ink);text-shadow:none}.daily-home .task-note,.daily-home .task-hint{color:var(--home-muted)}.daily-home .check:not(.checked){border-color:#c5dbed;background:#f5faff;box-shadow:inset 0 -3px #e4eff8}.daily-home .daily-rewards b{color:var(--home-muted)}.daily-home .daily-rewards b.earned{color:var(--home-accent)}.daily-home .daily-header{margin-bottom:12px}.daily-home .daily-welcome{padding:20px 0;margin-bottom:12px}.learning-launchpad{margin-bottom:32px}.launchpad-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.launchpad-heading h2{font-size:20px;color:var(--home-ink)}.launchpad-heading>span{font-size:13px;color:var(--home-muted)}.daily-home .quick-learning{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.daily-home .learning-shortcut{--module-accent: #226ab2;--module-ink: #244c76;--module-border: #b4d7f5;--module-surface: #eaf5ff;display:grid;grid-template-columns:56px minmax(0,1fr);align-content:space-between;gap:22px 16px;padding:24px;min-height:190px;text-align:left;border:2px solid var(--module-border);border-top:5px solid var(--module-accent);border-radius:22px;background:linear-gradient(135deg,#fff,var(--module-surface));box-shadow:0 6px 18px #4f84b41a}.daily-home .learning-shortcut.exercises{--module-accent: #6257b6;--module-ink: #49417d;--module-border: #cfc9ef;--module-surface: #f1eeff}.daily-home .learning-shortcut.course{--module-accent: #237c86;--module-ink: #285e64;--module-border: #addbdc;--module-surface: #e9f8f8}.daily-home .learning-shortcut:hover:not(:disabled){transform:translateY(-3px);border-color:var(--module-accent);box-shadow:0 12px 26px #4f84b433}.daily-home .learning-shortcut:focus-visible{outline-color:var(--module-accent)}.daily-home .learning-shortcut .shortcut-icon{width:56px;height:56px;color:#fff;background:var(--module-accent);border-radius:17px;box-shadow:none}.daily-home .shortcut-icon:before{display:none}.daily-home .shortcut-icon>svg{width:30px;height:30px}.daily-home .learning-shortcut .shortcut-copy{display:grid;gap:7px}.daily-home .learning-shortcut strong{font-size:26px;line-height:1.3;color:var(--module-ink);letter-spacing:.5px}.shortcut-description{font-size:12px;line-height:1.6;color:var(--module-ink)}.shortcut-footer{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--module-border)}.shortcut-status{font-size:12px;line-height:1.6;color:var(--module-ink)}.shortcut-cta{flex-shrink:0;padding:10px 13px;border-radius:11px;font-size:13px;font-weight:700;color:#fff;background:var(--module-accent);white-space:nowrap}.daily-home .daily-side .collection-teaser{margin-top:0}@media (max-width: 1100px){.daily-home .quick-learning{gap:12px}.daily-home .learning-shortcut{padding:20px 16px;gap:18px 12px;grid-template-columns:48px minmax(0,1fr)}.daily-home .learning-shortcut .shortcut-icon{width:48px;height:48px;border-radius:14px}.daily-home .learning-shortcut strong{font-size:23px}.shortcut-footer{flex-wrap:wrap;gap:10px}}@media (max-width: 620px){.daily-home .daily-welcome{padding:14px 0}.learning-launchpad{margin-bottom:24px}.launchpad-heading h2{font-size:18px}.launchpad-heading>span{display:none}.daily-home .quick-learning{grid-template-columns:minmax(0,1fr);gap:12px}.daily-home .learning-shortcut{min-height:0;padding:16px;gap:12px 14px;border-top-width:2px;border-left:5px solid var(--module-accent);border-radius:18px}.daily-home .learning-shortcut strong{font-size:24px}.daily-home .learning-shortcut .shortcut-copy{gap:4px}.shortcut-footer{padding-top:10px;flex-wrap:nowrap;gap:8px}.shortcut-status{font-size:11px}.shortcut-cta{padding:8px 10px;font-size:12px}}
