:root{--font-body:"Noto Sans TC", "Noto Sans JP", "Noto Sans", sans-serif;--font-heading:"Noto Sans TC", "Noto Sans JP", "Noto Sans", sans-serif;--font-mono:"IBM Plex Mono", Consolas, monospace;--bg:#313338;--bg-soft:#2b2d31d1;--bg-card:#1e1f22b8;--surface:#2b2d31e0;--line:#ffffff0f;--line-strong:#ffffff1f;--text:#f2f3f5;--text-soft:#b9bbbe;--text-muted:#6d757e;--accent:#7289da;--accent-strong:#5865f2;--accent-wash:#5865f224;--accent-line:#5865f247;--glass-highlight:#ffffff0d;--shadow:0 24px 60px #0000005c;--timeline-rail-start:#ffffff70;--timeline-rail-mid:#fff3;--timeline-rail-end:#ffffff0f;--timeline-node-bg:#6b6d72;--timeline-node-ring:#6b6d72;--timeline-node-hover-bg:#a8aaad;--timeline-node-hover-ring:#a8aaad;--timeline-node-hover-glow:#ffffff29;--timeline-date-bg:#ffffff0e;--timeline-date-line:#ffffff1f;--timeline-date-text:#d9dcdf;--timeline-date-hover-bg:#ffffff17;--timeline-date-hover-line:#fff3;--timeline-card-line:#ffffff1a;--timeline-card-shadow:0 16px 34px #00000038;--radius-xl:28px;--radius-lg:22px;--radius-md:16px;--radius-sm:12px;color:var(--text);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#2e2e2eb3;line-height:1.5}:root[data-theme=light]{--bg:#f2f3f5;--bg-soft:#ffffffe6;--bg-card:#ffffffd1;--surface:#ffffffb8;--line:#4f545c1f;--line-strong:#4f545c38;--text:#2e3338;--text-soft:#4f545c;--text-muted:#72767d;--accent:#5865f2;--accent-strong:#4752c4;--accent-wash:#5865f21a;--accent-line:#5865f238;--glass-highlight:#ffffffb3;--shadow:0 22px 48px #4f545c29;--timeline-rail-start:#4f545c8c;--timeline-rail-mid:#4f545c61;--timeline-rail-end:#4f545c3d;--timeline-node-bg:#bbbcc1;--timeline-node-ring:#bbbcc1;--timeline-node-hover-bg:#8d9096;--timeline-node-hover-ring:#8d9096;--timeline-node-hover-glow:#4f545c33;--timeline-date-bg:#fffffff0;--timeline-date-line:#4f545c42;--timeline-date-text:#2e3338;--timeline-date-hover-bg:#fffffffa;--timeline-date-hover-line:#4f545c61;--timeline-card-line:#4f545c33;--timeline-card-shadow:0 12px 28px #4f545c26;background:#f2f3f5b3}*{box-sizing:border-box}html,body,#root,.app-shell-root{min-height:100%}.app-shell-root{overflow-x:clip}body{min-height:100dvh;color:var(--text);letter-spacing:.01em;background:0 0;margin:0}body,button,input,select,textarea{font-family:var(--font-body)}button,input,select{font:inherit}a{color:inherit}button{cursor:pointer}.app-shell{width:min(1280px,100%);margin:0 auto;padding:10px}.app-shell--viewer{padding:0;position:relative}.app-shell--admin{width:min(1320px,100%)}.viewer-layout{flex-direction:column;gap:0;display:flex}.admin-panel{flex-direction:column;gap:12px;display:flex}.countdown,.schedule-canvas,.admin-card,.admin-panel,.event-modal__dialog{border:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(22px)saturate(112%);backdrop-filter:blur(22px)saturate(112%);box-shadow:var(--shadow)}.admin-panel{border-radius:var(--radius-xl);padding:14px}.schedule-canvas,.countdown,.admin-card{border-radius:var(--radius-lg);padding:14px}.schedule-canvas{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:0 0;border:none;padding:10px}.countdown{border-radius:0 0 var(--radius-lg) var(--radius-lg);margin:0 0 8px}.app-header{z-index:50;border:1px solid var(--line-strong);border-radius:var(--radius-lg);width:84px;box-shadow:0 8px 28px #00000052, inset 0 1px 0 var(--glass-highlight);-webkit-backdrop-filter:blur(28px)saturate(140%);backdrop-filter:blur(28px)saturate(140%);opacity:.15;background:#ffffff0f;flex-direction:column;gap:6px;padding:8px;transition:opacity .2s;display:flex;position:fixed;top:16px;right:16px}:root[data-theme=light] .app-header{background:#ffffffc2;box-shadow:0 4px 20px #5b656024,inset 0 1px #ffffffe6}.app-header:hover,.app-header:focus-within{opacity:1}.app-header .select-field,.app-header .icon-button{width:100%;min-width:0;min-height:40px}.header-refresh{flex-direction:column;align-items:center;gap:2px;display:flex}.header-refresh__label{opacity:.6;text-align:center;word-break:keep-all;font-size:9px;line-height:1.2}.is-spinning{animation:.9s linear infinite spin}.app-header__top,.admin-panel__hero,.countdown,.event-card__footer,.toolbar,.admin-card__head{justify-content:space-between;align-items:start;gap:12px;display:flex}.brand,.admin-panel__hero>div:first-child{max-width:42rem}.brand--compact h1{letter-spacing:-.02em;font-size:clamp(1.16rem,.98rem + .72vw,1.42rem)}.eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:700}.brand h1,.admin-panel h1,.empty-state h2,.event-modal__dialog h2{font-family:var(--font-heading);letter-spacing:-.03em;margin:0;font-size:clamp(2rem,1.4rem + 2vw,3.05rem);font-weight:700;line-height:1.03}.brand p,.admin-panel p,.timeline-day__meta,.status-note,.empty-state p,.detail-block p{color:var(--text-soft)}.status-cluster,.admin-panel__status{flex-direction:column;align-items:end;gap:10px;display:flex}.status-badge,.source-badge,.chip,.event-card__category,.countdown__pill,.detail-chip,.event-card__linkButton{border-radius:999px;align-items:center;gap:8px;min-height:32px;padding:0 12px;font-size:.83rem;font-weight:600;display:inline-flex}.status-badge,.source-badge,.chip,.countdown__pill,.detail-chip,.event-card__linkButton,.button,.segmented__button,.select-field,.event-drawer__close,.event-drawer__link{border:1px solid var(--line);color:var(--text);background:#ffffff06}.status-note{text-align:right;margin:0}.toolbar,.toolbar__group,.admin-chip-grid,.detail-links{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.button,.segmented__button,.select-field,.event-drawer__close,.event-drawer__link,.event-card__linkButton{border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(16px)saturate(115%);backdrop-filter:blur(16px)saturate(115%);min-height:44px;padding:0 14px;text-decoration:none;transition:border-color .18s,background-color .18s,transform .18s,box-shadow .18s,opacity .18s}.icon-button{justify-content:center;width:44px;min-width:44px;padding:0}.ui-icon{flex:none;width:18px;height:18px}.button:hover,.segmented__button:hover,.select-field:hover,.text-input:hover,.text-area:hover,.event-drawer__close:hover,.event-drawer__link:hover,.event-card__linkButton:hover,.button:focus-visible,.segmented__button:focus-visible,.select-field:focus-visible,.text-input:focus-visible,.text-area:focus-visible,.event-drawer__close:focus-visible,.event-drawer__link:focus-visible,.event-card__content:focus-visible,.event-card__linkButton:focus-visible,.chip:focus-visible{border-color:var(--accent-strong);box-shadow:0 0 0 3px var(--accent-wash);outline:none}.button:hover,.segmented__button:hover,.select-field:hover,.event-drawer__close:hover,.event-drawer__link:hover,.event-card__linkButton:hover,.button:focus-visible,.segmented__button:focus-visible,.select-field:focus-visible,.event-drawer__close:focus-visible,.event-drawer__link:focus-visible,.event-card__linkButton:focus-visible{background:#ffffff1a}.button:active,.segmented__button:active,.chip:active,.event-card__content:active,.event-card__linkButton:active{transform:scale(.985)}.button--solid,.segmented__button.is-active,.chip.is-active,.button--link{border-color:var(--accent-line);color:var(--accent-strong);box-shadow:inset 0 1px 0 var(--glass-highlight);background:linear-gradient(#ffffff29 0%,#ffffff0f 100%)}.button--ghost{background:0 0}.text-input,.text-area,.checkbox-field{border:1px solid var(--line);color:var(--text);background:#ffffff08}.text-input,.text-area{border-radius:var(--radius-sm);width:100%;min-height:44px;padding:10px 14px}.text-area{resize:vertical;min-height:96px}.field{gap:6px;min-width:0;display:grid}.field span{color:var(--text-soft);font-size:.82rem}.field--wide{grid-column:1/-1}.checkbox-field{border-radius:var(--radius-sm);align-items:center;gap:10px;min-height:44px;padding:0 14px;display:inline-flex}.checkbox-field input{width:16px;height:16px;accent-color:var(--accent-strong)}.select-field{appearance:none;background:linear-gradient(45deg, transparent 50%, var(--text-soft) 50%) calc(100% - 18px) calc(50% - 3px) / 8px 8px no-repeat, linear-gradient(135deg, var(--text-soft) 50%, transparent 50%) calc(100% - 12px) calc(50% - 3px) / 8px 8px no-repeat, #ffffff06;padding-right:40px}.select-field option{color:var(--text);background:var(--bg)}.segmented{border-radius:calc(var(--radius-sm) + 6px);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff04;border:1px solid #ffffff0a;gap:8px;padding:4px;display:inline-flex}.segmented__button,.select-field{min-width:96px}.segmented__button.icon-button{width:44px;min-width:44px}.countdown{background:linear-gradient(180deg, #ffffff08, #ffffff04), var(--surface);align-items:center}.countdown__summary{gap:6px;display:grid}.countdown strong{font-size:clamp(1.04rem,.92rem + .42vw,1.24rem);font-weight:600;line-height:1.12;display:block}.countdown__facts,.event-card__facts{flex-wrap:wrap;gap:6px 10px;display:flex}.countdown__fact,.event-card__fact{min-height:20px;color:var(--text-soft);align-items:center;gap:6px;font-size:.88rem;display:inline-flex}.countdown__fact .ui-icon,.event-card__fact .ui-icon{color:var(--accent)}.ctrl-dropdown{position:relative}.ctrl-dropdown__trigger{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;min-height:40px;color:var(--text);cursor:pointer;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff06;justify-content:space-between;align-items:center;gap:4px;padding:0 10px;font-size:.83rem;font-weight:500;transition:border-color .18s,background .18s;display:flex}.ctrl-dropdown__trigger:hover,.ctrl-dropdown__trigger:focus-visible{border-color:var(--accent-strong);box-shadow:0 0 0 3px var(--accent-wash);background:#ffffff1a;outline:none}.ctrl-dropdown__label{white-space:nowrap;text-overflow:ellipsis;text-align:left;flex:1;overflow:hidden}.ctrl-dropdown__caret{flex:none;width:14px;height:14px;transition:transform .18s}.ctrl-dropdown__caret.is-open{transform:rotate(180deg)}.ctrl-dropdown__menu{border:1px solid var(--line-strong);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(32px)saturate(150%);backdrop-filter:blur(32px)saturate(150%);z-index:100;background:#121516f5;min-width:120px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #0006}:root[data-theme=light] .ctrl-dropdown__menu{background:#f2f4f1fa;box-shadow:0 8px 24px #59625c33}.ctrl-dropdown__item{border-radius:calc(var(--radius-md) - 4px);min-height:36px;color:var(--text-soft);cursor:pointer;white-space:nowrap;align-items:center;padding:0 12px;font-size:.88rem;transition:background .14s,color .14s;display:flex}.ctrl-dropdown__item:hover,.ctrl-dropdown__item:focus-visible{color:var(--text);background:#ffffff14;outline:none}:root[data-theme=light] .ctrl-dropdown__item:hover,:root[data-theme=light] .ctrl-dropdown__item:focus-visible{background:#0000000f}.ctrl-dropdown__item.is-active{color:var(--accent-strong);font-weight:600}.timeline,.list-view{flex-direction:column;gap:10px;display:flex}.timeline{position:relative}.timeline__rail{background:linear-gradient(180deg, var(--timeline-rail-start) 0%, var(--timeline-rail-mid) 34%, var(--timeline-rail-end) 78%, transparent 100%);pointer-events:none;z-index:0;width:2px;position:absolute;top:14px;bottom:14px;left:8px;box-shadow:0 0 0 1px #ffffff06}.timeline-day{gap:8px;padding-left:24px;display:grid;position:relative}.timeline-day+.timeline-day{padding-top:12px}.timeline-day__heading{align-items:center;min-height:26px;display:flex;position:relative}.timeline-day__heading:before{content:"";background:var(--timeline-node-bg);width:10px;height:10px;box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--timeline-node-ring), 0 6px 16px #0003;z-index:1;border-radius:999px;transition:box-shadow .2s,transform .2s,background .2s;position:absolute;top:50%;left:-20px;transform:translateY(-50%)}.timeline-day__heading h2{border:1px solid var(--timeline-date-line);background:var(--timeline-date-bg);min-height:26px;color:var(--timeline-date-text);letter-spacing:0;box-shadow:inset 0 1px 0 var(--glass-highlight);border-radius:999px;margin:0;padding:4px 10px;font-size:.78rem;font-weight:650;line-height:1.25;transition:border-color .2s,box-shadow .2s,color .2s,background .2s}.timeline-day__meta{margin:0}.event-list,.list-view__grid{gap:8px;display:grid}.list-view__grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.event-card{border:1px solid var(--timeline-card-line);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--bg-card);height:112px;box-shadow:var(--timeline-card-shadow);grid-template-columns:5px minmax(0,1fr);transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;position:relative;overflow:visible}.event-card__accent{border-radius:0;transition:filter .2s,opacity .2s}.event-card__body{flex-direction:column;gap:6px;height:100%;padding:8px;display:flex;position:relative}.event-card__content{height:100%;color:inherit;text-align:left;background:0 0;border:0;flex-direction:column;justify-content:flex-start;gap:6px;padding:0;display:flex}.event-card--hasLink .event-card__content{padding-top:0}.event-card__header{gap:3px;padding-right:44px;display:grid}.event-card__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.88rem;line-height:1.22;display:-webkit-box;overflow:hidden}.event-card__location{color:var(--text-soft);align-items:center;gap:4px;font-size:.76rem;line-height:1.25;display:inline-flex}.event-card__location .ui-icon{width:14px;height:14px;color:var(--accent)}.event-card__locationText{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.event-card__facts{gap:4px 8px;margin-top:auto}.event-card__linkButton{z-index:1;border-radius:999px;justify-content:center;width:32px;min-width:32px;min-height:32px;padding:0;position:absolute;top:8px;left:auto;right:8px}.brand.brand--compact h1{font-size:clamp(1.16rem,.98rem + .72vw,1.42rem)}.event-card__tooltip{left:var(--tooltip-left,8px);width:var(--tooltip-width,min(320px, calc(100vw - 32px)));border-radius:var(--radius-md);border:1px solid var(--line-strong);max-width:calc(100vw - 32px);color:var(--accent-strong);opacity:0;z-index:2;pointer-events:none;background:#0e1112f7;padding:14px;transition:opacity .16s,transform .16s;position:absolute;bottom:calc(100% + 10px);transform:translateY(8px);box-shadow:0 20px 44px #0006}:root[data-theme=light] .event-card__tooltip{color:var(--text);background:#fffffffa;box-shadow:0 18px 42px #4f545c33,inset 0 1px #ffffffe6}.event-card__tooltipImage{aspect-ratio:16/9;object-fit:cover;border-radius:12px;width:100%;margin-bottom:10px;display:block}.event-card__tooltip p{color:inherit;margin:0;font-size:.88rem}@media (hover:hover) and (pointer:fine){.timeline-day:has(.event-card:hover) .timeline-day__heading:before{background:var(--timeline-node-hover-bg);box-shadow:0 0 0 3px var(--bg), 0 0 0 6px var(--timeline-node-hover-ring), 0 0 16px 3px var(--timeline-node-hover-glow);transition:box-shadow .2s,transform .2s,background .2s;transform:translateY(-50%)scale(1.25)}.timeline-day:has(.event-card:hover) .timeline-day__heading h2{border-color:var(--timeline-date-hover-line);background:var(--timeline-date-hover-bg);color:var(--text)}.event-card:hover{border-color:var(--timeline-date-hover-line);z-index:10;transform:translateY(-1px);box-shadow:0 10px 28px #0000004d}:root[data-theme=light] .event-card:hover{box-shadow:0 10px 28px #4f545c2e}.event-card:hover .event-card__accent{filter:brightness(1.5)saturate(1.3);opacity:1}.event-card:hover .event-card__tooltip,.event-card:focus-within .event-card__tooltip{opacity:1;transform:translateY(0)}}.empty-state{gap:12px;padding:8px;display:grid}.empty-state p,.empty-state h2{margin:0}.admin-workbench{grid-template-columns:minmax(250px,.85fr) minmax(0,1.85fr);align-items:start;gap:16px;display:grid}.admin-sidebar,.admin-stage{align-items:start;gap:16px;display:grid}.admin-stage{grid-template-columns:minmax(300px,.9fr) minmax(0,1.3fr)}.admin-panel{gap:18px}.admin-card{gap:14px;display:grid}.admin-card__head{align-items:center}.admin-event-list{gap:8px;max-height:calc(100dvh - 220px);padding-right:4px;display:grid;overflow:auto}.admin-eventRow{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--bg-card);width:100%;color:var(--text);text-align:left;grid-template-columns:10px minmax(0,1fr);gap:10px;padding:12px;display:grid}.admin-eventRow__swatch{border-radius:999px;width:10px}.admin-eventRow__body{gap:4px;min-width:0;display:grid}.admin-eventRow__body strong{font-size:.92rem;line-height:1.25}.admin-eventRow__meta{color:var(--text-soft);gap:2px;font-size:.81rem;display:grid}.admin-eventRow.is-active{border-color:var(--accent-strong);box-shadow:0 0 0 3px var(--accent-wash)}.admin-form{gap:16px;display:grid}.admin-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-form__error{border-radius:var(--radius-sm);color:#f0b8a4;background:#d374521a;border:1px solid #d3745252;margin:0;padding:10px 12px}:root[data-theme=light] .admin-form__error{color:#944920;background:#c7793914}.admin-links{gap:12px;display:grid}.admin-links__row{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) 44px;align-items:end;gap:10px;display:grid}.admin-form__actions{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.event-modal{z-index:40;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.event-modal__scrim{background:#02070f94;position:absolute;inset:0}.event-modal__dialog{z-index:1;border-radius:var(--radius-xl);width:min(720px,100vw - 36px);max-height:calc(100dvh - 36px);padding:20px;position:relative;overflow:auto}.event-modal__image{aspect-ratio:16/9;border-radius:var(--radius-lg);object-fit:cover;width:100%;margin-bottom:18px;display:block}.event-drawer__top{justify-content:space-between;align-items:start;gap:14px;display:flex}.event-drawer__close{min-width:44px}.detail-stack{gap:14px;margin-top:18px;display:grid}.detail-block{gap:6px;display:grid}.detail-block h3{margin:0;font-size:.96rem}.detail-links{gap:10px}.event-drawer__link{align-items:center;display:inline-flex}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=820px){.app-shell,.app-shell--admin{padding:8px}.app-shell--viewer{padding:0}.admin-panel,.schedule-canvas,.countdown,.admin-card,.event-modal__dialog{padding:12px}.app-header{width:80px;padding:6px;top:12px;right:12px}.admin-panel__hero,.countdown,.toolbar,.toolbar__group,.admin-card__head,.status-cluster,.admin-panel__status,.event-card__top{flex-direction:column;align-items:stretch}.segmented,.toolbar__group{width:100%}.segmented{width:auto}.admin-workbench,.admin-stage,.admin-form__grid,.admin-links__row{grid-template-columns:1fr}.segmented__button:not(.icon-button),.button:not(.icon-button){width:100%}.countdown__facts,.event-card__facts{flex-direction:column;align-items:start}.event-card{height:120px}.admin-event-list{max-height:none}.status-note{text-align:left}.event-modal{padding:12px}}.landing-root{justify-content:center;align-items:center;min-height:100dvh;padding:24px 16px;display:flex;position:relative}.landing-top-bar{align-items:center;gap:8px;display:flex;position:fixed;top:16px;right:16px}.landing-locale-switcher{border:1px solid var(--line-strong);border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0f;align-items:center;gap:2px;padding:3px;display:flex}.landing-locale-btn{border-radius:calc(var(--radius-sm) - 2px);color:var(--text-soft);cursor:pointer;background:0 0;border:none;padding:4px 10px;font-size:12px;font-weight:500;transition:color .15s,background .15s}.landing-locale-btn:hover{color:var(--text);background:var(--accent-wash)}.landing-locale-btn.is-active{background:var(--accent);color:var(--bg)}.landing-theme-btn{border-radius:var(--radius-sm);border:1px solid var(--line-strong);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:40px;height:40px;color:var(--text-soft);background:#ffffff0f;justify-content:center;align-items:center;transition:color .15s,background .15s;display:flex}.landing-theme-btn:hover{color:var(--text);background:var(--accent-wash)}.landing-card{border:1px solid var(--line-strong);background:var(--surface);-webkit-backdrop-filter:blur(28px)saturate(130%);backdrop-filter:blur(28px)saturate(130%);width:min(520px,100%);box-shadow:var(--shadow);border-radius:var(--radius-xl);flex-direction:column;gap:16px;padding:40px 36px;display:flex}@media (width<=480px){.landing-card{padding:28px 20px}}.landing-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin:0;font-size:11px}.landing-title{color:var(--text);margin:0;font-size:clamp(1.6rem,5vw,2.2rem);font-weight:700;line-height:1.2}.landing-desc{color:var(--text-soft);margin:0;font-size:14px;line-height:1.6}.landing-form{flex-direction:column;gap:12px;margin-top:4px;display:flex}.landing-input-wrap{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg-card);align-items:stretch;transition:border-color .15s;display:flex;overflow:hidden}.landing-input-wrap:focus-within{border-color:var(--accent)}.landing-input-prefix{color:var(--text-muted);background:var(--accent-wash);border-right:1px solid var(--line-strong);white-space:nowrap;align-items:center;padding:0 10px;font-size:12px;display:flex}.landing-input{min-width:0;color:var(--text);background:0 0;border:none;outline:none;flex:1;padding:11px 12px;font-size:15px}.landing-input::placeholder{color:var(--text-muted)}.landing-btn{border-radius:var(--radius-sm);background:var(--accent);color:var(--bg);letter-spacing:.03em;cursor:pointer;border:none;padding:12px 20px;font-size:14px;font-weight:600;transition:background .15s,opacity .15s}.landing-btn:hover:not(:disabled){background:var(--accent-strong)}.landing-btn:disabled{opacity:.35;cursor:default}.landing-hint{color:var(--text-muted);margin:0;font-size:12px;line-height:1.6}.landing-hint code{font-family:var(--font-mono);background:var(--accent-wash);border-radius:4px;padding:1px 5px}.refresh-progress{z-index:100;background:linear-gradient(90deg, transparent 0%, var(--accent) 30%, var(--accent) 70%, transparent 100%);background-size:200% 100%;height:2px;animation:1.4s ease-in-out infinite refresh-sweep;position:sticky;top:0;left:0;right:0}@keyframes refresh-sweep{0%{background-position:200% 0}to{background-position:-200% 0}}.loading-state{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:80px 20px;font-size:14px;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner{border:2px solid var(--line-strong);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin;display:block}.error-state{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:60px 20px;display:flex}.error-state__title{color:#e07070;margin:0;font-size:16px;font-weight:600}.error-state__body{color:var(--text-muted);font-size:13px;font-family:var(--font-mono);word-break:break-all;max-width:420px;margin:0}.error-state__retry{border-radius:var(--radius-sm);border:1px solid var(--line-strong);color:var(--text-soft);cursor:pointer;background:0 0;margin-top:8px;padding:8px 20px;font-size:13px;transition:background .15s}.error-state__retry:hover{background:var(--accent-wash)}
