:root{--yellow-primary: #FFB800;--yellow-light: #FFF6E5;--yellow-soft: #FFF0D4;--yellow-border: #F0DFC8;--red: #D43A26;--red-dark: #A32C1C;--orange: #FF8A3D;--green: #1A7F37;--blue: #007AFF;--ink: #1D1D1F;--ink-2: #6E6E73;--ink-3: #59595F;--bg-primary: #FFFFFF;--bg-secondary: #F5F5F7;--bg-tertiary: #FAFAFA;--radius: 16px;--radius-sm: 10px;--radius-lg: 20px;--shadow: 0 2px 12px rgba(0,0,0,.08);--shadow-lg: 0 8px 24px rgba(0,0,0,.12)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,PingFang SC,Microsoft YaHei,sans-serif;background:var(--bg-secondary);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--blue);font-weight:500;text-decoration:none}a:hover{text-decoration:underline}.top-banner{background:var(--yellow-primary);color:var(--ink);text-align:center;padding:10px 16px;font-size:13px;font-weight:500}.top-banner a{color:var(--ink);font-weight:600;text-decoration:underline;display:inline-flex;align-items:center;min-height:44px}.top-banner-actions{display:inline-flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.banner-account{min-height:44px;border:1px solid rgba(29,29,31,.35);border-radius:999px;padding:6px 14px;background:#ffffffb3;color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.layout{max-width:1080px;margin:0 auto;padding:0 24px 60px}.preview{background:var(--bg-primary);border:1px solid rgba(0,0,0,.1);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;margin-top:24px}.preview-header{display:flex;align-items:center;gap:12px;padding:16px 24px;border-bottom:1px solid rgba(0,0,0,.06);background:var(--bg-primary)}.shop-logo{font-size:32px}.shop-title-en{font-weight:700;font-size:17px;color:var(--ink);letter-spacing:-.2px}.hero{text-align:center;padding:48px 24px 40px;position:relative;overflow:hidden;background:linear-gradient(180deg,var(--yellow-soft) 0%,var(--bg-primary) 100%)}.pot-scene{display:flex;justify-content:center;align-items:flex-end;gap:24px;margin-bottom:16px}.pot{position:relative}.pot-body{width:150px;height:88px;border-radius:0 0 70px 70px;background:linear-gradient(180deg,var(--red),var(--red-dark));position:relative;overflow:hidden;border-top:8px solid #B0331F;box-shadow:inset 0 -14px 24px #00000040,0 10px 20px #a32c1c40}.pot-body:before{content:"";position:absolute;top:6px;left:10px;right:10px;height:14px;border-radius:50%;background:linear-gradient(90deg,#ff6b3d,#ffb14d 60%,#ffd7a8)}.pot-fire{font-size:20px;margin-top:-2px;animation:flicker .8s ease-in-out infinite alternate}@keyframes flicker{0%{transform:scale(1)}to{transform:scale(1.12)}}.bubble{position:absolute;border-radius:50%;background:#ffdcb4a6;animation:bubble 2.4s ease-in infinite;bottom:16px}@keyframes bubble{0%{transform:translateY(0) scale(.5);opacity:0}30%{opacity:.9}to{transform:translateY(-56px) scale(1.25);opacity:0}}.b1{left:24px;width:10px;height:10px;animation-delay:0s}.b2{left:52px;width:14px;height:14px;animation-delay:.7s}.b3{left:84px;width:9px;height:9px;animation-delay:1.3s}.b4{left:110px;width:12px;height:12px;animation-delay:.4s}.b5{left:66px;width:8px;height:8px;animation-delay:1.8s}.pepper{position:absolute;font-size:20px;animation:swim 4s ease-in-out infinite}.p1{left:30px;bottom:24px}.p2{left:72px;bottom:16px;animation-delay:1.2s}.p3{left:104px;bottom:28px;animation-delay:2.1s}@keyframes swim{0%,to{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-9px) rotate(10deg)}}.boss{display:flex;flex-direction:column;align-items:center;gap:8px}.boss-face{font-size:48px;animation:bossBounce 2.4s ease-in-out infinite}@keyframes bossBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.boss-bubble{background:var(--bg-primary);border:1px solid rgba(0,0,0,.1);border-radius:var(--radius);padding:8px 16px;font-size:13px;color:var(--ink-2);position:relative;max-width:240px;box-shadow:var(--shadow)}.boss-bubble:before{content:"";position:absolute;left:-6px;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:#0000001a}.brand-title{font-size:44px;font-weight:800;margin-top:20px;letter-spacing:-1px;color:var(--ink);line-height:1.2}.brand-title .accent{color:var(--yellow-primary)}.hero-sub{color:var(--ink-2);font-size:15px;margin-top:8px;font-weight:500}.cat-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:24px}.cat-chip{padding:8px 16px;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;border:1.5px solid rgba(0,0,0,.1);transition:all .2s ease;color:var(--ink);background:var(--bg-primary);min-height:44px}.cat-chip:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--yellow-primary)}.cat-chip.active{background:var(--yellow-primary);color:var(--ink);border-color:var(--yellow-primary)}.cat-all{background:var(--bg-primary)}.cat-exercises{background:var(--red);color:#fff;border-color:var(--red)}.cat-readaloud{background:var(--green);color:#fff;border-color:var(--green)}.cat-stories{background:var(--orange);color:var(--ink);border-color:var(--orange)}.cat-tools{background:#8b5fbf;color:#fff;border-color:#8b5fbf}.cat-quizpaper{background:var(--blue);color:#fff;border-color:var(--blue)}.section{padding:32px 24px 16px}.section-title{font-size:24px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:10px;letter-spacing:-.5px}.section-title:before{content:"";width:4px;height:24px;border-radius:2px;background:var(--yellow-primary)}.section-sub{color:var(--ink-2);font-size:14px;margin:8px 0 20px;white-space:pre-line}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media(max-width:768px){.grid{grid-template-columns:1fr}}.dish-card{display:flex;gap:16px;background:var(--bg-primary);border:1px solid rgba(0,0,0,.08);border-radius:var(--radius);padding:20px;transition:all .2s ease;position:relative;overflow:hidden}.dish-card[hidden]{display:none}.dish-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--yellow-primary)}.dish-icon{flex:0 0 64px;width:64px;height:64px;border-radius:var(--radius-sm);background:var(--yellow-soft);border:1px solid var(--yellow-border);display:flex;align-items:center;justify-content:center}.dish-icon svg{width:42px;height:42px}.dish-body{flex:1}.dish-name{font-weight:600;font-size:17px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--ink)}.dish-cat{font-size:12px;padding:2px 8px;border-radius:6px;color:#fff;font-weight:600}.dish-desc{color:var(--ink-2);font-size:15px;margin:6px 0 12px;line-height:1.5}.order-btn{margin-top:4px}.btn{display:inline-block;background:var(--yellow-primary);color:var(--ink);border:none;padding:10px 20px;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;font-weight:600;transition:all .2s ease;font-family:inherit;min-height:44px}.btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ffb8004d}.btn.ghost{background:var(--bg-primary);color:var(--ink);border:1.5px solid rgba(0,0,0,.15)}.btn.ghost:hover{border-color:var(--yellow-primary);background:var(--yellow-soft)}.btn.small{padding:6px 14px;font-size:12px}.btn-audio{background:var(--green);color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn.full{width:100%}.modal-mask{position:fixed;inset:0;background:#0006;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:50;padding:20px}.modal-mask[hidden]{display:none}.modal{background:var(--bg-primary);border-radius:var(--radius-lg);width:min(760px,96vw);max-height:92vh;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;box-shadow:var(--shadow-lg)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid rgba(0,0,0,.06);background:var(--bg-primary)}.modal-title{font-weight:700;font-size:18px;color:var(--ink);display:flex;align-items:center;gap:10px}.modal-title svg{width:28px;height:28px}.modal-tools{display:flex;gap:8px;align-items:center}.modal-desc{color:var(--ink-2);font-size:13px;padding:12px 24px 0}.modal-body-pad{padding:16px 24px 24px;overflow:auto}.mode-badge{font-size:11px;font-weight:600;padding:4px 10px;border-radius:8px;color:var(--ink);background:var(--bg-secondary)}.mode-badge.ai{background:var(--yellow-primary);color:var(--ink)}.order-form{padding:16px 24px 8px}.field{display:block;margin-bottom:16px}.field>span{display:block;font-size:13px;font-weight:600;color:var(--ink);margin-bottom:6px}.field input,.field textarea,.field select{width:100%;border:1.5px solid rgba(0,0,0,.12);border-radius:var(--radius-sm);padding:12px 14px;font-size:14px;font-family:inherit;background:var(--bg-primary);color:var(--ink);transition:all .2s ease}.field textarea{min-height:100px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--yellow-primary);box-shadow:0 0 0 3px #ffb80026}.form-actions{display:flex;gap:12px;align-items:center;padding-bottom:16px}.form-hint{font-size:12px;color:var(--ink-3)}.cooking{text-align:center;padding:40px 20px}.cook-pot{font-size:56px;display:inline-block;animation:cook 1s ease-in-out infinite}@keyframes cook{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg) translateY(-6px)}}.cook-text{color:var(--ink-2);font-weight:600;margin-top:16px}.cook-bar{width:min(320px,80%);height:4px;background:var(--bg-secondary);border-radius:2px;margin:16px auto 0;overflow:hidden}.cook-bar-inner{height:100%;width:40%;border-radius:2px;background:var(--yellow-primary);animation:slurp 1.1s ease-in-out infinite}@keyframes slurp{0%{margin-left:-40%}to{margin-left:100%}}.result{border-top:1px solid rgba(0,0,0,.06);background:var(--bg-secondary);padding:16px 24px 24px}.result-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.result-mode{font-weight:600;color:var(--ink);font-size:14px}.result-actions{display:flex;gap:8px;flex-wrap:wrap}.result-body{max-height:56vh;overflow:auto;background:var(--bg-primary);border-radius:var(--radius);padding:20px;border:1px solid rgba(0,0,0,.08)}.b-h3{color:var(--ink);margin:20px 0 10px;font-size:16px;font-weight:600;border-left:3px solid var(--yellow-primary);padding-left:10px}.b-p{margin:10px 0;white-space:pre-wrap;color:var(--ink)}.b-note{background:var(--yellow-soft);border-left:3px solid var(--yellow-primary);padding:10px 14px;border-radius:6px;color:var(--ink-2);font-size:13px;margin:12px 0;white-space:pre-wrap}.b-list{margin:10px 0 10px 20px}.b-list li{margin:6px 0;color:var(--ink)}.b-qa,.b-choice{background:var(--bg-secondary);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-sm);padding:12px 16px;margin:12px 0}.qa-q{font-weight:600;color:var(--ink)}.qa-a{color:var(--ink-2);font-size:13px;margin-top:8px;white-space:pre-wrap}.opts{margin-top:8px}.opt{margin:4px 0 4px 12px;color:var(--ink)}.tf-item{border-bottom:1px solid rgba(0,0,0,.06);padding:10px 0}.tf-mark{color:var(--red);font-weight:600;margin-left:8px}.tf-ex{display:block;color:var(--ink-2);font-size:12px;margin-top:4px}.b-card{display:inline-block;border:1.5px solid var(--yellow-primary);border-radius:var(--radius);padding:16px 20px;margin:8px;text-align:center;min-width:170px;background:var(--bg-primary);vertical-align:top}.card-front{font-size:18px;font-weight:700;color:var(--ink)}.card-back{font-size:12px;color:var(--ink-2);margin-top:8px;max-width:230px}.b-table{border-collapse:collapse;width:100%;margin:12px 0}.b-table th{background:var(--yellow-soft);color:var(--ink);font-weight:600}.b-table th,.b-table td{border:1px solid rgba(0,0,0,.08);padding:10px 12px;font-size:13px;text-align:left}.b-table td{cursor:pointer}.b-table td:hover{background:var(--yellow-soft)}.b-fill .b-gap{display:inline-block;min-width:72px;border-bottom:2px solid var(--red-primary, #d43a26);margin:0 4px;vertical-align:baseline}.b-quote{border-left:3px solid var(--yellow-primary);margin:14px 0;padding:10px 16px;background:var(--bg-secondary);font-style:italic;border-radius:0 6px 6px 0}.b-quote footer{font-style:normal;color:var(--ink-3);font-size:12px;margin-top:6px}.b-script .line{margin:8px 0}.b-script .role{color:var(--ink);font-weight:600}.script-title{font-weight:700;margin-bottom:8px;color:var(--ink)}.b-audio{margin:12px 0;display:flex;align-items:center;gap:12px}.audio-status{font-size:12px;color:var(--ink-3)}.b-image{margin:14px 0;text-align:center}.b-image img{max-width:100%;border-radius:12px;box-shadow:0 2px 12px #0000001a}.settings-modal{width:min(640px,94vw)}.settings-tip{font-size:13px;color:var(--ink-2);padding:12px 20px 0;line-height:1.6}.settings-modal .field{margin:12px 20px}.settings-section .model-picker-field{margin:14px 0 8px}.model-picker-field small{color:var(--ink-3);line-height:1.5}.model-picker-field[hidden]{display:none}.provider-status-list{display:grid;gap:7px;margin-top:14px}.provider-status{border-radius:8px;background:#ffffffb3;padding:8px 10px;color:var(--ink-2);font-size:12px}.provider-status.ready{color:var(--green)}.provider-status.offline{color:var(--ink-3)}.provider-status.unknown{color:var(--ink-2)}#api-status[data-state=ai_available]{color:var(--green);font-weight:600}#api-status[data-state=template_only]{color:var(--ink-2);font-weight:600}#api-status[data-state=checking]{color:var(--orange);font-weight:600;animation:status-pulse 2.4s ease-in-out infinite}#api-status[data-state=unknown]{color:var(--red-dark);font-weight:600}@keyframes status-pulse{50%{opacity:.45}}.form-error{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border:1px solid rgba(212,58,38,.25);background:#fff3f0;color:var(--red-dark);border-radius:var(--radius-sm);padding:10px 14px;font-size:13px;margin:12px 0}.form-error[hidden]{display:none}.form-error-actions{display:inline-flex;gap:8px;flex-wrap:wrap}.cook-elapsed{margin-top:8px;font-size:13px;color:var(--ink-3);font-variant-numeric:tabular-nums}.cook-actions{margin-top:14px}.cook-hint{margin:10px auto 0;max-width:420px;font-size:12px;line-height:1.6;color:var(--ink-3)}@media(prefers-reduced-motion:reduce){#api-status[data-state=checking]{animation:none}}.shop-status-bar{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin:4px auto 10px;min-height:44px}.shop-status-text{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}.shop-status-bar[data-state=ai_available] .shop-status-text{color:var(--green)}.shop-status-bar[data-state=template_only] .shop-status-text{color:var(--ink-2)}.shop-status-bar[data-state=checking] .shop-status-text{color:var(--orange);animation:status-pulse 2.4s ease-in-out infinite}.shop-status-bar[data-state=unknown] .shop-status-text{color:var(--red-dark)}.shop-status-recheck{min-height:44px;padding:8px 18px;border-radius:var(--radius-sm);border:1.5px solid rgba(212,58,38,.35);background:#fff;color:var(--red-dark);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.shop-status-recheck:hover{border-color:var(--red)}@media(prefers-reduced-motion:reduce){.shop-status-bar[data-state=checking] .shop-status-text{animation:none}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.settings-foot{display:flex;align-items:center;gap:12px;padding:4px 20px 18px}.settings-foot a{display:inline-flex;align-items:center;min-height:44px}.auth-modal{width:min(460px,96vw)}.admin-modal{width:min(1080px,98vw)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:16px 24px 0}.auth-tabs button{min-height:44px;border:1px solid var(--yellow-border);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.auth-tabs button[aria-pressed=true]{background:var(--yellow-primary);border-color:var(--yellow-primary)}.auth-form{display:grid;gap:14px;padding:20px 24px 24px}.auth-form label,.admin-section label{display:grid;gap:6px;color:var(--ink);font-size:13px;font-weight:650}.auth-form input,.admin-section input,.admin-section select{width:100%;min-height:44px;border:1.5px solid rgba(0,0,0,.16);border-radius:var(--radius-sm);padding:10px 12px;background:#fff;color:var(--ink);font:inherit}.form-message{margin:14px 24px 0;padding:10px 12px;border-radius:var(--radius-sm);font-size:14px}.form-message.error{background:#fff0ee;color:#8f2318}.form-message.success{background:#edf8ef;color:#17652f}.registration-notice,.settings-tip{color:var(--ink-3);font-size:13px}.turnstile-container{min-height:66px}.account-summary{text-align:center}.account-summary p{color:var(--ink-3)}.quota-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}.quota-grid span{padding:10px 6px;border-radius:var(--radius-sm);background:var(--yellow-light);color:var(--ink)}.auth-actions{display:grid;gap:10px}.admin-content{padding:4px 24px 28px}.admin-section{margin-top:20px;padding:18px;border:1px solid rgba(0,0,0,.1);border-radius:var(--radius);background:var(--bg-tertiary)}.admin-section h3{margin-bottom:12px}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.admin-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-section .switch-row{display:flex;align-items:center;min-height:44px;gap:10px;padding:8px 10px;border:1px solid rgba(0,0,0,.1);border-radius:var(--radius-sm);background:#fff}.admin-section .switch-row input{width:22px;min-height:22px}.inline-form{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px}.revealed-code{margin-top:14px;padding:12px;border:1px solid #d18b00;border-radius:var(--radius-sm);background:#fff8dc;overflow-wrap:anywhere}.table-wrap{overflow-x:auto;margin-top:14px}.table-wrap table{width:100%;border-collapse:collapse;min-width:680px}.table-wrap th,.table-wrap td{padding:10px;border-bottom:1px solid rgba(0,0,0,.1);text-align:left;vertical-align:middle;font-size:13px}.table-wrap th{color:var(--ink-3)}.limit-inputs{display:flex;gap:6px}.limit-inputs input{width:74px}.checkbox-line{display:flex!important;align-items:center;gap:10px;min-height:44px;font-weight:500!important}.checkbox-line input{width:22px;min-height:22px}#s-status{font-size:12px;color:var(--green);font-weight:600}.settings-section{margin:16px 20px 0;padding:16px;border-radius:12px;border:1px solid rgba(0,0,0,.08)}.settings-section.fe-section{background:#fff8ee;border-color:#f0dfc8}.settings-section.be-section{background:#f5f8f5;border-color:#d0e8d0}.settings-section-title{font-size:15px;font-weight:700;color:var(--ink);margin-bottom:4px}.settings-section-desc{font-size:12px;color:var(--ink-3);margin-bottom:10px}.settings-section .field{margin:10px 0}footer.site-foot{text-align:center;color:var(--ink-3);font-size:12px;margin-top:24px}.preset-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.preset-btn{background:#fff3e2;border:1px solid #f0c8a8;border-radius:8px;padding:6px 12px;font-size:12px;cursor:pointer;color:#8a5a3b;transition:all .15s}.preset-btn:hover{background:#ff8a3d;color:#fff;border-color:#ff8a3d}.security-note{background:#f0f9f0;border-left:3px solid #4caf7d;padding:8px 12px;border-radius:6px;font-size:12px;color:#2e7d54;margin:12px 0}.cors-note{background:#fff8e1;border-left:3px solid #ffb14d;padding:8px 12px;border-radius:6px;font-size:12px;color:#8a5a3b;margin:8px 0}#tool-page{max-width:1080px;margin:0 auto;padding:0 24px 60px}.tool-page-header{display:flex;align-items:center;gap:16px;padding:16px 24px;background:var(--bg-primary);border:1px solid rgba(0,0,0,.1);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow);margin-top:24px}.tool-page-title{flex:1;display:flex;align-items:center;gap:12px;font-weight:700;font-size:20px;color:var(--ink)}.tool-page-body{background:var(--bg-primary);border:1px solid rgba(0,0,0,.1);border-top:none;border-radius:0 0 var(--radius-lg) var(--radius-lg);box-shadow:var(--shadow);padding:24px}.tool-page-desc{color:var(--ink-2);font-size:15px;margin-bottom:20px;line-height:1.6}.answers-hidden .answer,.answer-block[hidden]{display:none!important}.answer{color:#765238;background:#fff9ef;border-left:3px solid #f0b267;margin-top:8px;padding:8px 10px;border-radius:6px}.tf-item{display:grid;gap:6px;margin:10px 0}.tf-mark{display:inline-block;width:fit-content}#api-status[data-state=ready]{color:#1f7a4d}#api-status[data-state=offline]{color:#8a5a3b}#api-status[data-state=error]{color:#a32929}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #1769aa;outline-offset:2px}body.modal-open{overflow:hidden}[hidden]{display:none!important}.text-import-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 18px;padding:10px 12px;background:var(--bg-secondary, #fdf7ee);border:1px dashed rgba(212,58,38,.35);border-radius:12px}.text-import-controls .btn-import{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,#ff8a3d,#d43a26);color:#fff;border:none;border-radius:999px;padding:7px 14px;font-size:12.5px;cursor:pointer;line-height:1.2}.text-import-controls .btn-import:hover{filter:brightness(1.06)}.text-import-controls .btn-import.secondary{background:transparent;color:#d43a26;border:1px solid rgba(212,58,38,.45)}.text-import-controls .btn-import:disabled{opacity:.55;cursor:default}.text-import-controls .text-import-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.text-import-controls small{flex-basis:100%;color:var(--ink-3, #9a7b6a);line-height:1.5}.turnstile-container{width:100%;min-width:0;overflow:visible}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:768px){.layout,#tool-page{padding-left:12px;padding-right:12px}.tool-page-header,.tool-page-body{padding-left:14px;padding-right:14px}.field input,.field textarea,.field select{font-size:16px}.top-banner{display:grid;gap:2px}.admin-grid,.admin-grid.three,.inline-form{grid-template-columns:1fr}.auth-form input,.admin-section input,.admin-section select{font-size:16px}.quota-grid{grid-template-columns:1fr}}@media print{.top-actions,.result-actions,.tool-page-header .btn,.b-audio,footer.site-foot{display:none!important}}.btn{border-radius:999px;padding:12px 26px;transition:all .25s cubic-bezier(.25,.1,.25,1)}.btn:hover{transform:translateY(-1px) scale(1.02);box-shadow:0 6px 20px #ffb80059}.btn:active{transform:scale(.97);box-shadow:none}.btn.ghost{border-width:1px;border-radius:999px}.btn.small{padding:8px 18px}.banner-account{border-radius:999px;padding:8px 18px}.cat-chip{border-radius:999px;border-width:1px;transition:all .25s cubic-bezier(.25,.1,.25,1)}.dish-card{border:none;border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000000d,0 8px 24px #0000000a;transition:transform .3s cubic-bezier(.25,.1,.25,1),box-shadow .3s cubic-bezier(.25,.1,.25,1)}.dish-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px #0000000f,0 16px 40px #00000014}.dish-icon{border-radius:14px}.field input,.field textarea,.field select{border:1px solid rgba(0,0,0,.12);border-radius:12px;background:var(--bg-primary);transition:border-color .2s ease,box-shadow .2s ease}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--yellow-primary);box-shadow:0 0 0 4px #ffb80029;outline:none}.modal{border-radius:24px;box-shadow:0 24px 80px #00000047}.modal-mask{backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);background:#00000059}.text-import-controls{border:1px dashed rgba(0,0,0,.18);border-radius:14px;background:var(--bg-primary)}.quiz-body{max-width:900px;margin:24px auto;padding:0 20px 60px}.quiz-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:18px}.quiz-hint{color:var(--ink-2);font-size:13px}.quiz-paper-sheet{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:40px 44px}.quiz-paper-title{text-align:center;font-size:24px;font-weight:700;letter-spacing:4px;margin-bottom:6px}.quiz-section-title{font-size:16px;font-weight:700;color:var(--red-dark, var(--red));margin:22px 0 8px}.quiz-section{margin-bottom:10px}.quiz-block{position:relative;padding:4px 0 4px 96px}.quiz-block-actions{position:absolute;left:0;top:4px;display:flex;flex-direction:column;gap:4px;opacity:0;transition:opacity .15s ease}.quiz-block:hover .quiz-block-actions{opacity:1}.quiz-block .btn-import{padding:4px 10px;font-size:11px}.quiz-empty{text-align:center;color:var(--ink-2);padding:60px 20px}.quiz-edit{background:var(--yellow-light);border:1px solid var(--yellow-border);border-radius:12px;padding:12px;display:grid;gap:8px}.quiz-edit label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2)}.quiz-edit input,.quiz-edit select,.quiz-edit textarea{flex:1;border:1px solid rgba(0,0,0,.15);border-radius:8px;padding:6px 10px;font-family:inherit;font-size:14px}.quiz-edit-actions{display:flex;gap:8px}.quiz-edit-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.quiz-edit-options label{display:flex}.quiz-edit-tf-item{display:grid;gap:6px;border-bottom:1px dashed var(--yellow-border);padding-bottom:8px}.quiz-paper-sheet .b-choice,.quiz-paper-sheet .b-tf,.quiz-paper-sheet .b-fill,.quiz-paper-sheet .b-qa{background:none;border:none;padding:4px 0;margin:4px 0;break-inside:avoid}.quiz-paper-sheet .opts{display:flex;flex-wrap:wrap;gap:2px 22px}.quiz-paper-sheet .qa-a,.quiz-paper-sheet .tf-ex{font-size:12.5px}.quiz-paper-sheet .b-table{font-size:13px}.quiz-paper-sheet .b-note{background:none;border:none;padding:2px 0;font-size:12.5px}.quiz-paper-sheet .b-image{display:block;break-inside:avoid}.quiz-paper-sheet .b-image img{max-height:260px;width:auto;max-width:100%;object-fit:contain}.quiz-entry-label{font-size:12px;color:var(--ink-2);margin:12px 0 4px;overflow-wrap:anywhere}.quiz-paper-sheet .b-qa .qa-q:after{content:"";display:block;height:96px;margin:10px 0;background:repeating-linear-gradient(to bottom,transparent 0,transparent 23px,#ccc 23px,#ccc 24px)}.quiz-block:focus-within .quiz-block-actions{opacity:1}@media(hover:none){.quiz-block-actions{opacity:1}}.paper-generator{margin:28px auto;padding:24px;text-align:left;background:#fff;border:1px solid var(--yellow-border);border-radius:var(--radius)}.paper-generator h2{font-size:22px}.paper-generator-intro{color:var(--ink-2);margin:6px 0 18px;font-size:14px}.paper-generator fieldset{border:0;min-width:0}.paper-generator-settings{display:grid;grid-template-columns:minmax(0,3fr) minmax(130px,1fr);gap:16px}.paper-generator-counts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.paper-generator .field{min-width:0}.paper-generator input,.paper-generator select,.paper-generator textarea{width:100%;min-height:44px}.paper-generator-summary{font-size:14px;font-weight:600;margin:8px 0}.paper-generator-hint{font-size:12px;color:var(--ink-3);margin:8px 0 16px}.paper-generator-actions{display:flex;gap:10px;flex-wrap:wrap}.paper-generator-status{font-size:14px;margin-top:12px;overflow-wrap:anywhere}.paper-generator :disabled{opacity:.65;cursor:wait}@media(max-width:600px){.paper-generator{padding:16px}.paper-generator-settings{grid-template-columns:minmax(0,1fr);gap:0}.paper-generator-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.paper-generator h2{font-size:20px}}@media screen and (max-width:600px){.quiz-body{padding:0 12px 36px}.quiz-paper-sheet{padding:24px 18px}.quiz-block{padding:8px 0}.quiz-block-actions{position:static;flex-direction:row;opacity:1;margin-bottom:8px}.quiz-edit-options{grid-template-columns:minmax(0,1fr)}.quiz-edit label{flex-wrap:wrap;min-width:0}.quiz-edit input,.quiz-edit textarea{min-width:0;width:100%}}@page{size:A4;margin:12mm 14mm}@media print{body{background:#fff}.top-banner,.layout,#tool-page,.modal-mask,.quiz-actions,.quiz-block-actions,.no-print{display:none!important}#quiz-paper-page:not([hidden]){display:block!important}.quiz-body{margin:0;padding:0;max-width:none}.quiz-paper-sheet{box-shadow:none;border-radius:0;padding:0;font-size:11.5pt;line-height:1.55}.quiz-paper-title{font-size:18pt;letter-spacing:6px}.quiz-section-title{font-size:12.5pt;page-break-after:avoid}.quiz-block{break-inside:avoid;padding-left:0}.quiz-block .b-choice,.quiz-block .b-tf,.quiz-block .b-fill,.quiz-block .b-qa{break-inside:avoid}}@property --quiz-glow-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}#btn-quiz{position:relative}#btn-quiz:before{content:"";position:absolute;inset:-3px;padding:3px;pointer-events:none;background:conic-gradient(from var(--quiz-glow-angle),transparent 0deg,transparent 258deg,rgba(255,138,61,.65) 300deg,rgba(255,184,0,.95) 330deg,#ffffff 347deg,rgba(255,184,0,.95) 357deg,transparent 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;animation:quiz-glow-orbit 2.6s linear infinite}#btn-quiz:before{border-radius:999px}#btn-quiz:disabled:before{animation-play-state:paused}@keyframes quiz-glow-orbit{to{--quiz-glow-angle: 360deg}}@media(prefers-reduced-motion:reduce){#btn-quiz:before{animation:none}}.field.mode-field{display:block}.field.mode-field .mode-hint{font-style:normal;font-weight:400;font-size:12px;color:var(--ink-3, #9a7b6a)}.segmented{display:inline-flex;background:#00000012;border-radius:999px;padding:3px;gap:2px;margin-top:6px}.segmented .seg{border:none;background:transparent;border-radius:999px;padding:8px 20px;font-size:14px;font-weight:600;font-family:inherit;color:var(--ink-2, #6e6e73);cursor:pointer;min-height:38px;transition:all .2s cubic-bezier(.25,.1,.25,1)}.segmented .seg:hover{color:var(--ink)}.segmented .seg.active{background:var(--bg-primary, #fff);color:var(--red, #d43a26);box-shadow:0 1px 4px #0000002e,0 0 0 1px #d43a2640}.b-match{border:1px solid var(--yellow-border, #f0dfc8);border-radius:12px;padding:12px 16px;margin:12px 0;background:var(--bg-primary, #fff)}.b-match .match-hint{font-size:13px;color:#8a5a3b;margin-bottom:10px}.b-match .match-cols{display:flex;gap:48px}.b-match .match-col{flex:1;margin-left:22px}.b-match .match-col li{padding:10px 0;font-size:19px;font-weight:600}.b-match .match-right-col{list-style-type:upper-alpha}.b-match .match-right-col li{font-size:27px;line-height:1.4}.b-match .match-answers{font-size:14px;color:#8a5a3b}.turnstile-failed{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:13px;color:#8a5a3b}.quick-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:16px 0}
