*{box-sizing:border-box}
:root{--bg:#eef3f8;--glass:rgba(250,252,255,.86);--panel:rgba(255,255,255,.94);--ink:#1f2937;--muted:#667085;--line:#dbe3ec;--blue:#185abd;--blue2:#0f4ea6;--green:#217346;--orange:#d24726;--red:#a4373a;--shadow:0 24px 70px rgba(15,23,42,.12)}
html,body{margin:0;min-height:100%;font-family:"Segoe UI Variable","Segoe UI",Inter,system-ui,-apple-system,sans-serif;color:var(--ink);background:radial-gradient(circle at 12% 0%,rgba(96,165,250,.18),transparent 34rem),radial-gradient(circle at 92% 16%,rgba(196,181,253,.18),transparent 30rem),linear-gradient(160deg,#eef6ff,#f7f9fc 52%,#edf1f5)}
button,input,select,textarea{font:inherit}.hidden{display:none!important}button{cursor:pointer}a{color:inherit}.topbar{height:66px;padding:0 clamp(12px,3vw,34px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:rgba(248,250,252,.76);backdrop-filter:blur(24px);border-bottom:1px solid rgba(255,255,255,.95);position:sticky;top:0;z-index:30}.brand-side{display:flex;align-items:center;gap:9px}.back{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;text-decoration:none}.back:hover{background:#fff}.brand{display:flex;align-items:center;gap:9px;text-decoration:none}.brand-orb{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;font-weight:900}.brand strong,.brand small{display:block}.brand small{font-size:.72rem;color:#667085}.top-title{font-size:.88rem;color:#667085;font-weight:650}.topbar .sys-btn{justify-self:end}.shell{width:min(1340px,calc(100% - 24px));margin:24px auto 90px}.start-window,.task-card,.app-window,.results{background:var(--glass);border:1px solid rgba(255,255,255,.92);backdrop-filter:blur(22px);box-shadow:var(--shadow)}.start-window{max-width:1100px;margin:28px auto;display:grid;grid-template-columns:1.22fr .78fr;border-radius:24px;overflow:hidden}.intro{padding:clamp(30px,6vw,68px)}.intro h1,.results h1{font-size:clamp(2.45rem,5vw,4.8rem);line-height:.96;letter-spacing:-.05em;margin:10px 0 18px}.intro p{color:#475467;line-height:1.75}.eyebrow{color:#2563eb;font-size:.72rem;font-weight:850;letter-spacing:.11em}.badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.badges span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.82);border:1px solid #e2e8f0;color:#475467;font-size:.78rem}.launch-panel{padding:34px;background:rgba(255,255,255,.58);border-left:1px solid rgba(148,163,184,.22);display:flex;flex-direction:column;justify-content:center}.launch-panel label{font-weight:750;font-size:.9rem;margin-bottom:7px}.launch-panel label small{display:block;font-size:.72rem;color:#98a2b3;font-weight:500;margin-top:2px}.launch-panel input{min-height:46px;border:1px solid #cbd5e1;border-radius:10px;padding:0 12px;background:#fff;font-size:16px}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 0}.mode-card{border:1px solid #dbe3ec;background:#fff;border-radius:12px;padding:12px;text-align:left}.mode-card strong,.mode-card span{display:block}.mode-card span{font-size:.74rem;color:#667085;margin-top:4px}.mode-card.selected{border-color:#60a5fa;background:#eff6ff;box-shadow:0 0 0 2px rgba(37,99,235,.08)}.primary,.secondary,.sys-btn{min-height:40px;border-radius:9px;padding:8px 14px;border:1px solid transparent;font-weight:680}.primary{background:#2563eb;color:#fff}.primary:hover{background:#1d4ed8}.secondary,.sys-btn{background:rgba(255,255,255,.82);border-color:#d8e0ea;color:#344054}.wide{width:100%}.small{font-size:.74rem;color:#98a2b3;margin:10px 0 0}.quest-strip{display:grid;grid-template-columns:auto auto auto minmax(160px,1fr) auto auto;gap:18px;align-items:center;background:#111827;color:#fff;border-radius:15px;padding:12px 16px;margin-bottom:14px}.quest-strip>div{display:flex;flex-direction:column;gap:2px;white-space:nowrap}.quest-strip span{font-size:.65rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.09em}.quest-strip strong{font-size:.88rem}.progress-track,.progress{height:7px;border-radius:99px;background:#334155;overflow:hidden}.progress>div{height:100%;width:0;background:linear-gradient(90deg,#60a5fa,#a78bfa);transition:width .2s ease}.task-card{border-radius:16px;padding:20px 22px;margin-bottom:14px}.task-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.task-head h2{margin:4px 0 0;font-size:1.35rem}.marks{background:#eef2f7;border:1px solid #e2e8f0;border-radius:999px;padding:6px 9px;font-size:.76rem;font-weight:780;white-space:nowrap}.mission-text{color:#344054;line-height:1.65;margin:12px 0}.checklist{display:grid;gap:5px;color:#667085;font-size:.84rem}.checklist div:before{content:"□";margin-right:8px;color:#98a2b3}.feedback{margin-top:13px;border-radius:10px;padding:11px 13px;font-size:.84rem;font-weight:650}.feedback.good{background:#ecfdf3;color:#166534;border:1px solid #bbf7d0}.feedback.bad{background:#fff1f0;color:#991b1b;border:1px solid #fecaca}.feedback.hint{background:#fffaeb;color:#92400e;border:1px solid #fde68a}.task-buttons{margin-top:14px;display:flex;justify-content:flex-end;gap:8px}.app-window{border-radius:16px;overflow:hidden;min-height:590px}.app-titlebar{height:44px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:rgba(244,247,250,.92);border-bottom:1px solid #dfe5ec}.doc-title{display:flex;align-items:center;gap:9px;padding-left:14px;font-size:.8rem}.doc-title>span:first-child{width:24px;height:24px;border-radius:5px;display:grid;place-items:center;background:var(--blue);color:#fff;font-weight:850}.app-caption{font-size:.76rem;color:#667085}.window-controls{justify-self:end;display:flex}.window-controls span{width:44px;height:44px;display:grid;place-items:center;color:#475467}.ribbon-tabs{height:38px;display:flex;align-items:end;gap:1px;padding:0 8px;background:#fff;border-bottom:1px solid #e5e7eb;overflow:auto}.ribbon-tab{height:34px;border:0;background:transparent;padding:0 11px;font-size:.78rem;color:#344054;border-bottom:3px solid transparent;white-space:nowrap}.ribbon-tab.active{color:#185abd;border-color:#185abd}.ribbon{min-height:82px;display:flex;gap:10px;align-items:stretch;padding:8px 10px;background:#fff;border-bottom:1px solid #e5e7eb;overflow:auto}.ribbon-group{border-right:1px solid #e5e7eb;padding:0 10px 14px 0;display:flex;gap:6px;align-items:center;position:relative;min-width:max-content}.ribbon-group:last-child{border-right:0}.ribbon-group:after{content:attr(data-label);position:absolute;left:0;right:10px;bottom:0;text-align:center;color:#98a2b3;font-size:.62rem}.rib-btn{min-width:54px;height:48px;border:0;background:transparent;border-radius:7px;color:#344054;font-size:.72rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.rib-btn:hover{background:#f1f5f9}.rib-btn .ico{font-size:1.12rem}.rib-input{height:30px;border:1px solid #cfd8e3;border-radius:6px;padding:0 7px;width:94px}.word-workspace{display:grid;grid-template-columns:minmax(0,1fr) 250px;background:#e9edf2;min-height:460px;position:relative}.ruler{grid-column:1/2;height:27px;margin:0 auto;width:min(760px,calc(100% - 30px));background:#fff;border:1px solid #dfe5ec;border-top:0;display:flex;justify-content:space-between;align-items:end;padding:0 10px 3px;color:#8b95a4;font-size:.58rem}.page-stage{grid-column:1/2;padding:24px;display:flex;justify-content:center;align-items:flex-start;overflow:auto}.word-page{width:min(760px,100%);min-height:860px;background:#fff;box-shadow:0 3px 15px rgba(15,23,42,.13);padding:72px 74px;position:relative}.side-pane{grid-column:2;grid-row:1/3;background:#fff;border-left:1px solid #dfe5ec;padding:14px;overflow:auto}.side-pane h3{margin:0 0 10px;font-size:.9rem}.pane-field{margin-bottom:11px}.pane-field label{display:block;color:#667085;font-size:.72rem;margin-bottom:4px}.pane-field input,.pane-field select,.pane-field textarea{width:100%;min-height:36px;border:1px solid #cfd8e3;border-radius:7px;padding:6px 8px;font-size:.8rem}.doc-header,.doc-footer{position:absolute;left:54px;right:54px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;color:#667085;font-size:.7rem}.doc-header{top:24px}.doc-footer{bottom:24px}.doc-header>div:nth-child(2),.doc-footer>div:nth-child(2){text-align:center}.doc-header>div:nth-child(3),.doc-footer>div:nth-child(3){text-align:right}.doc-body{line-height:1.55;font-size:.86rem}.doc-body h2{font-size:1.3rem;margin:0 0 18px}.editable{outline:none;border:1px dashed transparent;border-radius:4px;padding:2px}.editable:focus{border-color:#93c5fd;background:#eff6ff}.doc-table{width:100%;border-collapse:collapse;margin:14px 0;font-size:.76rem}.doc-table td,.doc-table th{border:1px solid #475467;padding:6px 7px;min-width:50px}.doc-table td[contenteditable=true]{outline:none}.doc-table td.selected,.doc-table th.selected{box-shadow:inset 0 0 0 2px #2563eb}.table-centered{margin-left:auto;margin-right:auto}.table-right{margin-left:auto;margin-right:0}.wrap-table{float:right;width:48%;margin:0 0 12px 16px}.shade-yellow{background:#fde047}.shade-grey{background:#d1d5db}.shade-lightgrey{background:#e5e7eb}.shade-blue-pattern{background:repeating-linear-gradient(45deg,#dbeafe,#dbeafe 5px,#bfdbfe 5px,#bfdbfe 7px)}.no-borders td,.no-borders th{border-color:transparent}.keep-borders{border:1px solid #111827!important}.shape-layer{position:relative;height:110px;margin:10px 0;border:1px dashed #cbd5e1}.arrow-shape{position:absolute;height:3px;background:#ef4444;transform-origin:left center}.arrow-shape:after{content:"";position:absolute;right:-1px;top:-5px;border-left:10px solid #ef4444;border-top:6px solid transparent;border-bottom:6px solid transparent}.line-shape{position:absolute;height:3px;background:#ef4444}.object-group{outline:2px dashed #2563eb;outline-offset:4px}.excel-ribbon button,.ppt-ribbon button,.access-ribbon button{border:0;background:transparent;border-radius:7px;padding:8px 12px}.excel-ribbon button:hover,.ppt-ribbon button:hover,.access-ribbon button:hover{background:#f1f5f9}.ribbon-unavailable{min-width:min(520px,80vw);display:flex;flex-direction:column;justify-content:center;gap:3px;padding:9px 14px;border:1px dashed #cbd5e1;border-radius:9px;background:#f8fafc;color:#667085;font-size:.73rem}.ribbon-unavailable strong{color:#475467;font-size:.76rem}.excel-ribbon .rib-btn,.ppt-ribbon .rib-btn,.access-ribbon .rib-btn{padding:4px 7px}.excel-grid{display:grid;grid-template-columns:60px 1fr;grid-template-rows:34px 1fr;min-height:470px;background:#fff}.name-box,.formula-bar{border-right:1px solid #dfe5ec;border-bottom:1px solid #dfe5ec;display:flex;align-items:center;padding:0 8px;font-size:.76rem}.formula-bar{grid-column:2}.sheet{grid-column:1/3;overflow:auto;padding:0}.sheet table{border-collapse:collapse;width:100%;font-size:.76rem}.sheet th{background:#f3f6f8;font-weight:500}.sheet th,.sheet td{border:1px solid #dfe5ec;height:28px;min-width:78px;padding:4px 6px}.office-footer-panel{position:absolute;right:28px;top:180px;width:330px;background:#fff;border:1px solid #cfd8e3;border-radius:12px;box-shadow:var(--shadow);padding:15px;z-index:5}.ppt-body{display:grid;grid-template-columns:170px minmax(0,1fr) 230px;min-height:470px;background:#eceff3}.slides{background:#fff;border-right:1px solid #dfe5ec;padding:12px}.slide-thumb{font-size:.68rem;color:#667085}.slide-thumb>div{width:120px;height:68px;border:2px solid #d24726;background:#fff;margin-top:4px}.slide-stage{padding:28px;display:flex;justify-content:center;align-items:flex-start}.slide{width:min(760px,100%);aspect-ratio:16/9;background:#fff;box-shadow:0 3px 16px rgba(15,23,42,.16);position:relative;padding:40px}.slide h2{font-size:2rem}.slide-footer{position:absolute;left:28px;right:28px;bottom:16px;display:grid;grid-template-columns:1fr auto;gap:10px;font-size:.72rem;color:#667085}.office-side{background:#fff;border-left:1px solid #dfe5ec;padding:14px}.access-body{display:grid;grid-template-columns:205px 1fr;min-height:470px;background:#f3f5f7}.access-nav{background:#fff;border-right:1px solid #dfe5ec;padding:12px;display:flex;flex-direction:column;gap:8px;font-size:.76rem}.access-nav strong{font-size:.8rem}.access-nav span{color:#667085}.access-nav button{border:0;background:#f3e8ff;color:#6b21a8;text-align:left;padding:7px;border-radius:6px}.report-design{padding:25px;overflow:auto}.report-section{background:#fff;border:1px solid #cfd8e3;margin-bottom:8px;min-height:70px}.section-label{background:#f3e8ff;color:#6b21a8;border-bottom:1px solid #d8b4fe;padding:5px 8px;font-size:.7rem;font-weight:700}.report-content{padding:12px;font-size:.78rem}.explorer-command{height:52px;background:#fff;border-bottom:1px solid #dfe5ec;display:flex;align-items:center;gap:8px;padding:8px 10px}.explorer-command button{border:0;background:#f8fafc;border-radius:7px;padding:7px 10px}.address{flex:1;border:1px solid #d8e0ea;border-radius:7px;padding:8px 10px;color:#667085;font-size:.78rem}.explorer-body{display:grid;grid-template-columns:190px 1fr;min-height:430px;background:#fff}.explorer-body aside{border-right:1px solid #dfe5ec;padding:13px;display:flex;flex-direction:column;gap:9px;font-size:.78rem}.explorer-body aside span{color:#667085}.explorer-list{padding:10px;overflow:auto}.explorer-list table{width:100%;border-collapse:collapse;font-size:.78rem}.explorer-list th,.explorer-list td{text-align:left;border-bottom:1px solid #eef2f6;padding:9px}.explorer-list tr.selected{background:#eaf3ff}.snip-panel{position:absolute;right:28px;top:170px;width:300px;background:#fff;border:1px solid #d7e0e8;border-radius:12px;padding:15px;box-shadow:var(--shadow);z-index:8}.modal{position:fixed;inset:0;background:rgba(15,23,42,.42);backdrop-filter:blur(5px);display:grid;place-items:center;padding:16px;z-index:60}.dialog{width:min(540px,100%);background:#fff;border-radius:14px;box-shadow:0 25px 80px rgba(15,23,42,.28);padding:20px}.dialog h3{margin:0 0 13px}.dialog-body{display:grid;gap:9px}.dialog label{font-size:.79rem;color:#475467;font-weight:700}.dialog input,.dialog select,.dialog textarea{width:100%;min-height:42px;border:1px solid #cfd8e3;border-radius:8px;padding:7px 9px;font-size:16px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.results{max-width:1050px;margin:28px auto;border-radius:22px;padding:clamp(26px,5vw,52px)}.result-top{display:flex;gap:18px;align-items:center;margin:24px 0}.score-ring{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;border:11px solid #dbeafe;background:#fff}.score-ring span{font-size:1.5rem;font-weight:900;color:#1d4ed8}.big-score{font-size:2rem;font-weight:900}.result-top p{color:#667085;margin:5px 0}.result-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:14px}.result-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:16px}.skill-row{display:grid;grid-template-columns:130px 1fr auto;gap:9px;align-items:center;margin:10px 0;font-size:.8rem}.skill-track{height:7px;border-radius:99px;background:#e5e7eb;overflow:hidden}.skill-track div{height:100%;background:#3b82f6}.review-row{display:grid;grid-template-columns:1fr auto;gap:10px;border-bottom:1px solid #eef2f6;padding:9px 0;font-size:.8rem}.ok{color:#15803d;font-weight:800}.miss{color:#b42318;font-weight:800}.result-buttons{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.link{text-decoration:none;display:inline-flex;align-items:center}.taskbar{position:fixed;bottom:0;left:0;right:0;height:48px;background:rgba(248,250,252,.75);backdrop-filter:blur(26px);border-top:1px solid rgba(255,255,255,.95);display:flex;justify-content:center;align-items:center;gap:6px;z-index:40}.task-icon{width:38px;height:38px;border-radius:8px;display:grid;place-items:center;text-decoration:none;font-weight:800}.task-icon:nth-child(2){background:#185abd;color:#fff}.task-icon:nth-child(3){color:#217346}.task-icon:nth-child(4){color:#d24726}.task-icon:nth-child(5){color:#a4373a}.task-icon:hover{background:#fff}.ctx-note{font-size:.72rem;color:#667085;line-height:1.45}.mini-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:9px;padding:10px;margin-bottom:9px}.mini-card strong{display:block;font-size:.8rem;margin-bottom:4px}.select-cell-help{color:#667085;font-size:.72rem;margin-bottom:9px}
@media(max-width:980px){.start-window{grid-template-columns:1fr}.launch-panel{border-left:0;border-top:1px solid #e2e8f0}.quest-strip{grid-template-columns:auto auto 1fr auto}.quest-strip>div:nth-child(3),.quest-strip>div:last-child{display:none}.word-workspace{grid-template-columns:1fr}.side-pane{grid-column:1;grid-row:auto;border-left:0;border-top:1px solid #dfe5ec}.ppt-body{grid-template-columns:120px minmax(0,1fr)}.ppt-body .office-side{grid-column:1/3;border-left:0;border-top:1px solid #dfe5ec}.result-grid{grid-template-columns:1fr}}
@media(max-width:650px){.shell{width:min(100% - 12px,1340px);margin-top:10px}.topbar{grid-template-columns:1fr auto;padding:0 8px}.top-title{display:none}.brand small{display:none}.mode-grid{grid-template-columns:1fr}.quest-strip{grid-template-columns:auto 1fr auto;gap:8px}.quest-strip>div:nth-child(2){display:none}.task-card{padding:17px}.task-head{flex-direction:column}.task-buttons{justify-content:stretch}.task-buttons button{flex:1}.app-titlebar{grid-template-columns:1fr auto}.app-caption{display:none}.word-page{padding:62px 34px;min-height:760px}.page-stage{padding:14px}.explorer-body{grid-template-columns:1fr}.explorer-body aside{display:none}.ppt-body{grid-template-columns:1fr}.slides{display:none}.ppt-body .office-side{grid-column:1}.access-body{grid-template-columns:1fr}.access-nav{display:none}.result-top{align-items:flex-start}.skill-row{grid-template-columns:100px 1fr auto}}

/* Error 24: keep supporting-app navigation visible on phones. */
@media(max-width:650px){
  .explorer-body{grid-template-columns:1fr!important}
  .explorer-body aside{display:flex!important;flex-direction:row!important;gap:6px;overflow-x:auto;border-right:0;border-bottom:1px solid #dfe5ec;padding:8px;white-space:nowrap}
  .ppt-body{grid-template-columns:1fr!important;min-width:0}
  .slides{display:flex!important;gap:7px;overflow-x:auto;border-right:0;border-bottom:1px solid #dfe5ec;padding:7px}
  .slide-thumb{flex:0 0 84px}
  .ppt-body .office-side{grid-column:1!important}
  .access-body{grid-template-columns:1fr!important}
  .access-nav{display:flex!important;flex-direction:row;align-items:center;gap:6px;overflow-x:auto;border-right:0;border-bottom:1px solid #dfe5ec;padding:7px;white-space:nowrap}
  .access-nav strong,.access-nav span,.access-nav button{flex:0 0 auto}
}

