:root{--font-body:"Segoe UI",Arial,sans-serif;--font-display:"Arial Black","Segoe UI",sans-serif;--ink:#17231d;--cream:#f4f0e6;--paper:#fffdf7;--orange:#f0642b;--green:#174f3a;--line:#d7d1c3;--muted:#6f766f}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:var(--cream);color:var(--ink);font-family:var(--font-body),sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}
.landing-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;padding:28px clamp(22px,5vw,72px);background:radial-gradient(circle at 78% 18%,#ffd5b8 0,transparent 27%),linear-gradient(135deg,#f8f4e9 0%,#ece5d7 100%)}.brandbar{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-weight:700;font-size:18px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;color:white;background:var(--green);border-radius:5px;font-size:13px;letter-spacing:.05em}.landing-card{align-self:center;max-width:900px;padding:70px 0}.eyebrow{color:var(--orange);font-size:12px;font-weight:800;letter-spacing:.16em;margin-bottom:26px}h1{font-family:var(--font-display);font-size:clamp(48px,8vw,105px);letter-spacing:-.06em;line-height:.92;margin:0;max-width:1000px}h1 em{color:var(--green);font-style:normal}.landing-card>p{max-width:550px;color:var(--muted);font-size:18px;line-height:1.6;margin:34px 0}.landing-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap}.student-note{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:14px 20px;font-weight:700;display:flex;align-items:center;gap:10px}.pulse-dot{width:9px;height:9px;background:#42a271;border-radius:50%;box-shadow:0 0 0 5px #dcecdf}.text-link{color:var(--ink);font-weight:800;text-decoration:none}footer{color:#7f827c;font-size:12px}
.exam-shell{min-height:100vh;padding:22px;display:grid;place-items:center;background:var(--green);position:relative;overflow:hidden}.exam-shell:before{content:"";position:absolute;width:430px;height:430px;border:90px solid rgba(255,255,255,.04);border-radius:50%;right:-130px;top:-160px}.exam-card{width:min(680px,100%);min-height:620px;background:var(--paper);border-radius:20px;padding:clamp(24px,5vw,48px);box-shadow:0 28px 80px rgba(0,0,0,.22);display:flex;flex-direction:column;position:relative;z-index:1}.exam-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:22px;border-bottom:1px solid var(--line)}.student-id small{display:block;color:var(--muted);text-transform:uppercase;font-size:10px;letter-spacing:.14em}.student-id strong{font-family:var(--font-display);font-size:19px}.status-pill{color:var(--green);background:#e6efe9;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:800}.exam-content{flex:1;display:flex;flex-direction:column;justify-content:center;text-align:center}.question-kicker{color:var(--orange);font-weight:800;letter-spacing:.12em;font-size:12px}.exam-content h2{font-family:var(--font-display);font-size:clamp(32px,6vw,48px);letter-spacing:-.04em;margin:16px 0 10px}.exam-content p{color:var(--muted);line-height:1.5;margin:0 auto;max-width:440px}.timer{width:128px;height:128px;display:grid;place-items:center;margin:28px auto;border-radius:50%;border:9px solid #e7e1d5;color:var(--green);font-family:var(--font-display);font-size:42px;font-weight:700}.timer.urgent{color:var(--orange);border-color:#ffd4bf}.answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.answer-button{min-height:92px;border:2px solid var(--ink);border-radius:12px;background:transparent;color:var(--ink);font-family:var(--font-display);font-size:19px;font-weight:800;cursor:pointer;transition:.15s}.answer-button:hover{transform:translateY(-2px);box-shadow:0 8px 0 var(--ink)}.answer-button.true{background:var(--green);color:white;border-color:var(--green)}.answer-button.false{background:var(--orange);color:white;border-color:var(--orange)}.answer-button:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.submitted{border:1px solid #bdd4c5;background:#e9f2ec;color:var(--green);border-radius:12px;padding:20px;font-weight:800}.waiting-icon{font-family:var(--font-display);width:80px;height:80px;border:2px solid var(--orange);color:var(--orange);display:grid;place-items:center;border-radius:50%;font-size:30px;margin:0 auto 22px}.error-box{margin:auto;text-align:center;max-width:420px}
.admin-page{min-height:100vh;background:#ece8df}.admin-topbar{height:76px;background:var(--ink);color:white;display:flex;justify-content:space-between;align-items:center;padding:0 clamp(20px,4vw,54px)}.admin-brand{font-family:var(--font-display);font-weight:700;display:flex;align-items:center;gap:12px}.admin-brand span{color:#ff8a54}.admin-container{max-width:1500px;margin:auto;padding:32px clamp(18px,4vw,52px) 60px}.admin-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}.admin-heading h1{font-size:clamp(34px,4vw,58px)}.admin-heading p{color:var(--muted);margin:8px 0 0}.admin-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.7fr);gap:22px;align-items:start}.panel{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:22px}.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.panel-title h2{margin:0;font-family:var(--font-display);font-size:20px}.count{border:1px solid var(--line);border-radius:999px;padding:5px 10px;font-size:11px;color:var(--muted)}
.control-card{background:var(--green);color:white;border-radius:12px;padding:24px;margin-bottom:18px}.control-card small{color:#b8d2c5;letter-spacing:.1em;font-weight:800}.control-card h3{font-family:var(--font-display);font-size:24px;margin:12px 0;line-height:1.25}.control-meta{display:flex;justify-content:space-between;color:#d8e8df;font-size:12px}.control-actions{display:grid;grid-template-columns:1fr auto auto;gap:8px;margin-top:18px}.btn{border:0;border-radius:8px;padding:11px 15px;font-weight:800;cursor:pointer}.btn-primary{background:var(--orange);color:white}.btn-light{background:white;color:var(--ink)}.btn-ghost{background:transparent;color:inherit;border:1px solid currentColor}.btn:disabled{opacity:.45;cursor:not-allowed}.question-list{display:flex;flex-direction:column;gap:8px;max-height:570px;overflow:auto;padding-right:4px}.question-row{display:grid;grid-template-columns:38px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);background:white;border-radius:10px;padding:13px;cursor:pointer;text-align:left}.question-row.active{border-color:var(--orange);background:#fff5ee}.q-number{width:34px;height:34px;display:grid;place-items:center;background:#eee9df;border-radius:7px;font-weight:800}.q-copy strong{display:block;font-size:13px;line-height:1.35}.q-copy small{color:var(--muted)}.truth{font-size:10px;font-weight:900;padding:5px 7px;border-radius:5px;background:#e8f1eb;color:var(--green)}.truth.false{background:#fff0e7;color:#b8461d}
.student-form{display:flex;gap:8px;margin-bottom:14px}.field{border:1px solid var(--line);border-radius:8px;padding:11px 12px;background:white;min-width:0;width:100%}.student-list{display:flex;flex-direction:column;gap:8px;max-height:480px;overflow:auto}.student-row{border:1px solid var(--line);border-radius:10px;padding:12px}.student-main{display:flex;justify-content:space-between;align-items:center}.presence{width:9px;height:9px;border-radius:50%;background:#bbb;display:inline-block;margin-right:8px}.presence.online{background:#39a66e;box-shadow:0 0 0 3px #dceee3}.student-score{font-family:var(--font-display);font-weight:700}.student-link{display:flex;gap:6px;margin-top:9px}.student-link input{font-size:10px;color:var(--muted);padding:7px}.mini-btn{border:0;background:#ece8df;border-radius:6px;font-size:10px;font-weight:800;cursor:pointer}
.login-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:var(--ink)}.login-card{width:min(430px,100%);padding:38px;border-radius:16px;background:var(--paper)}.login-card h1{font-size:38px;margin:20px 0 8px}.login-card p{color:var(--muted);margin:0 0 28px}.login-card form{display:grid;gap:12px}.form-error{color:#bd3f22;font-size:13px}
@media(max-width:900px){.admin-grid{grid-template-columns:1fr}.admin-heading{align-items:start;flex-direction:column}.exam-card{min-height:calc(100vh - 44px)}}@media(max-width:560px){.answer-grid{grid-template-columns:1fr}.exam-card{padding:22px}.admin-container{padding-left:12px;padding-right:12px}.control-actions{grid-template-columns:1fr 1fr}.control-actions .btn-primary{grid-column:1/-1}.question-row{grid-template-columns:34px 1fr}.truth{grid-column:2}.landing-card{padding:45px 0}}




.control-actions{grid-template-columns:1fr auto auto auto}
.audio-tools{margin:0 0 18px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f7f3ea}
.audio-tools-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.audio-tools-head div{display:grid;gap:2px}.audio-tools-head small{font-size:9px;letter-spacing:.12em;color:var(--muted);font-weight:800}.audio-tools-head strong{font-family:var(--font-display)}
.audio-state{font-size:10px;font-weight:900;padding:6px 8px;border-radius:999px;background:#eee8dc;color:var(--muted)}.audio-state.ready{background:#e3efe7;color:var(--green)}
.audio-tools audio,.student-audio audio{display:block;width:100%;margin:10px 0}
.audio-upload{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.audio-help{color:var(--muted);font-size:10px}
.student-row.student-online{border-color:#99c6aa;box-shadow:inset 3px 0 0 #39a66e}
.live-status{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:10px}
.response-badge{font-size:10px;font-weight:900;padding:6px 8px;border-radius:6px}.response-badge.pending{background:#eee9df;color:#756f64}.response-badge.answered-true{background:#dff0e5;color:#17603f}.response-badge.answered-false{background:#ffeadf;color:#b6421b}
.connection-label{font-size:9px;font-weight:900;color:var(--muted);letter-spacing:.05em}.student-online .connection-label{color:#278457}
.student-audio{width:min(430px,100%);margin:18px auto;padding:13px;border:1px solid #c9d8cd;border-radius:12px;background:#eef5f0;text-align:left}.student-audio strong{font-size:12px;color:var(--green)}
@media(max-width:560px){.audio-upload{grid-template-columns:1fr}.control-actions{grid-template-columns:1fr 1fr}.control-actions .btn-primary{grid-column:1/-1}}


/* Panel del profesor v2 */
.admin-grid{grid-template-columns:minmax(0,1.22fr) minmax(390px,.78fr);gap:24px}
.admin-sidebar{display:grid;gap:20px;position:sticky;top:18px}
.control-panel{min-width:0}.topbar-live{display:flex;align-items:center;gap:10px;font-size:12px;color:#d4e5dc;font-weight:800}.topbar-live .pulse-dot{box-shadow:0 0 0 5px rgba(66,162,113,.18)}
.admin-heading{align-items:center}.admin-heading>div:first-child{max-width:650px}
.stats-strip{display:grid;grid-template-columns:repeat(3,minmax(92px,1fr));gap:10px}
.stat-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:13px 16px;min-width:105px}.stat-card strong{display:block;font-family:var(--font-display);font-size:26px;line-height:1}.stat-card span{display:block;color:var(--muted);font-size:10px;font-weight:800;margin-top:6px}.stat-card.success{border-color:#a9ceb7;background:#eef7f1}.stat-card.pending{border-color:#efc6ad;background:#fff5ee}
.dashboard-message{min-height:22px;color:#b84425;font-size:13px;font-weight:800;margin-bottom:8px}
.section-kicker{display:block;color:var(--orange);font-size:9px;letter-spacing:.13em;font-weight:900;margin-bottom:4px}.panel-title>div h2{margin:0}
.control-live-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.control-live-row>span{font-size:11px;background:rgba(255,255,255,.12);border-radius:999px;padding:6px 9px}.action-main{box-shadow:0 5px 0 #a93b13}.action-main:active{transform:translateY(3px);box-shadow:0 2px 0 #a93b13}
.settings-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:18px;margin:4px 0 18px}.settings-row label{font-size:12px;font-weight:800}.settings-row input{width:100%}
.audio-tools{border-left:4px solid var(--orange);box-shadow:0 8px 24px rgba(33,41,36,.05)}
.question-list{max-height:520px}
.preview-panel{background:#19271f;color:white;border:0}.preview-panel .panel-title h2{color:white}.preview-panel .section-kicker{color:#ff9868}.preview-live{font-size:9px;font-weight:900;letter-spacing:.12em;color:#a9d5bb;border:1px solid #47705b;border-radius:999px;padding:6px 9px}
.student-preview{background:var(--paper);color:var(--ink);border-radius:16px;padding:16px;box-shadow:0 16px 40px rgba(0,0,0,.22)}.preview-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:10px;font-size:10px;color:var(--muted)}.preview-top b{color:var(--green)}.preview-content{text-align:center;padding:22px 8px 8px}.preview-content>small{color:var(--orange);font-weight:900;letter-spacing:.12em}.preview-content h3{font-family:var(--font-display);font-size:23px;margin:9px 0 4px}.preview-content p{font-size:11px;color:var(--muted);margin:0}.preview-content audio{width:100%;margin:12px 0}.preview-no-audio{display:block;margin:12px 0;color:var(--muted);font-size:10px}.preview-timer{width:62px;height:62px;border:5px solid #e5dfd3;border-radius:50%;display:grid;place-items:center;margin:14px auto;font-family:var(--font-display);font-size:22px;color:var(--green)}.preview-answers{display:grid;grid-template-columns:1fr 1fr;gap:8px}.preview-answers button{border:0;border-radius:8px;padding:11px 4px;color:white;font-size:10px;font-weight:900;background:var(--green)}.preview-answers button+button{background:var(--orange)}.preview-waiting{display:grid;place-items:center;text-align:center;min-height:220px}.preview-waiting>span{font-size:36px;color:var(--orange)}.preview-waiting strong{font-family:var(--font-display);font-size:19px}.preview-waiting p{font-size:11px;color:var(--muted);margin:0}
.student-create{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}.student-create button{grid-column:1/-1}.student-create small{grid-column:1/-1;color:var(--muted);font-size:9px}.students-panel .student-list{max-height:610px}.student-row{transition:.16s;background:white}.student-row:hover{border-color:#aba494;box-shadow:0 7px 20px rgba(34,42,37,.07)}.student-main>div{display:grid;gap:3px}.student-main>div small{font-size:10px;color:var(--muted);padding-left:17px}.student-actions{display:grid;grid-template-columns:1fr 1fr auto;gap:6px;margin-top:10px}.student-action{display:grid;place-items:center;border:0;border-radius:7px;padding:8px 7px;background:#ece8df;color:var(--ink);font-size:9px;font-weight:900;text-decoration:none;cursor:pointer}.student-action.whatsapp{background:#dcf5e5;color:#15623b}.student-action.danger{background:#fff0ea;color:#ad3a1b}.empty-students{text-align:center;padding:30px 10px;color:var(--muted)}.empty-students strong{display:block;color:var(--ink)}
@media(max-width:1100px){.admin-grid{grid-template-columns:1fr}.admin-sidebar{position:static;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);align-items:start}.admin-heading{align-items:flex-start;flex-direction:column}.stats-strip{width:100%}}
@media(max-width:720px){.admin-topbar{height:auto;min-height:72px;gap:10px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.topbar-live{order:3;width:100%}.admin-sidebar{grid-template-columns:1fr}.stats-strip{grid-template-columns:repeat(3,1fr)}.stat-card{min-width:0;padding:11px}.stat-card strong{font-size:21px}.control-actions{grid-template-columns:1fr 1fr}.control-actions .action-main{grid-column:1/-1}.student-create{grid-template-columns:1fr}.student-create button,.student-create small{grid-column:auto}.student-actions{grid-template-columns:1fr 1fr}.student-action.danger{grid-column:1/-1}.admin-container{padding-top:20px}}
