:root{--content-max:1840px;color:#17202a;font-synthesis:none;text-rendering:optimizelegibility;background:#f4f1ea;font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}main[data-theme=light]{--page-bg:#f7f4ee;--page-grad-a:#ffffffe0;--page-grad-b:#f7f4eef5;--text:#121417;--muted:#66707c;--panel:#ffffffd1;--panel-solid:#fffdfa;--line:#d8d1c6;--matrix-shell:#fff;--matrix-head:#f1ece3;--matrix-head-text:#20242a;--matrix-line:#ddd6ca;--matrix-blank:#eee8de;--matrix-blank-text:#a59a8c;--matrix-filled:#fffdfa;--notice-bg:#fff8df;--notice-line:#ead8a7;--notice-text:#4f4328;--shadow:#16181d1f}main[data-theme=dark]{--page-bg:#111317;--page-grad-a:#1c1f24e6;--page-grad-b:#111317fa;--text:#f7f1e8;--muted:#a5afbb;--panel:#1e2228db;--panel-solid:#1b1f26;--line:#343a44;--matrix-shell:#171b21;--matrix-head:#242a33;--matrix-head-text:#f8fafc;--matrix-line:#343a44;--matrix-blank:#11151a;--matrix-blank-text:#4f5b69;--matrix-filled:#242a33;--notice-bg:#2a2416;--notice-line:#5b4a20;--notice-text:#f7df9e;--shadow:#00000052}*{box-sizing:border-box}body{margin:0;font-size:17px;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}main{background:linear-gradient(180deg, var(--page-grad-a), var(--page-grad-b)), radial-gradient(circle at 14% 0%, #ff6b6b29, transparent 26%), radial-gradient(circle at 92% 10%, #4d96ff24, transparent 30%), var(--page-bg);min-height:100vh;color:var(--text);padding:28px}.topbar{max-width:var(--content-max);justify-content:space-between;align-items:flex-end;gap:20px;margin:0 auto 18px;display:flex}.eyebrow{color:#826c4d;letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:13px;font-weight:800}h1{color:var(--text);letter-spacing:0;margin:0;font-size:clamp(30px,4vw,54px);line-height:1.04}.toolbar,.controls,.segmented,.notice,.search,.year,.dataset-badge{align-items:center;display:flex}.toolbar{flex-wrap:wrap;justify-content:flex-end;gap:12px}.year{color:var(--muted);gap:8px;font-size:13px;font-weight:800}.dataset-badge{border:1px solid var(--line);background:var(--panel);min-height:40px;color:var(--text);white-space:nowrap;border-radius:999px;padding:0 12px;font-size:13px;font-weight:900}select,input{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:8px}select{height:40px;padding:0 12px}.segmented{border:1px solid var(--line);background:var(--panel);border-radius:10px;gap:4px;padding:4px}.segmented button{height:34px;color:var(--muted);background:0 0;border:0;border-radius:7px;align-items:center;gap:7px;padding:0 12px;font-weight:800;display:inline-flex}.segmented button.active{background:var(--text);color:var(--page-bg)}.theme-toggle{border:1px solid var(--line);background:var(--panel);height:44px;color:var(--text);border-radius:10px;align-items:center;gap:7px;padding:0 13px;font-weight:900;display:inline-flex}main[data-theme=light] .segmented button.active{color:#fff;background:#161b22}.notice,.controls,.method-legend,.matrix-shell,.empty-state{max-width:var(--content-max);margin-inline:auto}.notice{border:1px solid var(--notice-line);background:var(--notice-bg);color:var(--notice-text);border-radius:8px;gap:10px;padding:14px 16px}.notice span{color:var(--notice-text);opacity:.88}.controls{justify-content:space-between;gap:16px;margin-top:18px;margin-bottom:16px}.search{border:1px solid var(--line);background:var(--panel);border-radius:9px;gap:8px;width:min(520px,100%);padding:0 12px}.search input{background:0 0;border:0;outline:none;width:100%;height:42px;padding:0}.controls p{color:var(--muted);white-space:nowrap;margin:0;font-size:14px;font-weight:800}.subnav{max-width:var(--content-max);border:1px solid var(--line);background:var(--panel);border-radius:10px;justify-content:center;align-items:center;gap:6px;width:fit-content;margin:16px auto;padding:4px;display:flex}.subnav button{min-height:34px;color:var(--muted);background:0 0;border:0;border-radius:7px;padding:0 13px;font-size:13px;font-weight:900}.subnav button.active{background:var(--text);color:var(--page-bg)}main[data-theme=light] .subnav button.active{color:#fff;background:#161b22}.matrix-mode-bar{width:100%;max-width:var(--content-max);margin-inline:auto;border:1px solid var(--line);background:var(--panel);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;padding:10px 12px;display:flex}.matrix-mode-bar>div:first-child{align-items:baseline;gap:9px;display:flex}.matrix-mode-bar strong{color:var(--text);font-size:13px;font-weight:900}.matrix-mode-bar span{color:var(--muted);font-size:12px;font-weight:750}.matrix-switch{flex:none;margin:0}.method-legend{width:100%;max-width:var(--content-max);margin-inline:auto;border:1px solid var(--line);background:var(--panel);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;padding:12px 14px;display:flex}.method-legend strong{color:var(--text);flex:none;font-size:13px;font-weight:900}.method-legend div{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.method-legend span{border:1px solid var(--line);background:var(--panel-solid);min-height:28px;color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:0 9px;font-size:12px;font-weight:850;display:inline-flex}.method-legend i{border-radius:999px;width:10px;height:10px;display:block;box-shadow:inset 0 0 0 1px #1118271f}.matrix-shell{width:100%;max-width:var(--content-max);border:1px solid var(--line);background:var(--matrix-shell);box-shadow:0 18px 48px var(--shadow);border-radius:10px;margin-inline:auto;overflow:auto}.matrix{border-collapse:separate;border-spacing:0;width:100%;min-width:1320px}.matrix th,.matrix td{border-right:1px solid var(--matrix-line);border-bottom:1px solid var(--matrix-line);vertical-align:top}.matrix thead th{z-index:4;background:var(--matrix-head);height:54px;color:var(--matrix-head-text);text-align:left;padding:14px 12px;font-size:13px;position:sticky;top:0}.matrix tbody th{z-index:3;background:var(--matrix-head);width:190px;min-width:190px;color:var(--matrix-head-text);text-align:left;padding:14px 12px;font-size:13px;line-height:1.35;position:sticky;left:0}.method-row-label{align-items:center;gap:8px;display:inline-flex}.matrix-row-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.matrix-col-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.row-count{border:1px solid var(--line);background:var(--panel-solid);min-width:25px;height:25px;color:var(--muted);border-radius:999px;flex:none;place-items:center;padding:0 6px;font-size:11px;font-weight:900;display:inline-grid}.method-row-label i{border-radius:999px;width:10px;height:10px;display:block;box-shadow:inset 0 0 0 1px #1118271f}.matrix .corner{z-index:5;left:0}.matrix td{min-width:102px;height:96px;padding:8px}.matrix td.blank{background:var(--matrix-blank);color:var(--matrix-blank-text);text-align:center;vertical-align:middle}.matrix td.filled{background:var(--matrix-filled)}.chips{gap:8px;display:grid}.chip{color:#111827;text-align:left;border:0;border-radius:7px;width:100%;min-height:44px;padding:8px 9px;transition:transform .14s,box-shadow .14s,filter .14s;transform:translateY(0)scale(1);box-shadow:0 2px #0000001f}.chip:hover,.chip:focus-visible{z-index:2;filter:saturate(1.08);position:relative;transform:translateY(-2px)scale(1.035);box-shadow:0 10px 22px #0000002e}.method-matrix td{min-width:188px}.method-matrix .chips{grid-template-columns:repeat(2,minmax(0,1fr))}.chip.matrix-tile{aspect-ratio:1;text-align:center;grid-template-rows:32px 28px;align-content:center;justify-items:center;gap:2px;min-height:0;padding:6px;display:grid}.matrix-tile:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - 4px)}.glass-glyph{flex:none;width:32px;height:32px}.chip.matrix-tile span{text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;align-self:center;width:100%;height:28px;font-size:13px;line-height:14px;display:-webkit-box;overflow:hidden}.chip span,.chip small{z-index:1;overflow-wrap:anywhere;display:block;position:relative}.chip span{text-shadow:0 1px 2px #fff6;font-size:13px;font-weight:900}.chip small{opacity:.72;margin-top:2px;font-size:11px}.dash{font-weight:900}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:1180px;margin:0 auto;display:grid}.groups-view{max-width:1280px;margin:0 auto}.section-switch{border:1px solid var(--line);background:var(--panel);border-radius:10px;justify-content:center;gap:6px;width:fit-content;margin:0 auto 16px;padding:4px;display:flex}.section-switch button{min-height:34px;color:var(--muted);background:0 0;border:0;border-radius:7px;padding:0 13px;font-size:13px;font-weight:900}.section-switch button.active{background:var(--text);color:var(--page-bg)}main[data-theme=light] .section-switch button.active{color:#fff;background:#161b22}.group-grid{columns:1;column-gap:16px}.group-card{break-inside:avoid;border:1px solid var(--line);background:var(--panel-solid);width:100%;box-shadow:0 12px 28px var(--shadow);border-radius:8px;margin:0 0 16px;display:inline-block;overflow:hidden}.group-card header{border-bottom:1px solid var(--line);background:var(--panel);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px;display:flex}.group-card h3{color:var(--text);letter-spacing:0;overflow-wrap:anywhere;margin:0;font-size:17px;line-height:1.25}.group-card header span{background:var(--text);min-width:30px;height:26px;color:var(--page-bg);border-radius:999px;place-items:center;padding:0 8px;font-size:12px;font-weight:900;display:grid}.group-recipes{display:grid}.group-recipes button{border:0;border-bottom:1px solid var(--line);color:var(--text);text-align:left;background:0 0;grid-template-columns:auto minmax(100px,.9fr) minmax(0,1.1fr);align-items:center;gap:10px;padding:11px 14px;display:grid}.group-recipes button:last-child{border-bottom:0}.group-recipes button:hover{background:color-mix(in srgb, var(--method), transparent 88%)}.group-recipes i{border-radius:999px;width:10px;height:38px}.group-recipes strong,.group-recipes em,.group-recipes small{overflow-wrap:anywhere;display:block}.group-recipes strong{font-size:13px;line-height:1.25}.group-recipes em{color:var(--muted);margin-top:2px;font-size:11px;font-style:normal;font-weight:800}.group-recipes small{color:var(--muted);font-size:12px;font-weight:800;line-height:1.3}.practice-view{max-width:1280px;margin:0 auto}.practice-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.practice-head h2{color:var(--text);letter-spacing:0;margin:0;font-size:26px}.practice-head p{color:var(--muted);margin:6px 0 0;font-size:14px;font-weight:750}.practice-actions{flex:none;align-items:center;gap:10px;display:flex}.practice-actions strong,.soft-action{border:1px solid var(--line);background:var(--panel);min-height:38px;color:var(--text);border-radius:8px;padding:0 12px;font-size:13px;font-weight:900}.practice-actions strong{min-width:74px}.practice-actions strong,.soft-action,.reveal-button,.memorize-toggle{justify-content:center;align-items:center;gap:7px;display:inline-flex}.exam-timer-bar{z-index:30;border:1px solid var(--line);background:var(--panel-solid);box-shadow:0 14px 34px var(--shadow);border-radius:12px;justify-content:space-between;align-items:center;gap:22px;margin-bottom:20px;padding:16px 18px;display:flex;position:sticky;top:10px}.exam-timer-display{grid-template-columns:auto auto 1fr;grid-template-areas:"icon label status""icon time time";align-items:center;gap:5px 14px;display:grid}.exam-timer-display svg{color:var(--muted);grid-area:icon}.exam-timer-display>span{color:var(--muted);grid-area:label;font-size:14px;font-weight:700;line-height:1.3}.exam-timer-display>strong{color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:.04em;grid-area:time;font-size:clamp(42px,4vw,52px);font-weight:850;line-height:1}.exam-timer-display>em{background:var(--panel);color:var(--muted);border-radius:999px;grid-area:status;justify-self:start;padding:4px 9px;font-size:13px;font-style:normal;font-weight:750;line-height:1.3}.exam-timer-controls{align-items:center;gap:10px;display:flex}.exam-timer-controls .soft-action{min-height:50px;padding-inline:17px}.exam-timer-bar.running{border-color:#4d96ffad}.exam-timer-bar.running .exam-timer-display>em{color:#3177cf;background:#4d96ff24}.exam-timer-bar.warning{box-shadow:inset 0 0 0 2px #f4a5241f, 0 14px 34px var(--shadow);border-color:#f4a524e0}.exam-timer-bar.warning .exam-timer-display>strong,.exam-timer-bar.warning .exam-timer-display>em{color:#c17800}.exam-timer-bar.expired{box-shadow:inset 0 0 0 2px #ff6b6b24, 0 14px 34px var(--shadow);border-color:#ff6b6be6}.exam-timer-bar.expired .exam-timer-display>strong,.exam-timer-bar.expired .exam-timer-display>em{color:#e04f4f}main[data-theme=dark] .exam-timer-bar.running .exam-timer-display>em{color:#8fc0ff}main[data-theme=dark] .exam-timer-bar.warning .exam-timer-display>strong,main[data-theme=dark] .exam-timer-bar.warning .exam-timer-display>em{color:#ffc45f}main[data-theme=dark] .exam-timer-bar.expired .exam-timer-display>strong,main[data-theme=dark] .exam-timer-bar.expired .exam-timer-display>em{color:#ff8e8e}.progress-track{background:var(--matrix-blank);border-radius:999px;height:10px;margin-bottom:16px;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg,#6bcb77,#4d96ff);height:100%;display:block}.memory-tools{gap:10px;margin-bottom:16px;display:grid}.memory-tool-group{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-items:center;gap:8px;padding:10px;display:flex;overflow-x:auto}.memory-tool-group>strong{color:var(--muted);flex:none;margin-right:2px;font-size:13px}.memory-tool-group button{border:1px solid var(--line);background:var(--panel-solid);min-height:36px;color:var(--text);border-radius:999px;flex:none;padding:0 11px;font-size:13px;font-weight:700}.memory-tool-group button.active{border-color:var(--interactive);background:var(--interactive);color:#fff}.memory-tool-group button:disabled{cursor:not-allowed;opacity:.45}.memory-status{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.status-column{border:1px solid var(--line);background:var(--panel-solid);box-shadow:0 12px 28px var(--shadow);border-radius:8px;overflow:hidden}.status-column header{border-bottom:1px solid var(--line);background:var(--panel);justify-content:space-between;align-items:center;gap:10px;padding:12px 13px;display:flex}.status-column h3{color:var(--text);letter-spacing:0;margin:0;font-size:15px}.status-column header span{background:var(--text);min-width:28px;height:24px;color:var(--page-bg);border-radius:999px;place-items:center;padding:0 8px;font-size:12px;font-weight:900;display:grid}.status-list{max-height:280px;display:grid;overflow:auto}.status-list button{border:0;border-bottom:1px solid var(--line);color:var(--text);text-align:left;background:0 0;gap:2px;padding:10px 13px;display:grid}.status-list button:last-child{border-bottom:0}.status-list button:hover{background:#4d96ff1f}.status-list strong,.status-list em{overflow-wrap:anywhere;display:block}.status-list strong{font-size:13px;line-height:1.25}.status-list em{color:var(--muted);font-size:11px;font-style:normal;font-weight:800}.flash-card{border:1px solid var(--line);background:var(--panel-solid);width:min(600px,100%);box-shadow:0 18px 48px var(--shadow);border-radius:10px;margin:0 auto;overflow:hidden}.flash-card.done{box-shadow:inset 0 0 0 2px #6bcb7738, 0 18px 48px var(--shadow);border-color:#6bcb77b8}.flash-card.memory-unsure{box-shadow:inset 0 0 0 2px #ffc1072e, 0 18px 48px var(--shadow);border-color:#ffc107b8}.flash-card.memory-mastered{box-shadow:inset 0 0 0 2px #6bcb7738, 0 18px 48px var(--shadow);border-color:#6bcb77b8}.flash-counter{border-bottom:1px solid var(--line);background:var(--panel);justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;display:flex}.flash-counter span,.flash-counter strong{font-size:15px;font-weight:700}.flash-counter span{color:var(--muted)}.flash-counter strong{background:var(--text);color:var(--page-bg);border-radius:999px;padding:5px 10px}.flash-image{aspect-ratio:1.15;background:linear-gradient(180deg, transparent, #0000001f), var(--cocktail-image);background-position:50%;background-repeat:no-repeat;background-size:cover;border:0;width:100%;display:block;position:relative}.flash-image .flash-base-badge{color:#fff;background:#151a20;border-radius:999px;padding:6px 11px;font-size:12px;font-weight:900;position:absolute;top:14px;left:14px}.flash-body{padding:24px}.flash-body h3{color:var(--text);letter-spacing:0;text-align:center;margin:0;font-size:clamp(34px,7vw,44px);line-height:1.18}.flash-body p{color:var(--muted);text-align:center;margin:10px 0 22px;font-size:18px;font-weight:600}.flash-body dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.flash-body dl div{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:13px}.flash-ingredients{border:1px solid var(--line);background:var(--panel);border-radius:8px;margin-top:12px;padding:13px 14px}.flash-ingredients h4{color:var(--muted);letter-spacing:0;margin:0 0 8px;font-size:15px;font-weight:700}.flash-ingredients ul{gap:7px;margin:0;padding-left:18px;display:grid}.flash-ingredients li{color:var(--text);overflow-wrap:anywhere;font-size:14px;font-weight:800;line-height:1.35}.flash-actions,.flash-nav{gap:10px;padding:0 16px 16px;display:grid}.flash-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.flash-actions.memory-grade-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.flash-nav{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:0}.flash-actions button,.flash-nav button{border:1px solid var(--line);background:var(--panel);min-height:48px;color:var(--text);border-radius:8px;justify-content:center;align-items:center;gap:7px;font-size:16px;font-weight:700;display:inline-flex}.flash-actions button.primary{background:var(--text);color:var(--page-bg);border-color:#0000}.flash-actions button.selected{color:#d84d4d;border-color:#ff6b6b}.flash-actions button.selected.unsure{color:#9a7500;border-color:#d9a500}.quiz-focus{width:min(640px,100%)}.quiz-prompt{border:0;border-bottom:1px solid var(--line);background:radial-gradient(circle at 50% 18%, #4d96ff21, transparent 34%), var(--panel-solid);width:100%;min-height:220px;color:var(--text);text-align:center;place-items:center;gap:9px;padding:34px 22px;display:grid}.quiz-complete{border:1px solid var(--line);background:var(--panel-solid);width:min(560px,100%);color:var(--text);text-align:center;box-shadow:0 18px 48px var(--shadow);border-radius:8px;margin:0 auto;padding:34px 24px}.quiz-complete h3{margin:10px 0 4px;font-size:26px}.quiz-complete p{color:var(--muted);margin:0}.quiz-complete button,.primary-evaluation{background:var(--text);min-height:44px;color:var(--page-bg);border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;margin-top:18px;padding:0 16px;font-weight:700;display:inline-flex}.quiz-prompt strong,.quiz-prompt em{overflow-wrap:anywhere;display:block}.quiz-prompt strong{letter-spacing:0;font-size:clamp(38px,8vw,60px);line-height:1.12}.quiz-prompt em{color:var(--muted);font-size:19px;font-style:normal;font-weight:600}.quiz-answer-image{aspect-ratio:1;border:1px solid var(--line);background-color:var(--panel);background-image:var(--cocktail-image);background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:8px;width:min(360px,100% - 24px);margin:12px auto 0;display:block;position:relative}.reveal-button.standalone{width:calc(100% - 32px);margin:16px}.memory-grid,.exam-grid{grid-template-columns:repeat(1,minmax(0,1fr));gap:14px;display:grid}.memory-card,.exam-card,.quiz-card{border:1px solid var(--line);background:var(--panel-solid);box-shadow:0 12px 28px var(--shadow);border-radius:8px;overflow:hidden}.memory-card.done{box-shadow:inset 0 0 0 2px #6bcb773d, 0 12px 28px var(--shadow);border-color:#6bcb77b3}.memory-image,.exam-image{aspect-ratio:1.25;background:linear-gradient(180deg, transparent, #0000001f), var(--cocktail-image);background-position:50%;background-repeat:no-repeat;background-size:cover;border:0;width:100%;display:block}.exam-image.revealed{aspect-ratio:1;margin-inline:auto;background-color:var(--panel);background-image:var(--cocktail-image);background-position:50%;background-repeat:no-repeat;background-size:contain;width:min(360px,100% - 24px);margin-top:10px;position:relative}.memory-image{position:relative}.memory-image span{color:#fff;background:#151a20;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900;position:absolute;top:12px;left:12px}.memory-body{gap:4px;padding:13px 14px;display:grid}.memory-body strong,.memory-body em,.memory-body small{overflow-wrap:anywhere;display:block}.memory-body strong{color:var(--text);font-size:17px;line-height:1.25}.memory-body em,.memory-body small{color:var(--muted);font-style:normal;font-weight:800}.memory-body em{font-size:12px}.memory-body small{font-size:11px}.memorize-toggle,.reveal-button{border:1px solid var(--line);background:var(--text);width:calc(100% - 24px);min-height:40px;color:var(--page-bg);border-radius:8px;margin:0 12px 12px;font-size:13px;font-weight:900}.exam-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:12px 13px;display:flex}.exam-top span{color:var(--muted);font-size:12px;font-weight:900}.exam-top strong{color:#fff;border-radius:999px;padding:5px 9px;font-size:12px}.exam-top .exam-sealed{border:1px solid var(--line);background:var(--panel);color:var(--muted)}.exam-name{text-align:center;padding:22px 18px 14px}.exam-name h3{color:var(--text);letter-spacing:0;margin:0;font-size:clamp(30px,5vw,40px);line-height:1.18}.exam-name p{color:var(--muted);margin:7px 0 0;font-size:18px;font-weight:600}.exam-paper{border:1px dashed var(--line);background:var(--panel);border-radius:8px;margin:4px 14px 14px;padding:13px 14px}.exam-paper span{color:var(--muted);margin-bottom:8px;font-size:15px;font-weight:700;display:block}.exam-paper ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.exam-paper li{border:1px solid var(--line);min-height:34px;color:var(--text);border-radius:7px;padding:10px 12px;font-size:16px;font-weight:650}.quiz-list{gap:12px;display:grid}.quiz-title{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--text);text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px;padding:14px;display:grid}.quiz-title span{background:var(--text);width:34px;height:34px;color:var(--page-bg);border-radius:999px;place-items:center;font-size:12px;font-weight:900;display:grid}.quiz-title strong,.quiz-title em{overflow-wrap:anywhere;display:block}.quiz-title strong{font-size:17px}.quiz-title em{color:var(--muted);font-size:13px;font-style:normal;font-weight:850}.answer-block{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px;display:grid}.answer-block div{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:10px}.answer-block .answer-ingredients{grid-column:1/-1}.answer-ingredients ul{gap:7px;margin:4px 0 0;padding-left:18px;display:grid}.answer-ingredients li{color:var(--text);overflow-wrap:anywhere;font-size:14px;font-weight:800;line-height:1.35}.self-score{border:1px solid var(--line);background:var(--panel);border-radius:8px;margin:12px;padding:12px}.self-score legend{color:var(--muted);padding:0 5px;font-size:13px;font-weight:700}.score-checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.score-checks label{color:var(--text);align-items:center;gap:7px;font-size:14px;font-weight:650;display:flex}.score-checks input{accent-color:#ff6b6b;width:18px;height:18px}.ingredient-error-control{border-top:1px solid var(--line);align-items:center;gap:6px;margin-top:12px;padding-top:12px;display:flex}.ingredient-error-control span{color:var(--muted);margin-right:auto;font-size:13px;font-weight:700}.ingredient-error-control button{border:1px solid var(--line);background:var(--panel-solid);min-height:34px;color:var(--text);border-radius:7px;padding:0 9px;font-size:13px;font-weight:650}.ingredient-error-control button.active{background:#ff6b6b26;border-color:#ff6b6b}.exam-evaluation{justify-items:center;margin-top:18px;display:grid}.evaluation-result{border:1px solid;border-radius:8px;grid-template-columns:auto 1fr;gap:10px;width:min(680px,100%);margin-top:12px;padding:14px;display:grid}.evaluation-result.passed{background:#6bcb771f;border-color:#6bcb77b3}.evaluation-result.failed{background:#ff6b6b1f;border-color:#ff6b6bbf}.evaluation-result strong{display:block}.evaluation-result p{color:var(--muted);margin:3px 0 0;font-size:14px}.ingredients-view{max-width:1280px;margin:0 auto}.ingredients-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.ingredients-head h2{color:var(--text);letter-spacing:0;margin:0;font-size:26px}.ingredients-head p{color:var(--muted);margin:6px 0 0;font-size:14px;font-weight:750}.ingredients-head strong{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:999px;flex:none;padding:8px 11px;font-size:13px}.ingredient-grid{columns:1;column-gap:16px}.garnish-panel{border:1px solid var(--line);background:var(--panel);box-shadow:0 12px 30px var(--shadow);border-radius:10px;margin-bottom:20px;padding:16px}.garnish-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;display:flex}.garnish-head h3{color:var(--text);letter-spacing:0;margin:0;font-size:20px}.garnish-head p{color:var(--muted);margin:5px 0 0;font-size:13px;font-weight:750}.garnish-head span{color:var(--muted);flex:none;font-size:13px;font-weight:900}.garnish-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;display:grid}.garnish-card{border:1px solid var(--line);background:var(--panel-solid);border-radius:8px;overflow:hidden}.garnish-card header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:10px;min-height:62px;padding:12px;display:flex}.garnish-card h4{color:var(--text);letter-spacing:0;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.28}.garnish-card header span{background:var(--text);min-width:28px;height:24px;color:var(--page-bg);border-radius:999px;place-items:center;padding:0 8px;font-size:12px;font-weight:900;display:grid}.garnish-recipes{display:grid}.garnish-recipes button{border:0;border-bottom:1px solid var(--line);color:var(--text);text-align:left;background:0 0;gap:2px;padding:9px 12px;display:grid}.garnish-recipes button:last-child{border-bottom:0}.garnish-recipes button:hover{background:#ffd93d29}.garnish-recipes strong,.garnish-recipes em{overflow-wrap:anywhere;display:block}.garnish-recipes strong{font-size:13px;line-height:1.25}.garnish-recipes em{color:var(--muted);font-size:11px;font-style:normal;font-weight:800}.ingredient-card{break-inside:avoid;border:1px solid var(--line);background:var(--panel-solid);width:100%;box-shadow:0 12px 28px var(--shadow);border-radius:8px;margin:0 0 16px;display:inline-block;overflow:hidden}.ingredient-card header{border-bottom:1px solid var(--line);background:var(--panel);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 14px 12px;display:flex}.ingredient-card h3{color:var(--text);letter-spacing:0;overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.25}.ingredient-card header span{background:var(--text);min-width:30px;height:26px;color:var(--page-bg);border-radius:999px;place-items:center;padding:0 8px;font-size:12px;font-weight:900;display:grid}.ingredient-recipes{display:grid}.ingredient-recipes button{border:0;border-bottom:1px solid var(--line);color:var(--text);text-align:left;background:0 0;grid-template-columns:minmax(112px,.9fr) minmax(0,1.2fr);align-items:center;gap:10px;padding:11px 14px;display:grid}.ingredient-recipes button:last-child{border-bottom:0}.ingredient-recipes button:hover{background:color-mix(in srgb, var(--method,#4d96ff), transparent 88%)}.ingredient-recipes strong,.ingredient-recipes em,.ingredient-recipes small{overflow-wrap:anywhere;display:block}.ingredient-recipes strong{font-size:13px;line-height:1.25}.ingredient-recipes em{color:var(--muted);margin-top:2px;font-size:11px;font-style:normal;font-weight:800}.ingredient-recipes small{color:var(--muted);font-size:12px;font-weight:800;line-height:1.3}.recipe-card{aspect-ratio:3/4.2;border:1px solid color-mix(in srgb, var(--method), #111 18%);background:var(--panel-solid);color:var(--text);text-align:center;border-radius:8px;grid-template-rows:minmax(0,1fr) auto;align-items:stretch;gap:0;padding:0;text-decoration:none;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #12161c14,0 14px 34px #12161c1a}.base-badge,.glass-label,.card-name{z-index:1;position:relative}.card-media{background:radial-gradient(circle at 50% 26%, #ffffffeb, transparent 25%), linear-gradient(145deg, #ffffffe0, #ffffff5c), var(--method-tint);min-height:0;padding:14px 14px 8px;display:grid;position:relative;overflow:hidden}.card-media:after{content:"";background:#12161c1a;height:1px;position:absolute;inset:auto 12% 10px}.base-badge{color:#fff;background:#151a20;border-radius:999px;justify-self:start;padding:5px 10px;font-size:12px;font-weight:900;position:absolute;top:14px;left:14px}.cocktail-photo{aspect-ratio:1;background:var(--cocktail-image);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:8px;place-self:center;width:min(96%,280px);margin-top:8px;position:relative;box-shadow:0 18px 38px #12161c29}.image-pending{aspect-ratio:1;color:#6b7280;background:#ffffff7a;border:1px dashed #12161c38;border-radius:8px;place-self:center;place-items:center;width:min(90%,250px);font-size:13px;font-weight:900;display:grid}.card-info{background:var(--panel-solid);border-top:1px solid #12161c14;align-content:center;gap:12px;min-height:96px;padding:16px 14px 18px;display:grid}.card-name{align-self:center}.card-name strong,.card-name em{overflow-wrap:anywhere;display:block}.card-name strong{letter-spacing:0;font-size:clamp(19px,4.3vw,28px);line-height:1.12}.card-name em{color:var(--muted);margin-top:8px;font-size:13px;font-style:normal;font-weight:800}.modal-backdrop{z-index:20;background:#0d10159e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--panel-solid);border-radius:10px;width:min(620px,100%);max-height:min(760px,92vh);padding:26px;position:relative;overflow:auto;box-shadow:0 22px 70px #00000040}.close{border:1px solid var(--line);background:var(--panel);width:38px;height:38px;color:var(--text);border-radius:8px;place-items:center;display:grid;position:absolute;top:16px;right:16px}.modal-head{align-items:flex-start;gap:13px;padding-right:46px;display:flex}.method-dot{border-radius:999px;flex:none;width:14px;height:48px}.modal h2{letter-spacing:0;margin:0;font-size:32px}.modal p{color:var(--muted);margin:4px 0 0;font-weight:800}.modal-image-figure{width:min(380px,100%);margin:22px auto 18px}.modal-image-wrap{aspect-ratio:1;border:1px solid var(--line);background:var(--panel);border-radius:8px;width:min(380px,100%);margin:0;position:relative;overflow:hidden}.modal-image{object-fit:contain;object-position:center;width:100%;height:100%;display:block}.modal-image-figure figcaption{color:var(--muted);text-align:center;margin-top:8px;font-size:13px;font-weight:600;line-height:1.4}.ai-image-badge{z-index:2;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#12161cc7;border:1px solid #ffffff52;border-radius:999px;align-items:center;min-height:25px;padding:0 8px;font-size:11px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:10px;right:10px}.site-disclosure{max-width:var(--content-max);border-top:1px solid var(--line);color:var(--muted);grid-template-columns:auto minmax(0,1fr);gap:11px;margin:34px auto 0;padding:16px;display:grid}.site-disclosure>svg{margin-top:2px}.site-disclosure strong{color:var(--text);margin-bottom:5px;font-size:14px;font-weight:700;display:block}.site-disclosure p{margin:3px 0 0;font-size:13px;font-weight:500;line-height:1.55}.site-disclosure a{color:var(--text);text-underline-offset:3px}.footer-links{gap:14px;margin-top:10px;font-size:13px;font-weight:750;display:flex}.chip{text-decoration:none}.facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0;display:grid}.facts div{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:12px}dt{color:var(--muted);font-size:12px;font-weight:900}dd{color:var(--text);margin:4px 0 0;font-weight:900}.ingredients h3{margin:0 0 10px}.ingredients ul{margin:0;padding-left:20px}.ingredients li{margin:8px 0;font-weight:750}.empty-state{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:36px}.loading-state{min-height:60vh}.dataset-badge,.theme-toggle,.segmented button,.subnav button,.section-switch button,.soft-action,.practice-actions strong{font-size:14px}.notice,.search input,.controls p{font-size:15px}.matrix thead th,.matrix tbody th,.method-legend strong,.method-legend span,.chip span{font-size:14px}.chip small,.base-badge,.exam-top span,.exam-top strong,.flash-counter span,.flash-counter strong{font-size:13px}.group-recipes strong,.ingredient-recipes strong,.garnish-recipes strong,.status-list strong,.memory-body strong{font-size:15px}.group-recipes em,.ingredient-recipes em,.garnish-recipes em,.status-list em,.memory-body em{font-size:13px}.group-recipes small,.ingredient-recipes small,.memory-body small,.exam-paper li,.flash-actions button,.flash-nav button,.reveal-button,.memorize-toggle{font-size:14px}.flash-ingredients li,.answer-ingredients li,.ingredients li{font-size:15px}dt{font-size:13px}dd,.modal p,.card-name em,.exam-name p,.quiz-prompt em{font-size:15px}main{font-weight:500}h1,.modal h2,.flash-body h3,.quiz-prompt strong,.exam-name h3,.card-name strong{font-weight:800}.segmented button,.subnav button,.section-switch button,.theme-toggle,.dataset-badge,.soft-action,.practice-actions strong,.reveal-button,.memorize-toggle,.flash-actions button,.flash-nav button{font-weight:700}.notice strong,.controls p,.method-legend strong,.matrix thead th,.matrix tbody th,.chip span,.group-card h3,.ingredient-card h3,.garnish-card h4,.status-column h3,.flash-counter strong,.exam-top strong,dd{font-weight:750}.chip small,.group-recipes em,.group-recipes small,.ingredient-recipes em,.ingredient-recipes small,.garnish-recipes em,.status-list em,.memory-body em,.memory-body small,.modal p,.card-name em,.exam-name p,.quiz-prompt em{font-weight:600}dt,.flash-ingredients h4,.exam-paper span{font-weight:700}.search input,.notice span,.flash-ingredients li,.answer-ingredients li,.ingredients li{font-size:16px;font-weight:600;line-height:1.45}.chip{min-height:40px;padding:8px 10px}.chip span{font-size:15px;line-height:1.2}.chip small{font-size:13px;line-height:1.25}.matrix thead th,.matrix tbody th{line-height:1.4}.group-recipes strong,.ingredient-recipes strong,.garnish-recipes strong,.status-list strong{font-size:16px;font-weight:700}.group-recipes small,.ingredient-recipes small{font-size:14px;line-height:1.4}.card-name strong{font-size:clamp(22px,4.5vw,31px)}.card-name em{font-size:15px}.facts div,.answer-block div,.flash-body dl div,.flash-ingredients{line-height:1.45}@media (width>=860px){.cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.memory-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.exam-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ingredient-grid,.group-grid{columns:2}}@media (width>=1180px){.ingredient-grid,.group-grid{columns:3}}@media (width>=721px) and (width<=1100px){.exam-timer-bar{padding:17px 18px}.exam-timer-display>strong{font-size:clamp(50px,6vw,54px)}}@media (width<=720px){.matrix-shell{overscroll-behavior-inline:contain;scrollbar-width:thin}.matrix tbody th,.matrix .corner{width:112px;min-width:112px;max-width:112px;padding:12px 8px}.matrix tbody th .matrix-row-heading{flex-direction:column;align-items:flex-start;gap:7px}.matrix tbody th{overflow-wrap:normal;word-break:keep-all}.matrix-mode-bar{flex-direction:column;align-items:stretch}.matrix-mode-bar>div:first-child{justify-content:space-between}.matrix-switch{width:100%}.matrix-switch button{flex:1}main{padding:18px}.topbar,.controls{flex-direction:column;align-items:stretch}.toolbar{grid-template-columns:minmax(0,1fr) 44px;justify-content:stretch;align-items:center;width:100%;display:grid}.toolbar .dataset-badge{grid-area:1/1;justify-content:center;min-width:0;height:44px}.toolbar .theme-toggle{grid-area:1/2;justify-content:center;width:44px;padding:0}.toolbar .theme-toggle span{display:none}.toolbar .segmented{grid-area:2/1/auto/-1;width:100%}.toolbar .segmented button{flex:1 1 0;justify-content:center;min-width:0;padding-inline:6px}.notice,.method-legend{align-items:stretch}.subnav,.section-switch{width:100%}.subnav button,.section-switch button{flex:1 1 0}.method-legend{flex-direction:column}.notice{grid-template-columns:auto 1fr;display:grid}.notice span{grid-column:1/-1}.facts{grid-template-columns:1fr}.ingredients-head{flex-direction:column;align-items:flex-start}.practice-head,.practice-actions{flex-direction:column;align-items:stretch}.exam-timer-bar{flex-direction:column;align-items:stretch;gap:14px;padding:14px;top:8px}.exam-timer-display{width:100%}.exam-timer-display>strong{font-size:clamp(44px,13vw,50px)}.exam-timer-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.exam-timer-controls .soft-action{width:100%;min-height:50px;padding-inline:10px}.quiz-title,.answer-block,.flash-body dl,.flash-actions,.flash-actions.memory-grade-actions,.flash-nav,.memory-status,.score-checks{grid-template-columns:1fr}.ingredient-error-control{flex-wrap:wrap;align-items:stretch}.ingredient-error-control span{flex:0 0 100%}.garnish-head{flex-direction:column;align-items:flex-start}.ingredient-recipes button{grid-template-columns:1fr}.group-recipes button{grid-template-columns:auto 1fr}.group-recipes small{grid-column:2}}main[data-theme=light]{--page-bg:#f7f8fa;--page-grad-a:#f7f8fa;--page-grad-b:#f7f8fa;--text:#172033;--muted:#647084;--panel:#fff;--panel-solid:#fff;--line:#d8dee8;--line-strong:#b8c2d1;--accent:#285780;--accent-strong:#1d4263;--accent-soft:#edf4f9;--interactive:#1f4b73;--interactive-strong:#173a59;--interactive-soft:#edf3f8;--matrix-shell:#fff;--matrix-head:#f1f4f7;--matrix-head-text:#172033;--matrix-line:#d8dee8;--matrix-blank:#f3f5f7;--matrix-blank-text:#98a2b3;--matrix-filled:#fff;--notice-bg:#fff8e7;--notice-line:#d9b44a;--notice-text:#5b4815;--shadow:#1c273617;--shadow-soft:0 3px 12px #1c273612;--shadow-lift:0 12px 28px #1c273621}main[data-theme=dark]{--page-bg:#11151c;--page-grad-a:#161c25fa;--page-grad-b:#11151cfa;--text:#f6f1e8;--muted:#aab4c3;--panel:#1c232ec7;--panel-solid:#1a212c;--line:#374253;--line-strong:#59677a;--accent:#8ec5ff;--accent-strong:#b8d9ff;--accent-soft:#8ec5ff1f;--interactive:#8ec5ff;--interactive-strong:#b8d9ff;--interactive-soft:#8ec5ff1f;--matrix-shell:#171e28;--matrix-head:#222b38;--matrix-head-text:#f6f1e8;--matrix-line:#374253;--matrix-blank:#121820;--matrix-blank-text:#647083;--matrix-filled:#1a212c;--notice-bg:#302817;--notice-line:#79612c;--notice-text:#ffe5a0;--shadow:#0000004d;--shadow-soft:0 8px 24px #0003;--shadow-lift:0 20px 46px #0000005c}body{background:var(--page-bg,#f7f8fa)}main{background:var(--page-bg);padding:34px clamp(20px,3vw,48px) 42px}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb, var(--accent), transparent 56%);outline-offset:3px}.topbar{align-items:center;margin-bottom:24px}.brand-lockup{max-width:670px}.eyebrow{border-bottom:2px solid var(--accent);width:fit-content;color:var(--accent-strong);letter-spacing:.12em;margin-bottom:9px;padding-bottom:5px;font-size:12px}h1{letter-spacing:-.045em;font-size:clamp(36px,4.2vw,60px)}.brand-description{color:var(--muted);margin:12px 0 0;font-size:clamp(14px,1.2vw,17px);font-weight:600}.toolbar{gap:10px}.dataset-badge{border-color:color-mix(in srgb, var(--accent), var(--line) 68%);background:var(--accent-soft);min-height:44px;color:var(--accent-strong)}.segmented,.subnav,.section-switch{border-color:var(--line);background:var(--panel);box-shadow:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:13px;padding:5px}.segmented button,.subnav button,.section-switch button{border:1px solid #0000;border-radius:9px;transition:color .16s,background-color .16s,border-color .16s,transform .16s}.segmented button:hover,.subnav button:hover,.section-switch button:hover{border-color:color-mix(in srgb, var(--interactive), transparent 62%);background:var(--interactive-soft);color:var(--interactive);transform:translateY(-1px)}.segmented button.active,.subnav button.active,.section-switch button.active,main[data-theme=light] .segmented button.active,main[data-theme=light] .subnav button.active,main[data-theme=light] .section-switch button.active{border-color:var(--interactive);background:var(--interactive);color:#fff;box-shadow:0 2px 5px color-mix(in srgb, var(--interactive), transparent 76%)}.theme-toggle,.soft-action,.flash-actions button,.flash-nav button,.quiz-complete button,.primary-evaluation,.memorize-toggle,.reveal-button{border-radius:10px;transition:color .16s,background-color .16s,border-color .16s,transform .16s,box-shadow .16s}.theme-toggle:hover,.soft-action:hover,.flash-actions button:hover,.flash-nav button:hover{border-color:var(--interactive);background:var(--interactive-soft);color:var(--interactive);transform:translateY(-1px)}.memorize-toggle,.reveal-button,.flash-actions button.primary,.quiz-complete button,.primary-evaluation{border:1px solid var(--interactive);background:var(--interactive);color:#fff;box-shadow:0 2px 5px color-mix(in srgb, var(--interactive), transparent 72%)}.memorize-toggle:hover,.reveal-button:hover,.flash-actions button.primary:hover,.quiz-complete button:hover,.primary-evaluation:hover{border-color:var(--interactive-strong);background:var(--interactive-strong);color:#fff;box-shadow:0 4px 9px color-mix(in srgb, var(--interactive), transparent 70%);transform:translateY(-1px)}.flash-actions button.selected{color:#fff;background:#c63f46;border-color:#c63f46;box-shadow:0 2px 5px #c63f463d}.flash-actions button.selected:hover{color:#fff;background:#a93238;border-color:#a93238}.flash-actions button.selected.unsure{color:#fff;background:#9b6a00;border-color:#9b6a00;box-shadow:0 2px 5px #9b6a003d}.flash-actions button.selected.unsure:hover{color:#fff;background:#795300;border-color:#795300}.notice{border:1px solid var(--notice-line);box-shadow:0 5px 18px color-mix(in srgb, var(--notice-line), transparent 86%);border-radius:13px;gap:12px;padding:15px 18px}.controls{margin-top:20px;margin-bottom:18px}.search{background:var(--panel-solid);box-shadow:var(--shadow-soft);border-radius:12px;padding:0 15px;transition:border-color .16s,box-shadow .16s,transform .16s}.search:focus-within{border-color:var(--interactive);box-shadow:0 0 0 4px color-mix(in srgb, var(--interactive), transparent 86%);transform:translateY(-1px)}.search svg{color:var(--interactive)}.controls p{background:var(--interactive-soft);color:var(--interactive);border-radius:999px;padding:7px 11px}.matrix-mode-bar,.method-legend{background:var(--panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:13px}.method-legend{border-style:solid}.method-legend span{border-color:color-mix(in srgb, var(--line), transparent 20%);background:var(--panel-solid)}.matrix-shell{border-color:var(--line-strong);box-shadow:var(--shadow-soft);border-radius:16px}.matrix thead th{border-bottom-color:var(--line-strong);height:58px}.matrix tbody th{border-right-color:var(--line-strong)}.matrix td{padding:10px}.matrix td.hot,.matrix th.hot{box-shadow:inset 0 0 0 999px color-mix(in srgb, var(--interactive), transparent 93%)}.row-count{border-color:var(--line-strong);background:var(--panel-solid);color:var(--interactive)}.chip{border:1px solid color-mix(in srgb, var(--method), #000 20%);background:var(--method-fill,var(--method));color:#fff;text-align:center;border-radius:9px;place-items:center;transition:color .16s,background-color .16s,border-color .16s,transform .16s,box-shadow .16s;display:grid;position:relative;overflow:hidden;transform:translateY(0);box-shadow:0 1px 2px #121c2a2e}.chip span{width:100%;text-shadow:none}.chip:hover,.chip:focus-visible{z-index:2;border-color:color-mix(in srgb, var(--method), #000 32%);background:var(--method-fill,var(--method));color:var(--method-ink,#111827);box-shadow:0 0 0 3px color-mix(in srgb, var(--method), transparent 68%), 0 5px 12px #121c2a2e;filter:brightness(.94)saturate(1.04);transform:translateY(-2px)}main[data-theme=dark] .chip,main[data-theme=dark] .chip:hover,main[data-theme=dark] .chip:focus-visible{background:var(--method-fill,var(--method));color:var(--method-ink,#111827)}.cards{gap:clamp(16px,2vw,24px)}.recipe-card{border-color:color-mix(in srgb, var(--method), var(--line) 54%);box-shadow:var(--shadow-soft);border-radius:16px;transition:border-color .18s,transform .18s,box-shadow .18s;transform:translateY(0)}.recipe-card:after{content:none}.recipe-card:hover,.recipe-card:focus-visible{border-color:var(--method);box-shadow:var(--shadow-lift);transform:translateY(-7px)}.cocktail-photo{border-radius:12px;transition:transform .24s;transform:scale(1);box-shadow:0 14px 34px #12161c24}.recipe-card:hover .cocktail-photo,.recipe-card:focus-visible .cocktail-photo{transform:scale(1.035)}.base-badge{background:color-mix(in srgb, var(--interactive), #111 18%);border:1px solid #ffffff38;box-shadow:0 4px 12px #12161c29}.card-info{min-height:108px}.group-card,.ingredient-card,.garnish-card,.status-column,.flash-card,.memory-card,.exam-card,.quiz-card,.quiz-complete,.empty-state{box-shadow:var(--shadow-soft);border-radius:14px}.group-recipes button,.ingredient-recipes button,.garnish-recipes button,.status-list button,.quiz-title{transition:color .15s,background-color .15s,padding-left .15s}.group-recipes button:hover,.ingredient-recipes button:hover,.garnish-recipes button:hover,.status-list button:hover,.quiz-title:hover{background:var(--interactive-soft);color:var(--interactive);padding-left:18px}.flash-body dl div,.flash-ingredients,.answer-block div,.self-score,.exam-paper,.facts div{border-radius:11px}.modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0e15b8}.modal{border:1px solid var(--line);border-radius:18px;box-shadow:0 30px 90px #00000057}@media (width>=800px){.modal{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);grid-template-areas:"head head""image facts""image ingredients";align-items:start;column-gap:28px;width:min(900px,100%);display:grid}.modal-head{grid-area:head}.modal-image-figure{grid-area:image;width:100%;margin:22px 0 0}.modal-image-wrap{width:100%}.modal .facts{grid-area:facts;margin:22px 0 0}.modal .ingredients{grid-area:ingredients}}.close{border-radius:10px;transition:color .15s,background-color .15s,border-color .15s,transform .15s}.close:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);transform:rotate(6deg)}.site-disclosure{margin-top:48px}.study-mode-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:min(860px,100%);margin:16px auto 28px;display:grid}.study-mode-nav button{border:1px solid var(--line);background:var(--panel-solid);min-height:68px;color:var(--text);text-align:left;box-shadow:var(--shadow-soft);border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:12px 15px;transition:color .16s,background-color .16s,border-color .16s,transform .16s,box-shadow .16s;display:grid}.study-mode-nav button:hover{border-color:var(--interactive);background:var(--interactive-soft);color:var(--interactive);transform:translateY(-1px)}.study-mode-nav button.active{border-color:var(--interactive);background:var(--interactive);color:#fff;box-shadow:0 5px 13px color-mix(in srgb, var(--interactive), transparent 70%)}.study-mode-nav button>span{gap:3px;display:grid}.study-mode-nav button strong{font-size:14px;line-height:1.2}.study-mode-nav button small{color:var(--muted);font-size:11px;font-weight:750;line-height:1.25}.study-mode-nav button.active small{color:#ffffffc7}.choice-settings{border:1px solid var(--line);background:var(--line);box-shadow:var(--shadow-soft);border-radius:14px;gap:1px;margin-bottom:20px;display:grid;overflow:hidden}.choice-settings .memory-tool-group{background:var(--panel-solid);box-shadow:none;border:0;border-radius:0;margin:0;padding:11px 14px}.choice-card{border:1px solid var(--line);background:var(--panel-solid);width:min(760px,100%);box-shadow:var(--shadow-lift);border-radius:18px;margin:0 auto;overflow:hidden}.choice-card-head{justify-content:space-between;align-items:center;gap:16px;padding:18px 22px 13px;display:flex}.choice-card-head>div:first-child{align-items:center;gap:9px;display:flex}.choice-card-head span{color:var(--muted);font-size:12px;font-weight:850}.choice-card-head strong{color:var(--text);font-size:13px}.choice-score{color:#18743b;background:#e9f7ee;border-radius:999px;justify-content:center;align-items:center;gap:5px;min-width:54px;min-height:32px;font-size:13px;font-weight:900;display:inline-flex}main[data-theme=dark] .choice-score{color:#83e2a5;background:#37b56624}.choice-progress{background:var(--interactive-soft);height:4px}.choice-progress span{background:var(--interactive);border-radius:0 999px 999px 0;height:100%;transition:width .22s;display:block}.choice-question{text-align:center;padding:42px 28px 30px}.choice-question p{color:var(--muted);margin:0 0 17px;font-size:14px;font-weight:750}.choice-question h3{color:var(--text);letter-spacing:-.035em;margin:0;font-size:clamp(28px,5vw,42px);line-height:1.08}.choice-question em{color:var(--muted);margin-top:9px;font-size:15px;font-style:normal;font-weight:750;display:block}.choice-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 22px 22px;display:grid}.choice-options button{border:1px solid var(--line);background:var(--panel);min-height:62px;color:var(--text);text-align:left;border-radius:12px;grid-template-columns:30px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:10px 14px;transition:border-color .15s,background-color .15s,color .15s,transform .15s,box-shadow .15s,opacity .15s;display:grid}.choice-options button:not([aria-disabled=true]):hover{border-color:var(--interactive);background:var(--interactive-soft);box-shadow:0 4px 12px var(--shadow);transform:translateY(-1px)}.choice-options button>span{background:var(--interactive-soft);width:30px;height:30px;color:var(--interactive);border-radius:8px;justify-content:center;align-items:center;font-size:12px;font-weight:900;display:inline-flex}.choice-options button>strong{min-width:0;font-size:14px;line-height:1.35}.choice-options button.correct{color:#fff;background:#25884c;border-color:#25884c;box-shadow:0 4px 12px #25884c38}.choice-options button.wrong{color:#fff;background:#c63f46;border-color:#c63f46;box-shadow:0 4px 12px #c63f4638}.choice-options button.correct>span,.choice-options button.wrong>span{color:#fff;background:#ffffff2e}.choice-options button.dimmed{opacity:.48}.choice-feedback{border:1px solid;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin:0 22px 22px;padding:14px 16px;display:flex}.choice-feedback>div{align-items:center;gap:11px;display:flex}.choice-feedback strong,.choice-feedback p{margin:0;display:block}.choice-feedback p{margin-top:3px;font-size:13px}.choice-feedback.correct{color:#176b36;background:#edf9f1;border-color:#9bd6b0}.choice-feedback.wrong{color:#9e2f35;background:#fff1f1;border-color:#e5adb0}main[data-theme=dark] .choice-feedback.correct{color:#91e6af;background:#37b5661f;border-color:#5bd08559}main[data-theme=dark] .choice-feedback.wrong{color:#ffadb2;background:#c63f4621;border-color:#ea676f61}.choice-feedback button{min-height:36px;color:inherit;background:0 0;border:1px solid;border-radius:8px;flex:none;padding:0 12px;font-size:12px;font-weight:850}.choice-card-footer{border-top:1px solid var(--line);background:color-mix(in srgb, var(--panel-solid), var(--page-bg) 36%);justify-content:space-between;align-items:center;gap:14px;padding:15px 22px;display:flex}.choice-card-footer>span{color:var(--muted);font-size:12px;font-weight:800}.choice-next,.retry-wrong,.restart-choice{border:1px solid var(--interactive);background:var(--interactive);color:#fff;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 16px;font-size:13px;font-weight:900;display:inline-flex}.choice-next:disabled{cursor:not-allowed;border-color:var(--line);background:var(--line);color:var(--muted)}.choice-result{border:1px solid var(--line);background:var(--panel-solid);width:min(820px,100%);box-shadow:var(--shadow-lift);border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;margin:0 auto;padding:28px;display:grid}.choice-result-score{border:8px solid var(--interactive-soft);width:104px;height:104px;color:var(--interactive);letter-spacing:-.05em;border-radius:50%;justify-content:center;align-items:center;font-size:34px;font-weight:950;display:inline-flex}.choice-result-score small{letter-spacing:0;margin:12px 0 0 2px;font-size:12px}.choice-result p,.choice-result h3,.choice-result div>span{margin:0}.choice-result p{color:var(--interactive);font-size:12px;font-weight:900}.choice-result h3{color:var(--text);margin:6px 0 8px;font-size:21px}.choice-result div>span{color:var(--muted);font-size:13px;font-weight:750}.choice-result-actions{gap:8px;display:grid}.choice-result-actions .retry-wrong{background:#c63f46;border-color:#c63f46}main[data-theme=dark] .study-mode-nav button.active,main[data-theme=dark] .memory-tool-group button.active,main[data-theme=dark] .choice-next,main[data-theme=dark] .restart-choice{color:#fff;background:#255a86;border-color:#255a86}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (width<=1080px){.topbar{flex-direction:column;align-items:stretch}.toolbar{justify-content:flex-start}}@media (width<=720px){main{padding:22px 16px 30px}.topbar{gap:16px;margin-bottom:18px}h1{font-size:clamp(32px,9.5vw,40px)}.brand-description{max-width:34ch;margin-top:8px;font-size:13px;line-height:1.55}.toolbar{display:grid}.notice{padding:12px;font-size:13px;line-height:1.42}.notice span{font-size:13px;line-height:1.42}.toolbar .segmented button{white-space:nowrap;gap:4px;padding-inline:3px;font-size:13px}.toolbar .segmented button svg{width:15px;height:15px}.controls p{align-self:flex-start}.matrix-shell{border-radius:13px}.recipe-card:hover,.recipe-card:focus-visible{transform:translateY(-4px)}.practice-actions{grid-template-columns:74px repeat(2,minmax(0,1fr));align-items:center;gap:8px;width:100%;display:grid}.practice-actions>:last-child:nth-child(2){grid-column:2/-1}.practice-actions strong,.practice-actions .soft-action{width:100%;min-height:44px;padding-inline:7px;font-size:13px}.modal .facts{grid-template-columns:repeat(2,minmax(0,1fr))}.modal .close:focus-visible{outline-offset:2px;outline-width:2px}.study-mode-nav{gap:6px;margin-bottom:18px}.study-mode-nav button{text-align:center;flex-direction:column;justify-content:center;gap:6px;min-height:66px;padding:8px 4px;display:flex}.study-mode-nav button>span{display:block}.study-mode-nav button strong{white-space:nowrap;font-size:12px}.study-mode-nav button small{display:none}.choice-settings .memory-tool-group{flex-wrap:wrap;padding:12px;overflow-x:visible}.choice-settings .memory-tool-group>strong{flex:1 0 100%;margin:0 0 2px}.choice-question{padding:32px 18px 24px}.choice-options{grid-template-columns:1fr;padding:0 14px 16px}.choice-options button{min-height:58px}.choice-feedback{flex-direction:column;align-items:stretch;margin:0 14px 16px}.choice-feedback button{width:100%}.choice-card-head,.choice-card-footer{padding-inline:16px}.choice-result{text-align:center;grid-template-columns:1fr;justify-items:center;padding:24px 18px}.choice-result-actions,.choice-result-actions button{width:100%}}
