:root{--bg:#f5f6f2;--paper:#fff;--ink:#20392f;--muted:#77847b;--line:#e2e7df;--accent:#176b55;--soft:#eaf2e8;--lime:#d9efb5;--orange:#dd784a;--radius:20px;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible{outline:3px solid #98bda9;outline-offset:4px}button{border:0}input,textarea,select{width:100%;border:1px solid #dce3d9;border-radius:10px;padding:12px 13px;background:#fff;color:#273e32;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #176b5514}textarea{resize:vertical;min-height:90px;line-height:1.7}label{display:block;font-size:13px;font-weight:600;line-height:1.8}label input,label select,label textarea{margin-top:7px;font-size:14px;font-weight:400}small{font-size:12px}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em}h1{font-size:32px;font-weight:650}h2{font-size:23px;font-weight:650}h3{font-size:17px;font-weight:650}p{line-height:1.8}.muted{color:var(--muted)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.icon{width:19px;height:19px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:11px;padding:11px 17px;background:var(--paper);color:var(--ink);font-size:13px;font-weight:600;white-space:nowrap;transition:background .15s,transform .15s}.btn:hover{background:var(--soft)}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn.primary:hover{filter:brightness(1.08)}.btn.orange{background:#f8e9de;color:#a65027;border-color:#f1d6c5}.btn.danger{color:#ad3e3e;background:#fbedeb;border-color:#f6d9d4}.btn.ghost{background:transparent;border-color:transparent}.btn.sm{padding:8px 11px;font-size:12px}.btn.large{padding:16px 24px;font-size:15px}.btn.square{padding:10px}.pill{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;background:var(--soft);color:var(--accent);border-radius:6px;font-size:11px;font-weight:600;line-height:1.2}.pill.orange{background:#f9eadd;color:#a96632}.pill.neutral{background:#f0f2ee;color:#7c847d}.pill.red{background:#fbedeb;color:#b34e46}.dot{height:6px;width:6px;background:#66a57a;border-radius:100%;display:inline-block}.flex{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:20px}.grow{flex:1;min-width:0}.divider{height:1px;background:var(--line);margin:24px 0}.empty{text-align:center;padding:70px 24px;color:var(--muted);border:1px dashed var(--line);border-radius:16px}.empty h3{color:var(--ink);margin:14px 0 8px}.empty p{font-size:13px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:26px}.brand{display:flex;align-items:center;gap:9px;font-weight:700;font-size:19px;letter-spacing:-.05em}.brand-symbol{display:inline-grid;place-items:center;width:34px;height:34px;background:#176b55;border-radius:11px;color:#ddf4b3;font-size:26px;font-weight:400}.brand small{display:block;font-size:9px;letter-spacing:.11em;color:var(--muted);font-weight:500;margin-top:2px}.avatar{display:grid;place-items:center;background:#e7ebdf;width:33px;height:33px;border-radius:50%;font-size:13px;color:#4c654f}.loading{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.loading p{font-size:13px;color:var(--muted)}
.shell{display:grid;grid-template-columns:218px minmax(0,1fr);min-height:100vh}.sidebar{background:#fcfcf9;border-right:1px solid var(--line);padding:31px 22px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.sidebar .brand{padding-left:6px;margin-bottom:43px}.nav-label{font-size:10px;letter-spacing:.14em;color:#a0a89e;margin:0 13px 12px}.nav-item{display:flex;gap:12px;align-items:center;padding:13px 15px;font-size:13px;color:#788379;margin:4px 0;border-radius:10px}.nav-item:hover{background:#f0f3eb}.nav-item.active{color:#225c43;background:#e7eddf;font-weight:600}.nav-item .icon{width:17px;height:17px}.sidebar-foot{margin-top:auto}.sidebar-note{border:1px solid #e0e6d7;background:#f1f4e8;border-radius:12px;padding:15px;margin-bottom:18px}.sidebar-note strong{font-size:12px}.sidebar-note p{font-size:11px;color:#858e78;margin:7px 0 12px}.sidebar-note .btn{background:#fff;padding:7px 10px;width:100%;font-size:11px}.user-chip{display:flex;align-items:center;gap:9px;padding:12px 5px 0;border-top:1px solid var(--line)}.user-chip strong{font-size:12px}.user-chip small{font-size:10px;color:var(--muted)}.logout{margin-left:auto;background:transparent;color:#94a08f;padding:6px}.main-header{height:78px;padding:0 42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fafbf7}.main-header>span{font-size:12px;color:#8a9688}.header-status{font-size:11px;color:#8b9586;gap:7px}.workspace{max-width:1400px;margin:0 auto;padding:37px 42px 50px}.page-title{margin-bottom:26px}.page-title h1{margin:9px 0;font-size:29px}.page-title p{font-size:13px;color:var(--muted);margin:0}.welcome-card{position:relative;overflow:hidden;display:flex;justify-content:space-between;min-height:190px;border-radius:19px;background:#e9efdf;padding:30px 34px;margin-bottom:24px;border:1px solid #dce6cc}.welcome-card h2{font-size:28px;margin:10px 0 12px;font-weight:600}.welcome-card p{font-size:12px;color:#718365;max-width:400px;margin-bottom:0}.welcome-label{font-size:10px;letter-spacing:.2em;color:#6e8b57}.welcome-art{display:flex;align-items:center;justify-content:center;width:210px;position:relative;flex-shrink:0}.art-ring{width:118px;height:118px;border:1px solid #b8cda1;border-radius:50%;display:grid;place-items:center;transform:rotate(-12deg);box-shadow:0 0 0 22px #dae5c76b,0 0 0 44px #dae5c72b}.art-ring span{display:grid;place-items:center;width:76px;height:76px;background:#f7f9e9;border-radius:23px;font-size:45px;color:#326141;box-shadow:0 8px 22px #73905515}.art-tag{position:absolute;right:4px;bottom:25px;background:#fffaf0;border:1px solid #e6debd;padding:8px 13px;border-radius:7px;font-size:10px;transform:rotate(7deg);color:#907f49}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:35px}.stat{background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px 20px;display:flex;align-items:center;gap:14px}.stat-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#f0f3e9;color:#6e8759}.stat:nth-child(2) .stat-icon{background:#fff0e4;color:#be8755}.stat:nth-child(3) .stat-icon{background:#eceff8;color:#7d8eac}.stat strong{font-size:25px;letter-spacing:-.05em;font-weight:600}.stat span{display:block;font-size:11px;color:#8a9388;margin-top:3px}.section-toolbar{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px;gap:15px}.section-toolbar h2{font-size:19px;margin:0}.section-toolbar h2 small{font-size:12px;margin-left:8px;font-weight:400;color:var(--muted)}.tabs{display:flex;gap:3px}.tab{font-size:12px;color:#8b9688;padding:8px 12px;background:transparent;border-radius:7px}.tab.active{background:#e9ede2;color:#3f613a;font-weight:600}.search{position:relative;width:220px}.search input{font-size:12px;padding:10px 12px 10px 34px;background:transparent;border-color:#dfe4d9;border-radius:8px}.search .icon{position:absolute;left:11px;top:11px;width:15px;height:15px;color:#9aa493}.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.activity-card{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;transition:transform .2s,box-shadow .2s}.activity-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #213e2710}.activity-cover{height:150px;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;background:#eaf0e0}.activity-cover:before,.activity-cover:after{content:"";position:absolute;width:160px;height:160px;border:1px solid #5c835526;border-radius:50%;left:-75px;bottom:-90px}.activity-cover:after{left:auto;right:-100px;top:-75px;width:240px;height:240px;border-width:20px;border-color:#90ac6b13}.activity-cover .cover-text{font-weight:650;font-size:23px;line-height:1.65;max-width:80%;text-align:center;letter-spacing:.06em;position:relative;z-index:1}.cover-sub{font-size:10px;letter-spacing:.2em;margin-top:6px;opacity:.55}.activity-cover .pill{position:absolute;top:12px;left:12px;background:#ffffffb3;font-size:9px;color:#6c805c;z-index:2}.activity-cover.ink{background:#f3eee3;color:#4e4f42}.activity-cover.ink .cover-text{font-family:"Songti SC",SimSun,serif;font-size:27px;font-weight:500;letter-spacing:.15em}.activity-cover.ink:before{border-radius:35%;border:1px solid #a49a7f32;width:120px;height:120px;transform:rotate(40deg);bottom:-30px;left:-55px}.activity-cover.ink:after{border-radius:45%;width:200px;height:200px;border:24px solid #b6ad961a;right:-75px;top:-110px}.activity-cover.ink .cover-sub{color:#8f7354}.activity-cover.neon{background:#152e45;color:#c3f6db;background-image:linear-gradient(#c3f6db09 1px,transparent 1px),linear-gradient(90deg,#c3f6db09 1px,transparent 1px);background-size:22px 22px}.activity-cover.neon .cover-text{font-weight:700;color:#d1fcdf;font-family:monospace;letter-spacing:.1em}.activity-cover.neon:before{border-color:#68ecc02e}.activity-cover.neon .pill{background:#c4ffdd21;color:#c4ffdd}.activity-card-body{padding:19px 19px 15px}.activity-card h3{margin-bottom:7px;font-size:15px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.activity-desc{font-size:11px;color:#8b9486;height:36px;margin-bottom:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.65}.activity-meta{display:flex;gap:13px;font-size:10px;color:#96a08f}.activity-meta .icon{width:12px;height:12px;margin-right:3px}.activity-actions{display:flex;align-items:center;justify-content:space-between;gap:6px;padding-top:15px;margin-top:15px;border-top:1px solid #eef1e9}.activity-actions .btn{font-size:11px;padding:8px 11px}.create-card{min-height:336px;border:1px dashed #cbd7c0;border-radius:15px;background:#f0f4e880;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8fa07e;cursor:pointer}.create-card:hover{background:#eaf0de}.create-card .plus{width:45px;height:45px;border:1px solid #d7e0cd;border-radius:50%;display:grid;place-items:center;font-size:25px;margin-bottom:14px;background:#f8faf2}.create-card strong{font-size:13px;color:#718765;font-weight:500}.create-card p{font-size:10px;margin:9px 0 0}.hint-strip{display:flex;gap:12px;align-items:center;padding:14px 18px;background:#f0f2e8;border:1px solid #e5e8d9;border-radius:11px;margin-top:27px;font-size:11px;color:#90987c}.hint-strip .icon{width:16px;height:16px;color:#a6ae8d}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}.table th{color:#87917e;font-size:11px;font-weight:500;padding:14px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:18px 12px;border-bottom:1px solid #edf0e7}.table tbody tr:last-child td{border:0}.table td small{display:block;color:var(--muted);margin-top:4px;font-size:10px}.table td strong{font-weight:600}.table .btn{font-size:11px;padding:7px 10px}.notice{padding:17px 20px;background:#f7f1e4;border:1px solid #e9ddc7;border-radius:12px;font-size:12px;color:#967a4b;line-height:1.8}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.span2{grid-column:1/-1}.form-help{font-size:11px;color:#8f9989;margin:6px 0 0;line-height:1.7}.check{display:flex;align-items:center;gap:10px;font-size:13px}.check input{width:17px;height:17px;margin:0;accent-color:var(--accent)}
.editor-header{margin-bottom:25px}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:25px;align-items:start}.editor-main{display:flex;flex-direction:column;gap:23px}.editor-main .panel h3{margin-bottom:22px}.theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.theme-choice{padding:0;border:2px solid transparent;border-radius:12px;background:#f3f5ee;text-align:left;overflow:hidden}.theme-choice.active{border-color:#508362}.theme-choice .activity-cover{height:88px;pointer-events:none}.theme-choice .cover-text{font-size:17px}.theme-choice .cover-sub{font-size:7px}.theme-choice>span{display:block;padding:9px 10px;font-size:11px;color:#78836f}.question-nav{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:20px}.q-index{background:#f0f3eb;border:1px solid #e0e6d7;border-radius:8px;width:34px;height:34px;font-size:12px;color:#7d8c71}.q-index.active{background:#176b55;border-color:#176b55;color:#fff}.question-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.question-toolbar h3{margin:0!important}.preview-aside{position:sticky;top:25px}.preview-aside .panel{padding:17px}.preview-label{font-size:10px;letter-spacing:.1em;color:#98a08e;text-align:center;margin-bottom:14px}.mini-screen{overflow:hidden;background:#f0f5e9;border:1px solid #dce5d2;border-radius:13px;min-height:250px;padding:18px;color:#345938;position:relative}.mini-screen.ink{background:#f4eee2;color:#504b3f;font-family:"Songti SC",serif}.mini-screen.neon{background:#122b41;color:#b3ffd7}.mini-screen h3{text-align:center;font-size:15px;line-height:1.7;margin:20px 0 14px}.mini-screen .mini-question{font-size:12px;text-align:center;padding:17px 12px;border-radius:8px;background:#ffffff66;line-height:1.8}.mini-screen.neon .mini-question{background:#ffffff09}.mini-groups{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:17px 0}.mini-groups span{height:28px;border:1px solid currentColor;border-radius:5px;opacity:.4;font-size:10px;display:grid;place-items:center}.mini-foot{text-align:center;font-size:9px;opacity:.6}.editor-aside-note{font-size:11px;line-height:1.9;color:#8b957f;padding:16px 5px}.media-preview{display:block;max-width:100%;max-height:200px;margin:15px auto;border-radius:10px}.media-upload{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.file-label{display:inline-flex;align-items:center;gap:6px;padding:9px 12px;background:#f3f5ed;border:1px solid var(--line);border-radius:8px;color:#718265;font-size:11px;cursor:pointer}.file-label input{display:none}.editor-savebar{display:flex;gap:12px;justify-content:space-between;align-items:center;position:sticky;bottom:16px;z-index:5;padding:14px 18px;background:#fffef8ee;border:1px solid #e0e6d8;border-radius:13px;backdrop-filter:blur(10px);box-shadow:0 6px 25px #263c2410}.editor-savebar span{font-size:11px;color:#93a084}.editor-savebar .btn{font-size:12px}
.landing{min-height:100vh;max-width:1280px;margin:0 auto;padding:28px 40px}.landing-nav{display:flex;justify-content:space-between;align-items:center}.landing-hero{padding:100px 0 65px;display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center}.landing-hero h1{font-size:64px;font-weight:600;line-height:1.25;margin:23px 0;letter-spacing:-.07em}.landing-hero h1 em{font-style:normal;color:#79964e}.landing-hero>div>p{font-size:15px;color:#85917b;max-width:370px;line-height:2;margin-bottom:28px}.hero-paper{border-radius:25px;border:1px solid #d9e4cd;padding:25px;background:#eaf1df;transform:rotate(2deg);box-shadow:0 25px 60px #65855115}.hero-paper-top{font-size:10px;letter-spacing:.1em;color:#7f9666;margin-bottom:25px}.hero-paper h2{font-size:25px;margin:18px 0 24px;font-family:"Songti SC",serif;text-align:center;font-weight:500}.hero-question{background:#fffef5;border-radius:15px;padding:28px 20px;text-align:center;font-size:17px;line-height:1.9}.hero-buzzer{margin:25px auto 0;display:grid;place-items:center;width:95px;height:95px;border-radius:50%;background:#347956;box-shadow:0 7px 0 #1c5238,0 13px 20px #49674220;color:#fff;font-size:31px}.hero-caption{text-align:center;margin-top:20px;font-size:10px;color:#7c9166}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:30px 0;border-top:1px solid #e2e7d9}.features h3{font-size:14px;margin:13px 0 7px}.features p{font-size:12px;color:#8c9783;line-height:1.9}.join-inline{display:flex;gap:10px;max-width:370px}.join-inline input{text-transform:uppercase;letter-spacing:.08em}.auth-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-story{background:#e7eedb;padding:48px 65px;display:flex;flex-direction:column;justify-content:space-between}.auth-story h1{font-size:52px;line-height:1.4;font-weight:550;font-family:"Songti SC",serif;max-width:400px}.auth-story p{font-size:13px;color:#81936e;max-width:360px}.auth-story small{color:#9aa88b;font-size:10px}.auth-panel{padding:60px;display:flex;align-items:center;justify-content:center;background:#fbfcf7}.auth-form{width:100%;max-width:350px}.auth-form h2{font-size:28px;margin-bottom:12px}.auth-form>p{font-size:12px;color:#8e9985;margin-bottom:28px}.auth-form label{margin-bottom:20px}.auth-form .btn{width:100%;margin-top:5px}.auth-link{font-size:12px;text-align:center;margin-top:20px;color:#8b9783}.auth-link a{color:#37734c}.auth-error{background:#fff0ed;border:1px solid #f1d3cc;color:#ac5b51;padding:10px 13px;border-radius:9px;font-size:12px;margin-bottom:20px}.billing-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}.membership{background:#e6eed9;border-color:#d9e4c9;padding:30px}.membership h2{font-size:30px;margin:15px 0}.membership p{font-size:13px;color:#738b5f}.quota-line{display:flex;gap:15px;margin-top:25px}.quota-line>div{border-top:1px solid #bacba5;flex:1;padding-top:15px}.quota-line strong{font-size:25px}.quota-line small{display:block;font-size:10px;color:#83966f;margin-top:5px}.admin-metrics{grid-template-columns:repeat(4,1fr)}.admin-tabs{margin-bottom:25px;border-bottom:1px solid var(--line);padding-bottom:10px}.admin-row-name{min-width:140px}.audit-list{font-size:12px}.audit-row{padding:13px 0;border-bottom:1px solid var(--line);display:flex;gap:15px;justify-content:space-between}.audit-row span{color:var(--muted);font-size:11px}
.modal-backdrop{position:fixed;inset:0;background:#233c2f66;backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:24px}.modal{background:#fffefb;width:100%;max-width:520px;max-height:90vh;overflow:auto;border-radius:20px;padding:28px;box-shadow:0 20px 90px #132f2940}.modal .flex h2{margin:0;font-size:22px}.modal form{margin-top:24px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px}.modal p{font-size:12px;color:var(--muted)}#toasts{position:fixed;right:25px;top:24px;z-index:300;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{background:#263f32;color:#fffef0;padding:13px 20px;border-radius:11px;box-shadow:0 6px 25px #15392326;font-size:13px;max-width:400px;line-height:1.7}.toast.error{background:#934940}
.game-page{--accent:#246c4c;--bg:#edf2e4;--paper:#fffef7;--ink:#234a34;--muted:#8b9d77;--soft:#e1ead5;--line:#d6e1c9;background:var(--bg);color:var(--ink);min-height:100vh;padding:24px 30px 22px;position:relative}.game-page.ink{--accent:#6b6853;--bg:#f0ebdf;--paper:#fbf8ef;--ink:#403f35;--muted:#9b917d;--soft:#e8e1d0;--line:#d9d0bb;font-family:"Songti SC","SimSun",serif;background-image:radial-gradient(#a9956912 .7px,transparent .7px);background-size:5px 5px}.game-page.neon{--accent:#82f0bb;--bg:#0b2030;--paper:#132e41;--ink:#d2f6e9;--muted:#7b9fa9;--soft:#1a3f4e;--line:#28505e;background-image:linear-gradient(#9ee8df08 1px,transparent 1px),linear-gradient(90deg,#9ee8df08 1px,transparent 1px);background-size:35px 35px}.game-page.neon .btn.primary{color:#0c2b2b}.game-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:20px}.game-title h1{font-size:23px;margin:0 0 6px}.game-title p{font-size:11px;color:var(--muted);margin:0}.game-title .brand-symbol{width:31px;height:31px;font-size:22px}.game-title>.flex{gap:12px}.room-code{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:9px;padding:8px 13px;font-size:10px;color:var(--muted)}.room-code strong{font-size:16px;letter-spacing:.12em;color:var(--ink);font-family:monospace}.connection{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:6px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;min-height:calc(100vh - 223px)}.question-stage{background:var(--paper);border:1px solid var(--line);border-radius:22px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:35px;min-height:470px;position:relative;overflow:hidden}.question-stage h2{font-size:clamp(25px,3vw,46px);line-height:1.6;font-weight:550;text-align:center;max-width:850px;margin:22px 0}.game-page.ink .question-stage h2{letter-spacing:.07em}.question-tags{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap}.question-tags span{font-size:11px;padding:5px 10px;border:1px solid var(--line);border-radius:6px;color:var(--muted)}.question-tags .current-q{background:var(--soft);color:var(--accent);border-color:transparent}.lobby-overline{font-size:10px;letter-spacing:.27em;color:var(--muted);text-transform:uppercase}.lobby-title{font-size:clamp(34px,4vw,56px)!important;margin:18px 0 8px!important}.lobby-sub{color:var(--muted);font-size:13px;text-align:center}.lobby-join{display:flex;gap:25px;align-items:center;margin-top:22px;padding:19px 25px;border:1px solid var(--line);border-radius:15px}.lobby-join img{width:125px;height:125px;border-radius:9px}.lobby-join strong{font-size:23px;letter-spacing:.12em;font-family:monospace}.lobby-join p{font-size:11px;color:var(--muted);max-width:210px;margin:10px 0}.lobby-join .btn{font-size:10px;padding:6px 10px}.fairness{font-size:9px;color:var(--muted);margin-top:28px;text-align:center}.group-panel{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:22px;display:flex;flex-direction:column;gap:15px}.group-panel-header{display:flex;align-items:center;justify-content:space-between;font-size:12px}.group-panel-header small{font-size:10px;color:var(--muted)}.groups-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;flex:1;align-content:start}.group-tile{padding:18px 8px 12px;min-height:107px;text-align:center;border:1px solid var(--line);border-radius:12px;position:relative;background:var(--bg)}.group-tile .g-number{font-size:24px;color:var(--ink);font-weight:550}.group-tile .g-name{font-size:10px;color:var(--muted);margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-tile .g-score{font-size:10px;margin-top:9px;color:var(--accent)}.group-tile .presence{position:absolute;top:9px;right:9px;width:5px;height:5px;border-radius:50%;background:var(--line)}.group-tile.online .presence{background:#6b9e72}.group-tile.winner{background:var(--soft);border:2px solid var(--accent);padding:17px 7px 11px;box-shadow:0 0 25px #7fa75b15}.group-tile.winner .g-number{color:var(--accent)}.group-tile .release{position:absolute;top:2px;left:3px;border:0;background:transparent;color:var(--muted);font-size:10px;padding:4px;opacity:0}.group-tile:hover .release,.group-tile .release:focus{opacity:1}.controlbar{border:1px solid var(--line);border-radius:17px;background:var(--paper);padding:15px 20px;margin-top:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.controlbar .btn{font-size:12px;padding:12px 16px}.controlbar .next-button{padding:14px 25px;min-width:160px}.controlbar .small-controls{display:flex;gap:6px}.small-controls .btn{font-size:10px;padding:10px}.game-footer{display:flex;justify-content:space-between;color:var(--muted);font-size:9px;gap:15px;margin-top:14px}.timer{font-size:16px;color:var(--accent);display:flex;align-items:center;gap:8px;margin-top:20px}.timer-number{display:grid;place-items:center;min-width:76px;height:76px;border-radius:50%;border:3px solid var(--line);color:var(--accent);font-size:35px;font-family:monospace;font-weight:600}.timer.urgent .timer-number{color:#cb6747;border-color:#dc997d}.timer>span{font-size:12px;max-width:50px;line-height:1.7;color:var(--muted)}.answer-box{margin-top:25px;padding:15px 22px;border:1px dashed var(--accent);border-radius:10px;line-height:1.9;font-size:14px;max-width:750px;color:var(--accent)}.question-options{display:grid;gap:10px;grid-template-columns:1fr;max-width:700px;width:100%;margin-top:5px}.question-option{padding:12px 18px;border:1px solid var(--line);border-radius:9px;font-size:15px;background:var(--bg)}.question-media{max-width:75%;max-height:220px;object-fit:contain;border-radius:10px;margin:12px 0}.question-audio{width:min(80%,450px);margin:15px 0}.winner-line{margin-top:24px;padding:14px 24px;background:var(--soft);border-radius:12px;text-align:center;font-size:17px;color:var(--accent)}.winner-line small{display:block;color:var(--muted);font-size:11px;margin-top:6px}.finish-heading{font-size:12px;color:var(--muted);letter-spacing:.15em;margin-top:5px}.champion{font-size:38px;margin:13px 0;color:var(--accent)}.results-list{width:100%;max-width:700px;margin-top:20px;display:flex;flex-direction:column;gap:10px}.result-row{display:flex;gap:15px;align-items:center;padding:12px 17px;background:var(--bg);border:1px solid var(--line);border-radius:9px;font-size:13px}.result-rank{width:25px;font-family:monospace;color:var(--muted)}.result-name{flex:1}.result-row:first-child{border-color:var(--accent);background:var(--soft)}.result-points{font-size:20px;font-weight:600;color:var(--accent)}.result-meta{font-size:10px;color:var(--muted)}.result-bar{height:4px;border-radius:5px;background:var(--accent);max-width:120px;opacity:.4}.results-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:24px}
.student-page{min-height:100dvh;display:flex;flex-direction:column;max-width:none;padding:22px 22px 25px}.student-inner{width:100%;max-width:580px;margin:0 auto;flex:1;display:flex;flex-direction:column}.student-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:2px 0 18px;margin-bottom:25px;font-size:11px;color:var(--muted)}.student-top strong{font-size:16px;color:var(--ink)}.student-title{text-align:center;padding:12px 0}.student-title h1{font-size:25px;line-height:1.6;margin-bottom:10px}.student-title p{font-size:12px;color:var(--muted)}.group-picker{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:15px}.pick-group{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:24px 15px;text-align:center}.pick-group strong{font-size:20px;font-weight:500}.pick-group small{display:block;color:var(--muted);margin-top:8px;font-size:11px}.pick-group:not(:disabled):hover{background:var(--soft);border-color:var(--accent)}.pick-group:disabled{opacity:.45}.student-question{background:var(--paper);padding:23px;border:1px solid var(--line);border-radius:17px;margin-bottom:22px}.student-question h2{font-size:22px;text-align:center;line-height:1.65;margin:18px 0 0}.student-question .question-option{font-size:13px;padding:9px 12px}.student-question .question-options{margin-top:17px}.student-question .question-media{max-width:100%;display:block;margin:15px auto}.student-buzzer-area{display:flex;flex:1;flex-direction:column;justify-content:center;align-items:center;padding:15px 0 25px;min-height:290px}.buzzer{width:min(57vw,230px);height:min(57vw,230px);border-radius:50%;background:var(--accent);border:8px solid #ffffff25;box-shadow:0 10px 0 #123f2d,0 20px 45px #1b463125;color:#fffdf0;font-size:75px;font-weight:700;transition:transform .08s;touch-action:manipulation;user-select:none;-webkit-user-select:none}.buzzer:active:not(:disabled){transform:translateY(6px);box-shadow:0 4px 0 #123f2d}.buzzer:disabled{background:#b8c6a5;color:#edf1e6;box-shadow:0 7px 0 #8d9f78;opacity:1;font-size:40px}.buzzer.win{background:#c1914b;box-shadow:0 9px 0 #8b642c;color:#fff8c5}.neon .buzzer{color:#0c352d;box-shadow:0 10px 0 #255849,0 0 60px #82f0bb20}.neon .buzzer:disabled{background:#345866;color:#7c9ba6;box-shadow:0 7px 0 #214351}.ink .buzzer{box-shadow:0 10px 0 #494738}.student-status{font-size:14px;text-align:center;margin:28px 0 0;color:var(--muted);line-height:1.8;min-height:26px}.student-status.win{color:var(--accent);font-size:18px}.student-countdown{font-size:24px;font-family:monospace;color:var(--accent);margin:0 0 22px;min-height:28px}.student-footer{text-align:center;font-size:10px;color:var(--muted);margin:15px 0 0}.student-finish{padding:20px 0;text-align:center}.student-finish .champion{font-size:30px}.error-page{min-height:100vh;display:grid;place-items:center;text-align:center;padding:30px}.error-page h1{font-size:26px;margin-top:20px}.error-page p{color:var(--muted);font-size:13px}.join-page{min-height:100vh;display:grid;place-items:center;padding:24px}.join-card{max-width:430px;width:100%;background:#fff;border:1px solid var(--line);border-radius:22px;padding:38px}.join-card .brand{justify-content:center;margin-bottom:35px}.join-card h1{text-align:center;font-size:27px;margin-bottom:12px}.join-card p{text-align:center;font-size:12px;color:var(--muted)}.join-card input{text-align:center;letter-spacing:.22em;font-size:25px;font-family:monospace;text-transform:uppercase;margin:20px 0 15px;padding:18px 10px}.join-card .btn{width:100%}.room-note{font-size:11px;color:var(--muted);text-align:center;line-height:1.8;margin-top:25px}
@media(min-width:1600px){.game-page{padding:30px 45px}.game-layout{grid-template-columns:minmax(0,1fr) 390px;min-height:calc(100vh - 245px)}.group-tile{min-height:135px;padding-top:25px}.group-tile .g-number{font-size:33px}.question-stage{padding:45px}.question-stage h2{font-size:50px}.game-title h1{font-size:28px}.controlbar .btn{font-size:15px}.lobby-join img{width:170px;height:170px}}
@media(max-width:1150px){.shell{grid-template-columns:180px minmax(0,1fr)}.sidebar{padding:28px 15px}.main-header{padding:0 28px}.workspace{padding:30px 28px}.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.welcome-art{width:140px}.editor-layout{grid-template-columns:minmax(0,1fr) 235px}.game-layout{grid-template-columns:minmax(0,1fr) 260px}.group-panel{padding:17px}.group-tile{min-height:97px;padding-top:14px}.game-header .btn{padding:8px;font-size:11px}.controlbar{padding:14px}.controlbar .btn{padding:10px;font-size:11px}.controlbar .next-button{min-width:130px}.landing-hero h1{font-size:50px}.landing-hero{gap:35px}.auth-story{padding:40px}.auth-story h1{font-size:43px}}
@media(max-width:850px){.shell{grid-template-columns:1fr}.sidebar{height:auto;position:static;display:flex;flex-direction:row;align-items:center;gap:5px;border-right:0;border-bottom:1px solid var(--line);padding:15px 20px;flex-wrap:wrap}.sidebar .brand{margin:0 auto 0 0;font-size:16px;padding:0}.sidebar .brand small,.nav-label,.sidebar-note,.sidebar-foot .user-chip{display:none}.sidebar nav{display:flex;gap:0}.sidebar .nav-item{font-size:11px;padding:8px 10px;gap:6px}.sidebar-foot{margin:0}.main-header{height:58px;padding:0 24px}.workspace{padding:27px 24px}.editor-layout{grid-template-columns:1fr}.preview-aside{display:none}.game-page{padding:18px}.game-layout{grid-template-columns:minmax(0,1fr) 215px;gap:14px;min-height:calc(100vh - 255px)}.question-stage{padding:23px;min-height:440px}.question-stage h2{font-size:28px}.group-panel{padding:13px}.groups-grid{gap:7px}.group-tile{min-height:95px;padding:15px 5px 10px}.group-tile .g-number{font-size:22px}.game-header{gap:12px;flex-wrap:wrap}.game-title h1{font-size:19px}.room-code{padding:7px 9px}.room-code strong{font-size:13px}.lobby-join{padding:14px;gap:15px;flex-direction:column}.lobby-join img{width:110px;height:110px}.lobby-join>div{text-align:center}.lobby-join p{display:none}.lobby-join strong{font-size:17px}.controlbar{justify-content:center}.controlbar .small-controls{flex-wrap:wrap;justify-content:center}.game-footer{font-size:8px}.admin-metrics{grid-template-columns:repeat(2,1fr)}.billing-grid{grid-template-columns:1fr}.auth-page{grid-template-columns:.8fr 1fr}.auth-story{padding:30px}.auth-story h1{font-size:32px}.auth-panel{padding:35px}.landing{padding:24px 28px}.landing-hero{padding-top:60px;gap:25px}.landing-hero h1{font-size:42px}.hero-paper{padding:18px}.hero-paper h2{font-size:20px}}
@media(max-width:600px){.sidebar{padding:15px 16px}.sidebar .brand{font-size:15px}.sidebar .brand-symbol{width:28px;height:28px;font-size:22px}.sidebar nav{order:3;width:100%;margin-top:10px;justify-content:space-between}.sidebar .nav-item{font-size:11px;padding:9px 11px}.main-header{height:50px;padding:0 19px}.header-status{font-size:10px}.workspace{padding:25px 17px}.page-title h1{font-size:26px}.page-title p{font-size:11px}.page-title .btn{padding:10px 13px;font-size:11px}.welcome-card{padding:24px;min-height:170px}.welcome-card h2{font-size:25px}.welcome-card p{font-size:11px;max-width:230px}.welcome-art{width:66px;margin-right:-8px}.art-ring{width:55px;height:55px;box-shadow:0 0 0 14px #dae5c755,0 0 0 28px #dae5c722}.art-ring span{width:44px;height:44px;font-size:27px;border-radius:15px}.art-tag{right:-5px;bottom:12px;font-size:8px;padding:5px 8px}.stats{gap:8px;margin-bottom:29px}.stat{padding:14px 9px;display:block;text-align:center}.stat-icon{display:none}.stat strong{font-size:24px}.stat span{font-size:9px}.activity-grid{grid-template-columns:1fr}.activity-cover{height:160px}.create-card{min-height:170px}.section-toolbar{flex-wrap:wrap}.section-toolbar .search{width:100%;order:3}.tabs .tab{font-size:11px;padding:7px 9px}.hint-strip{align-items:flex-start;font-size:10px;padding:13px}.panel{padding:20px}.form-grid{grid-template-columns:1fr;gap:16px}.span2{grid-column:auto}.theme-options{gap:7px}.theme-choice .activity-cover{height:70px}.theme-choice .cover-text{font-size:14px}.theme-choice>span{font-size:10px;padding:8px}.editor-savebar{padding:12px;bottom:10px}.editor-savebar span{font-size:10px}.editor-savebar .btn{padding:10px 12px}.game-layout{grid-template-columns:1fr;min-height:auto}.question-stage{padding:25px 19px;min-height:370px}.group-panel{padding:17px}.groups-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.group-tile{min-height:88px}.group-tile .g-number{font-size:21px}.group-tile .g-name{font-size:8px}.group-tile .g-score{font-size:9px}.group-tile .release{opacity:.8}.group-panel-header{font-size:11px}.game-header{margin-bottom:17px}.game-header>.flex:last-child{width:100%;justify-content:space-between}.game-title h1{font-size:18px}.game-title p{font-size:10px}.game-header .connection{font-size:9px}.game-page{padding:16px 13px}.controlbar{gap:12px;padding:14px 10px}.controlbar>.flex{justify-content:center;flex-wrap:wrap;gap:7px}.controlbar .btn{font-size:11px;padding:11px 12px}.controlbar .next-button{min-width:135px}.game-footer{font-size:8px;line-height:1.8}.game-footer span:last-child{display:none}.lobby-title{font-size:31px!important}.lobby-join{flex-direction:row;padding:13px;gap:20px}.lobby-join img{width:100px;height:100px}.lobby-join strong{font-size:18px}.lobby-join p{display:block;font-size:9px;max-width:140px;margin:7px 0}.lobby-join>div{text-align:left}.fairness{font-size:8px;line-height:1.8}.timer-number{width:62px;height:62px;font-size:30px}.question-stage h2{font-size:25px}.question-option{font-size:13px;padding:11px}.winner-line{font-size:15px;padding:13px 19px}.question-media{max-width:100%;max-height:160px}.auth-page{grid-template-columns:1fr}.auth-story{padding:25px 27px 10px;min-height:230px}.auth-story h1{font-size:30px;margin:28px 0 12px}.auth-story p,.auth-story>small{display:none}.auth-panel{padding:30px 27px 45px;align-items:start}.auth-form h2{font-size:24px}.landing{padding:24px}.landing-nav .brand{font-size:17px}.landing-nav .btn{font-size:11px;padding:9px 11px}.landing-hero{padding:50px 0;grid-template-columns:1fr;gap:40px}.landing-hero h1{font-size:45px}.landing-hero>div>p{font-size:13px}.hero-paper{max-width:370px;margin:0 10px;padding:24px;transform:rotate(1deg)}.hero-paper h2{font-size:23px}.features{gap:15px}.features h3{font-size:12px}.features p{font-size:10px}.table td{font-size:12px}.modal{padding:23px}.modal-backdrop{padding:17px}.result-meta{display:none}.student-page{padding:18px 19px}.student-page .question-stage{min-height:auto}.student-countdown{margin-bottom:16px}.student-buzzer-area{min-height:260px}.student-question h2{font-size:21px}.student-question{padding:22px 18px}.join-card{padding:30px 24px}.result-row{font-size:12px}.champion{font-size:30px}.theme-options .cover-sub{display:none}.notice{padding:15px;font-size:11px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media(min-width:601px){.game-layout{min-height:calc(100dvh - 260px)}.question-stage{min-height:min(470px,calc(100dvh - 260px))}.groups-grid{max-height:calc(100dvh - 340px);overflow:auto}.group-tile{min-height:clamp(72px,calc((100dvh - 380px)/4),120px);padding:12px 8px 9px}.group-tile.winner{padding:11px 7px 8px}.group-tile .g-number{font-size:24px}.group-tile .g-score{margin-top:6px}.game-layout .group-panel{gap:12px}}
