.xp{--org:#e02329;--xp-bg:#fff;--xp-panel:#f6f7f9;--xp-fg:#14181f;--xp-muted:#5f6672;--xp-bd:#d9dde3;--xp-acc:var(--org);--xp-acc-fg:#fff;--xp-acc-soft:color-mix(in oklch, var(--org) 10%, white);--xp-ans:#1f2937;--xp-flag:#b45309;--xp-hl:#fde68a;--xp-hl-note:#bfdbfe;--xp-amber:#b45309;--xp-red:#bc191e;--xp-fs:15px;z-index:50;background:var(--xp-bg);color:var(--xp-fg);font:400 var(--xp-fs) / 1.55 Arial, "Helvetica Neue", system-ui, sans-serif;-webkit-font-smoothing:antialiased;flex-direction:column;display:flex;position:fixed;inset:0}.xp *,.xp :before,.xp :after{box-sizing:border-box}.xp h1,.xp h2,.xp h3,.xp p{margin:0}.xp button{font:inherit;color:inherit}.xp.xp-size-1{--xp-fs:17px}.xp.xp-size-2{--xp-fs:20px}.xp.xp-c-yellow{--xp-bg:#ffff9e;--xp-panel:#f5f58a;--xp-fg:#000;--xp-muted:#222;--xp-bd:#000;--xp-acc:#000;--xp-acc-fg:#ffff9e;--xp-acc-soft:#ecec7a;--xp-ans:#000;--xp-flag:#000;--xp-hl:#9be3ff;--xp-hl-note:#c9b6ff;--xp-amber:#000;--xp-red:#000}.xp.xp-c-dark{--xp-bg:#000;--xp-panel:#111;--xp-fg:#fff;--xp-muted:#ddd;--xp-bd:#fff;--xp-acc:#fff;--xp-acc-fg:#000;--xp-acc-soft:#222;--xp-ans:#fff;--xp-flag:#ffd60a;--xp-hl:#7a5d00;--xp-hl-note:#1d4ed8;--xp-amber:#ffd60a;--xp-red:#ff6b6b}.xp .sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.xp-muted{color:var(--xp-muted)}.xp-muted.small,.xp .small{font-size:.87em}.xp-warn{color:var(--xp-red);font-weight:600}.xp-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;display:flex}.xp-row.end{justify-content:flex-end}.xp-btn{border:1px solid var(--xp-bd);background:var(--xp-bg);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:0 16px;font-weight:600;display:inline-flex}.xp-btn:hover{background:var(--xp-panel)}.xp-btn.pri{background:var(--xp-acc);border-color:var(--xp-acc);color:var(--xp-acc-fg)}.xp-btn.pri:hover{filter:brightness(.92)}.xp-btn.on{outline:2px solid var(--xp-acc);outline-offset:1px}.xp-btn:disabled{opacity:.5;cursor:default;pointer-events:none}.xp-btn:focus-visible,.xp-tool:focus-visible,.xp-n:focus-visible,.xp-arrow:focus-visible,.xp-part:focus-visible{outline:3px solid color-mix(in oklch, var(--xp-acc) 55%, transparent);outline-offset:1px}.xp-link{color:var(--xp-muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;text-decoration:underline}.xp-tool{border:1px solid var(--xp-bd);background:var(--xp-bg);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:600}.xp-tool:hover{background:var(--xp-panel)}.xp-center{flex:1;place-items:center;padding:24px 16px;display:grid;overflow:auto}.xp-intro{background:var(--xp-panel);flex:1;justify-content:center;padding:40px 16px;display:flex;overflow:auto}.xp-card{background:var(--xp-bg);border:1px solid var(--xp-bd);border-radius:14px;align-self:flex-start;width:min(680px,100%);padding:28px}.xp-card.narrow{text-align:center;justify-items:center;gap:14px;width:min(420px,100%);display:grid}.xp-card h1{margin:10px 0 8px;font-size:1.6em}.xp-steps{flex-wrap:wrap;gap:6px;margin:0 0 6px;padding:0;list-style:none;display:flex}.xp-steps li{background:var(--xp-panel);color:var(--xp-muted);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.xp-steps li.on{background:var(--xp-acc);color:var(--xp-acc-fg)}.xp-steps li.done{color:var(--xp-fg)}.xp-dl{border:1px solid var(--xp-bd);background:var(--xp-panel);border-radius:10px;grid-template-columns:max-content 1fr;gap:8px 18px;margin:18px 0;padding:16px;display:grid}.xp-dl dt{color:var(--xp-muted)}.xp-dl dd{margin:0;font-weight:700}.xp-sound{flex-wrap:wrap;align-items:center;gap:18px;margin:20px 0 4px;display:flex}.xp-vol{color:var(--xp-muted);align-items:center;gap:8px;display:inline-flex}.xp-vol input{width:110px;accent-color:var(--xp-acc)}.xp-vol.big input{width:200px}.xp-instr-sec{border-left:3px solid var(--xp-acc);margin-top:16px;padding-left:12px}.xp-instr-sec h3{margin-bottom:4px;font-size:1em}.xp-instr-sec p{color:var(--xp-fg)}.xp-card>.xp-muted{margin-top:14px}.xp-prep{margin-top:16px}.xp-bar{background:var(--xp-panel);border:1px solid var(--xp-bd);border-radius:999px;height:8px;margin-top:8px;overflow:hidden}.xp-bar>i{background:var(--xp-acc);height:100%;transition:width .2s;display:block}.xp-h{border-bottom:1px solid var(--xp-bd);background:var(--xp-panel);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;min-height:60px;padding:6px 18px;display:grid}.xp-h-who{min-width:0}.xp-h-who b{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.xp-h-who small{color:var(--xp-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.xp-timer{text-align:center;border-radius:8px;justify-items:center;gap:1px;padding:2px 12px;font-size:1.05em;font-weight:700;display:grid}.xp-timer.amber{color:var(--xp-amber);background:color-mix(in oklch, var(--xp-amber) 12%, transparent)}.xp-timer.red{color:var(--xp-red);background:color-mix(in oklch, var(--xp-red) 12%, transparent)}.xp-timer-hidden{color:var(--xp-muted);font-weight:600}.xp-h-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.xp-save{color:var(--xp-muted);white-space:nowrap;font-size:12px}.xp-save.saved:before{content:"✓ "}.xp-save.offline{color:var(--xp-red);font-weight:600}.xp-popwrap{position:relative}.xp-pop{z-index:20;background:var(--xp-bg);border:1px solid var(--xp-bd);border-radius:12px;width:260px;padding:14px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 14px 34px #0000002e}.xp-pop-h{color:var(--xp-muted);margin:4px 0 6px;font-size:12px;font-weight:700}.xp-pop-h+.xp-seg+.xp-pop-h{margin-top:14px}.xp-seg{gap:4px;display:flex}.xp-seg.col{flex-direction:column}.xp-seg button{border:1px solid var(--xp-bd);background:var(--xp-bg);cursor:pointer;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.xp-seg.col button{justify-content:flex-start}.xp-seg button.on{border-color:var(--xp-acc);box-shadow:inset 0 0 0 1px var(--xp-acc);font-weight:700}.xp-seg i{border:1px solid #000;border-radius:3px;width:18px;height:14px;display:inline-block}.xp-seg .sw-standard i{background:#fff}.xp-seg .sw-yellow i{background:#ffff9e}.xp-seg .sw-dark i{background:#000;border-color:#888}.xp-main{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.xp-layer{z-index:5;background:var(--xp-bg);position:absolute;inset:0;overflow:auto}.xp-split{grid-template-columns:minmax(0, var(--xp-split,50%)) 10px minmax(0, 1fr);flex:1;min-height:0;display:grid}.xp-pane{min-height:0;overflow:auto}.xp-full{flex:1;min-height:0;overflow:auto}.xp-divider{cursor:col-resize;background:var(--xp-panel);border-left:1px solid var(--xp-bd);border-right:1px solid var(--xp-bd);touch-action:none;place-items:center;display:grid}.xp-divider span{background:var(--xp-muted);opacity:.5;border-radius:4px;width:4px;height:36px}.xp-divider:focus-visible{outline:3px solid var(--xp-acc)}.xp-passage{padding:28px 32px 60px;position:relative}.xp-passage-title{margin-bottom:14px;font-size:1.35em}.xp-passage-body{-webkit-user-select:text;user-select:text;line-height:1.75}.xp-passage-body p{margin:0 0 1em}.xp-passage-body table,.xp-stim table{border-collapse:collapse;max-width:100%;margin:8px 0 14px}.xp-passage-body td,.xp-passage-body th,.xp-stim td,.xp-stim th{border:1px solid var(--xp-bd);vertical-align:top;text-align:left;padding:6px 10px}.xp-passage-body img,.xp-stim img{max-width:100%;height:auto}.xp mark.xp-hl{background:var(--xp-hl);color:inherit;cursor:pointer;border-radius:2px;position:relative}.xp mark.xp-hl.note{background:var(--xp-hl-note);border-bottom:2px dotted var(--xp-fg)}.xp mark.xp-hl[data-note]:hover:after{content:attr(data-note);z-index:10;white-space:pre-wrap;background:var(--xp-fg);width:max-content;max-width:280px;color:var(--xp-bg);pointer-events:none;border-radius:6px;padding:6px 9px;font-size:13px;line-height:1.4;position:absolute;top:calc(100% + 4px);left:0}.xp-hlmenu{z-index:15;background:var(--xp-bg);border:1px solid var(--xp-bd);border-radius:10px;gap:4px;padding:4px;display:flex;position:absolute;box-shadow:0 10px 26px #0000002e}.xp-hlmenu button{cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 10px;font-size:13px;font-weight:600}.xp-hlmenu button:hover{background:var(--xp-panel)}.xp-hlmenu button.pri{background:var(--xp-acc);color:var(--xp-acc-fg)}.xp-notebox{width:240px;padding:4px}.xp-notebox textarea{border:1px solid var(--xp-bd);width:100%;font:inherit;background:var(--xp-bg);color:var(--xp-fg);resize:vertical;border-radius:6px;padding:6px 8px;font-size:13px}.xp-notebox .xp-row{justify-content:flex-end;margin-top:6px}.xp-questions{max-width:900px;padding:24px 32px 60px}.xp-listen{flex:1;min-height:0;position:relative;overflow:auto}.xp-listen .xp-questions{margin:0 auto}.xp-audiobar{z-index:4;background:var(--xp-acc-soft);border-bottom:1px solid var(--xp-bd);align-items:center;gap:10px;padding:8px 32px;font-size:13px;font-weight:600;display:flex;position:sticky;top:0}.xp-audiobar.done{background:var(--xp-panel)}.xp-eq{align-items:flex-end;gap:2px;height:14px;display:inline-flex}.xp-eq i{background:var(--xp-acc);width:3px;animation:1s ease-in-out infinite xp-eq}.xp-eq i:nth-child(2){animation-delay:.2s}.xp-eq i:nth-child(3){animation-delay:.4s}@keyframes xp-eq{0%,to{height:4px}50%{height:14px}}.xp-part-intro{color:var(--xp-muted);margin-bottom:18px;font-style:italic}.xp-group{margin-bottom:34px}.xp-group-h{margin-bottom:4px;font-size:1.05em}.xp-instr{margin-bottom:14px}.xp-instr p{margin:0 0 .4em}.xp-item{border:1px solid #0000;border-radius:8px;margin:0 -10px 6px;padding:8px 10px;scroll-margin:80px}.xp-item.cur{border-color:var(--xp-bd);background:color-mix(in oklch, var(--xp-panel) 60%, transparent)}.xp-prompt{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.xp-prompt>span:last-child{flex:1;min-width:180px}.xp-qnum{border:1.5px solid var(--xp-fg);border-radius:6px;flex-shrink:0;place-items:center;min-width:28px;height:26px;padding:0 6px;font-size:.9em;font-weight:700;display:inline-grid}.xp-qnum.cur{background:var(--xp-fg);color:var(--xp-bg)}.xp-qnum.flag{border-color:var(--xp-flag);box-shadow:inset 0 -3px 0 var(--xp-flag)}.xp-qnums{gap:4px;display:inline-flex}.xp-anchor{height:0;scroll-margin:80px;display:block}.xp-hint{color:var(--xp-muted);margin:6px 0;font-size:.87em}.xp-opts{gap:4px;margin:8px 0 0 38px;display:grid}.xp-opt{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:baseline;gap:10px;padding:6px 10px;display:flex}.xp-opt:hover{background:var(--xp-panel)}.xp-opt.sel{border-color:var(--xp-acc);background:var(--xp-acc-soft)}.xp-opt.dim{opacity:.55}.xp-opt input{accent-color:var(--xp-acc);flex-shrink:0;transform:translateY(2px)}.xp-key{min-width:22px;font-weight:700}.xp-input{border:1.5px solid var(--xp-fg);background:var(--xp-bg);min-width:140px;max-width:100%;height:32px;color:var(--xp-fg);font:inherit;border-radius:4px;outline:none;padding:0 8px}.xp-input::placeholder{color:var(--xp-muted);text-align:center;opacity:1;font-weight:700}.xp-input:focus{border-color:var(--xp-acc);box-shadow:0 0 0 3px color-mix(in oklch, var(--xp-acc) 25%, transparent)}.xp-select{min-width:110px;padding-right:4px}.xp-stim{line-height:2.1}.xp-stim p{margin:0 0 .5em}.xp-stim ul,.xp-stim ol{margin:0 0 .5em;padding-left:1.4em}.xp-slot{vertical-align:middle;scroll-margin:80px;display:inline-block}.xp-gap{margin:0 2px;display:inline-block}.xp-gap .xp-input{width:150px;min-width:0;height:30px}.xp-gap.cur .xp-input{border-color:var(--xp-acc)}.xp-box{border:1px solid var(--xp-bd);background:var(--xp-panel);border-radius:10px;gap:6px;margin-bottom:6px;padding:12px;display:grid}.xp-box.small{margin-top:10px}.xp-chip{border:1px solid var(--xp-bd);background:var(--xp-bg);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:baseline;gap:10px;padding:6px 10px;display:flex}.xp-chip.static{cursor:default}.xp-chip.used{opacity:.4;cursor:default;text-decoration:line-through}.xp-chip.in{cursor:grab;border-color:var(--xp-acc);flex:1;min-width:0}.xp-chip.in span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.xp-match-row{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:10px;display:grid}.xp-drop{border:1.5px dashed var(--xp-bd);border-radius:8px;align-items:center;gap:6px;min-height:42px;padding:4px;display:flex}.xp-drop.has{border-style:solid}.xp-drop.over{border-color:var(--xp-acc);background:var(--xp-acc-soft)}.xp-drop .xp-select{width:auto;min-width:84px}.xp-drop.has .xp-select{width:84px}.xp-drop.inline{vertical-align:middle;gap:4px;min-height:0;padding:1px 3px;line-height:1.2;display:inline-flex}.xp-drop.inline .xp-select,.xp-drop.inline.has .xp-select{width:70px;min-width:0;height:28px}.xp-drop-n{padding:0 2px;font-size:.8em}.xp-clear{cursor:pointer;color:var(--xp-muted);background:0 0;border:0;padding:2px 6px;font-size:18px;line-height:1}.xp-label{border:1px solid var(--xp-bd);background:#fff;border-radius:8px;width:100%;max-width:760px;position:relative;overflow:hidden}.xp-label img{object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.xp-pin{align-items:center;gap:3px;scroll-margin:80px;display:flex;position:absolute;transform:translate(-50%,-50%)}.xp-pin .xp-qnum{background:var(--xp-fg);color:var(--xp-bg);min-width:24px;height:22px;font-size:12px}.xp-pin-input.xp-input{color:#14181f;background:#fff;width:110px;min-width:0;height:26px;font-size:13px}.xp-nav{border-top:1px solid var(--xp-bd);background:var(--xp-panel);align-items:stretch;gap:8px;min-height:64px;padding:8px 12px;display:flex}.xp-flag{border:1px solid var(--xp-bd);background:var(--xp-bg);cursor:pointer;border-radius:8px;flex-shrink:0;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:flex}.xp-flag.on{color:var(--xp-flag);border-color:var(--xp-flag)}.xp-flag:disabled{opacity:.5}.xp-parts{scrollbar-width:thin;flex:1;gap:6px;min-width:0;display:flex;overflow-x:auto}.xp-part{border:1px solid var(--xp-bd);background:var(--xp-bg);cursor:pointer;text-align:left;border-radius:8px;flex-direction:column;flex-shrink:0;justify-content:center;gap:2px;padding:4px 12px;font-size:13px;display:flex}.xp-part span{color:var(--xp-muted);white-space:nowrap;font-size:12px}.xp-part.on{cursor:default;border-color:var(--xp-acc);flex-direction:row;align-items:center;gap:10px}.xp-part b{white-space:nowrap}.xp-nums{flex-wrap:wrap;gap:4px;display:flex}.xp-part .xp-nums{flex-wrap:nowrap}.xp-n{border:1.5px solid var(--xp-bd);background:var(--xp-bg);cursor:pointer;border-radius:6px;place-items:center;min-width:30px;height:30px;padding:0 4px;font-size:13px;font-weight:700;display:inline-grid;position:relative}.xp-n.ans{background:var(--xp-ans);border-color:var(--xp-ans);color:var(--xp-bg)}.xp-n.flag:after{content:"";background:var(--xp-flag);border:2px solid var(--xp-bg);border-radius:999px;width:10px;height:10px;position:absolute;top:-4px;right:-4px}.xp-n.cur{outline:2px solid var(--xp-acc);outline-offset:2px}.xp-nav-acts{flex-shrink:0;align-items:center;gap:6px;display:flex}.xp-arrow{border:1px solid var(--xp-bd);background:var(--xp-acc);width:40px;height:40px;color:var(--xp-acc-fg);cursor:pointer;border-radius:8px;font-size:22px;font-weight:700;line-height:1}.xp-review{max-width:760px;margin:0 auto;padding:32px 20px 48px}.xp-review h2{margin-bottom:6px;font-size:1.5em}.xp-review-sum{grid-template-columns:1fr 1fr;gap:12px;margin:20px 0;display:grid}.xp-review-sum>div{border:1px solid var(--xp-bd);background:var(--xp-panel);border-radius:10px;gap:4px;padding:12px 14px;display:grid}.xp-review-part{margin-top:18px}.xp-review-part h3{margin-bottom:8px;font-size:1em}.xp-legend{color:var(--xp-muted);flex-wrap:wrap;gap:16px;margin-top:20px;font-size:13px;display:flex}.xp-legend span{align-items:center;gap:6px;display:inline-flex}.xp-legend .xp-n{cursor:default;min-width:18px;height:18px}.xp-scrim{z-index:30;background:#0a0c1073;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.xp-modal{background:var(--xp-bg);border:1px solid var(--xp-bd);border-radius:14px;gap:10px;width:min(480px,100%);padding:24px;display:grid;box-shadow:0 20px 50px #00000040}.xp-modal h2{font-size:1.25em}.xp-modal .xp-row{margin-top:8px}.xp-modal .xp-btn{justify-self:start}.xp-help{gap:6px;margin:0;padding-left:1.2em;display:grid}.xp-toast{z-index:40;background:var(--xp-red);color:#fff;border-radius:10px;max-width:calc(100% - 32px);padding:10px 16px;font-size:14px;position:absolute;bottom:84px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0003}.xp-writing{flex-direction:column;flex:1;min-height:0;display:flex}.xp-wtabs{border-bottom:1px solid var(--xp-bd);background:var(--xp-panel);gap:4px;padding:8px 32px 0;display:flex}.xp-wtab{border:1px solid var(--xp-bd);background:var(--xp-bg);cursor:pointer;color:var(--xp-muted);border-bottom:0;border-radius:8px 8px 0 0;margin-bottom:-1px;padding:7px 18px;font-weight:600}.xp-wtab.on{color:var(--xp-fg);box-shadow:inset 0 3px 0 var(--xp-acc)}.xp-wsplit{grid-template-columns:minmax(0,1fr) 10px minmax(0,1fr)}.xp-wsplit .xp-divider{cursor:default}.xp-wprompt{white-space:pre-line;border:1px solid var(--xp-bd);background:var(--xp-panel);border-radius:10px;margin:6px 0 14px;padding:14px 16px}.xp-wfig{margin:0 0 14px}.xp-wfig img{border:1px solid var(--xp-bd);background:#fff;border-radius:8px;max-width:100%;height:auto;display:block}.xp-essay{border:0;border-radius:0;flex-direction:column;height:100%;margin:0;padding:18px 24px;display:flex}.xp-essay.cur{background:0 0;border:0}.xp-essay-box{resize:none;border:1.5px solid var(--xp-fg);width:100%;min-height:320px;font:inherit;background:var(--xp-bg);color:var(--xp-fg);border-radius:6px;outline:none;flex:1;padding:12px 14px;line-height:1.7}.xp-essay-box:focus{border-color:var(--xp-acc);box-shadow:0 0 0 3px color-mix(in oklch, var(--xp-acc) 25%, transparent)}.xp-essay-foot{justify-content:space-between;gap:10px;margin-top:8px;font-size:13px;display:flex}.xp-wc{font-weight:700}.xp-wc.short{color:var(--xp-amber)}.xp-speaking{flex-direction:column;flex:1;min-height:0;display:flex}.xp-speak-main{background:var(--xp-panel);flex:1;justify-content:center;min-height:0;padding:32px 16px;display:flex;overflow:auto}.xp-speak-card{background:var(--xp-bg);border:1px solid var(--xp-bd);border-radius:14px;align-self:flex-start;gap:14px;width:min(640px,100%);padding:26px;display:grid}.xp-speak-card.wide{width:min(820px,100%)}.xp-speak-card h2{font-size:1.35em}.xp-speak-card .xp-row{margin-top:0}.xp-speak-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.xp-speak-q{white-space:pre-line;font-size:1.15em;line-height:1.5}.xp-cue{border:2px solid var(--xp-fg);border-radius:10px;padding:14px 18px;line-height:1.6}.xp-cue ul{margin:6px 0;padding-left:1.3em}.xp-speak-stage{background:var(--xp-acc-soft);border-radius:10px;align-items:center;gap:10px;min-height:40px;padding:8px 14px;font-weight:600;display:flex}.xp-speak-stage.record{background:color-mix(in oklch, var(--xp-red) 12%, transparent)}.xp-speak-stage.between,.xp-speak-stage.stopping{background:var(--xp-panel)}.xp-clock{font-variant-numeric:tabular-nums;margin-left:auto;font-size:1.15em}.xp-rec{background:var(--xp-red);border-radius:999px;width:12px;height:12px;animation:1s steps(2,start) infinite xp-blink}@keyframes xp-blink{to{visibility:hidden}}.xp-meter{background:var(--xp-panel);border:1px solid var(--xp-bd);border-radius:999px;height:10px;overflow:hidden}.xp-meter>i{background:var(--xp-acc);height:100%;transition:width 80ms linear;display:block}.xp-speak-notes{gap:4px;font-size:13px;font-weight:600;display:grid}.xp-speak-notes textarea{border:1px solid var(--xp-bd);width:100%;font:inherit;background:var(--xp-bg);color:var(--xp-fg);resize:vertical;border-radius:8px;padding:8px 10px;font-weight:400}.xp-speaking .xp-part{cursor:default}.xp-up{color:var(--xp-muted);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.xp-up.ok:before{content:"✓"}.xp-up.failed{color:var(--xp-red);font-weight:600}.xp-spin{border:2px solid var(--xp-bd);border-top-color:var(--xp-acc);border-radius:999px;width:12px;height:12px;animation:.8s linear infinite xp-rot}@keyframes xp-rot{to{transform:rotate(360deg)}}.xp-mic{gap:10px;margin:18px 0 4px;display:grid}.xp-mic .xp-row{margin-top:0}.xp.xp-hsk{font-family:Arial,Helvetica Neue,system-ui,PingFang SC,Hiragino Sans,Noto Sans CJK SC,Noto Sans JP,Microsoft YaHei,sans-serif}.xp.xp-jlpt{font-family:Arial,Helvetica Neue,system-ui,Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic,PingFang SC,Noto Sans CJK SC,Microsoft YaHei,sans-serif}.xp.xp-topik{font-family:Arial,Helvetica Neue,system-ui,Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,sans-serif}.xp-topik .xp-essay-box,.xp-topik .xp-input,.xp-topik .xp-passage-body,.xp-topik .xp-prompt{line-height:1.8}.xp-cjk .xp-essay-box,.xp-cjk .xp-input,.xp-cjk .xp-passage-body,.xp-cjk .xp-prompt{line-height:1.85}.xp-cjk ruby rt{color:var(--xp-muted);-webkit-user-select:none;user-select:none;font-size:.55em}.xp-cjk .xp-passage-body ruby,.xp-cjk .xp-prompt ruby{ruby-position:over}.xp-gfig{margin:8px 0 14px}.xp-gfig img{border:1px solid var(--xp-bd);background:#fff;border-radius:8px;max-width:100%;height:auto;max-height:360px;display:block}.xp-gstim{background:var(--xp-panel);border-radius:8px;margin:8px 0 14px;padding:12px 14px;line-height:1.8}.xp-gstim p{margin:0 0 .6em}.xp-gstim p:last-child{margin-bottom:0}.xp-opts.xp-letters{flex-wrap:wrap;gap:8px;display:flex}.xp-opts.xp-letters .xp-opt{border-color:var(--xp-bd);align-items:center;padding:8px 18px}.xp-opts.xp-letters .xp-key{min-width:0;font-size:1.1em}.xp-arrange{padding-bottom:8px}.xp-arr-line{border:1.5px dashed var(--xp-bd);border-radius:8px;min-height:46px;margin:6px 0 8px 38px;padding:8px 12px;font-size:1.1em;line-height:1.9}.xp-arr-pieces{flex-wrap:wrap;gap:8px;margin:0 0 6px 38px;display:flex}.xp-arr-piece{border:1.5px solid var(--xp-bd);background:var(--xp-bg);cursor:pointer;border-radius:8px;min-height:40px;padding:4px 14px;font-size:1.05em;position:relative}.xp-arr-piece:hover{background:var(--xp-panel)}.xp-arr-piece.on{border-color:var(--xp-acc);background:var(--xp-acc-soft)}.xp-arr-piece:focus-visible{outline:3px solid color-mix(in oklch, var(--xp-acc) 55%, transparent);outline-offset:1px}.xp-arr-n{background:var(--xp-acc);min-width:18px;height:18px;color:var(--xp-acc-fg);text-align:center;border-radius:9px;padding:0 4px;font:700 11px/18px Arial,sans-serif;position:absolute;top:-8px;right:-8px}.xp-arrange>.xp-link{margin-left:38px}.xp-readfirst{flex:1;width:100%;max-width:880px;margin:0 auto;padding:24px 32px;overflow:auto}.xp-row.between{justify-content:space-between;margin-top:0;margin-bottom:14px}@media (max-width:767px){.xp-h{grid-template-columns:minmax(0,1fr) auto;padding:6px 10px}.xp-h-tools{grid-column:1/-1;justify-content:flex-start}.xp-vol input{width:80px}.xp-split{flex-direction:column;display:flex;overflow:auto}.xp-pane{flex:none;overflow:visible}.xp-divider{display:none}.xp-pane.left{border-bottom:4px solid var(--xp-panel)}.xp-passage{padding:18px 16px 24px}.xp-questions{padding:18px 16px 40px}.xp-audiobar{padding:8px 16px}.xp-opts{margin-left:0}.xp-match-row{grid-template-columns:minmax(0,1fr)}.xp-nav{flex-wrap:wrap;gap:6px;padding:6px 8px}.xp-parts{flex-basis:100%;order:3}.xp-flag{padding:0 10px}.xp-flag span{display:none}.xp-nav-acts{margin-left:auto}.xp-review-sum{grid-template-columns:1fr}.xp-card{padding:20px}.xp-intro{padding:16px}.xp-gap .xp-input{width:120px}.xp-pin-input.xp-input{width:80px}.xp-wtabs{padding:8px 16px 0}.xp-essay{padding:14px 16px}.xp-speak-card{padding:18px}.xp-speak-main{padding:16px}}
.xp-tdir{background:var(--xp-panel);border:1px solid var(--xp-bd);border-radius:10px;margin-bottom:22px;padding:12px 14px}.xp-tdir h2{margin-bottom:4px;font-size:1.2em}.xp-tdir p{font-size:.95em}.xp-tphoto{border:1px solid var(--xp-bd);background:#fff;border-radius:8px;max-width:100%;height:auto;max-height:300px;margin:6px 0 12px;display:block}.xp-tphoto.large{max-height:min(52vh,460px)}.xp-tgraphic{margin:6px 0 12px;line-height:1.55}.xp-titem .xp-prompt>span:last-child{color:var(--xp-muted)}.xp-bubbles{flex-wrap:wrap;gap:10px;margin:10px 0 4px 38px;display:flex}.xp-bub{border:2px solid var(--xp-fg);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;place-items:center;width:44px;height:44px;font-weight:700;display:inline-grid;position:relative}.xp-bub input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.xp-bub:hover{background:var(--xp-panel)}.xp-bub.sel{background:var(--xp-acc);border-color:var(--xp-acc);color:var(--xp-acc-fg)}.xp-bub:focus-within{outline:3px solid color-mix(in oklch, var(--xp-acc) 55%, transparent);outline-offset:2px}.xp-tsingle{margin:0 auto}.xp-tsplit .xp-divider{cursor:default}.xp-tsplit .xp-passage .xp-tdir{margin-bottom:16px}.xp-ttext{line-height:1.8}.xp-tblank{border-bottom:2px solid var(--xp-fg);background:var(--xp-panel);cursor:pointer;vertical-align:baseline;border-radius:4px 4px 0 0;justify-content:center;align-items:center;min-width:72px;height:1.6em;margin:0 3px;padding:0 8px;display:inline-flex}.xp-tblank b{font-size:.85em}.xp-tblank.ans{background:var(--xp-acc-soft)}.xp-tblank.cur{outline:2px solid var(--xp-acc);outline-offset:1px}.xp-tcard{border:1px solid var(--xp-bd);background:var(--xp-bg);border-radius:10px;margin-bottom:14px;padding:14px 16px}.xp-tcard-h{color:var(--xp-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:12px;font-weight:700}.xp-part.locked{cursor:not-allowed;opacity:.55;background:var(--xp-panel)}.xp-sheet{z-index:6;background:var(--xp-bg);border-left:1px solid var(--xp-bd);width:min(340px,100%);padding:0 14px 24px;position:absolute;top:0;bottom:0;right:0;overflow:auto;box-shadow:-10px 0 26px #0000001a}.xp-sheet-h{z-index:1;background:var(--xp-bg);border-bottom:1px solid var(--xp-bd);justify-content:space-between;align-items:center;padding:12px 0 8px;display:flex;position:sticky;top:0}.xp-sheet-part{margin-top:12px}.xp-sheet-part.locked{opacity:.5}.xp-sheet-ph{justify-content:space-between;gap:8px;margin-bottom:4px;font-size:13px;font-weight:700;display:flex}.xp-sheet-row{border-radius:6px;align-items:center;gap:6px;padding:2px 4px;display:flex}.xp-sheet-row.cur{background:var(--xp-acc-soft)}.xp-sheet-n{text-align:right;cursor:pointer;background:0 0;border:0;min-width:40px;padding:2px 4px;font-size:13px;font-weight:700}.xp-sheet-b{border:1.5px solid var(--xp-fg);background:var(--xp-bg);cursor:pointer;border-radius:999px;place-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:inline-grid}.xp-sheet-b.on{background:var(--xp-ans);border-color:var(--xp-ans);color:var(--xp-bg)}.xp-sheet-b:disabled,.xp-sheet-n:disabled{cursor:not-allowed}@media (max-width:767px){.xp-bubbles{margin-left:0}.xp-sheet{width:100%}}