.cp-page{--cp-accent:var(--ul-accent,#2f63c4);--cp-deep:var(--ul-deep,#1c3d82);--cp-soft:var(--ul-soft,#e9effb)}.cp-switch{grid-template-columns:repeat(3,1fr)}.cp-units{display:grid;gap:10px;margin:0;padding:0;list-style:none}.cp-unit{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;background:#fff;border:1px solid #e3e9f3;text-decoration:none;color:inherit}.cp-unit.is-off{opacity:.55}.cp-unit.is-locked{width:100%;font:inherit;text-align:left;cursor:pointer}.cp-unit.is-locked .cp-unit-num{color:var(--yp-muted);background:#eef1f6}.cp-unit-lock{display:grid;place-items:center;width:32px;height:32px;border-radius:99px;color:#98a2b3;background:#f2f4f7}.cp-buy-bar{display:grid;gap:10px;margin:0 0 14px;padding:14px 16px;border-radius:18px;border:1px solid #dbe5f6;background:#fff}.cp-buy-bar h2{margin:0;font-size:18px;font-weight:900;color:var(--yp-heading)}.cp-buy-bar p{margin:0;color:var(--yp-copy);font-size:14px;line-height:1.55}.cp-unit-num{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--cp-soft);color:var(--cp-deep);font-size:17px;font-weight:900}.cp-unit-copy{display:grid;gap:2px;min-width:0}.cp-unit-copy strong{font-size:15px;font-weight:850;color:var(--yp-heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cp-unit-copy small{font-size:12px;font-weight:650;color:var(--yp-muted)}.cp-unit-dots{display:flex;gap:4px}.cp-unit-dots b,.cp-unit-progress b,.cp-win-progress b{display:block;width:10px;height:10px;border-radius:99px;background:#dbe3ef}.cp-unit-dots b.is-done{background:#22a35a}.cp-runner-nav{display:grid;grid-template-columns:auto 1fr;gap:10px}.cp-day{gap:12px;grid-template-columns:minmax(0,1fr)}.cp-day-head{display:grid;gap:4px;padding:16px 18px;border-radius:24px;color:#fff;background:linear-gradient(130deg,var(--cp-accent),var(--cp-deep))}.cp-day-head span{font-size:12px;font-weight:800;letter-spacing:.03em;opacity:.85}.cp-day-head h1{margin:0;font-size:26px;line-height:1.15;font-weight:900;color:#fff}.cp-step-bar{position:sticky;top:0;z-index:6;margin:0 -16px;padding:6px 16px 8px;background:color-mix(in srgb,var(--yp-bg) 78%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.cp-step-tabs{position:relative;display:grid;gap:4px;padding:4px;border-radius:16px;background:#e9edf4}.cp-step-thumb{position:absolute;top:4px;bottom:4px;left:4px;border-radius:12px;background:#fff;box-shadow:0 2px 10px rgba(16,24,40,.08);transition:transform .3s cubic-bezier(.22,.8,.28,1)}.cp-step-tabs button{position:relative;display:flex;align-items:center;justify-content:center;gap:4px;min-height:40px;padding:0 2px;border:0;border-radius:12px;background:transparent;font:inherit;font-size:13.5px;font-weight:750;color:var(--yp-muted,#667085);cursor:pointer;white-space:nowrap}.cp-step-tabs button.is-active{color:var(--cp-deep)}.cp-step-tabs button.is-done svg{color:#22a35a}.cp-step{display:grid;gap:12px;align-content:start;padding-bottom:16px}.cp-card-meta{display:flex;align-items:baseline;justify-content:space-between;font-size:13px;font-weight:800;color:var(--cp-deep)}.cp-card-meta span{color:var(--yp-muted)}.cp-card-stage{min-width:0;overflow-x:clip;overflow-y:visible;margin:0 -16px;padding:0 16px;touch-action:pan-y}.cp-card-stage+.cp-card-dots{margin:2px 0 12px}.cp-card-track{display:flex;align-items:flex-start;transition:transform .32s cubic-bezier(.22,.8,.28,1),height .32s cubic-bezier(.22,.8,.28,1);will-change:transform}.cp-card-track.is-dragging{transition:none}.cp-card-track>.cp-card{flex:0 0 100%;min-width:0}.cp-card-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:5px}.cp-card-dots i{width:6px;height:6px;border-radius:99px;background:#d3dae6}.cp-card-dots i.is-on{width:16px;background:var(--cp-accent)}.cp-ex-tabs{display:flex;gap:6px;overflow-x:auto;margin:0 -16px;padding:2px 16px 4px;scrollbar-width:none}.cp-ex-tabs::-webkit-scrollbar{display:none}.cp-ex-tabs button{flex:none;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1.5px solid #dbe3ef;border-radius:99px;background:#fff;font:inherit;font-size:13px;font-weight:750;color:var(--yp-heading);cursor:pointer}.cp-ex-tabs button.is-answered{border-color:color-mix(in srgb,var(--cp-accent) 45%,white)}.cp-ex-tabs button.is-checked{border-color:#bfe5cc;background:#f1fbf4}.cp-ex-tabs button.is-current{border-color:var(--cp-accent);background:var(--cp-accent);color:#fff}.cp-ex-tabs small{font-size:11.5px;font-weight:850;color:#15803d}.cp-ex-tabs button.is-current small{color:#fff}.cp-card{overflow:hidden;border-radius:26px;background:#fff;border:1px solid #e3e9f3;box-shadow:0 14px 30px rgba(22,53,107,.1)}.cp-card-image{aspect-ratio:4/3;background:var(--cp-soft)}.cp-card-image img{width:100%;height:100%;object-fit:cover;display:block}.cp-card-body{display:grid;gap:8px;padding:16px 18px 20px}.cp-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.cp-card-head strong{display:block;font-size:34px;line-height:1.1;font-weight:900;color:var(--cp-deep)}.cp-ipa{font-size:15px;color:var(--yp-muted)}.cp-card-say{flex:none;display:grid;place-items:center;width:52px;height:52px;border:0;border-radius:99px;background:var(--cp-accent);color:#fff;cursor:pointer;box-shadow:0 8px 18px color-mix(in srgb,var(--cp-accent) 35%,transparent)}.cp-card-say.is-playing{background:var(--cp-deep)}.cp-card-zh{margin:0;font-size:18px;font-weight:850;color:var(--yp-heading)}.cp-card-zh em{margin-right:8px;font-style:normal;font-size:15px;font-weight:800;color:var(--cp-accent)}.cp-forms{margin-left:8px;font-size:13px;font-weight:650;color:var(--yp-muted)}.cp-card-def,.cp-card-example{margin:0;font-size:15.5px;line-height:1.55;color:var(--yp-copy,#3b4558)}.cp-card-example{color:var(--yp-heading)}.cp-card-line{display:flex;align-items:center;gap:10px}.cp-card-line>p{flex:1 1;min-width:0}.cp-card-line.is-example{padding:10px 10px 10px 12px;border-radius:14px;background:var(--cp-soft)}.cp-line-say{flex:none;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:99px;background:color-mix(in srgb,var(--cp-accent) 14%,#fff);color:var(--cp-accent);cursor:pointer}.cp-card-line.is-example .cp-line-say{background:#fff;box-shadow:0 2px 8px color-mix(in srgb,var(--cp-accent) 22%,transparent)}.cp-card-line.is-example .cp-line-say.is-playing,.cp-line-say.is-playing{background:var(--cp-accent);color:#fff}.cp-card-def strong,.cp-card-example strong{color:var(--cp-accent)}.cp-word-rel{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0;font-size:13px;color:var(--yp-muted)}.cp-word-rel b{margin-right:4px;padding:0 5px;border-radius:4px;font-size:10.5px;color:#fff;background:var(--cp-accent)}.cp-word-rel b.is-ant{background:#d9466f}.cp-passage{display:grid;gap:10px;padding:14px;border-radius:20px;background:#fff;border:1px solid #e3e9f3}.cp-passage.is-compact{padding:4px 2px;border:0}.cp-passage-image{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:14px;background:var(--cp-soft)}.cp-passage h3{margin:4px 0 0;font-size:21px;font-weight:900;color:var(--cp-deep)}.cp-passage li,.cp-passage p{margin:0;font-size:16px;line-height:1.75;color:var(--yp-heading)}.cp-passage strong{color:var(--cp-accent)}.cp-passage ul{display:grid;gap:8px;margin:0;padding-left:20px}.cp-passage-toggle{justify-self:start;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1.5px solid var(--cp-accent);border-radius:99px;background:#fff;font:inherit;font-size:14px;font-weight:800;color:var(--cp-accent);cursor:pointer}.cp-sheet-overlay{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-end;background:rgba(15,23,42,.4);touch-action:none}.cp-sheet{flex-direction:column;width:100%;max-height:78vh;max-height:78dvh;overflow:hidden;padding-top:18px;border-radius:24px 24px 0 0;background:#fff;animation:cp-sheet-in .2s ease}.cp-scroll,.cp-sheet{position:relative;display:flex}.cp-scroll{flex:1 1;min-height:0}.cp-scroll-body{flex:1 1;min-width:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0 24px calc(28px + env(safe-area-inset-bottom, 0px)) 18px}.cp-scroll-body::-webkit-scrollbar{display:none}.cp-scroll-track{position:absolute;top:6px;right:7px;bottom:calc(10px + env(safe-area-inset-bottom, 0px));width:5px;border-radius:99px;background:#edf1f7;pointer-events:none}.cp-scroll-track span{position:absolute;left:0;right:0;border-radius:99px;background:var(--cp-accent);opacity:.75}.cp-scroll-fade{position:absolute;left:0;right:16px;bottom:0;height:40px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff);pointer-events:none}@keyframes cp-sheet-in{0%{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}.cp-sheet-close{position:absolute;z-index:3;top:12px;right:12px;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:99px;background:#f1f4f9;cursor:pointer}.cp-ex{display:grid;gap:14px;padding:16px;border-radius:22px;background:#fff;border:1px solid #e3e9f3}.cp-ex-head{display:grid;gap:6px}.cp-ex-top{align-items:center;justify-content:space-between;gap:8px}.cp-ex-tools,.cp-ex-top{display:flex;flex-wrap:wrap}.cp-ex-tools{gap:6px}.cp-ex-tools .cp-passage-toggle{padding:5px 12px;font-size:13px}.cp-ex-lead{display:inline-flex;align-items:center;gap:6px}.cp-ex-hint-toggle{display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:999px;color:#c98a00;background:#fff6d6;cursor:pointer}.cp-ex-hint-toggle.is-open{color:#fff;background:#f0b400}.cp-ex-hint{padding:10px 12px;border-radius:12px;background:#fff8e1;color:#6b4e00;font-size:14.5px;font-weight:650;line-height:1.6}.cp-ex-hint strong{color:#b25e00}.cp-ex-hint p{margin:0;font-size:inherit;font-weight:inherit;color:inherit}.cp-ex-hint p+p{margin-top:6px}.cp-ex-title{justify-self:start;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:900;color:#fff;background:var(--cp-accent)}.cp-ex-head p{margin:0;font-size:15px;font-weight:750;line-height:1.45;color:var(--yp-heading)}.cp-ex-image{display:block;width:100%;height:auto;border-radius:14px}.cp-items{display:grid;gap:18px;margin:0;padding:0;list-style:none}.cp-item{display:grid;gap:12px}.cp-item-prompt{display:flex;align-items:flex-start;gap:8px;font-size:17px;line-height:1.55;color:var(--yp-heading)}.cp-item-prompt>span:not(.cp-num){flex:1 1;min-width:0}.cp-num{flex:none;display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 6px;border-radius:8px;font-size:13px;font-weight:900}.cp-num,.cp-word-chip{color:var(--cp-deep);background:var(--cp-soft)}.cp-word-chip{padding:3px 12px;border-radius:10px;font-size:20px}.cp-inline-pick{display:inline-block;min-width:70px;padding:0 6px;border-bottom:2px solid var(--cp-accent);font-weight:800;color:var(--cp-accent)}.cp-inline-pick.is-empty{color:transparent}.cp-mark{flex:none;margin-left:auto}.cp-mark.is-right{color:#16a34a}.cp-mark.is-wrong{color:#dc2626}.cp-options{display:grid;gap:8px}.cp-options.is-grid,.cp-options.is-tf,.is-check .cp-options,.is-word-boxes .cp-options{grid-template-columns:repeat(2,minmax(0,1fr))}.cp-option{display:flex;align-items:center;gap:10px;min-height:50px;padding:10px 14px;border:2px solid #dbe3ef;border-radius:14px;background:#fff;font:inherit;font-size:16px;line-height:1.35;text-align:left;color:var(--yp-heading);cursor:pointer;transition:border-color .12s ease,background .12s ease}.cp-option.is-letter{justify-content:center;min-width:52px;font-weight:850}.cp-option.is-tf{justify-content:center;font-weight:800}.cp-option-letter{flex:none;font-weight:900;color:var(--cp-accent)}.cp-option.is-chosen{border-color:var(--cp-accent);background:var(--cp-soft)}.cp-option.is-answer{border-color:#16a34a;background:#ecfdf3}.cp-option.is-wrong{border-color:#dc2626;background:#fef2f2}.cp-option:disabled{cursor:default}.cp-bank{display:flex;flex-wrap:wrap;gap:6px;padding:10px;border-radius:14px;background:var(--cp-soft)}.cp-bank-word{padding:5px 12px;border:0;border-radius:999px;background:#fff;font:inherit;font-size:14.5px;font-weight:800;color:var(--cp-deep)}.cp-cloze{display:grid;gap:12px}.cp-fill-text{line-height:2.1}.cp-blank-wrap{display:inline-flex;align-items:baseline;gap:2px}.cp-blank-hint{font-weight:850;color:var(--cp-accent)}.cp-blank{min-width:80px;padding:2px 4px;border:0;border-bottom:2px solid var(--cp-accent);background:transparent;font:inherit;font-weight:800;color:var(--cp-deep);outline:none}.cp-blank:focus{background:var(--cp-soft)}.cp-blank.is-right{border-color:#16a34a;color:#15803d}.cp-blank.is-wrong{border-color:#dc2626;color:#b91c1c;text-decoration:line-through}.cp-blank-answer{margin-left:4px;font-size:13px;font-weight:850;color:#15803d}.cp-written{width:100%;min-height:92px;padding:12px 14px;border:2px solid #dbe3ef;border-radius:14px;font:inherit;font-size:16px;line-height:1.5;resize:vertical;box-sizing:border-box}.cp-written:focus{border-color:var(--cp-accent);outline:none}.cp-written-review{display:grid;gap:8px}.cp-written-mine{margin:0;padding:8px 12px;border-radius:12px;background:#f6f8fb;font-size:15px}.cp-written-mine.is-empty{color:var(--yp-muted)}.cp-feedback{display:grid;gap:4px;padding:10px 12px;border-radius:12px;border:1px solid;font-size:14px;line-height:1.5}.cp-feedback p{margin:0}.cp-feedback.is-correct{border-color:#16a34a;background:#ecfdf3}.cp-feedback.is-partly{border-color:#d97706;background:#fffbeb}.cp-feedback.is-incorrect{border-color:#dc2626;background:#fef2f2}.cp-edits{display:grid;gap:4px;margin:2px 0;padding:0;list-style:none}.cp-edits li{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 6px}.cp-edits small{flex-basis:100%;font-size:12.5px;color:var(--yp-muted)}.cp-edit-from{text-decoration:line-through;color:#b91c1c}.cp-edit-to{font-weight:800;color:#15803d}.cp-feedback-fix{font-weight:750;color:var(--yp-heading)}.cp-reference{margin:0;font-size:13.5px;color:var(--yp-muted)}.cp-reference span{margin-right:6px;font-weight:850;color:var(--cp-accent)}.cp-cross{display:grid;gap:12px}.cp-cross-grid{display:grid;gap:4px;width:100%;max-width:340px;justify-self:center}.cp-cross-void{display:block;aspect-ratio:1/1}.cp-cross-cell{position:relative;display:grid;place-items:center;aspect-ratio:1/1;min-width:0;padding:0;border:2px solid #e8c552;border-radius:8px;background:#fff7d6;font:inherit;line-height:1;cursor:pointer}.cp-cross-cell small{position:absolute;top:1px;left:3px;font-size:10px;font-weight:900;color:#8a6d00}.cp-cross-cell span{font-size:clamp(16px,6vw,24px);font-weight:900;color:var(--cp-deep)}.cp-cross-cell.is-word{background:#ffe9a3}.cp-cross-cell.is-cursor{background:var(--cp-accent);border-color:var(--cp-accent)}.cp-cross-cell.is-cursor small,.cp-cross-cell.is-cursor span{color:#fff}.cp-cross-cell.is-right{background:#ecfdf3;border-color:#16a34a}.cp-cross-cell.is-wrong{background:#fef2f2;border-color:#dc2626}.cp-cross-cell.is-wrong span{color:#b91c1c}.cp-cross-clue{margin:0;padding:10px 12px;border-radius:12px;background:var(--cp-soft);font-size:15px;font-weight:700;color:var(--yp-heading)}.cp-cross-clue b,.cp-cross-list b{margin-right:8px;color:var(--cp-accent)}.cp-cross-list{display:grid;gap:6px;margin:0;padding:0;list-style:none;font-size:14px}.cp-cross-list em{margin-left:8px;font-style:normal;font-weight:850;color:#15803d}.cp-cross-list .is-wrong{color:#b91c1c}.cp-keyboard{display:grid;gap:6px;padding:8px 4px;border-radius:16px;background:#eef1f6;user-select:none;-webkit-user-select:none}.cp-keyboard-row{display:flex;justify-content:center;gap:5px}.cp-keyboard button{flex:1 1;max-width:40px;height:44px;padding:0;border:0;border-radius:8px;background:#fff;font:inherit;font-size:17px;font-weight:800;color:var(--yp-heading);box-shadow:0 1px 0 #c7cdd8;cursor:pointer}.cp-keyboard button:active{background:var(--cp-soft)}.cp-keyboard button.is-wide{max-width:58px;display:grid;place-items:center}.cp-primary{min-height:52px;padding:0 18px;border:0;border-radius:16px;background:linear-gradient(130deg,var(--cp-accent),var(--cp-deep));color:#fff;font:inherit;font-size:16px;font-weight:900;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.cp-primary:disabled{opacity:.55}.cp-check-hint{margin:0 0 -4px;text-align:right;font-size:13px;font-weight:700;color:var(--yp-muted)}.cp-secondary{min-height:48px;padding:0 16px;border:1.5px solid var(--cp-accent);border-radius:16px;background:#fff;color:var(--cp-accent);font:inherit;font-size:15px;font-weight:850;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.cp-secondary:disabled{opacity:.4}.cp-win{display:grid;justify-items:center;gap:10px;padding:24px 18px 20px;border-radius:28px;text-align:center;background:radial-gradient(circle at 50% 0,#fff6d6,transparent 60%),#fff;border:1px solid #f1e2b0;box-shadow:0 16px 34px rgba(154,91,0,.1);animation:cp-win-in .35s cubic-bezier(.2,1.4,.4,1)}@keyframes cp-win-in{0%{transform:scale(.92);opacity:0}to{transform:none;opacity:1}}.cp-win-icon{display:grid;place-items:center;width:76px;height:76px;border-radius:99px;color:#c27a00;background:#ffe9a3}.cp-win h1,.cp-win h2{margin:0;font-size:26px;font-weight:900;color:var(--yp-heading)}.cp-win>p{margin:0;font-size:14px;font-weight:700;color:var(--yp-muted)}.cp-win-progress{display:grid;justify-items:center;gap:6px}.cp-win-progress b{width:34px;height:10px}.cp-win-progress b.is-done{background:#22a35a}.cp-win-progress small{font-size:13px;font-weight:800;color:#15803d}.cp-win-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px;width:100%}.cp-win-stats span{display:grid;gap:2px;padding:10px 6px;border-radius:16px;background:#f6f8fb;font-size:12px;font-weight:750;color:var(--yp-muted)}.cp-win-stats b{font-size:22px;font-weight:900;color:var(--cp-deep)}.cp-win-actions{display:grid;gap:8px;width:100%}.cp-entry{display:grid;gap:10px;padding:18px;border-radius:22px;background:var(--cp-soft)}.cp-entry h2{margin:0;font-size:18px;font-weight:900;color:var(--cp-deep)}.cp-entry-points{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;font-weight:700;color:var(--yp-heading)}.cp-entry-points strong{margin-left:4px;color:var(--cp-accent)}.cp-entry-skip{border:0;background:none;font:inherit;font-size:14px;font-weight:750;color:var(--yp-muted);cursor:pointer;text-decoration:underline}.cp-summary{display:flex;align-items:center;gap:6px;margin:0;padding:12px 14px;border-radius:16px;background:#fff7d6;font-size:14.5px;line-height:1.55}.cp-section{display:grid;gap:14px}.cp-section>h2{margin:8px 0 0;font-size:20px;font-weight:900;color:var(--cp-deep)}.cp-cross-cell.is-shaded{background:#f1d9a0;border-color:#c99a2e}.cp-cross-cell.is-shaded.is-word{background:#ecc76e}.cp-cross-final-wrap{padding:10px 12px;border-radius:12px;background:#fff;border:1px solid #e3e9f3}.cp-cross-final-wrap.is-right{border-color:#16a34a}.cp-cross-final-wrap.is-wrong{border-color:#dc2626}.cp-cross-final,.cp-wp-final{margin:0;font-size:16px;line-height:2.4;color:var(--yp-heading)}.cp-letters{display:inline-flex;flex-wrap:wrap;gap:4px;vertical-align:middle}.cp-letter{position:relative;display:inline-grid;place-items:center;width:32px;height:36px;padding:0;border:2px solid #e8c552;border-radius:8px;background:#fff7d6;font:inherit;font-size:19px;color:var(--cp-deep);cursor:pointer}.cp-letter,.cp-letter small{font-weight:900;line-height:1}.cp-letter small{position:absolute;right:2px;bottom:1px;font-size:10px;color:#8a6d00}.cp-letter.is-marked,.cp-letter.is-shaded{background:#f1d9a0;border-color:#c99a2e}.cp-letter.is-word{background:#ffe9a3}.cp-letter.is-cursor{background:var(--cp-accent);border-color:var(--cp-accent);color:#fff}.cp-letter.is-cursor small{color:#fff}.cp-letter.is-fixed{cursor:default;background:var(--cp-soft);border-color:#cfd8e6}.cp-letter.is-right{background:#ecfdf3;border-color:#16a34a}.cp-letter.is-wrong{background:#fef2f2;border-color:#dc2626;color:#b91c1c}.cp-wp,.cp-wp-list{display:grid;gap:12px}.cp-wp-list{margin:0;padding:0;list-style:none}.cp-wp-item{display:grid;gap:6px}.cp-wp-clue{display:flex;gap:8px;margin:0;font-size:15px;line-height:1.5;color:var(--yp-heading)}.cp-wp-final{padding:10px 12px;border-radius:12px;background:#fff;border:1px solid #e3e9f3}.cp-wp .cp-keyboard{position:sticky;bottom:8px;z-index:2;box-shadow:0 6px 20px rgba(15,30,60,.12)}.cp-ex-summary{margin:0;padding:12px 14px;border-radius:14px;background:var(--cp-soft);font-size:16px;line-height:1.75;color:var(--yp-heading)}.cp-ex-summary strong{color:var(--cp-accent)}.cp-tips{display:flex;flex-wrap:wrap;gap:6px;padding:10px;border:1.5px dashed #cfd8e6;border-radius:14px}.cp-tip{padding:5px 12px;border:1.5px solid #dbe3ef;border-radius:999px;background:#fff;font:inherit;font-size:14.5px;font-weight:750;color:var(--cp-deep);cursor:pointer}.cp-tip.is-chosen{border-color:var(--cp-accent);background:var(--cp-accent);color:#fff}.cp-tip:disabled{cursor:default}.cp-frame-input{display:inline-block;width:100%;max-width:100%;min-height:34px;margin:4px 0;padding:4px 8px;border:0;border-radius:6px 6px 0 0;background:var(--cp-soft);font:inherit;font-weight:750;line-height:1.5;resize:none;box-sizing:border-box;outline:none;vertical-align:baseline}.cp-frame-input,.cp-frame-mine{border-bottom:2px solid var(--cp-accent);color:var(--cp-deep)}.cp-frame-mine{padding:0 4px;font-weight:800}.cp-frame-mine.is-empty{color:var(--yp-muted)}.cp-chat{display:grid;gap:10px}.cp-chat-line{display:grid;gap:2px;justify-items:start;max-width:88%}.cp-chat-line p{padding:8px 12px;border-radius:4px 16px 16px 16px;background:var(--cp-soft)}.cp-chat-line.is-other{justify-self:end;justify-items:end}.cp-chat-line.is-other p{border-radius:16px 4px 16px 16px;background:#fff4dc}.cp-chat-who{font-size:13px;font-weight:850;color:var(--yp-muted)}.cp-wordlist{display:grid;gap:14px}.cp-wordlist h3{margin:4px 0 0;font-size:21px;font-weight:900;color:var(--cp-deep)}.cp-wordlist-group{display:grid;gap:8px}.cp-wordlist-group h4{justify-self:start;margin:0;padding:3px 12px;border-radius:999px;background:var(--cp-accent);font-size:13px;font-weight:900;color:#fff}.cp-wordlist-group ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;margin:0;padding:0;list-style:none}.cp-wordlist-item{display:grid;gap:4px;padding:10px 12px;border:1px solid #e3e9f3;border-radius:12px;background:#f8fafd}.cp-wordlist-head{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.cp-wordlist-head b{font-size:17px;font-weight:900;color:var(--cp-deep)}.cp-wordlist-pos{padding:1px 8px;border-radius:999px;background:var(--cp-soft);font-size:12px;font-weight:800;color:var(--cp-accent)}.cp-wordlist-zh{font-size:14px;font-weight:700;color:#b7791f}.cp-wordlist-item p{margin:0;font-size:14.5px;line-height:1.55;color:var(--yp-muted)}.cp-wordlist-item p strong{font-weight:800;color:var(--yp-heading)}.cp-match-bank{display:grid;gap:6px;margin:0;padding:10px 12px;border-radius:14px;background:var(--cp-soft);list-style:none}.cp-match-bank li{display:flex;gap:10px;font-size:15px;line-height:1.45;color:var(--yp-heading)}.cp-match-bank b{flex:none;width:16px;font-weight:900;color:var(--cp-accent)}.cp-pos-table{display:grid;gap:8px}.cp-pos-table>p{margin:0;font-size:14px;font-weight:800;color:var(--yp-muted)}.cp-pos-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px}.cp-pos-word{display:inline-flex;align-items:center;gap:8px;font-size:16px;font-weight:850;color:var(--cp-deep)}.cp-pos-options{display:flex;gap:6px}.cp-photo{display:grid;gap:10px}.cp-photo-open{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border:2px dashed #b9c8e2;border-radius:14px;background:#f7faff;color:var(--cp-deep);font:inherit;font-size:15.5px;font-weight:900;cursor:pointer}.cp-photo-ready{display:grid;gap:10px}.cp-photo-ready>div{display:flex;gap:10px}.cp-photo-preview{display:block;width:100%;max-height:360px;object-fit:contain;border-radius:12px;background:#f2f4f7}.cp-photo-sheet{display:grid;gap:14px;padding:18px 16px calc(16px + env(safe-area-inset-bottom))}.cp-photo-sheet h3{margin:0;padding-right:36px;font-size:19px;font-weight:900;color:var(--yp-heading)}.cp-photo-sheet>p{margin:0;color:var(--yp-copy);font-size:15px;line-height:1.55}.cp-photo-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cp-paper-blank{display:inline-block;width:5.5em;margin:0 4px;border-bottom:2px solid #9aa9c2;vertical-align:-2px}.cp-written-mine small{display:block;margin-bottom:2px;font-size:12px;font-weight:800;color:var(--yp-muted)}.cp-paper-sample{display:block;width:100%;height:auto;border-radius:10px;box-shadow:0 6px 16px rgba(16,24,40,.1)}