:root{--color-bg:#f7f3ec;--color-paper:#fbf6ee;--color-surface:#fffdf8;--color-surface-subtle:#fbf8f1;--color-text:#222;--color-muted:#687385;--color-border:#24201c1f;--color-rule:#24201c2e;--color-primary:#9f2d3f;--color-primary-dark:#7f2232;--color-secondary:#2f7373;--color-secondary-dark:#235a5c;--color-warning-bg:#fff8ec;--color-warning-border:#805c2a33;--shadow-card:0 8px 24px #24201c0d;--shadow-soft:0 4px 14px #24201c0a;--radius-card:18px;--radius-control:15px;--space-card:22px;--paper-bg:var(--color-bg);--paper-surface:var(--color-surface);--paper-surface-soft:var(--color-surface-subtle);--ink:var(--color-text);--muted:var(--color-muted);--hairline:#24201c24;--burgundy:var(--color-primary);--teal:var(--color-secondary);--focus-ring:#9f2d3f21;--radius-panel:20px;--shadow-paper:0 10px 30px #24201c0b;--topic-focus-overlay:#0d10129e;--topic-focus-blur:7px;--topic-focus-open-duration:.44s;--topic-focus-close-duration:.28s;--topic-focus-ease:cubic-bezier(.22, 1, .36, 1);color:var(--color-text);background:var(--color-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{background:linear-gradient(180deg, #fffdf8d1, transparent 260px), radial-gradient(circle at 50% 0, #9f2d3f0d, transparent 300px), var(--color-bg);min-height:100vh}.admin-shell{background:linear-gradient(180deg, #2f73730f, transparent 260px), var(--color-bg)}.admin-authenticated-stack{outline:none;flex-direction:column;gap:16px;display:flex}.admin-logout-button{color:#354047b8;min-height:44px;box-shadow:none;background:#fffdf894;border-color:#35404729;border-radius:999px;padding:0 14px;font-size:.82rem;font-weight:720}.admin-logout-button:hover,.admin-logout-button:focus-visible{color:#354047e6;background:#fffdf8db;border-color:#35404747}.admin-back-button{width:auto;min-height:44px;color:var(--color-primary-dark);letter-spacing:.01em;background:linear-gradient(#fffdf8fc,#f7efe2e6);border-color:#7f223247;border-radius:999px;flex:none;padding:0 16px;font-size:.9rem;font-weight:800;box-shadow:inset 0 1px #ffffffd1,0 7px 18px #2d181212}.admin-back-button:hover,.admin-back-button:focus-visible{color:#7f2232;border-color:#7f22325c;box-shadow:inset 0 1px #ffffffdb,0 12px 26px #4e222a17}.app-header,.app-main,.app-footer{width:min(100%,640px);margin:0 auto;padding-inline:20px}.app-header{justify-content:flex-start;align-items:center;gap:16px;padding-block:18px 10px;display:flex}.brand{min-width:0;color:var(--color-text);border-radius:18px;outline:none;flex:0 auto;align-items:center;gap:13px;display:inline-flex}.brand:focus-visible{box-shadow:0 0 0 3px #8f2f3f29}.brand-symbol{filter:drop-shadow(0 5px 12px #502d1e0f);flex:none;width:clamp(54px,14vw,68px);height:auto;display:block}.brand-copy{gap:4px;min-width:0;display:grid}.brand-title{color:#222;letter-spacing:.02em;white-space:nowrap;font-family:Noto Serif KR,Nanum Myeongjo,Apple SD Gothic Neo,Malgun Gothic,serif;font-size:clamp(2.05rem,7.8vw,2.72rem);font-weight:520;line-height:.95}.brand-subtitle{color:#24201cbd;letter-spacing:.22em;white-space:nowrap;font-family:Georgia,Times New Roman,serif;font-size:clamp(.78rem,2.8vw,.98rem);font-weight:500;line-height:1}.app-main{flex-direction:column;gap:16px;padding-block:18px 38px;display:flex}.app-main>*{animation:.2s ease-out both page-enter}.app-footer{z-index:10;isolation:isolate;color:var(--color-muted);pointer-events:auto;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:0;padding-bottom:26px;font-size:.78rem;display:flex;position:relative}.footer-note{justify-content:center;align-items:center;gap:8px;display:inline-flex}.admin-footer{padding-top:4px;padding-bottom:22px}.admin-footer-note{color:#4a3d3294;letter-spacing:.04em;font-size:.74rem;font-weight:620}.footer-admin-link{z-index:11;color:#5d504457;letter-spacing:.02em;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:#8f2c421f;justify-content:center;align-items:center;min-width:44px;min-height:44px;margin-top:1.1rem;padding:12px 10px;font-size:.72rem;font-weight:500;line-height:1;text-decoration:none;transition:color .16s,text-decoration-color .16s;display:inline-flex;position:relative}.footer-admin-link:hover{color:#7f3040ad;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.footer-admin-link:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #8f2c4238}.session-stack,.history-list,.admin-session-list,.recommendation-list{flex-direction:column;gap:14px;display:flex}.session-stack>*{animation:.21s ease-out both board-item-enter}.session-stack>:nth-child(2){animation-delay:45ms}.session-stack>:nth-child(3){animation-delay:90ms}.session-stack>:nth-child(4){animation-delay:.135s}.admin-panel,.history-item,.status-panel{animation:.19s ease-out both board-item-enter}.session-hero,.page-title,.admin-title{text-align:left;padding:14px 2px 4px}.admin-title{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:16px;display:grid}.admin-title-copy{min-width:0}.admin-title-actions{flex-direction:row;justify-content:flex-end;align-items:flex-end;gap:8px;min-width:max-content;display:flex}.admin-title-actions .secondary-button{white-space:nowrap;width:auto}.eyebrow,.card-kicker{color:var(--color-primary-dark);letter-spacing:.06em;margin:0;font-size:.74rem;font-weight:800;line-height:1.2}.card-kicker{color:var(--color-primary-dark);letter-spacing:.02em;align-items:center;gap:7px;font-size:.72rem;font-weight:780;display:inline-flex}.card-kicker span:first-child{letter-spacing:.12em;font-size:.71rem;font-weight:850}.card-kicker span+span{color:var(--color-muted);letter-spacing:.01em;font-weight:760}.card-kicker span+span:before{color:#24201c47;content:"/";margin-right:7px}.lesson-two .card-kicker{color:var(--color-secondary-dark)}.session-hero h1,.page-title h1,.admin-title h1{max-width:560px;color:var(--color-text);letter-spacing:0;word-break:keep-all;margin:9px 0 8px;font-size:clamp(2.12rem,8vw,2.6rem);line-height:1.12}.page-title h1,.admin-title h1{font-size:clamp(1.6rem,6vw,2.18rem)}.date-text{max-width:560px;color:var(--color-muted);word-break:keep-all;margin:0;font-size:.96rem;font-weight:650;line-height:1.55}.session-state-note{color:#7a6f63;width:fit-content;margin:9px 0 0;font-size:.78rem;font-weight:750;line-height:1.3}.study-card,.vip-card,.admin-panel,.empty-state,.status-panel{border:1px solid var(--color-border);border-radius:var(--radius-card);background:linear-gradient(180deg, var(--color-surface), #fffaf2);box-shadow:var(--shadow-card);position:relative;overflow:hidden}.study-card:before,.vip-card:before,.admin-panel:before{content:"";width:2px;position:absolute;inset:0 auto 0 0}.study-card,.vip-card,.admin-panel{padding:var(--space-card)}.admin-panel:before{background:#2c7a7bb8}.lesson-one{background:linear-gradient(#fffdf8fa,#fff8f4d6)}.lesson-one:before{background:#9f2d3fb8}.lesson-two{background:linear-gradient(#fffdf8fa,#f6faf8d6)}.lesson-two:before{background:#2f7373b8}.vip-card{background:linear-gradient(#fffdf8fa,#fffaeee0)}.vip-card:before{background:#946b2db8}.vip-card-active{background:radial-gradient(circle at 100% 0,#946b2d1a,#0000 34%),linear-gradient(#fffdf8fc,#fff9ede8);border-color:#946b2d3d}.vip-card-stage-registration:before{background:#2f7373c2}.vip-card-stage-voting:before,.vip-card-active:before{background:linear-gradient(#9f2d3fad,#946b2d6b);width:3px}.vip-card-stage-counting:before,.vip-card-stage-closed:before{background:#946b2dbd}.vip-card-stage-confirmed:before{background:linear-gradient(#946b2dc2,#9f2d3f61)}.vip-card .card-heading{align-items:flex-start}.vip-card .card-heading>div{min-width:0}.vip-card-status{min-height:28px;color:var(--color-muted);letter-spacing:.02em;white-space:nowrap;background:#fffdf8b8;border:1px solid #24201c1a;border-radius:999px;flex:none;justify-content:center;align-items:center;margin-left:auto;padding:0 10px;font-size:.72rem;font-weight:820;line-height:1;display:inline-flex}.vip-card-status-teal{color:#2f7373;background:#ebf7f3ad;border-color:#2f737333}.vip-card-status-burgundy{color:#8f2c42;background:#fff5f4ad;border-color:#9f2d3f33}.vip-card-status-amber,.vip-card-status-gold{color:#7b5b25;background:#fff7e4b3;border-color:#946b2d3d}.vip-card-intro{color:#5e6b73;text-align:left;word-break:keep-all;overflow-wrap:anywhere;max-width:36rem;margin:-2px 0 0;font-size:.93rem;font-weight:680;line-height:1.6}.memo-card{color:#3d4549;white-space:pre-wrap;line-height:1.7}.memo-card:before{background:#946b2d}.card-heading,.panel-heading{text-align:left;align-items:flex-start;gap:11px;margin-bottom:11px;display:flex}.session-number{color:#9f2d3fc7;letter-spacing:.08em;flex:0 0 30px;padding-top:1px;font-size:.82rem;font-weight:850;line-height:1.2}.lesson-two .session-number{color:#2f7373d1}.card-heading h2,.panel-heading h2{color:var(--color-text);letter-spacing:0;word-break:keep-all;margin:5px 0 0;font-size:clamp(1.22rem,5vw,1.42rem);line-height:1.22}.icon-badge{width:28px;height:28px;color:var(--color-primary-dark);background:0 0;border-radius:0;flex:none;place-items:center;display:grid}.lesson-two .icon-badge,.admin-panel .icon-badge,.recommendation-panel .icon-badge{color:var(--color-secondary-dark);background:0 0}.card-description{color:var(--color-muted);text-align:left;word-break:keep-all;margin:-1px 0 18px 41px;font-size:.98rem;line-height:1.64}.topic-list{margin:0;padding:0;list-style:none}.topic-list-simple{flex-direction:column;gap:0;display:flex}.topic-list-simple li{min-height:0;color:var(--color-text);text-align:left;word-break:keep-all;background:0 0;border:0;border-radius:0;grid-template-columns:34px 1fr;align-items:start;gap:11px;padding:10px 0;font-size:1.02rem;font-weight:650;line-height:1.55;display:grid}.topic-list-simple li:first-child{padding-top:2px}.topic-list-simple li+li{border-top:1px solid #24201c12}.topic-list-simple .topic-number{width:30px;height:auto;color:var(--color-secondary-dark);background:0 0;border-radius:0;place-items:start;padding-top:1px;font-size:.86rem;font-weight:800;display:grid}.topic-list-simple .topic-text{white-space:pre-line;overflow-wrap:anywhere;word-break:keep-all;line-break:strict;text-wrap:pretty}.topic-list-cards{gap:11px;display:grid}.topic-list-cards li{min-width:0}.topic-card{appearance:none;width:100%;min-height:0;color:var(--color-text);cursor:pointer;font:inherit;text-align:left;transition:border-color .22s var(--topic-focus-ease), box-shadow .22s var(--topic-focus-ease), opacity .22s var(--topic-focus-ease), transform .22s var(--topic-focus-ease);word-break:keep-all;background:linear-gradient(#fffdf8d1,#f9faf6bd);border:1px solid #2f737321;border-radius:16px;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:12px;padding:13px 14px;font-size:1.02rem;font-weight:650;line-height:1.55;display:grid;box-shadow:inset 0 1px #ffffffb8,0 7px 18px #24201c09}.topic-card:hover,.topic-card:focus-visible{border-color:#2f73733d;outline:none;transform:translateY(-2px);box-shadow:inset 0 1px #fffc,0 12px 30px #2f413e13}.topic-card .topic-number{width:30px;min-height:30px;color:var(--color-secondary-dark);background:#eef8f69e;border:1px solid #2f737329;border-radius:0;place-items:center;font-size:.78rem;font-weight:850;line-height:1;display:grid}.topic-card-copy{min-width:0}.topic-label{color:#2f7373bf;letter-spacing:.04em;margin-bottom:5px;font-size:.72rem;font-weight:820;line-height:1;display:block}.topic-card .topic-text{white-space:pre-line;overflow-wrap:anywhere;word-break:keep-all;line-break:strict;text-wrap:pretty;margin:0;line-height:1.64}.primary-button,.secondary-button,.text-link{border-radius:var(--radius-control);justify-content:center;align-items:center;gap:8px;min-height:48px;font-size:.98rem;font-weight:750;line-height:1;transition:background-color .12s,border-color .12s,color .12s,transform .12s;display:inline-flex}.primary-button,.secondary-button{border:1px solid #0000;width:fit-content;padding:0 18px}.primary-button{color:var(--color-primary-dark);box-shadow:none;background:linear-gradient(#fff8f4,#fff0ec);border-color:#9f2d3f57}.primary-button:hover,.primary-button:focus-visible{border-color:var(--color-primary-dark);background:var(--color-primary-dark);color:#fff;outline:none;transform:translateY(-1px)}.nhk-button{color:#8f2f3f;letter-spacing:0;background:linear-gradient(#fffcf7fa,#fcf4eff0);border-color:#8f2f3f47;border-radius:18px;gap:10px;width:100%;min-height:56px;font-size:1.02rem;font-weight:850;box-shadow:0 10px 24px #502d1e0f,inset 0 1px #ffffffe0}.nhk-button svg{stroke-width:2px;width:17px;height:17px}.nhk-button:hover,.nhk-button:focus-visible{color:#7f2a3a;background:linear-gradient(#fffefa,#fdf1ebfa);border-color:#8f2f3f75;outline:none;transform:translateY(-1px);box-shadow:0 12px 28px #502d1e14,inset 0 1px #ffffffeb}.nhk-button:focus-visible{box-shadow:0 0 0 3px #8f2f3f2e,0 12px 28px #502d1e14,inset 0 1px #ffffffeb}.nhk-button:active{transform:translateY(1px);box-shadow:0 6px 16px #502d1e0e,inset 0 1px #ffffffd6}.secondary-button{border-color:var(--color-border);color:#354047;box-shadow:none;background:#fffdf8b8}.secondary-button:hover,.secondary-button:focus-visible{color:var(--color-secondary-dark);background:#f7fbfa;border-color:#2c7a7b47;outline:none}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.58;transform:none}.full-width-button{width:100%}.text-link{color:#435057;align-self:flex-start;min-height:38px;font-weight:800}.text-link:hover,.text-link:focus-visible{color:var(--color-primary-dark);outline:none}.empty-state,.status-panel{text-align:left;justify-items:start;min-height:0;padding:22px;display:grid}.status-panel{gap:8px}.empty-state h1,.empty-state h2,.empty-state p,.status-panel h1,.status-panel h2,.status-panel p{max-width:440px;margin:0}.status-panel h1,.empty-state h1,.empty-state h2{color:var(--color-text);word-break:keep-all;font-size:1.1rem;line-height:1.35}.empty-state p,.status-body{color:var(--color-muted);font-size:.95rem;line-height:1.62}.empty-state svg,.status-panel svg{color:var(--color-primary)}.status-loading svg{color:var(--color-secondary)}.status-api svg{color:#946b2d}.topic-empty{color:var(--color-muted);text-align:left;background:#fbf8f1b8;border:1px solid #2c7a7b29;border-radius:16px;padding:15px 16px;line-height:1.65}.topic-empty strong{color:var(--color-text);word-break:keep-all;font-size:1.02rem;line-height:1.4;display:block}.topic-empty p{margin:6px 0 0;font-size:.95rem}.vip-muted,.vip-message,.vip-selected{color:var(--color-muted);text-align:left;word-break:keep-all;margin:0;font-size:.94rem;font-weight:650;line-height:1.6}.vip-muted{align-items:center;gap:7px;display:flex}.vip-form{gap:12px;margin-top:14px;display:grid}.vip-action-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px;display:grid}.vip-action-row .primary-button,.vip-action-row .secondary-button{gap:7px;width:100%;min-height:42px}.vip-action-row .primary-button:only-child,.vip-action-row .secondary-button:only-child{grid-column:1/-1}.vip-form label,.vip-admin-session-select{color:#35434a;text-align:left;gap:7px;font-size:.88rem;font-weight:800;display:grid}.vip-edit-panel{text-align:left;background:#fffaee8a;border:1px solid #24201c1c;border-left:2px solid #946b2d94;border-radius:16px;gap:11px;margin-top:13px;padding:14px;display:grid}.vip-edit-panel strong{color:var(--color-text);font-size:.96rem;line-height:1.35}.vip-edit-panel p{color:var(--color-muted);margin:0;font-size:.88rem;font-weight:680;line-height:1.5}.vip-helper{color:var(--color-muted);text-align:left;margin:-4px 0 0;font-size:.84rem;font-weight:680;line-height:1.5}.vip-step-copy{text-align:left;gap:5px;margin:0;display:grid}.vip-step-copy strong{color:var(--color-text);word-break:keep-all;font-size:1.06rem;font-weight:860;line-height:1.35}.vip-step-copy p{color:var(--color-muted);word-break:keep-all;margin:0;font-size:.92rem;font-weight:680;line-height:1.55}.vip-input-help{color:#5d5044b8;margin-top:-3px;font-size:.8rem;font-weight:680;line-height:1.45}.vip-reason-field{margin-top:3px;position:relative}.vip-reason-field textarea{color:#263238;resize:vertical;background:linear-gradient(#fffdf8f5,#faf6edd1);border-color:#2f73732e;min-height:98px;padding:14px 15px 28px;font-size:.95rem;font-weight:650;line-height:1.62}.vip-reason-field textarea::placeholder{color:#5d50447a}.vip-reason-field textarea:focus{border-color:#2f737361;box-shadow:0 0 0 4px #2f73731a}.vip-character-count{color:#5d50448a;pointer-events:none;justify-self:end;margin-top:-29px;padding-right:12px;font-size:.74rem;font-weight:760;line-height:1}.vip-remembered-card,.vip-complete-card{text-align:left;background:radial-gradient(circle at 100% 0,#2f737314,#0000 32%),linear-gradient(#fffdf8e0,#f7f3ebb8);border:1px solid #2f737329;border-left:3px solid #2f73737a;border-radius:17px;gap:10px;padding:15px;display:grid}.vip-remembered-card p,.vip-remembered-card span,.vip-complete-card p,.vip-complete-card span{color:var(--color-muted);word-break:keep-all;margin:0;font-size:.88rem;font-weight:690;line-height:1.52}.vip-remembered-card strong,.vip-complete-card strong{color:var(--color-text);word-break:keep-all;font-size:1.03rem;font-weight:860;line-height:1.35}.vip-complete-card{background:radial-gradient(circle at 100% 0,#ffecae33,#0000 32%),linear-gradient(#fffdf8eb,#fbf6ebc7);border-color:#946b2d33 #946b2d33 #946b2d33 #946b2d9e;grid-template-columns:auto minmax(0,1fr);align-items:flex-start}.vip-complete-card svg,.vip-identity-note svg{color:#8a702e}.vip-note,.vip-confirmed{color:#4b5563;text-align:left;border-left:2px solid #946b2da3;align-items:flex-start;gap:10px;margin-top:14px;padding-left:12px;display:flex}.vip-note strong,.vip-confirmed strong{color:var(--color-text);line-height:1.35;display:block}.vip-note p,.vip-confirmed p{color:var(--color-muted);margin:4px 0 0;line-height:1.55}.vip-confirmed svg{color:#946b2d}.vip-counting-card{color:#4b5563;text-align:left;background:radial-gradient(circle at 100% 0,#ffebb32e,#0000 34%),#fffaee94;border:1px solid #946b2d2e;border-left:2px solid #946b2d94;border-radius:17px;align-items:flex-start;gap:12px;margin-top:14px;padding:14px;display:flex}.vip-counting-pulse{background:#946b2d;border-radius:999px;flex:none;width:11px;height:11px;margin-top:5px;animation:1.8s ease-out infinite vip-status-pulse;box-shadow:0 0 #946b2d3d}.vip-counting-card strong,.vip-counting-card p,.vip-counting-card small{margin:0;display:block}.vip-counting-card strong{color:var(--color-text);line-height:1.35}.vip-counting-card p{color:var(--color-muted);margin-top:5px;line-height:1.55}.vip-counting-card small{color:#7b5b25;margin-top:7px;font-size:.82rem;font-weight:780;line-height:1.35}.vip-award-placard{text-align:center;background:radial-gradient(circle at 18% 0,#ffeeb847,#0000 38%),linear-gradient(#fffdf7f5,#faf4e8e6);border:1px solid #946b2d47;border-radius:18px;justify-items:center;gap:8px;margin-top:16px;padding:21px 18px 19px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffc7,0 12px 28px #50341c0e}.vip-award-placard:before{content:"";background:linear-gradient(#9f2d3f9e,#946b2d3d);border-radius:999px;width:2px;position:absolute;inset:12px auto 12px 12px}.vip-award-foil{opacity:.76;pointer-events:none;background:linear-gradient(115deg,#0000 35%,#ffffff61 44%,#0000 54%),radial-gradient(circle,#ffde8e38,#0000 58%);position:absolute;inset:-42% -28%}.vip-award-placard p,.vip-celebration-placard p{color:#946b2d;letter-spacing:.22em;text-transform:uppercase;margin:0;font-family:Georgia,Times New Roman,serif;font-size:.72rem;font-weight:700;line-height:1.2;position:relative}.vip-award-placard strong,.vip-celebration-placard strong{color:var(--color-text);letter-spacing:0;word-break:keep-all;font-size:clamp(1.38rem,6vw,2rem);font-weight:860;line-height:1.2;position:relative}.vip-award-names,.vip-celebration-names{justify-items:center;gap:4px;width:100%;display:grid;position:relative}.vip-award-names strong,.vip-celebration-names strong{overflow-wrap:anywhere;text-align:center;max-width:100%;display:block}.vip-award-placard span,.vip-celebration-placard span{color:var(--color-muted);word-break:keep-all;font-size:.92rem;font-weight:680;line-height:1.55;position:relative}.vip-award-placard .secondary-button{width:auto;min-height:38px;margin-top:3px;padding-inline:14px;position:relative}.vip-award-placard-compact{margin-block:14px 18px;padding:17px 16px 16px}.vip-award-placard-compact strong{font-size:clamp(1.18rem,4vw,1.55rem)}.vip-celebration-overlay{z-index:10000;box-sizing:border-box;width:100vw;min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));isolation:isolate;pointer-events:auto;place-items:center;animation:3s ease-out both vip-celebration-overlay;display:grid;position:fixed;inset:0;overflow:hidden}.vip-celebration-backdrop,.vip-celebration-glow,.vip-celebration-dust,.vip-celebration-rays,.vip-celebration-rings,.vip-celebration-ribbons,.vip-celebration-burst{pointer-events:none;position:absolute}.vip-celebration-backdrop{z-index:0;-webkit-backdrop-filter:blur(4px)saturate(.88);backdrop-filter:blur(4px)saturate(.88);background:radial-gradient(circle at 50% 38%,#ffe69647,#0000 34%),radial-gradient(circle at 18% 18%,#9f2d3f38,#0000 32%),radial-gradient(circle at 84% 76%,#2f737333,#0000 35%),linear-gradient(#221816c7,#121111e6);animation:3s ease-out both vip-celebration-backdrop;inset:0}.vip-celebration-glow{z-index:1;opacity:0;background:radial-gradient(circle,#fffad8db 0%,#e6b3585c 36%,#9f2d3f24 55%,#0000 73%);border-radius:999px;width:min(92vw,680px);height:min(54vh,400px);animation:2.45s cubic-bezier(.22,1,.36,1) both vip-celebration-glow;top:50%;left:50%;transform:translate(-50%,-50%)scaleX(.28)scaleY(.62)}.vip-celebration-rays{z-index:1;mix-blend-mode:screen;opacity:0;background:conic-gradient(from 18deg,#0000 0deg,#ffeeb033 10deg,#0000 23deg 42deg,#fffadc29 52deg,#0000 68deg);animation:3s cubic-bezier(.22,1,.36,1) both vip-celebration-rays;inset:-18%;transform:scale(.92)rotate(-8deg)}.vip-celebration-rings{z-index:2;aspect-ratio:1;place-items:center;width:min(78vw,520px);display:grid;top:50%;left:50%;transform:translate(-50%,-50%)}.vip-celebration-ring{aspect-ratio:1;opacity:0;width:44%;animation:vip-celebration-ring 2.6s cubic-bezier(.22, 1, .36, 1) var(--ring-delay,0s) both;border:1px solid #ffe8a49e;border-radius:999px;grid-area:1/1;transform:scale(.28);box-shadow:0 0 26px #ffdc8a2e,inset 0 0 0 1px #ffffff14}.vip-celebration-ring-2{--ring-delay:.18s;border-color:#fff8da61}.vip-celebration-ring-3{--ring-delay:.36s;border-color:#2f737342}.vip-celebration-burst{z-index:3;aspect-ratio:1;background:radial-gradient(circle, #fffce8f5 0 5%, transparent 6%), radial-gradient(circle at 35% 30%, #ffe692d1, transparent 18%), radial-gradient(circle at 72% 66%, #ffd57cb3, transparent 22%), repeating-conic-gradient(from 6deg, #ffeeb070 0 6deg, transparent 6deg 17deg), radial-gradient(circle, transparent 39%, #ffe29b6b 40% 42%, transparent 44%);opacity:0;mix-blend-mode:screen;filter:blur(.2px);border-radius:999px;width:min(42vw,240px);top:49%}.vip-celebration-burst-left{animation:1.75s cubic-bezier(.22,1,.36,1) .12s both vip-celebration-burst-left;left:max(14px,50% - 330px)}.vip-celebration-burst-right{animation:1.75s cubic-bezier(.22,1,.36,1) .12s both vip-celebration-burst-right;right:max(14px,50% - 330px)}.vip-celebration-ribbons,.vip-celebration-dust{z-index:4;inset:0;overflow:hidden}.vip-celebration-ribbon,.vip-celebration-particle{top:var(--particle-y,54%);left:var(--particle-x);width:var(--particle-size);height:var(--particle-size);background:var(--celebration-particle-color,#ffe69eeb);box-shadow:0 0 14px var(--celebration-particle-glow,#ffde8e6b);opacity:0;animation:vip-celebration-particle var(--particle-duration) ease-out var(--particle-delay) both;border-radius:999px;position:absolute;transform:translateY(18px)rotate(0)scale(.82)}.vip-celebration-ribbon{top:52%;left:var(--ribbon-x);background:linear-gradient(180deg, #ffffffb8, var(--celebration-particle-color));width:6px;height:20px;transform:translate3d(0, 16px, 0) rotate(var(--ribbon-rotate)) scaleY(.7);animation:vip-celebration-ribbon var(--ribbon-duration) cubic-bezier(.22, 1, .36, 1) var(--ribbon-delay) both;border-radius:999px 999px 3px 3px}.vip-celebration-particle-ribbon{width:calc(var(--particle-size) * .8);height:calc(var(--particle-size) * 3.2);border-radius:999px 999px 3px 3px}.vip-celebration-particle-shard{width:calc(var(--particle-size) * 2.6);height:calc(var(--particle-size) * .8);border-radius:999px}.vip-celebration-particle-spark{clip-path:polygon(50% 0,62% 36%,100% 50%,62% 64%,50% 100%,38% 64%,0 50%,38% 36%);border-radius:2px}.vip-celebration-tone-gold{--celebration-particle-color:#ffda7ef2;--celebration-particle-glow:#ffda7e75}.vip-celebration-tone-rose{--celebration-particle-color:#d35e6fe6;--celebration-particle-glow:#d35e6f5c}.vip-celebration-tone-teal{--celebration-particle-color:#60afa4e6;--celebration-particle-glow:#60afa457}.vip-celebration-tone-ivory{--celebration-particle-color:#fffadceb;--celebration-particle-glow:#fffadc6b}.vip-celebration-shell{z-index:5;pointer-events:auto;justify-items:center;width:min(560px,100vw - 32px);max-width:560px;margin:0 auto;display:grid;position:relative}.vip-celebration-placard{text-align:center;opacity:0;background:linear-gradient(115deg,#0000 20%,#ffffff85 44%,#0000 60%),radial-gradient(circle at 20% 0,#ffefc26b,#0000 42%),radial-gradient(circle at 90% 16%,#2f737314,#0000 34%),linear-gradient(#fffdf7fa,#faf0daf0);border:1px solid #ffe7aa7a;border-radius:22px;justify-items:center;gap:10px;width:min(420px,100%);margin:0 auto;padding:clamp(28px,7vw,42px) 24px;animation:2.3s cubic-bezier(.22,1,.36,1) .22s both vip-celebration-placard;display:grid;position:relative;overflow:hidden;transform:translateY(12px)scale(.96);box-shadow:inset 0 1px #ffffffc2,0 28px 80px #00000042}.vip-celebration-placard:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(108deg,#0000 42%,#ffffff7a 49%,#0000 56%);animation:3s cubic-bezier(.22,1,.36,1) .42s both vip-celebration-placard-shine;position:absolute;inset:-45% -30%;transform:translate(-34%)rotate(2deg)}.vip-celebration-placard:before{content:"";background:linear-gradient(90deg,#9f2d3f2e,#946b2da8,#9f2d3f2e);border-radius:999px;width:42px;height:2px;margin-bottom:2px}.vip-celebration-placard strong{overflow-wrap:anywhere;font-size:clamp(1.75rem,9vw,3rem)}.vip-celebration-actions{justify-content:center;width:min(420px,100%);margin-top:14px;display:flex}.vip-celebration-close{color:#fffdf7d1;letter-spacing:.04em;background:#fffdf71a;border:1px solid #ffffff38;border-radius:12px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-size:.78rem;font-weight:760;line-height:1;display:inline-flex}.vip-celebration-close:hover,.vip-celebration-close:focus-visible{color:#fffdf7;background:#fffdf729;border-color:#ffe8b085;outline:none}.vip-candidate-grid{grid-template-columns:1fr;gap:10px;display:grid}.vip-candidate{min-height:66px;color:var(--color-text);text-align:left;background:linear-gradient(#fffdf8e6,#f9f4ecb8);border:1px solid #24201c1f;border-radius:16px;justify-content:space-between;align-items:flex-start;gap:12px;padding:13px 14px;font-size:.98rem;font-weight:760;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:flex}.vip-candidate:hover,.vip-candidate:focus-visible{border-color:#946b2d6b;outline:none;transform:translateY(-1px);box-shadow:0 10px 22px #2d18120e}.vip-candidate-selected{color:var(--color-secondary-dark);background:radial-gradient(circle at 100% 0,#2f73731a,#0000 34%),linear-gradient(#f7fcf9f5,#f0f8f4cc);border-color:#2f737375}.vip-candidate:disabled{cursor:not-allowed;opacity:.62;transform:none}.vip-candidate-name{color:inherit;word-break:keep-all;overflow-wrap:anywhere;align-items:center;gap:7px;font-size:1rem;font-weight:840;line-height:1.35;display:inline-flex}.vip-candidate-caption{max-width:42%;color:var(--color-muted);text-align:right;word-break:keep-all;overflow-wrap:anywhere;flex:none;font-size:.76rem;font-weight:760;line-height:1.35}.vip-candidate>span:not(.vip-candidate-name):not(.vip-candidate-caption){color:var(--color-muted);font-size:.76rem;font-weight:760;line-height:1.35}.vip-message{color:var(--color-primary-dark);margin-top:13px}.vip-message-error{color:#9d2f32}.vip-confirm-box{text-align:left;background:#fffaeec7;border:1px solid #946b2d2e;border-radius:16px;gap:10px;margin-top:14px;padding:15px;display:grid}.vip-confirm-box strong,.vip-confirm-box p{margin:0}.vip-confirm-box p{color:var(--color-muted);line-height:1.5}.vip-confirm-actions{grid-template-columns:1fr 1fr;gap:9px;display:grid}.vip-admin-panel .status-panel{margin-top:12px}.vip-admin-collapsed-summary{text-align:left;background:radial-gradient(circle at 100% 0,#2f737312,#0000 34%),linear-gradient(#fffdf8d1,#f9f4eca8);border:1px solid #2f737321;border-left:3px solid #2f73736b;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;margin-top:12px;padding:15px;display:grid}.vip-admin-summary-copy{gap:8px;min-width:0;display:grid}.vip-admin-summary-session{color:var(--color-text);word-break:keep-all;margin:0;font-size:1rem;font-weight:850;line-height:1.38}.vip-admin-summary-line{color:#5d5044c7;flex-wrap:wrap;align-items:center;gap:7px;font-size:.83rem;font-weight:760;line-height:1.35;display:flex}.vip-admin-summary-line>span:not(.vip-admin-status-badge){align-items:center;min-height:24px;display:inline-flex}.vip-admin-status-badge{color:#56616c;white-space:nowrap;background:#fffdf8ad;border:1px solid #6873852e;border-radius:999px;align-items:center;min-height:24px;padding:4px 9px;font-size:.75rem;font-weight:860;line-height:1;display:inline-flex}.vip-admin-status-badge-teal{color:var(--color-secondary-dark);background:#f1faf8b8;border-color:#2f737333}.vip-admin-status-badge-burgundy{color:var(--color-primary-dark);background:#fff7f5b8;border-color:#9f2d3f33}.vip-admin-status-badge-amber{color:#8a5d23;background:#fffaeebd;border-color:#b06f2a33}.vip-admin-status-badge-gold{color:#735015;background:#fffae8c7;border-color:#946b2d3d}.vip-admin-summary-confirmed,.vip-admin-summary-alert{color:var(--color-muted);word-break:keep-all;margin:0;font-size:.86rem;font-weight:700;line-height:1.48}.vip-admin-summary-confirmed{color:#735015}.vip-admin-summary-alert{color:var(--color-primary-dark)}.vip-admin-collapse-toggle{color:#235a5ce6;background:linear-gradient(#fffdf8e6,#f2f8f5ad);border-color:#2f737329;justify-self:end;min-height:42px;padding-inline:14px;font-size:.88rem}.vip-admin-collapse-toggle:hover,.vip-admin-collapse-toggle:focus-visible{color:var(--color-secondary-dark);border-color:#2f737347}.vip-admin-management-content{border-top:1px solid #24201c1a;gap:0;margin-top:15px;padding-top:15px;animation:.22s cubic-bezier(.22,1,.36,1) both security-settings-enter;display:grid}.vip-admin-management-content[hidden]{display:none}.vip-admin-session-select{margin:4px 0 12px 40px}.vip-admin-quick-panel{text-align:left;background:radial-gradient(circle at 100% 0,#2f737314,#0000 34%),linear-gradient(#fffdf8e6,#f8f4edb8);border:1px solid #2f737324;border-left:3px solid #2f737380;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:12px;padding:16px;display:grid}.vip-admin-quick-panel p,.vip-admin-quick-panel h3,.vip-admin-quick-panel span,.vip-admin-quick-panel em{margin:0}.vip-admin-quick-panel p{color:#235a5cd1;letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:860;line-height:1.2}.vip-admin-quick-panel h3{color:var(--color-text);word-break:keep-all;margin-top:7px;font-size:clamp(1.16rem,4.6vw,1.42rem);line-height:1.28}.vip-admin-quick-panel span{color:var(--color-muted);word-break:keep-all;margin-top:7px;font-size:.88rem;font-weight:700;line-height:1.5;display:block}.vip-admin-quick-panel em{color:#235a5cd1;word-break:keep-all;margin-top:8px;font-size:.84rem;font-style:normal;font-weight:760;line-height:1.5;display:block}.vip-admin-quick-panel .primary-button{min-width:128px;min-height:46px}.vip-admin-automation-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.vip-admin-automation-actions .primary-button,.vip-admin-automation-actions .secondary-button{white-space:nowrap;min-height:44px}.vip-advanced-shell{border-top:1px solid #24201c17;gap:13px;margin-top:16px;padding-top:13px;display:grid}.vip-advanced-toggle{color:#235a5ce0;background:0 0;border:0;justify-self:start;align-items:center;gap:6px;min-height:38px;padding:0;font-size:.88rem;font-weight:820;display:inline-flex}.vip-advanced-toggle:hover,.vip-advanced-toggle:focus-visible{color:var(--color-secondary-dark);text-underline-offset:4px;text-decoration:underline}.vip-advanced-content{gap:0;animation:.22s cubic-bezier(.22,1,.36,1) both security-settings-enter;display:grid}.vip-advanced-content[hidden]{display:none}.vip-admin-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px;display:grid}.vip-admin-actions .secondary-button,.vip-admin-actions .text-link{width:100%;min-height:42px}.vip-admin-actions .text-link{background:0 0;border:0;padding:0}.vip-admin-participant-panel{text-align:left;background:radial-gradient(circle at 100% 0,#2f737314,#0000 32%),linear-gradient(#fffdf8db,#faf6efb3);border:1px solid #2f73732e;border-left:3px solid #2f737394;border-radius:18px;gap:13px;margin-top:16px;padding:16px;display:grid}.vip-admin-participant-heading{align-items:flex-start;gap:11px;display:flex}.vip-admin-participant-heading h3{color:var(--color-text);word-break:keep-all;margin:4px 0 0;font-size:clamp(1.06rem,4.4vw,1.24rem);line-height:1.25}.icon-badge-subtle{color:var(--color-secondary-dark)}.vip-admin-participant-panel .vip-form,.vip-admin-participant-panel .vip-action-row,.vip-admin-participant-panel .vip-note{margin-top:0}.vip-admin-participant-note{color:var(--color-muted);text-align:left;background:#fffdf894;border:1px solid #24201c17;border-radius:15px;gap:5px;padding:12px 13px;display:grid}.vip-admin-participant-note strong{color:var(--color-text);word-break:keep-all;font-size:.94rem;line-height:1.38}.vip-admin-participant-note p{color:var(--color-muted);word-break:keep-all;margin:0;font-size:.88rem;font-weight:640;line-height:1.55}.vip-admin-reset-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;margin-top:10px;display:grid}.vip-admin-reset-actions .danger-button{background:#fff8f47a;gap:7px;width:100%;min-height:42px}.vip-admin-state{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.vip-admin-state span{color:#5a646f;background:#fffdf89e;border:1px solid #24201c1a;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:780}.vip-admin-results{gap:11px;margin-top:14px;display:grid}.vip-admin-result{text-align:left;background:#fffdf8a8;border:1px solid #24201c1c;border-radius:16px;padding:15px}.vip-admin-result-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.vip-admin-result-heading strong{color:var(--color-text);font-size:1rem;line-height:1.35}.vip-admin-result-heading span{color:#946b2d;white-space:nowrap;font-size:.9rem;font-weight:850}.vip-admin-result ul{color:#4d5963;gap:7px;margin:12px 0;padding-left:18px;line-height:1.55;display:grid}.vip-admin-result .secondary-button,.vip-admin-result .primary-button{width:100%;min-height:42px}.vip-tie-note{text-align:left;background:#fffaee7a;border-left:2px solid #946b2da3;gap:7px;margin-top:12px;padding:9px 0 9px 12px;display:grid}.vip-tie-note .secondary-button{justify-self:start;min-height:38px;margin-top:2px}.vip-tie-note strong{color:#735015;font-size:.9rem;line-height:1.35}.vip-tie-note p{color:var(--color-muted);word-break:keep-all;margin:0;font-size:.86rem;line-height:1.5}.vip-reset-modal{max-width:460px}.vip-reset-check{color:#4d5963;background:#fff8f48a;border:1px solid #9f2d3f29;border-radius:14px;align-items:flex-start;gap:9px;padding:11px 12px;font-size:.9rem;font-weight:740;line-height:1.45;display:flex}.vip-reset-check input{width:16px;height:16px;accent-color:var(--color-primary-dark);margin-top:2px}.inline-alert{border:1px solid var(--color-warning-border);background:var(--color-warning-bg);color:#5b5146;text-align:left;border-radius:16px;padding:13px 15px;font-size:.9rem;line-height:1.52}.inline-alert strong{color:#6c4a17;font-size:.92rem;display:block}.inline-alert p{margin:4px 0 0}@keyframes vip-celebration-overlay{0%{opacity:0}8%,84%{opacity:1}to{opacity:0}}@keyframes vip-celebration-backdrop{0%{opacity:0}10%,82%{opacity:1}to{opacity:0}}@keyframes vip-celebration-glow{0%{opacity:0;transform:translate(-50%,-50%)scaleX(.28)scaleY(.62)}24%{opacity:.92;transform:translate(-50%,-50%)scaleX(.92)scaleY(.8)}72%{opacity:.72;transform:translate(-50%,-50%)scaleX(1.05)scaleY(.9)}to{opacity:0;transform:translate(-50%,-50%)scaleX(1.12)scaleY(.94)}}@keyframes vip-celebration-rays{0%{opacity:0;transform:scale(.88)rotate(-14deg)}16%{opacity:.62}70%{opacity:.32;transform:scale(1.06)rotate(5deg)}to{opacity:0;transform:scale(1.12)rotate(12deg)}}@keyframes vip-celebration-ring{0%{opacity:0;transform:scale(.28)}18%{opacity:.78}72%{opacity:.2}to{opacity:0;transform:scale(1.22)}}@keyframes vip-celebration-burst-left{0%{opacity:0;transform:translate(24px,-50%)scale(.76)}24%{opacity:.92;transform:translate(-8px,-50%)scale(1)}78%{opacity:.42;transform:translate(-34px,-50%)scale(1.06)}to{opacity:0;transform:translate(-48px,-50%)scale(1.1)}}@keyframes vip-celebration-burst-right{0%{opacity:0;transform:translate(-24px,-50%)scale(.76)}24%{opacity:.92;transform:translate(8px,-50%)scale(1)}78%{opacity:.42;transform:translate(34px,-50%)scale(1.06)}to{opacity:0;transform:translate(48px,-50%)scale(1.1)}}@keyframes vip-celebration-particle{0%{opacity:0;transform:translateY(18px)rotate(0)scale(.82)}18%{opacity:.92}68%{opacity:.7}to{opacity:0;transform:translate3d(var(--particle-drift), var(--particle-lift), 0) rotate(var(--particle-rotate)) scale(.42)}}@keyframes vip-celebration-ribbon{0%{opacity:0;transform:translate3d(0, 16px, 0) rotate(var(--ribbon-rotate)) scaleY(.7)}16%{opacity:.94}70%{opacity:.68}to{opacity:0;transform:translate3d(var(--ribbon-drift), -38vh, 0) rotate(calc(var(--ribbon-rotate) + 156deg)) scaleY(1)}}@keyframes vip-celebration-placard{0%{opacity:0;transform:translateY(12px)scale(.96)}26%,88%{opacity:1;transform:translate(0,0)scale(1)}to{opacity:0;transform:translateY(-4px)scale(.99)}}@keyframes vip-celebration-placard-shine{0%,16%{opacity:0;transform:translate(-38%)rotate(2deg)}32%{opacity:.72}58%{opacity:.22;transform:translate(34%)rotate(2deg)}to{opacity:0;transform:translate(44%)rotate(2deg)}}@keyframes page-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes board-item-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.history-item,.admin-session-item{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);width:100%;min-height:78px;color:var(--color-text);text-align:left;box-shadow:var(--shadow-soft);justify-content:space-between;align-items:center;gap:14px;padding:17px 18px;display:flex}.history-item:hover,.history-item:focus-visible,.admin-session-item:hover,.admin-session-item:focus-visible{border-color:#2c7a7b3d;outline:none}.history-item strong,.history-item small,.admin-session-item strong,.admin-session-item small{display:block}.history-item strong,.admin-session-item strong{word-break:keep-all;font-size:1.02rem;line-height:1.36}.history-item small,.admin-session-item small{color:var(--color-muted);margin-top:5px;font-size:.88rem}.history-admin-panel .panel-heading{margin-bottom:10px}.admin-panel-note{margin:-2px 0 14px 40px}.history-admin-panel .admin-session-list{gap:10px}.admin-session-record{background:linear-gradient(180deg, #fffdf8eb, #fbf8f1c2), var(--color-surface);border:1px solid #24201c1c;border-radius:16px;overflow:hidden}.history-admin-panel .admin-session-item{min-height:72px;box-shadow:none;background:0 0;border:0;border-radius:0}.history-admin-panel .admin-session-item[aria-expanded=true]{border-bottom:1px solid #24201c14}.history-admin-panel .admin-session-item:disabled{cursor:wait;opacity:.62}.admin-session-action{color:var(--color-secondary-dark);white-space:nowrap;flex:none;align-items:center;gap:6px;font-size:.82rem;font-weight:820;display:inline-flex}.admin-session-detail{text-align:left;gap:14px;padding:3px 16px 16px;display:grid}.admin-detail-heading strong,.admin-detail-heading small{display:block}.admin-detail-heading strong{color:var(--color-text);word-break:keep-all;font-size:1rem;line-height:1.4}.admin-detail-heading small{color:var(--color-muted);margin-top:4px;font-size:.84rem}.admin-detail-topics{gap:11px;margin:0;padding:0;list-style:none;display:grid}.admin-detail-topics li{grid-template-columns:26px minmax(0,1fr);align-items:start;gap:10px;display:grid}.admin-detail-topics span{color:var(--color-secondary-dark);font-size:.82rem;font-weight:850;line-height:1.65}.admin-detail-topics p{color:var(--color-text);white-space:pre-line;overflow-wrap:anywhere;margin:0;font-size:.96rem;line-height:1.65}.admin-detail-memo{border-left:2px solid var(--color-rule);color:var(--color-muted);padding-left:10px}.admin-detail-memo span{color:#5a646f;letter-spacing:.04em;font-size:.78rem;font-weight:850;display:block}.admin-detail-memo p{white-space:pre-line;margin:5px 0 0;line-height:1.62}.admin-detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.admin-detail-actions .secondary-button{min-height:42px;padding-inline:14px;font-size:.9rem}.danger-button{border-radius:var(--radius-control);min-height:42px;color:var(--color-primary-dark);background:#fff6f4c7;border:1px solid #9f2d3f57;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:.9rem;font-weight:820;line-height:1;transition:background-color .12s,border-color .12s,color .12s,transform .12s;display:inline-flex}.danger-button:hover,.danger-button:focus-visible{border-color:var(--color-primary-dark);color:var(--color-primary-dark);background:#fff0ec;outline:none;transform:translateY(-1px)}.danger-button-solid{color:#fff;background:linear-gradient(#943142,#762433)}.danger-button-solid:hover,.danger-button-solid:focus-visible{color:#fff;background:linear-gradient(#8d293a,#6d1f2e)}.danger-button:disabled{cursor:not-allowed;opacity:.52;transform:none}.danger-modal-overlay{z-index:80;background:#1f1b186b;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.danger-modal{background:linear-gradient(180deg, #fffdf8fa, #fbf6eef5), var(--paper-surface);text-align:left;border:1px solid #571f253d;border-radius:20px;width:min(100%,440px);max-height:calc(100vh - 40px);padding:22px;position:relative;overflow-y:auto;box-shadow:0 24px 70px #1f1b183d}.danger-modal:before{content:"";background:#9f2d3fb8;width:3px;position:absolute;inset:0 auto 0 0}.danger-modal:focus{outline:none}.danger-modal-kicker{color:var(--color-primary-dark);letter-spacing:.06em;align-items:center;gap:7px;font-size:.74rem;font-weight:860;display:inline-flex}.danger-modal h2{color:var(--color-text);word-break:keep-all;margin:10px 0 12px;font-size:clamp(1.42rem,6vw,1.75rem);line-height:1.22}.danger-modal-body{color:#4d5963;gap:14px;font-size:.96rem;line-height:1.64;display:grid}.danger-modal-body p{word-break:keep-all;margin:0}.danger-target{background:#fff8f47a;border-left:2px solid #9f2d3fa3;padding:4px 0 4px 11px}.danger-target span,.danger-target strong,.danger-target small{display:block}.danger-target span{color:var(--color-primary-dark);letter-spacing:.06em;font-size:.72rem;font-weight:850}.danger-target strong{color:var(--color-text);word-break:keep-all;margin-top:5px;font-size:1rem;line-height:1.38}.danger-target small{color:var(--color-muted);margin-top:4px;font-size:.84rem}.danger-keyword{width:fit-content;color:var(--color-primary-dark);background:#fff6f4d1;border:1px solid #9f2d3f38;border-radius:999px;padding:7px 13px;font-size:1rem;font-weight:860}.danger-type-input{color:#35434a;gap:7px;font-size:.88rem;font-weight:800;display:grid}.danger-type-input input{background:#fffdf8f5;border-color:#9f2d3f3d}.danger-type-input input:focus{border-color:#9f2d3f75;box-shadow:0 0 0 3px #9f2d3f1f}.danger-modal-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:20px;display:grid}.danger-modal-actions .secondary-button,.danger-modal-actions .danger-button{width:100%;min-height:48px}.danger-modal-final{text-align:center}.danger-modal-final:before{width:0}.danger-modal-final .danger-modal-kicker{justify-content:center}.danger-modal-final .danger-modal-body{text-align:center;justify-items:center}.danger-modal-final .danger-target{text-align:left;width:100%;max-width:320px}.danger-beacon{background:var(--color-primary);border-radius:999px;width:9px;height:9px;animation:1.6s ease-out infinite danger-pulse;box-shadow:0 0 #9f2d3f6b}.danger-countdown{width:94px;height:94px;color:var(--color-primary-dark);background:radial-gradient(circle,#fff6f4fa,#fffdf8e6);border:1px solid #9f2d3f47;border-radius:50%;place-items:center;font-size:3.2rem;font-weight:900;line-height:1;display:grid}@keyframes danger-pulse{0%{box-shadow:0 0 #9f2d3f61}70%{box-shadow:0 0 0 9px #9f2d3f00}to{box-shadow:0 0 #9f2d3f00}}.auth-panel label,.admin-form label{color:#35434a;text-align:left;flex-direction:column;gap:8px;font-size:.92rem;font-weight:750;display:flex}.auth-panel{background-blend-mode:normal, normal, normal, normal, normal, soft-light, normal;background:radial-gradient(circle at 0,#f7f3ec 0 13px,#0000 14px),radial-gradient(circle at 100%,#f7f3ec 0 13px,#0000 14px),radial-gradient(circle at 18% 0,#dea95c17,#0000 33%),radial-gradient(circle at 100% 92%,#8f2c4221,#0000 35%),linear-gradient(116deg,#ffe7ac0b,#0000 32%),url(/assets/textures/admin-auth-club.webp) 0 0/512px 512px,linear-gradient(145deg,#17100e 0%,#0d0b0d 52%,#22110f 100%);border-color:#daae6a47;border-radius:26px;width:100%;max-width:548px;margin:clamp(24px,7vh,62px) auto 0;padding:clamp(27px,5vw,34px);box-shadow:inset 0 1px #fff1d029,inset 0 0 0 1px #ffe2a817,0 22px 52px #1a0c0838,0 8px 18px #61192814}.auth-panel:before{display:none}.auth-panel:after{z-index:0;content:"";opacity:.82;pointer-events:none;background:linear-gradient(118deg,#0000 0 24%,#ffe8ac0d 33%,#0000 45%),radial-gradient(circle at 79% 17%,#ffe2a814,#0000 24%),repeating-linear-gradient(90deg,#ffffff02 0 1px,#0000 1px 12px);border:1px solid #ffe8b229;border-radius:21px;position:absolute;inset:6px;box-shadow:inset 0 0 0 1px #fff5d60b,inset 0 20px 34px #ffe0aa06}.auth-panel>*{z-index:1;position:relative}.auth-panel-heading{border-bottom:1px solid #ffe8b21a;align-items:center;gap:12px;margin-bottom:13px;padding-bottom:14px}.auth-panel-heading .icon-badge{color:#fff7e5e6;background:radial-gradient(circle at 35% 20%,#fff6d347,#0000 31%),linear-gradient(145deg,#b17c3ed6,#571c26db);border:1px solid #ffe8b238;border-radius:10px;width:32px;height:32px;box-shadow:inset 0 1px #ffffff29,0 8px 18px #0000002e}.auth-panel-heading .icon-badge svg{stroke-width:1.8px;width:16px;height:16px}.auth-panel-heading h2{color:#fff4dd;letter-spacing:.015em;text-shadow:0 10px 24px #0000004d;margin-top:4px;font-family:Noto Serif KR,Nanum Myeongjo,Apple SD Gothic Neo,Malgun Gothic,serif;font-size:clamp(1.5rem,5.5vw,1.92rem);font-weight:560;line-height:1.08}.auth-panel .card-kicker{color:#eec885c7;letter-spacing:.24em;font-size:.62rem;font-weight:680}.auth-panel-intro{color:#f7e7cca8;letter-spacing:.005em;text-align:left;word-break:keep-all;margin:0 0 17px 44px;font-size:.86rem;font-weight:610;line-height:1.58}.auth-form{gap:11px;margin-left:44px;display:grid}.auth-panel label{color:#ffefcdc7;letter-spacing:.1em;gap:6px;font-size:.72rem;font-weight:760}.auth-panel input{color:#fff3dc;caret-color:#ffe2a8f5;background:linear-gradient(#1d1412e6,#120d0cdb);border-color:#ffe8b238;border-radius:10px;min-height:44px;font-size:.94rem;font-weight:720;box-shadow:inset 0 1px #fff5da14,0 10px 22px #0003}.auth-panel input:focus{border-color:#ffdd91ad;box-shadow:0 0 0 3px #e5ae6224,0 13px 26px #0000003d}.auth-panel .primary-button{color:#fff6e6;letter-spacing:.045em;background:linear-gradient(#a86037f5,#651d2bfa);border-color:#ffe2a852;border-radius:10px;gap:7px;min-height:46px;margin-top:2px;font-size:.92rem;font-weight:860;box-shadow:inset 0 1px #fff5da33,0 13px 25px #7f223238,0 5px 14px #00000038}.auth-panel .primary-button svg{stroke-width:1.95px;width:16px;height:16px}.auth-panel .primary-button:hover:not(:disabled){background:linear-gradient(#bb6f3dfa,#7e2536fa);border-color:#ffefbe99;transform:translateY(-1px);box-shadow:inset 0 1px #fff5da3d,0 16px 32px #7f223240,0 7px 18px #0000003d}.auth-panel-helper{color:#f7e7cc85;text-align:left;word-break:keep-all;border-top:1px solid #ffe8b21c;margin:13px 0 0 44px;padding-top:11px;font-size:.7rem;font-weight:640;line-height:1.55}.auth-message{color:#fff5e1e6;background:#fff5e114;border-color:#ffe8b233;margin:15px 0 0 44px}.registration-panel{border-radius:var(--radius-panel);background:linear-gradient(180deg, #fffdf8f5, #fbf6eeeb), var(--paper-surface);box-shadow:var(--shadow-paper)}.registration-panel:before{background:#2f73739e;width:2px}.registration-panel .panel-heading{border-bottom:1px solid #24201c1a;margin-bottom:16px;padding-bottom:13px}.registration-panel .panel-heading h2{margin-top:5px}.registration-form{gap:17px;display:grid}.security-panel{background:linear-gradient(180deg, #fffdf8f0, #f9f3eae0), var(--paper-surface)}.security-panel:before{background:#9f2d3f75;width:2px}.security-panel .icon-badge{color:#9f2d3fdb}.security-panel-heading{margin-bottom:10px}.security-settings-summary{gap:12px;display:grid}.security-settings-content{border-top:1px solid #24201c1a;gap:14px;margin-top:15px;padding-top:15px;animation:.22s cubic-bezier(.22,1,.36,1) both security-settings-enter;display:grid}.security-settings-content[hidden]{display:none}.security-settings-heading{text-align:left;gap:7px;display:grid}.security-settings-heading h3{color:var(--color-text);letter-spacing:0;margin:0;font-size:1.02rem;line-height:1.3}.security-settings-heading .admin-panel-note{margin:0}.security-toggle-button{color:#5b2630d1;background:#fffdf89e;border-color:#9f2d3f29;justify-self:start;min-height:40px;padding-inline:14px;font-size:.9rem}.security-toggle-button:hover,.security-toggle-button:focus-visible{color:var(--color-primary-dark);background:#fff8f4e0;border-color:#9f2d3f47}.security-form{gap:13px;display:grid}.security-form-grid{gap:12px;display:grid}.security-form .secondary-button{justify-self:stretch;min-height:48px}.security-close-button{color:#5d5044ad;justify-self:start;min-height:34px;padding:0;font-size:.88rem}.security-close-button:hover,.security-close-button:focus-visible{color:var(--color-primary-dark)}.admin-account-actions{border-top:1px solid #24201c1a;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:2px;padding:17px 2px 4px;display:grid}.admin-account-title{color:#3a312ba8;letter-spacing:.06em;margin:0 0 5px;font-size:.78rem;font-weight:850;line-height:1.25}.admin-account-note{margin:0;font-size:.82rem;line-height:1.5}.admin-account-actions .admin-logout-button{justify-self:end;width:auto}@keyframes security-settings-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.changelog-panel{background:linear-gradient(180deg, #fffdf8f0, #f9f4ecdb), var(--paper-surface)}.changelog-panel:before{background:#2f53565c;width:2px}.changelog-panel .icon-badge{color:#2f5356db}.changelog-panel-heading{margin-bottom:10px}.changelog-panel-summary{gap:12px;display:grid}.changelog-panel-summary .admin-panel-note{margin-bottom:0}.changelog-toggle-button{color:#235a5ce0;background:#fffdf89e;border-color:#2f535629;justify-self:start;min-height:40px;padding-inline:14px;font-size:.9rem}.changelog-toggle-button:hover,.changelog-toggle-button:focus-visible{color:var(--color-secondary-dark);background:#f6fbf9db;border-color:#2f535647}.changelog-toggle-count{color:#2f5356e0;background:#2f53561a;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;font-size:.74rem;font-weight:840;line-height:1;display:inline-flex}.changelog-dialog-overlay{z-index:82;padding:max(20px, env(safe-area-inset-top)) 20px max(20px, env(safe-area-inset-bottom));background:#1c1a1770;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.changelog-dialog-card{background:linear-gradient(180deg, #fffdf8fa, #f9f4ecf5), var(--paper-surface);text-align:left;border:1px solid #24201c21;border-radius:20px;gap:18px;width:min(100%,520px);max-height:calc(100vh - 40px);padding:22px;animation:.22s cubic-bezier(.22,1,.36,1) both changelog-dialog-enter;display:grid;position:relative;overflow-y:auto;box-shadow:0 26px 76px #1f1b1838}.changelog-dialog-card:focus{outline:none}.changelog-dialog-close{color:#3d362eb8;background:#fffdf8b8;border:1px solid #24201c1a;border-radius:12px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex;position:absolute;top:14px;right:14px}.changelog-dialog-close:hover,.changelog-dialog-close:focus-visible{color:var(--color-secondary-dark);border-color:#2f53563d;box-shadow:0 0 0 3px #2f73731a}.changelog-dialog-heading{gap:8px;padding-right:44px;display:grid}.changelog-dialog-heading h2,.changelog-dialog-heading p{margin:0}.changelog-dialog-heading h2{color:var(--color-text);word-break:keep-all;font-size:clamp(1.5rem,7vw,1.9rem);line-height:1.22}.changelog-dialog-heading p:not(.card-kicker){color:var(--color-muted);word-break:keep-all;font-size:.95rem;font-weight:650;line-height:1.56}.changelog-empty{color:var(--color-muted);border-left:2px solid #2f53564d;margin:0;padding:2px 0 2px 12px;font-size:.94rem;font-weight:680;line-height:1.52}.changelog-section{gap:12px;display:grid}.changelog-section+.changelog-section{border-top:1px solid #24201c1a;margin-top:18px;padding-top:18px}.changelog-section-heading{gap:4px;display:grid}.changelog-section-heading h3{color:var(--color-text);word-break:keep-all;margin:0;font-size:.98rem;line-height:1.35}.changelog-section-heading p{color:#5d5044bd;word-break:keep-all;margin:0;font-size:.86rem;line-height:1.55}.changelog-list{gap:12px;display:grid}.changelog-date-group-list{gap:18px;display:grid}.changelog-date-group{gap:10px;display:grid}.changelog-date-heading{border-bottom:1px solid #24201c1a;justify-content:space-between;align-items:center;gap:12px;padding-bottom:8px;display:flex}.changelog-date-heading h4{color:var(--color-text);word-break:keep-all;margin:0;font-size:.98rem;font-weight:840;line-height:1.35}.changelog-date-heading span{color:#2f5356c7;white-space:nowrap;background:#f7fbf9b8;border:1px solid #2f535624;border-radius:999px;align-items:center;min-height:24px;padding:2px 9px;font-size:.74rem;font-weight:820;line-height:1;display:inline-flex}.changelog-item{background:#fffdf8ad;border:1px solid #24201c1a;border-radius:17px;gap:10px;padding:15px;display:grid}.changelog-item-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.changelog-category{border:1px solid #24201c1a;border-radius:999px;align-items:center;min-height:24px;padding:3px 9px;font-size:.72rem;font-weight:840;line-height:1;display:inline-flex}.changelog-category-major{color:var(--color-primary-dark);background:#fff8f4bd;border-color:#9f2d3f2e}.changelog-category-minor{color:var(--color-secondary-dark);background:#f5fcfac2;border-color:#2f73732e}.changelog-category-fix{color:#644b2ae6;background:#fffaf0c7;border-color:#78644629}.changelog-category-security{color:#324148eb;background:#f6f8f8c7;border-color:#46525c29}.changelog-meta{color:#5d5044c2;font-size:.82rem;font-weight:780;line-height:1.3}.changelog-item h3{color:var(--color-text);word-break:keep-all;margin:0;font-size:1.03rem;line-height:1.34}.changelog-item ul{color:#4d5963;gap:7px;margin:0;padding-left:1.1rem;font-size:.91rem;line-height:1.58;display:grid}.changelog-item li::marker{color:#2f5356b8}@keyframes changelog-dialog-enter{0%{opacity:0;transform:translateY(8px)scale(.992)}to{opacity:1;transform:translateY(0)scale(1)}}.admin-flow-section{gap:10px;padding-bottom:4px;display:grid}.manuscript-section{padding-bottom:0}.flow-section-heading{text-align:left;align-items:start;gap:9px;display:flex}.flow-section-number{min-width:24px;color:var(--color-primary-dark);letter-spacing:.08em;flex:none;font-size:.76rem;font-weight:850;line-height:1.34}.manuscript-section .flow-section-number{color:var(--color-secondary-dark)}.flow-section-heading h3,.flow-section-heading p{margin:0}.flow-section-heading h3{color:var(--ink);word-break:keep-all;font-size:.98rem;font-weight:850;line-height:1.26}.flow-section-heading p{color:var(--muted);word-break:keep-all;margin-top:3px;font-size:.84rem;font-weight:650;line-height:1.48}.date-title-group{gap:9px;margin-left:33px;display:grid}.generated-title-preview{border:0;border-left:2px solid var(--burgundy);text-align:left;background:0 0;border-radius:0;min-height:0;padding:2px 0 2px 10px;display:block}.generated-title-preview span{color:var(--color-primary-dark);letter-spacing:.06em;font-size:.72rem;font-weight:850;line-height:1.2}.generated-title-preview strong{color:var(--color-text);word-break:keep-all;margin-top:5px;font-size:.97rem;line-height:1.4;display:block}.generated-title-preview p{color:var(--color-muted);word-break:keep-all;margin:5px 0 0;font-size:.88rem;font-weight:650;line-height:1.48}.manuscript-field{gap:8px;margin-left:33px;display:grid}.manuscript-field>span{color:#35434a;font-size:.88rem;font-weight:800;line-height:1.35}.manuscript-field textarea{background:linear-gradient(180deg, #fffdf8eb, #fffaf2eb), var(--paper-surface);min-height:218px;color:var(--ink);border-color:#24201c21;border-radius:14px;padding:15px 16px;font-size:.98rem;line-height:1.65;box-shadow:inset 0 1px #ffffffad}.manuscript-field textarea::placeholder{color:#68738594}.registration-form input:focus,.registration-form textarea:focus{box-shadow:0 0 0 2px var(--focus-ring);border-color:#9f2d3f57}.admin-form label small{color:var(--color-muted);font-size:.86rem;font-weight:650;line-height:1.5}input,select,textarea{border:1px solid var(--color-border);width:100%;color:var(--color-text);background:#fff;border-radius:14px;padding:13px 14px;font-size:1rem}input:focus,select:focus,textarea:focus{border-color:#2c7a7b6b;outline:none;box-shadow:0 0 0 4px #2c7a7b1a}textarea{resize:vertical}.bulk-topic-panel{background:linear-gradient(#fffdf8d1,#fbf8f1b3);border:1px solid #24201c1f;border-radius:16px;padding:16px}.bulk-save-panel{padding:18px}.bulk-topic-panel textarea{min-height:168px;margin-top:12px}.bulk-save-panel textarea{min-height:240px}.bulk-topic-actions{justify-content:flex-end;margin-top:12px;display:flex}.bulk-topic-actions .secondary-button{min-height:44px}.bulk-topic-message{border-left:2px solid var(--color-rule);margin:12px 0 0;padding-left:10px;font-size:.9rem;font-weight:720;line-height:1.55}.bulk-topic-success{color:var(--color-secondary-dark)}.bulk-topic-error{color:var(--color-primary-dark)}.advanced-settings{border-top:1px solid #24201c1a;margin-top:-2px;padding-top:0}.advanced-settings summary{color:#344047;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:40px;font-size:.86rem;font-weight:800;list-style:none;display:flex}.advanced-settings summary::-webkit-details-marker{display:none}.advanced-settings summary:after{color:var(--color-muted);content:"∨";font-size:.82rem}.advanced-settings[open] summary:after{content:"∧"}.advanced-settings summary small{color:var(--color-muted);margin-left:auto;font-size:.8rem;font-weight:650}.advanced-settings-body{background:0 0;border:0;border-top:1px solid #24201c17;border-radius:0;gap:14px;margin-top:8px;padding:12px 0 0;display:grid}.form-grid{grid-template-columns:1fr;gap:14px;display:grid}.form-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.registration-form .form-actions{grid-template-columns:minmax(0,1fr);gap:10px;width:100%;margin-top:0;display:grid}.registration-form .form-actions .primary-button{width:100%;inline-size:100%;color:#fff;min-height:51px;box-shadow:none;background:linear-gradient(#943142,#7b2938);border-color:#7f22324d;justify-self:stretch;font-size:.98rem}.registration-form .form-actions .primary-button:hover,.registration-form .form-actions .primary-button:focus-visible{border-color:var(--color-primary-dark);color:#fff;background:linear-gradient(#8f2938,#742031);transform:translateY(-1px)}.registration-form .form-actions .secondary-button{width:100%;inline-size:100%;justify-self:stretch;min-height:46px}.muted-text,.form-message{color:var(--color-muted);font-size:.94rem;line-height:1.62}.form-message{color:var(--color-secondary-dark);margin:14px 0 0;font-weight:750}.form-message p{margin:0}.auth-message{border-left:2px solid var(--color-rule);padding-left:10px}.auth-message-success{color:var(--color-secondary-dark)}.auth-message-error{color:var(--color-primary-dark)}.error-details{color:var(--color-muted);margin-top:10px;font-size:.82rem;font-weight:650}.error-details summary{cursor:pointer}.error-details pre{color:#4b5563;white-space:pre-wrap;overflow-wrap:anywhere;background:#fffdf8b8;border:1px solid #24201c1f;border-radius:12px;max-height:180px;margin:8px 0 0;padding:10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;font-weight:500;line-height:1.55;overflow:auto}.recommendation-panel .secondary-button{margin-top:4px}.recommendation-item{background:var(--color-surface-subtle);text-align:left;border:1px solid #2c7a7b29;border-radius:16px;padding:15px}.recommendation-item p,.recommendation-item strong,.recommendation-item small{margin:0;display:block}.recommendation-item p{color:var(--color-text);line-height:1.55}.recommendation-item strong{color:var(--color-secondary-dark);margin-top:8px;line-height:1.5}.recommendation-item small{color:var(--color-muted);margin-top:8px}.feedback-mailbox{background:linear-gradient(180deg, #fffdf8b8, #f9f4ec8f), var(--color-surface-subtle);border:1px solid #24201c1a;border-radius:18px;position:relative;overflow:hidden;box-shadow:0 8px 22px #24201c09}.feedback-mailbox:before{content:"";background:#9f2d3f57;width:2px;position:absolute;inset:0 auto 0 0}.feedback-mailbox-toggle{z-index:1;width:100%;color:var(--color-text);text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 16px 15px 17px;display:grid;position:relative}.feedback-mailbox-toggle:focus-visible{outline-offset:-3px;outline:3px solid #9f2d3f21}.feedback-mailbox-mark{color:#7f2232cc;background:#fff8f4a3;border:1px solid #9f2d3f29;border-radius:12px;justify-content:center;align-items:center;width:31px;height:31px;display:inline-flex}.feedback-mailbox-toggle strong,.feedback-mailbox-toggle small{display:block}.feedback-mailbox-toggle strong{font-size:.98rem;line-height:1.35}.feedback-mailbox-toggle small{color:#687385db;margin-top:4px;font-size:.8rem;font-weight:650}.feedback-mailbox-chevron{color:#5d504475;transition:transform .18s cubic-bezier(.22,1,.36,1)}.feedback-mailbox-open .feedback-mailbox-chevron{transform:rotate(180deg)}.feedback-mailbox-content{border-top:1px solid #24201c14;gap:14px;padding:0 17px 17px;animation:.22s cubic-bezier(.22,1,.36,1) both security-settings-enter;display:grid}.feedback-mailbox-content[hidden]{display:none}.feedback-mailbox-copy{color:var(--color-muted);text-align:left;margin-top:2px;font-size:.9rem;line-height:1.62}.feedback-mailbox-copy p{margin:0}.feedback-form{gap:13px;display:grid}.feedback-category-field{border:0;gap:9px;min-width:0;margin:0;padding:0;display:grid}.feedback-category-field legend,.feedback-text-field>span,.feedback-nickname-field>span{color:#35434a;margin-bottom:0;font-size:.84rem;font-weight:820}.feedback-category-options{gap:8px;display:grid}.feedback-category-options label{color:#3c464d;background:#fffdf894;border:1px solid #24201c1a;border-radius:13px;align-items:center;gap:9px;min-height:38px;padding:0 11px;font-size:.88rem;font-weight:720;display:flex}.feedback-category-options input{accent-color:var(--color-primary-dark)}.feedback-text-field,.feedback-nickname-field{text-align:left;gap:7px;display:grid}.feedback-text-field textarea,.feedback-nickname-field input{width:100%;color:var(--color-text);background:#fffdf8e0;border:1px solid #24201c24;border-radius:14px;padding:12px 13px;line-height:1.58}.feedback-text-field textarea{resize:vertical;min-height:124px}.feedback-text-field textarea:focus,.feedback-nickname-field input:focus{border-color:#9f2d3f57;outline:none;box-shadow:0 0 0 3px #9f2d3f1a}.feedback-text-field small,.feedback-nickname-field small{color:#687385d1;justify-self:end;font-size:.76rem;line-height:1.4}.feedback-nickname-field small{justify-self:start}.feedback-submit-message{color:var(--color-secondary-dark);margin:0;font-size:.88rem;font-weight:760;line-height:1.5}.feedback-submit-message-error{color:var(--color-primary-dark)}.feedback-submit-button{width:100%;min-height:46px;color:var(--color-secondary-dark);background:#f7fbfad1;border-color:#2f737333;justify-self:stretch}.feedback-admin-panel{background:linear-gradient(180deg, #fffdf8f0, #f9f4ecdb), var(--paper-surface)}.feedback-admin-panel:before{background:#2f737375;width:2px}.feedback-admin-panel .icon-badge{color:#235a5ce0}.feedback-admin-heading{margin-bottom:10px}.feedback-admin-summary{align-items:start;gap:10px;display:grid}.feedback-admin-summary .admin-panel-note{margin-bottom:0}.feedback-count-badge{color:#5d5044bd;background:#fffdf89e;border:1px solid #24201c1a;border-radius:999px;width:fit-content;padding:6px 10px;font-size:.78rem;font-weight:820}.feedback-count-badge-new{color:var(--color-secondary-dark);background:#f0faf8c7;border-color:#2f737333}.feedback-admin-toggle{color:#235a5ce0;background:#fffdf89e;border-color:#2f737329;min-height:40px;margin-top:13px;padding-inline:14px;font-size:.9rem}.feedback-admin-panel-open .feedback-admin-toggle svg{transform:rotate(180deg)}.feedback-admin-content{border-top:1px solid #24201c1a;gap:13px;margin-top:15px;padding-top:15px;animation:.22s cubic-bezier(.22,1,.36,1) both security-settings-enter;display:grid}.feedback-admin-content[hidden]{display:none}.feedback-refresh-button{color:#5d5044ad;min-height:32px;padding:0;font-size:.84rem}.feedback-admin-list{gap:11px;display:grid}.feedback-admin-item{text-align:left;background:#fffdf8b8;border:1px solid #24201c1a;border-radius:16px;gap:12px;padding:14px;display:grid}.feedback-admin-item-new{background:linear-gradient(180deg, #f7fdfbc7, #fffdf8bd), var(--color-surface);border-color:#2f73732e}.feedback-admin-item-read{opacity:.78}.feedback-admin-item-meta{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:6px 9px;font-size:.76rem;font-weight:760;display:flex}.feedback-admin-item-meta span,.feedback-admin-item-meta strong{align-items:center;min-height:23px;display:inline-flex}.feedback-admin-item-meta span:first-child{color:var(--color-secondary-dark);font-weight:850}.feedback-admin-item-meta strong{color:#3d484f}.feedback-admin-message{color:var(--color-text);white-space:pre-line;overflow-wrap:anywhere;margin:0;font-size:.96rem;line-height:1.66}.feedback-admin-item-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.feedback-status-chip{color:#5d5044bd;background:#fffdf8a8;border:1px solid #24201c1a;border-radius:999px;align-items:center;min-height:26px;padding:0 10px;font-size:.76rem;font-weight:820;display:inline-flex}.feedback-status-new{color:var(--color-secondary-dark);border-color:#2f73732e}.feedback-admin-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.feedback-soft-button,.feedback-delete-button{min-height:38px;padding-inline:12px;font-size:.82rem}.feedback-delete-button{background:#fff8f4a8;border-color:#9f2d3f38}.feedback-mailbox{isolation:isolate;background:radial-gradient(circle at 18% 0, #9f2d3f0e, transparent 34%), linear-gradient(135deg, #fffdf8f0, #f6f1e7c7), var(--color-surface-subtle);border-color:#80544a21;border-radius:20px;box-shadow:inset 0 1px #ffffffd1,0 13px 28px #24201c0b}.feedback-mailbox:before{background:linear-gradient(#9f2d3f9e,#2f73736b);width:3px}.feedback-mailbox:after{z-index:0;opacity:.72;content:"";pointer-events:none;background:linear-gradient(#fff6f4b3,#f6eee257);border:1px solid #9f2d3f1a;border-radius:4px 4px 10px 10px;width:30px;height:42px;position:absolute;top:14px;right:52px;transform:rotate(5deg)}.feedback-mailbox-toggle{min-height:74px;padding:16px 17px 16px 18px}.feedback-mailbox-toggle:hover .feedback-mailbox-mark,.feedback-mailbox-toggle:focus-visible .feedback-mailbox-mark{border-color:#9f2d3f3d;transform:translateY(-1px)}.feedback-mailbox-mark{color:#7f2232c7;background:linear-gradient(#fffaf6f5,#f7eee4e0);border-color:#9f2d3f2e;border-radius:10px 10px 14px 14px;width:35px;height:40px;transition:border-color .18s,transform .18s;position:relative;box-shadow:0 7px 16px #5b26300e}.feedback-mailbox-mark:before{content:"";background:#9f2d3f75;border-radius:999px;width:6px;height:6px;position:absolute;top:5px;left:50%;transform:translate(-50%)}.feedback-mailbox-toggle strong{color:#2c3033;letter-spacing:0;font-size:1.01rem}.feedback-mailbox-toggle small{color:#5d504494;font-size:.78rem}.feedback-mailbox-chevron{z-index:1;color:#7f22326b;position:relative}.feedback-mailbox-content{background:linear-gradient(#fffdf8db,#fbf7efbd);border:1px solid #24201c17;border-radius:17px;margin:0 12px 12px;padding:15px;position:relative;box-shadow:inset 0 1px #ffffffb3}.feedback-mailbox-copy{color:#4b5358d1;border-left:2px solid #2f73733d;padding-left:10px;font-size:.88rem}.feedback-category-field{gap:8px}.feedback-category-field legend,.feedback-text-field>span,.feedback-nickname-field>span{color:#35434aeb;letter-spacing:.01em;font-size:.82rem}.feedback-category-options{gap:7px}.feedback-category-options label{background:linear-gradient(#fffdf8d1,#f8f3eb9e);border-color:#24201c18;border-radius:15px;align-items:flex-start;gap:9px;min-height:48px;padding:10px 11px;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s;position:relative}.feedback-category-options label:hover{border-color:#2f73732e;transform:translateY(-1px)}.feedback-category-options input{flex:none;width:15px;height:15px;margin:2px 0 0}.feedback-category-selected{box-shadow:0 7px 16px #2f73730e;background:linear-gradient(#f2faf8e6,#fff7f499)!important;border-color:#2f737342!important}.feedback-category-text{gap:2px;min-width:0;display:grid}.feedback-category-text strong,.feedback-category-text small{display:block}.feedback-category-text strong{color:#334044;word-break:keep-all;font-size:.88rem;font-weight:820;line-height:1.35}.feedback-category-text small{color:#687385d1;font-size:.74rem;font-weight:650;line-height:1.42}.feedback-text-field textarea,.feedback-nickname-field input{background:linear-gradient(#fffdf8fa,#fffaf4e6);border-color:#24201c1f;box-shadow:inset 0 1px #ffffffb3}.feedback-text-field textarea{background:linear-gradient(#fffdf8fa,#fffaf4e6),repeating-linear-gradient(#0000 0 31px,#24201c09 32px);min-height:132px}.feedback-text-field textarea:focus,.feedback-nickname-field input:focus{border-color:#2f737357;box-shadow:0 0 0 3px #2f737317,inset 0 1px #ffffffb8}.feedback-text-field small,.feedback-nickname-field small{color:#5d504485}.feedback-submit-button{color:var(--color-primary-dark);background:linear-gradient(#fff9f6fa,#f6ebe7e0);border-color:#9f2d3f33;box-shadow:0 8px 18px #5b26300e}.feedback-submit-button:hover,.feedback-submit-button:focus-visible{color:var(--color-primary-dark);background:linear-gradient(#fff7f4,#f2e5e1f2);border-color:#7f223257;transform:translateY(-1px)}.feedback-submit-button:disabled{box-shadow:none}.feedback-mailbox-floating{display:contents}.feedback-mailbox-floating:before,.feedback-mailbox-floating:after{display:none}.feedback-floating-entry{z-index:48;color:#4d302ddb;text-align:center;touch-action:manipulation;-webkit-tap-highlight-color:#8f2c421f;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;min-width:78px;min-height:104px;padding:2px;transition:transform .18s cubic-bezier(.22,1,.36,1),filter .18s;display:inline-flex;position:fixed;top:16px;right:34px}.feedback-floating-entry:hover,.feedback-floating-entry:focus-visible{filter:saturate(1.04);outline:none;transform:translateY(-2px)}.feedback-floating-entry:active{transform:translateY(0)scale(.985)}.feedback-floating-entry:focus-visible{border-radius:18px;box-shadow:0 0 0 3px #9f2d3f24}.feedback-tanzaku-object{pointer-events:none;width:78px;height:108px;display:block;position:relative}.feedback-tanzaku-object:after{filter:blur(7px);content:"";background:#24201c1c;border-radius:999px;height:15px;position:absolute;bottom:4px;left:9px;right:7px;transform:translateY(4px)}.feedback-tanzaku-object img{z-index:1;object-fit:contain;width:100%;height:100%;display:block;position:relative}.feedback-floating-label{z-index:2;color:#5b2630d1;white-space:nowrap;background:#fffdf8d1;border:1px solid #7f22321f;border-radius:999px;justify-content:center;align-items:center;gap:4px;min-height:25px;margin-top:-14px;padding:0 8px;font-size:.72rem;font-weight:820;line-height:1;display:inline-flex;position:relative;box-shadow:inset 0 1px #ffffffd1,0 6px 14px #24201c0b}.feedback-dialog-overlay{z-index:120;padding:max(18px, env(safe-area-inset-top)) 18px max(18px, env(safe-area-inset-bottom));background:#1f1b1861;place-items:center;animation:.22s ease-out both feedback-overlay-enter;display:grid;position:fixed;inset:0;overflow-y:auto}.feedback-dialog-card{background:radial-gradient(circle at 12% 0, #9f2d3f0d, transparent 32%), linear-gradient(180deg, #fffdf8fa, #f8f2e8f5), var(--paper-surface);text-align:left;border:1px solid #80544a29;border-radius:24px;width:min(100%,460px);max-height:calc(100dvh - 36px);padding:24px;animation:.26s cubic-bezier(.22,1,.36,1) both feedback-dialog-enter;display:grid;position:relative;overflow-y:auto;box-shadow:0 24px 70px #1f1b1838}.feedback-sheet-handle{display:none}.feedback-dialog-close{color:#5d5044c7;background:#fffdf8c2;border:1px solid #24201c1a;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;transition:background-color .16s,border-color .16s,color .16s,transform .16s;display:inline-flex;position:absolute;top:16px;right:16px}.feedback-dialog-close:hover,.feedback-dialog-close:focus-visible{color:var(--color-primary-dark);background:#fff8f4f0;border-color:#9f2d3f33;outline:none;transform:translateY(-1px)}.feedback-dialog-heading{gap:7px;margin-bottom:17px;padding-right:44px;display:grid}.feedback-dialog-kicker{color:#235a5cc2;letter-spacing:.025em;font-size:.76rem;font-weight:840}.feedback-dialog-heading h2{color:var(--color-text);word-break:keep-all;margin:0;font-size:clamp(1.42rem,5vw,1.82rem);line-height:1.22}.feedback-dialog-heading p{color:#4b5358d6;word-break:keep-all;margin:0;font-size:.94rem;line-height:1.62}.feedback-dialog-card .feedback-form{gap:14px}.feedback-dialog-card .feedback-category-options{gap:8px}.feedback-dialog-card .feedback-category-options label{min-height:52px}.feedback-dialog-card .feedback-submit-button{min-height:50px}@keyframes feedback-overlay-enter{0%{opacity:0}to{opacity:1}}@keyframes feedback-dialog-enter{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes feedback-sheet-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (width>=620px){.app-header,.app-main,.app-footer{padding-inline:26px}.form-grid{grid-template-columns:1fr 1fr}.wide-field{grid-column:1/-1}}@media (width<=520px){.footer-admin-link{color:#5d50444d;font-size:.7rem}.feedback-floating-entry{min-width:68px;min-height:92px;top:12px;right:34px}.feedback-tanzaku-object{width:68px;height:94px}.feedback-floating-label{min-height:23px;margin-top:-13px;padding:0 7px;font-size:.68rem}.feedback-dialog-overlay{padding:max(12px, env(safe-area-inset-top)) 10px 0;place-items:end center;overflow:hidden}.feedback-dialog-card{width:100%;max-height:calc(100dvh - 18px);padding:22px 16px max(18px, env(safe-area-inset-bottom));border-radius:24px 24px 0 0;animation:.26s cubic-bezier(.22,1,.36,1) both feedback-sheet-enter}.feedback-sheet-handle{background:#5d50443d;border-radius:999px;justify-self:center;width:38px;height:4px;margin:-7px 0 12px;display:block}.feedback-dialog-close{top:14px;right:14px}.feedback-dialog-heading{margin-bottom:14px;padding-right:42px}.feedback-dialog-heading p{font-size:.9rem}}@media (width<=430px){.app-header,.app-main,.app-footer{padding-inline:16px}.study-card,.admin-panel,.status-panel{padding:20px}.primary-button,.secondary-button{width:100%}.nhk-button{border-radius:16px;min-height:52px;font-size:.98rem}.admin-title{gap:12px;padding-top:10px}.admin-title h1{margin-bottom:0}.admin-title-actions{gap:7px}.admin-title-actions .secondary-button{width:auto}.admin-back-button,.admin-logout-button{min-height:44px;font-size:.84rem}.admin-back-button{width:auto;min-width:82px;padding:0 14px}.admin-logout-button{padding:0 12px;font-size:.78rem}.auth-panel{background:radial-gradient(circle at 0,#f7f3ec 0 10px,#0000 11px),radial-gradient(circle at 100%,#f7f3ec 0 10px,#0000 11px),radial-gradient(circle at 18% 0,#dea95c14,#0000 32%),radial-gradient(circle at 100% 92%,#8f2c421f,#0000 34%),linear-gradient(115deg,#ffe7ac0a,#0000 30%),url(/assets/textures/admin-auth-club.webp),linear-gradient(145deg,#17100e 0%,#0d0b0d 52%,#22110f 100%);border-radius:22px;align-self:center;width:100%;max-width:min(100%,360px);margin-top:20px;padding:22px 19px}.auth-panel-heading{gap:10px;margin-bottom:12px;padding-bottom:13px}.auth-panel:after{border-radius:18px;inset:5px}.auth-panel-intro,.auth-form,.auth-panel-helper,.auth-message{margin-left:0}.auth-panel-intro{margin-bottom:15px;padding-left:0}.auth-panel input{border-radius:10px;min-height:44px}.auth-panel .primary-button{border-radius:10px;min-height:46px}.registration-form{gap:16px}.admin-flow-section{gap:10px;padding-bottom:2px}.date-title-group,.manuscript-field,.vip-admin-session-select{margin-left:0}.vip-admin-quick-panel{grid-template-columns:1fr;gap:12px;padding:14px}.vip-admin-automation-actions{justify-content:stretch}.vip-admin-quick-panel .primary-button,.vip-admin-automation-actions .secondary-button{width:100%}.vip-completion-toast{top:calc(env(safe-area-inset-top,0px) + 12px);grid-template-columns:auto minmax(0,1fr) auto;width:auto;padding:13px 12px;left:12px;right:12px}.vip-completion-toast-action{min-height:38px;padding-inline:14px}.vip-completion-toast-close{width:36px;height:36px}.vip-vote-progress-card{padding:13px}.vip-vote-progress-heading{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.vip-card .card-heading{flex-wrap:wrap;row-gap:8px}.vip-card-status{margin-left:auto}.vip-card-intro{font-size:.9rem}.vip-candidate{min-height:64px}.vip-candidate-caption{max-width:46%}.vip-status-banner{grid-template-columns:1fr;gap:13px;padding:15px}.vip-admin-collapsed-summary{grid-template-columns:1fr;gap:12px;padding:14px}.vip-admin-collapse-toggle{justify-self:stretch;width:100%}.vip-status-meter{grid-template-columns:auto auto auto auto;justify-content:start;min-width:0}.vip-status-meter i{grid-column:auto;width:1px;height:18px}.vip-stage-chip{flex:132px;min-width:min(100%,132px)}.vip-confirm-actions,.vip-action-row,.vip-admin-actions,.vip-admin-reset-actions{grid-template-columns:1fr}.vip-award-placard{padding:18px 16px 17px}.vip-award-placard .secondary-button{width:100%}.topic-list-cards{gap:9px}.topic-card{border-radius:15px;grid-template-columns:30px minmax(0,1fr);gap:10px;padding:12px}.topic-card .topic-number{width:28px;min-height:28px}.vip-celebration-overlay{padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom))}.vip-celebration-shell{width:calc(100vw - 32px)}.vip-celebration-placard{border-radius:20px;width:100%;padding:28px 18px}.vip-celebration-burst{width:34vw}.vip-celebration-actions{margin-top:12px}.vip-candidate-grid{grid-template-columns:1fr}.vip-candidate{flex-direction:column;align-items:stretch;gap:7px}.vip-candidate-caption{text-align:left;max-width:none}.admin-panel-note{margin-left:0}.manuscript-field textarea{min-height:210px}.admin-detail-actions{justify-content:stretch}.admin-detail-actions .secondary-button,.admin-detail-actions .danger-button{width:100%}.feedback-mailbox-toggle{grid-template-columns:auto minmax(0,1fr) auto;padding-inline:15px}.feedback-mailbox:after{width:24px;height:34px;right:42px}.feedback-mailbox-content{margin-inline:10px;padding:13px}.feedback-category-options label{min-height:46px;padding:9px 10px}.feedback-category-text small{font-size:.7rem}.feedback-dialog-card .feedback-category-options label{min-height:48px}.feedback-dialog-card .feedback-text-field textarea{min-height:126px}.feedback-admin-actions,.feedback-admin-item-footer{justify-content:stretch;align-items:stretch}.feedback-admin-actions,.feedback-soft-button,.feedback-delete-button{width:100%}.danger-modal-overlay{align-items:end;padding:14px}.danger-modal{width:100%;max-height:calc(100vh - 28px);padding:20px}.danger-modal-actions{grid-template-columns:1fr}}@media (width<=380px){.brand{gap:10px}.brand-symbol{width:50px}.brand-title{font-size:1.86rem}.brand-subtitle{letter-spacing:.15em;font-size:.7rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.danger-beacon{animation:none}.vip-status-dot,.vip-status-banner,.vip-stage-chip,.vip-counting-pulse,.vip-completion-toast{transition-duration:.01ms!important;animation:none!important}.topic-card,.feedback-floating-entry,.feedback-dialog-overlay,.feedback-dialog-card,.security-settings-content,.feedback-mailbox-content,.feedback-admin-content,.vip-admin-management-content,.vip-advanced-content,.vip-vote-details-content{-webkit-backdrop-filter:none;backdrop-filter:none;transition-duration:.01ms!important;animation:none!important;transform:none!important}.vip-celebration-overlay,.vip-celebration-backdrop,.vip-celebration-glow,.vip-celebration-rays,.vip-celebration-rings,.vip-celebration-ribbons,.vip-celebration-shell,.vip-celebration-placard,.vip-celebration-close{transition-duration:.01ms!important;animation:none!important}.vip-celebration-burst,.vip-celebration-dust,.vip-celebration-particle,.vip-celebration-ribbon,.vip-celebration-ring,.vip-celebration-rays{display:none}.vip-celebration-overlay,.vip-celebration-backdrop{opacity:1}.vip-celebration-glow{opacity:.72;transform:translate(-50%,-50%)scaleX(1)scaleY(.86)}.vip-celebration-placard{opacity:1;transform:none}}.route-loading-shell,.app-error-shell{background:var(--color-background,#f6f1e9);min-height:100svh;color:var(--color-text,#1f2328);place-items:center;padding:32px 20px;display:grid}.route-loading-shell{align-content:center;gap:14px}.route-loading-shell p{color:var(--color-muted,#687385);margin:0;font-size:.88rem;font-weight:700}.route-loading-mark{border:1px solid #9f2d3f2e;border-top-color:#9f2d3fb8;border-radius:50%;width:34px;height:34px;animation:.76s linear infinite route-loading-turn}.app-error-panel{border-left:3px solid var(--color-primary,#9f2d3f);background:#fffdf8c7;width:min(100%,520px);padding:clamp(24px,6vw,38px)}.app-state-kicker{color:var(--color-primary,#9f2d3f);letter-spacing:.08em;margin:0 0 10px;font-size:.72rem;font-weight:850}.app-error-panel h1{word-break:keep-all;margin:0;font-size:clamp(1.55rem,6vw,2rem);line-height:1.3}.app-error-panel>p:not(.app-state-kicker){color:var(--color-muted,#687385);word-break:keep-all;margin:12px 0 0;line-height:1.65}.app-error-actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.app-error-actions button,.app-error-actions a{min-height:44px;font:inherit;border-radius:12px;justify-content:center;align-items:center;padding:0 17px;font-size:.9rem;font-weight:780;text-decoration:none;display:inline-flex}.app-error-actions button{background:var(--color-primary,#9f2d3f);color:#fffdf8;cursor:pointer;border:1px solid #9f2d3f47}.app-error-actions a{color:var(--color-text,#1f2328);background:#fffdf8d1;border:1px solid #24201c24}.app-error-actions button:focus-visible,.app-error-actions a:focus-visible{outline-offset:3px;outline:3px solid #9f2d3f2e}@keyframes route-loading-turn{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.route-loading-mark{border-color:#9f2d3f6b;animation:none}}.topic-focus-overlay{z-index:9500;background:var(--topic-focus-overlay);-webkit-backdrop-filter:blur(var(--topic-focus-blur));backdrop-filter:blur(var(--topic-focus-blur));padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));animation:topic-focus-overlay-enter var(--topic-focus-open-duration) var(--topic-focus-ease) both;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.topic-focus-overlay-closing{pointer-events:none;animation:topic-focus-overlay-exit var(--topic-focus-close-duration) var(--topic-focus-ease) both}.topic-focus-dialog{--topic-dialog-enter-transform:translateY(10px) scale(.985);--topic-dialog-rest-transform:translateY(0) scale(1);--topic-dialog-exit-transform:translateY(6px) scale(.99);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;width:min(680px,100vw - 32px);max-height:calc(100dvh - 32px);transform:var(--topic-dialog-rest-transform);opacity:1;will-change:width, height, transform;transition:opacity var(--topic-focus-close-duration) var(--topic-focus-ease), width .32s var(--topic-focus-ease), height .32s var(--topic-focus-ease), padding .26s var(--topic-focus-ease), border-color .26s var(--topic-focus-ease), box-shadow .26s var(--topic-focus-ease), transform .32s var(--topic-focus-ease);background:radial-gradient(circle at 100% 0,#2f73731b,#0000 35%),linear-gradient(#fffefafe,#fbfdf9fb);border:1px solid #2f737357;border-radius:22px;padding:clamp(22px,5vw,34px);position:relative;overflow:auto;box-shadow:inset 0 1px #ffffffe0,0 34px 96px #060c0e61,0 10px 28px #2f73731c}.topic-focus-dialog-horizontal{isolation:isolate;background:radial-gradient(circle at 100% 0,#2f737312,#0000 34%),linear-gradient(#fffef9fe,#fbf9f2fb);border-color:#24201c24;width:min(920px,100vw - 24px);padding-inline:clamp(22px,5vw,42px);box-shadow:inset 0 1px #ffffffd6,0 28px 82px #080c0e57,0 10px 28px #2f4e4a17}.topic-focus-dialog-horizontal:before{content:"";z-index:0;border-radius:inherit;background-image:var(--topic-reading-texture,none);mix-blend-mode:multiply;opacity:.045;pointer-events:none;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.topic-focus-dialog-horizontal[data-topic-number="1"]:before{opacity:.04}.topic-focus-dialog-horizontal[data-topic-number="2"]:before{opacity:.05}.topic-focus-dialog-horizontal[data-topic-number="3"]:before{opacity:.06}.topic-focus-dialog-inner{opacity:1;transform-origin:50%;min-height:100%;transition:opacity .22s var(--topic-focus-ease), transform .28s var(--topic-focus-ease);transform:scale(1)}.topic-focus-dialog-horizontal .topic-focus-dialog-inner{z-index:1;position:relative;transform:scale(1.012)}.topic-focus-overlay-closing .topic-focus-dialog{opacity:0;transform:var(--topic-dialog-exit-transform)}.topic-focus-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin:-4px 0 18px;display:flex}.topic-focus-close,.topic-reading-toggle{color:#354047c2;background:#fffdf8bd;border:1px solid #24201c1a;border-radius:11px;justify-content:center;align-items:center;min-height:34px;padding:0 10px;font-size:.76rem;font-weight:760;line-height:1;display:inline-flex}.topic-focus-close{gap:5px}.topic-reading-toggle{color:#235a5cdb;letter-spacing:0;background:linear-gradient(#fffdf8e0,#f3f9f6a3);border-color:#2f737326}.topic-reading-toggle[aria-pressed=true]{color:var(--color-secondary-dark);background:linear-gradient(#f8fdfbf0,#e8f6f1c7);border-color:#2f737347}.topic-focus-close:hover,.topic-focus-close:focus-visible,.topic-reading-toggle:hover,.topic-reading-toggle:focus-visible{color:var(--color-secondary-dark);border-color:#2f737342;outline:none;box-shadow:0 0 0 3px #2f73731a}.topic-focus-heading{grid-template-columns:44px minmax(0,1fr);align-items:start;gap:14px;padding-right:0;display:grid}.topic-focus-number{width:42px;min-height:42px;color:var(--color-secondary-dark);background:#eef8f6ad;border:1px solid #2f737333;place-items:center;font-size:.9rem;font-weight:880;line-height:1;display:grid}.topic-focus-heading p{color:#2f7373c2;letter-spacing:.08em;margin:1px 0 5px;font-size:.74rem;font-weight:830;line-height:1}.topic-focus-heading h2{color:var(--color-text);word-break:keep-all;overflow-wrap:anywhere;text-wrap:balance;margin:0;font-size:clamp(1.42rem,6vw,2.08rem);line-height:1.18}.topic-focus-text{max-width:min(36ch,100%);color:var(--color-text);white-space:pre-line;overflow-wrap:anywhere;word-break:keep-all;line-break:strict;text-wrap:pretty;transition:max-width .26s var(--topic-focus-ease), line-height .26s var(--topic-focus-ease), font-size .26s var(--topic-focus-ease);margin:22px 0 0;font-size:clamp(1.08rem,4vw,1.28rem);font-weight:680;line-height:1.72}.topic-focus-dialog-horizontal .topic-focus-text{letter-spacing:.005em;max-width:min(54ch,100%);font-size:clamp(1.2rem,2.2vw,1.44rem);font-weight:620;line-height:1.8}.topic-focus-dialog-horizontal .topic-focus-heading h2{line-break:strict;font-size:clamp(1.5rem,3.2vw,2rem);line-height:1.32}@keyframes topic-focus-overlay-enter{0%{opacity:0}to{opacity:1}}@keyframes topic-focus-overlay-exit{0%{opacity:1}to{opacity:0}}@keyframes topic-focus-card-enter{0%{opacity:0;transform:var(--topic-dialog-enter-transform)}to{opacity:1;transform:var(--topic-dialog-rest-transform)}}@keyframes topic-focus-card-exit{0%{opacity:1;transform:var(--topic-dialog-rest-transform)}to{opacity:0;transform:var(--topic-dialog-exit-transform)}}@media (width<=640px){.topic-focus-dialog-horizontal{--topic-dialog-enter-transform:translate(-50%, -50%) rotate(90deg) scale(.985);--topic-dialog-rest-transform:translate(-50%, -50%) rotate(90deg) scale(1);--topic-dialog-exit-transform:translate(-50%, -50%) rotate(90deg) scale(.99);box-sizing:border-box;width:calc(100dvh - 88px);width:calc(var(--topic-viewport-height,100dvh) - 88px);height:calc(100dvw - 40px);height:calc(var(--topic-viewport-width,100dvw) - 40px);transform-origin:50%;-webkit-overflow-scrolling:touch;border-radius:20px;flex-shrink:0;max-width:none;max-height:none;padding:18px 20px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)rotate(90deg)scale(1)}.topic-focus-overlay-closing .topic-focus-dialog-horizontal{transform:translate(-50%,-50%)rotate(90deg)scale(.99)}.topic-focus-dialog-horizontal .topic-focus-controls{z-index:2;writing-mode:horizontal-tb;text-orientation:mixed;background:linear-gradient(#fffef9fa,#fffef9db 72%,#0000);margin:-2px 0 14px;padding-bottom:10px;position:sticky;top:0}.topic-focus-dialog-horizontal .topic-reading-toggle,.topic-focus-dialog-horizontal .topic-focus-close{color:#2c4948c2;white-space:nowrap;writing-mode:horizontal-tb;text-orientation:mixed;background:#fffef9b8;border-color:#2f585424;border-radius:999px;min-height:42px;padding-inline:11px;font-size:.72rem;box-shadow:inset 0 1px #ffffffad,0 7px 18px #1c26220e}.topic-focus-dialog-horizontal .topic-focus-heading{grid-template-columns:34px minmax(0,1fr);gap:10px}.topic-focus-dialog-horizontal .topic-focus-number{background:#f1f9f694;border-color:#2f737324;width:31px;min-height:31px;font-size:.8rem}.topic-focus-dialog-horizontal .topic-focus-heading h2{font-size:clamp(1.42rem,6.2vw,1.86rem);font-weight:720}.topic-focus-dialog-horizontal .topic-focus-heading p{color:#2f6865ad;font-size:.68rem}.topic-focus-dialog-horizontal .topic-focus-text{max-width:min(52ch,100%);font-size:clamp(1.22rem,5.2vw,1.42rem);line-height:1.78}}@media (width<=430px){.topic-focus-overlay{padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom))}.topic-focus-dialog{border-radius:20px;width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:22px 18px}.topic-focus-dialog-horizontal{width:calc(100dvh - 88px);width:calc(var(--topic-viewport-height,100dvh) - 88px);height:calc(100dvw - 40px);height:calc(var(--topic-viewport-width,100dvw) - 40px);max-width:none;max-height:none;padding:16px 18px}.topic-focus-controls{justify-content:space-between;margin:-2px 0 16px}.topic-reading-toggle,.topic-focus-close{min-height:44px}.topic-focus-heading{grid-template-columns:36px minmax(0,1fr);gap:11px;padding-right:0}.topic-focus-number{width:34px;min-height:34px}.topic-focus-text{margin-top:18px}}@media (width<=640px){.topic-focus-overlay .topic-focus-dialog.topic-focus-dialog-horizontal{transition:opacity var(--topic-focus-close-duration) var(--topic-focus-ease), width .26s var(--topic-focus-ease), height .26s var(--topic-focus-ease), padding .22s var(--topic-focus-ease), border-color .22s var(--topic-focus-ease), box-shadow .22s var(--topic-focus-ease);padding:28px 32px 26px 36px;transform:translate(-50%,-50%)rotate(90deg)scale(1)}.topic-focus-overlay-closing .topic-focus-dialog.topic-focus-dialog-horizontal{transform:translate(-50%,-50%)rotate(90deg)scale(.99)}.topic-focus-overlay .topic-focus-dialog-horizontal .topic-focus-heading h2{font-size:clamp(24px,6.35vw,26px);line-height:1.34}.topic-focus-overlay .topic-focus-dialog-horizontal .topic-focus-controls{margin:-4px 0 18px;padding-bottom:12px}.topic-focus-overlay .topic-focus-dialog-horizontal .topic-focus-text{max-width:min(54ch,100%);font-size:clamp(21px,5.65vw,23px);line-height:1.78}}@media (prefers-reduced-motion:reduce){.topic-focus-overlay,.topic-focus-dialog,.topic-focus-dialog-inner{-webkit-backdrop-filter:none;backdrop-filter:none;transition-duration:.01ms!important;animation:none!important;transform:none!important}.topic-focus-dialog{opacity:1!important;transform:var(--topic-dialog-rest-transform)!important}}
