@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-md:.375rem;--radius-lg:.5rem;--default-font-family:var(--font-family-sans);--default-mono-font-family:var(--font-family-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--page-gutter:16px;--page-gutter-tight:12px;--content-max:480px;--sticky-top:0px;--results-top-height:61px;--touch-target:44px;--floating-filter-size:48px;--floating-filter-gap:16px;--floating-filter-edge-offset:20px;--floating-filter-clearance:calc(var(--floating-filter-size) + (var(--floating-filter-gap) * 2) + env(safe-area-inset-bottom));--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--font-family-sans:"Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "맑은 고딕", system-ui, sans-serif;--font-family-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--font-size-caption:12px;--font-size-small:13px;--font-size-meta:14px;--font-size-body:15px;--font-size-control:15px;--font-size-calendar-event:10.5px;--font-size-title:17px;--font-size-sheet-title:18px;--font-size-detail-title:22px;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-heavy:800;--color-bg:#f8fafc;--color-surface:#fff;--color-surface-muted:#f1f5f9;--color-border:#d8dee6;--color-border-strong:#aab4c2;--color-text:#111827;--color-text-muted:#475569;--color-text-subtle:#64748b;--color-primary:#111827;--color-primary-text:#fff;--color-focus:#2563eb;--color-danger:#dc2626;--color-danger-bg:#fef2f2;--color-success:#15803d;--color-success-bg:#f0fdf4;--shadow-card:0 1px 2px #0f172a0d;--shadow-card-hover:0 4px 14px #0f172a14}*{box-sizing:border-box}html{background:var(--color-bg);overscroll-behavior-y:none;min-height:100%}body{background:var(--color-bg);min-height:100%;color:var(--color-text);font-family:var(--font-family-sans);font-size:var(--font-size-body);font-weight:var(--font-weight-regular);letter-spacing:0;overscroll-behavior-y:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}html,body,.condition-chip-row,.filter-content,.poster-zoom-scroll{scrollbar-gutter:auto;scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{width:0;height:0;display:none}body::-webkit-scrollbar{width:0;height:0;display:none}.condition-chip-row::-webkit-scrollbar{width:0;height:0;display:none}.filter-content::-webkit-scrollbar{width:0;height:0;display:none}.poster-zoom-scroll::-webkit-scrollbar{width:0;height:0;display:none}html.filter-open,body.filter-open{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{font:inherit}button:disabled{cursor:not-allowed}.app-shell,.detail-shell{width:min(100%, var(--content-max));background:var(--color-bg);min-height:100vh;margin:0 auto}.results-screen{min-height:100vh;padding-bottom:var(--floating-filter-clearance);position:relative}.results-screen.is-background-hidden{pointer-events:none;padding-bottom:0}.results-top{top:var(--sticky-top);z-index:20;min-height:var(--results-top-height);gap:var(--space-2);padding:var(--space-2) var(--page-gutter);background:var(--color-bg);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;position:sticky}@supports (color:color-mix(in lab, red, red)){.results-top{background:color-mix(in srgb, var(--color-bg) 92%, white)}}.results-top{border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.condition-chip-row{gap:var(--space-2);min-width:0;display:flex;overflow-x:auto}.condition-chip{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);min-height:40px;color:var(--color-text);font-size:var(--font-size-small);font-weight:var(--font-weight-semibold);flex:none;padding:0 12px;line-height:18px;transition:border-color .15s,background-color .15s}.view-mode-toggle{width:var(--touch-target);grid-template-columns:var(--touch-target);gap:var(--space-1);justify-self:end;display:grid}.view-mode-button{width:var(--touch-target);height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);place-items:center;transition:border-color .15s,background-color .15s,transform .15s;display:grid}.view-mode-icon{background-position:50%;background-repeat:no-repeat;background-size:contain;width:21px;height:21px;display:block}.view-mode-button.is-calendar .view-mode-icon{background-image:url(/calendar.svg)}.view-mode-button.is-list .view-mode-icon{background-image:url(/list.svg)}.filter-icon-button{right:max(var(--floating-filter-edge-offset), calc((100vw - var(--content-max)) / 2 + var(--floating-filter-edge-offset)));bottom:calc(var(--floating-filter-edge-offset) + env(safe-area-inset-bottom));z-index:30;width:var(--floating-filter-size);height:var(--floating-filter-size);border:1px solid var(--color-border);background:var(--color-primary);box-shadow:none;border-radius:50%;place-items:center;transition:background-color .15s,transform .15s;display:grid;position:fixed}.filter-icon-button img{filter:invert();width:21px;height:21px}.condition-chip:active,.view-mode-button:active,.filter-icon-button:active{transform:translateY(1px)}.calendar-month-view{gap:var(--space-2);padding:var(--space-3) 0 var(--space-3);display:grid}.calendar-month-view.is-loading{opacity:.68}.calendar-month-header{align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--page-gutter);grid-template-columns:64px minmax(0,1fr) 64px;display:grid}.calendar-month-header h2{text-align:center;color:var(--color-text);font-size:var(--font-size-title);font-weight:var(--font-weight-bold);margin:0;line-height:24px}.calendar-month-nav{min-height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-small);font-weight:var(--font-weight-semibold);transition:border-color .15s,background-color .15s}.calendar-month-nav:disabled{border-color:var(--color-border);background:var(--color-surface-muted);color:var(--color-text-subtle);opacity:.72}.calendar-weekday-row{color:var(--color-text-subtle);text-align:center;font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);grid-template-columns:repeat(7,minmax(0,1fr));line-height:18px;display:grid}.calendar-error,.timeline-error{margin:0 var(--page-gutter);border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger);padding:var(--space-3);text-align:center;font-size:var(--font-size-small);font-weight:var(--font-weight-semibold);border:1px solid #fecaca;line-height:20px}.calendar-grid{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-border);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.calendar-day-cell{background:var(--color-surface);min-width:0;min-height:102px;color:var(--color-text);text-align:left;border:0;align-content:start;gap:5px;padding:6px 3px;transition:background-color .15s;display:grid;overflow:hidden}.calendar-day-cell:disabled{cursor:default;opacity:1}.calendar-day-cell.is-outside-month{color:var(--color-text-subtle);background:#f8fafc}.calendar-day-cell.is-past-date{color:#94a3b8;background:#f1f5f9}.calendar-day-cell:active{background:var(--color-surface)}.calendar-day-cell.is-outside-month:active{background:#f8fafc}.calendar-day-cell.is-past-date:active{background:#f1f5f9}.calendar-day-cell.is-today{box-shadow:inset 0 0 0 1.5px var(--color-border-strong)}.calendar-day-number{font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);line-height:16px}.calendar-day-events{gap:3px;min-width:0;display:grid}.calendar-event-sample{background:var(--sample-color);border-radius:4px;width:100%;min-width:0;min-height:17px;display:block;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.calendar-event-sample{background:color-mix(in srgb, var(--sample-color) 16%, white)}}.calendar-event-sample{color:var(--sample-color);font-size:var(--font-size-calendar-event);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;padding:2px 3px;line-height:13px}.calendar-event-sample.is-short-title{text-align:center}.calendar-event-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.calendar-event-overflow{color:var(--color-text-muted);font-size:var(--font-size-calendar-event);font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap;text-align:center;line-height:13px;overflow:hidden}.calendar-day-cell.is-past-date .calendar-event-sample{color:#94a3b8;background:#e5e7eb}.calendar-day-cell.is-past-date .calendar-event-overflow{color:#94a3b8}.calendar-contact{gap:var(--space-3);margin:var(--space-6) var(--page-gutter) 0;color:var(--color-text-subtle);display:grid}@supports (color:color-mix(in lab, red, red)){.calendar-contact{color:color-mix(in srgb, var(--color-text-subtle) 82%, white)}}.calendar-contact{text-align:center;font-size:11px;font-weight:var(--font-weight-regular);line-height:16px}.calendar-contact-line{display:block}.calendar-contact-briefing{color:var(--color-text);font-size:16.5px;line-height:22px}.calendar-contact a{color:inherit;text-decoration:none}.calendar-contact-briefing-link{color:inherit;font-size:inherit;font-weight:var(--font-weight-regular);line-height:inherit;border-bottom:1px solid;align-items:center;gap:5px;padding-bottom:1px;text-decoration:none;display:inline-flex}.calendar-contact-briefing-link:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:6px;height:6px;transform:rotate(-45deg)}.calendar-contact a:hover,.calendar-contact a:focus-visible{text-decoration:underline}.calendar-contact a.calendar-contact-briefing-link:hover,.calendar-contact a.calendar-contact-briefing-link:focus-visible{text-decoration:none}.date-section{padding:0 var(--page-gutter)}.date-section-header{top:var(--results-top-height);z-index:10;justify-content:space-between;align-items:center;gap:var(--space-3);margin:0 calc(var(--page-gutter) * -1);padding:var(--space-2) var(--page-gutter);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:var(--font-size-body);font-weight:var(--font-weight-bold);line-height:22px;display:flex;position:sticky}.date-section-header span:last-child{text-align:right;flex:none}.empty-week,.load-more-sentinel{padding:var(--space-5) var(--page-gutter);color:var(--color-text-muted);text-align:center;font-size:var(--font-size-small);font-weight:var(--font-weight-medium);line-height:20px}.pull-load-indicator{top:calc(var(--results-top-height) + var(--space-2));z-index:35;width:max-content;max-width:min(calc(100vw - (var(--page-gutter) * 2)), calc(var(--content-max) - (var(--page-gutter) * 2)));align-items:center;gap:var(--space-2);transform:translateX(-50%) translateY(calc(min(var(--pull-progress), 1) * 6px));border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);display:inline-flex;position:fixed;left:50%}@supports (color:color-mix(in lab, red, red)){.pull-load-indicator{background:color-mix(in srgb, var(--color-surface) 94%, white)}}.pull-load-indicator{box-shadow:var(--shadow-card-hover);color:var(--color-text-muted);opacity:calc(.72 + (min(var(--pull-progress), 1) * .28));pointer-events:none;font-size:var(--font-size-small);font-weight:var(--font-weight-semibold);padding:6px 11px 6px 7px;line-height:20px}.pull-load-mark{background:conic-gradient(var(--color-primary) calc(min(var(--pull-progress), 1) * 1turn), var(--color-border) 0);width:28px;height:28px;color:var(--color-text-muted);border-radius:50%;flex:none;place-items:center;transition:background-color .15s,color .15s;display:grid;position:relative}.pull-load-mark:before{background:var(--color-surface);content:"";border-radius:50%;position:absolute;inset:3px}.pull-load-arrow{z-index:1;width:8px;height:8px;transform:rotate(45deg) rotate(calc(min(var(--pull-progress), 1) * 180deg));border-bottom:2px solid;border-right:2px solid;transition:border-color .15s,transform .12s;position:relative}.pull-load-indicator.is-ready{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-primary-text);opacity:1}.pull-load-indicator.is-ready .pull-load-mark{background:var(--color-primary-text);color:var(--color-primary)}.pull-load-indicator.is-loading{opacity:1}.pull-load-indicator.is-loading .pull-load-mark{background:conic-gradient(var(--color-primary) 0 28%, transparent 28% 66%, var(--color-primary) 66% 100%);animation:.76s linear infinite pull-load-spin}.pull-load-indicator.is-loading .pull-load-arrow{display:none}.pull-load-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@keyframes pull-load-spin{to{transform:rotate(360deg)}}.timeline-error{margin-top:var(--space-3);margin-bottom:var(--space-3)}.time-group-list{gap:var(--space-3);padding:var(--space-3) 0 var(--space-4);display:grid}.time-group{gap:var(--space-2);display:grid}.time-group-label{gap:var(--space-3);min-height:24px;color:var(--color-text);font-size:var(--font-size-small);font-weight:var(--font-weight-semibold);word-break:keep-all;grid-template-columns:auto minmax(0,1fr);align-items:center;line-height:18px;display:grid}.time-group-label:after{content:"";background:var(--color-border);height:1px}.event-card-list{gap:var(--space-3);display:grid}.event-card{content-visibility:auto;contain-intrinsic-size:auto 132px;border:1px solid var(--color-border);border-left:3px solid var(--event-accent);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;box-shadow:var(--shadow-card);gap:10px;padding:14px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.event-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-card-hover)}.event-card:focus-visible,.condition-chip:focus-visible,.filter-icon-button:focus-visible,.view-mode-button:focus-visible,.calendar-month-nav:focus-visible,.calendar-day-cell:focus-visible,.choice-button:focus-visible,.filter-sheet-header button:focus-visible,.step-tab:focus-visible,.source-link-button:focus-visible,.back-link:focus-visible,.admin-shell a:focus-visible,.admin-shell button:focus-visible,.admin-shell input:focus-visible,.admin-shell select:focus-visible,.admin-shell textarea:focus-visible,.admin-raw-details summary:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.event-card-heading{gap:var(--space-3);grid-template-columns:minmax(0,1fr) 26px;align-items:start;display:grid}.event-title{min-width:0;color:var(--color-text);font-size:16px;font-weight:var(--font-weight-bold);margin:0;line-height:23px}.event-card-indicator{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:50%;place-items:center;width:26px;height:26px;display:grid}@supports (color:color-mix(in lab, red, red)){.event-card-indicator{background:color-mix(in srgb, var(--color-surface-muted) 72%, white)}}.event-card-indicator{color:var(--color-text-muted);transition:border-color .15s,background-color .15s,color .15s,transform .15s}.event-card-indicator:before{content:"";border-top:2px solid;border-right:2px solid;width:6px;height:6px;margin-left:-1px;transform:rotate(45deg)}.event-card:hover .event-card-indicator,.event-card:focus-visible .event-card-indicator{border-color:var(--event-accent);background:var(--color-surface);color:var(--event-accent);transform:translate(2px)}.event-meta-list{gap:var(--space-1);margin:0;display:grid}.event-meta-list div{gap:var(--space-2);grid-template-columns:32px minmax(0,1fr);align-items:start;display:grid}.event-meta-list dt{color:var(--color-text-subtle);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);line-height:19px}.event-meta-list dd{min-width:0;color:var(--color-text-muted);font-size:var(--font-size-meta);font-weight:var(--font-weight-medium);margin:0;line-height:20px}.issue-badge-list{gap:var(--space-2);flex-wrap:wrap;margin-top:0;display:flex}.issue-badge{border-radius:var(--radius-pill);background:var(--issue-bg);min-height:24px;color:var(--issue-text);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);align-items:center;padding:0 9px;line-height:18px;display:inline-flex}.empty-state{place-content:center;gap:var(--space-2);min-height:calc(100vh - 84px);padding:var(--space-8) var(--page-gutter);text-align:center;display:grid}.loading-state{align-content:center;place-items:center;gap:var(--space-3);min-height:calc(100vh - 84px);padding:var(--space-8) var(--page-gutter);text-align:center;display:grid}.loading-state-spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:28px;height:28px;animation:.82s linear infinite loading-state-spin}.empty-state h2{font-size:var(--font-size-title);font-weight:var(--font-weight-bold);margin:0;line-height:26px}.loading-state h2{color:var(--color-text);font-size:var(--font-size-title);font-weight:var(--font-weight-bold);margin:0;line-height:26px}.empty-state p{margin:0 0 var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-meta);line-height:22px}.loading-state p{color:var(--color-text-muted);font-size:var(--font-size-meta);margin:0;line-height:22px}@keyframes loading-state-spin{to{transform:rotate(360deg)}}.empty-state button,.source-link-button{border-radius:var(--radius-md);background:var(--color-primary);min-height:48px;color:var(--color-primary-text);font-size:var(--font-size-control);font-weight:var(--font-weight-bold);border:0;padding:0 18px;text-decoration:none;transition:background-color .15s,transform .15s}.empty-state button:active,.source-link-button:active{transform:translateY(1px)}.filter-backdrop{z-index:50;background:#0f172a73;place-items:end center;display:grid;position:fixed;inset:0;overflow:hidden}.filter-sheet{width:min(100%, var(--content-max));height:calc(100dvh - var(--results-top-height));max-height:calc(100dvh - var(--results-top-height));border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface);grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:relative;overflow:hidden}.filter-sheet-header{border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:72px minmax(0,1fr) 72px;align-items:center;min-height:56px;display:grid}.filter-sheet-header h1{color:var(--color-text);text-align:center;font-size:16px;font-weight:var(--font-weight-bold);margin:0;line-height:22px}.filter-sheet-header button{min-height:56px;color:var(--color-text);font-size:var(--font-size-meta);font-weight:var(--font-weight-semibold);background:0 0;border:0;transition:background-color .15s}.filter-sheet-header button:active{background:var(--color-surface-muted)}.step-tabs{padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:repeat(3,1fr);display:grid}.step-tab{min-height:56px;color:var(--color-text-muted);font-size:var(--font-size-control);font-weight:var(--font-weight-semibold);background:0 0;border:0;border-bottom:3px solid #0000;transition:border-color .15s,color .15s,background-color .15s}.step-tab.is-active{border-bottom-color:var(--color-primary);color:var(--color-text);font-weight:var(--font-weight-bold)}.filter-content{min-height:0;padding:var(--space-4) var(--page-gutter) var(--space-5);overflow-y:auto}.filter-panel-heading h2{font-size:17px;font-weight:var(--font-weight-bold);text-align:center;margin:0;line-height:28px}.choice-list{gap:var(--space-2);margin-top:var(--space-4);display:grid}.choice-list.is-two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-button{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:100%;min-height:48px;color:var(--color-text);text-align:center;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);word-break:keep-all;justify-content:center;align-items:center;padding:0 14px;line-height:22px;transition:border-color .15s,background-color .15s,box-shadow .15s,transform .15s;display:flex}.choice-button.is-full-width{grid-column:1/-1}.choice-button.is-selected{color:#111827;background:#e5e7eb;border-color:#94a3b8;box-shadow:inset 0 0 0 1px #cbd5e1}.choice-button:active{transform:translateY(1px)}.detail-shell{padding:var(--space-4) var(--page-gutter) var(--space-8)}.detail-topbar{gap:6px;display:grid}.detail-title-row{align-items:center;gap:var(--space-2);grid-template-columns:44px minmax(0,1fr);min-height:44px;display:grid}.detail-title-row h1{color:var(--color-text);font-size:var(--font-size-detail-title);font-weight:var(--font-weight-heavy);text-align:left;text-overflow:ellipsis;white-space:nowrap;margin:0;line-height:31px;overflow:hidden}.back-link{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:44px;height:44px;color:var(--color-text);place-items:center;text-decoration:none;display:grid}.back-link span{font-size:34px;line-height:1;transform:translateY(-1px)}.detail-title-tags{padding-left:calc(44px + var(--space-2));justify-content:flex-start;gap:6px}.detail-article,.canceled-page{margin-top:0}.detail-fact-list{margin:var(--space-2) 0 var(--space-5);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);display:grid}.detail-fact-row{gap:var(--space-3);grid-template-columns:64px minmax(0,1fr);padding:11px 0;display:grid}.detail-fact-row+.detail-fact-row{border-top:1px solid var(--color-border)}.detail-fact-list dt{color:var(--color-text-subtle);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);line-height:21px}.detail-fact-list dd{color:var(--color-text-muted);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);gap:3px;margin:0;line-height:21px;display:grid}.detail-fact-row.is-primary dd{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);line-height:21px}.detail-fact-list dd span:not(.detail-date-line){color:var(--color-text-muted);font-size:var(--font-size-meta);font-weight:var(--font-weight-regular);line-height:20px}.detail-date-line{display:block}.detail-section{margin-top:var(--space-6)}.detail-section h2{margin:0 0 var(--space-3);color:var(--color-text);font-size:16px;font-weight:var(--font-weight-bold);line-height:24px}.poster-button{background:0 0;border:0;width:100%;padding:0;display:block}.poster-button img{aspect-ratio:auto 4/5;border:1px solid var(--color-border);border-radius:var(--radius-md);object-fit:contain;background:#fff;width:100%;height:auto;display:block;box-shadow:0 16px 34px #0f172a1f}.source-link-button{width:100%;margin-top:var(--space-4);place-items:center;display:grid}.detail-source-section .source-link-button{margin-top:0}.last-checked{margin:var(--space-6) 0 0;color:var(--color-text-subtle);font-size:var(--font-size-caption);line-height:18px}.poster-modal-backdrop{z-index:80;background:#0f172ad1;position:fixed;inset:0}.poster-modal{grid-template-rows:auto minmax(0,1fr);height:100dvh;display:grid}.poster-modal-close{min-height:44px;margin:var(--space-3);border-radius:var(--radius-md);color:#fff;font-size:var(--font-size-meta);font-weight:var(--font-weight-bold);background:#ffffff1f;border:1px solid #ffffff47;justify-self:end;padding:0 16px}.poster-zoom-scroll{min-height:0;padding:0 var(--space-4) var(--space-8);touch-action:pinch-zoom;overflow:auto}.poster-zoom-scroll img{background:#fff;width:min(760px,140vw);max-width:none;height:auto;margin:0 auto;display:block}.canceled-notice{padding:var(--space-5);border-radius:var(--radius-md);background:var(--color-danger-bg);border:1px solid #fecaca}.canceled-notice h1{color:var(--color-danger);font-size:var(--font-size-detail-title);font-weight:var(--font-weight-heavy);margin:0;line-height:30px}.canceled-notice p{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--font-size-body);line-height:24px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (min-width:720px){.app-shell,.detail-shell,.filter-sheet{border-right:1px solid var(--color-border);border-left:1px solid var(--color-border)}}.admin-shell{width:min(100%,1040px);min-height:100vh;padding:var(--space-5) var(--page-gutter) var(--space-8);margin:0 auto}.admin-header{gap:var(--space-3);margin-bottom:var(--space-5);display:grid}.admin-header h1,.admin-empty h1{color:var(--color-text);font-size:26px;font-weight:var(--font-weight-heavy);margin:0;line-height:34px}.admin-header p,.admin-empty p,.admin-muted{color:var(--color-text-muted);font-size:var(--font-size-body);margin:0;line-height:24px}.admin-kicker{margin:0 0 var(--space-1);color:var(--color-text-subtle);font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);line-height:18px}.admin-status-tabs,.admin-scope-tabs{gap:var(--space-2);padding-bottom:var(--space-3);scrollbar-width:none;display:flex;overflow-x:auto}.admin-status-tabs::-webkit-scrollbar{display:none}.admin-scope-tabs::-webkit-scrollbar{display:none}.admin-status-tabs a,.admin-scope-tabs a{align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);min-height:40px;color:var(--color-text-muted);flex:none;padding:0 13px;text-decoration:none;transition:border-color .15s,background-color .15s,color .15s;display:inline-flex}.admin-status-tabs a.is-active,.admin-scope-tabs a.is-active{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-primary-text)}.admin-status-tabs span,.admin-scope-tabs a{font-size:var(--font-size-small);font-weight:var(--font-weight-semibold)}.admin-status-tabs strong{font-size:var(--font-size-small);font-weight:var(--font-weight-bold)}.admin-control-panels{gap:var(--space-3);margin-bottom:var(--space-4);display:grid}.admin-manual-add-panel{gap:var(--space-3);margin-bottom:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-4);box-shadow:var(--shadow-card);display:grid}.admin-control-panels .admin-manual-add-panel{margin-bottom:0}.admin-manual-add-panel h2{color:var(--color-text);font-size:var(--font-size-body);font-weight:var(--font-weight-bold);margin:0;line-height:24px}.admin-panel-heading-row{gap:var(--space-3);display:grid}.admin-panel-heading-row form{align-self:start}.admin-manual-add-panel p,.admin-manual-add-form label{color:var(--color-text-muted);font-size:var(--font-size-small);margin:0;line-height:20px}.admin-manual-add-form,.admin-ingest-control-form,.admin-ingest-control-actions,.admin-manual-add-row{gap:var(--space-2);display:grid}.admin-manual-add-row input,.admin-manual-add-form textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:100%;color:var(--color-text);font:inherit;font-size:var(--font-size-small)}.admin-manual-add-row input{min-height:var(--touch-target);padding:0 12px}.admin-manual-add-form textarea{resize:vertical;min-height:104px;padding:10px 12px}.admin-manual-add-row input:focus,.admin-manual-add-form textarea:focus{border-color:var(--color-primary)}.admin-manual-add-row button{min-height:var(--touch-target);border:1px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-primary-text);font-size:var(--font-size-small);font-weight:var(--font-weight-bold);padding:0 14px}.admin-button-dark,.admin-ingest-control-actions button{min-height:var(--touch-target);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-text);color:var(--color-primary-text);font-size:var(--font-size-small);font-weight:var(--font-weight-bold);padding:0 14px}.admin-ingest-control-actions button[value=stored_accounts]{background:var(--color-surface);color:var(--color-text)}.admin-manual-add-row button:disabled,.admin-ingest-control-actions button:disabled,.admin-button-dark:disabled{opacity:.62;cursor:wait}.admin-manual-add-message{min-height:20px}.admin-telegram-subscription-panel{gap:var(--space-4)}.admin-telegram-subscription-list{gap:var(--space-2);display:grid}.admin-telegram-subscription-row{gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);padding:var(--space-3);display:grid}.admin-telegram-subscription-title{align-items:center;gap:var(--space-2);color:var(--color-text);flex-wrap:wrap;display:flex}.admin-telegram-subscription-row a{color:var(--color-text-muted);font-size:var(--font-size-small);text-decoration:none}.admin-telegram-subscription-row p{margin-top:var(--space-1)}.admin-subscription-status{border:1px solid var(--color-border);border-radius:var(--radius-pill);min-height:24px;color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);align-items:center;padding:0 8px;display:inline-flex}.admin-subscription-status.is-active{color:#166534;background:#ecfdf3;border-color:#bbf7d0}.admin-subscription-error{color:var(--color-danger)!important}.admin-telegram-subscription-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-telegram-subscription-actions form{display:contents}.admin-telegram-subscription-actions button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:36px;color:var(--color-text);font-size:var(--font-size-small);font-weight:var(--font-weight-semibold);padding:0 10px}.admin-telegram-subscription-actions button:disabled{opacity:.52;cursor:not-allowed}.admin-manual-add-message.is-error{color:var(--color-danger);font-weight:var(--font-weight-bold)}.admin-error,.admin-empty{margin-top:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-5)}.admin-error{background:var(--color-danger-bg);color:var(--color-danger);font-size:var(--font-size-body);font-weight:var(--font-weight-bold);border-color:#fecaca}.admin-empty{gap:var(--space-2);display:grid}.admin-empty h2{color:var(--color-text);font-size:var(--font-size-title);font-weight:var(--font-weight-bold);margin:0;line-height:25px}.admin-candidate-list{gap:var(--space-4);margin-top:var(--space-3);display:grid}.admin-load-more-sentinel{min-height:72px;color:var(--color-text-muted);font-size:var(--font-size-small);font-weight:var(--font-weight-semibold);text-align:center;justify-content:center;align-items:center;line-height:20px;display:flex}.admin-load-more-sentinel a{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);min-height:40px;color:var(--color-text);padding:0 var(--space-4);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.admin-candidate-card{gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-4);box-shadow:var(--shadow-card);display:grid}.admin-candidate-header{gap:var(--space-3);grid-template-columns:minmax(0,1fr);align-items:flex-start;display:grid}.admin-candidate-header-actions{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:6px;max-width:100%;padding-bottom:2px;display:flex;overflow-x:auto}.admin-candidate-header-actions::-webkit-scrollbar{display:none}.admin-candidate-header-actions .admin-source-link,.admin-candidate-header-actions .admin-action-row button{min-height:40px;font-size:var(--font-size-caption);padding:0 10px}.admin-candidate-header h2{margin:var(--space-2) 0 var(--space-1);color:var(--color-text);font-size:var(--font-size-title);font-weight:var(--font-weight-bold);line-height:25px}.admin-candidate-header p{color:var(--color-text-subtle);font-size:var(--font-size-small);margin:0;line-height:20px}.admin-status-pill{border-radius:var(--radius-pill);background:var(--color-surface-muted);min-height:24px;color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);align-items:center;padding:0 9px;display:inline-flex}.admin-source-link,.admin-ocr-form button,.admin-ocr-run-form button,.admin-publish-form button,.admin-unpublish-form button,.admin-action-row button{min-height:var(--touch-target);border:1px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-primary-text);font-size:var(--font-size-small);font-weight:var(--font-weight-bold);padding:0 12px;text-decoration:none;transition:border-color .15s,background-color .15s,color .15s,transform .15s}.admin-source-link{flex:none;place-items:center;display:inline-grid}.admin-candidate-grid{gap:var(--space-4);display:grid}.admin-candidate-section{gap:var(--space-2);min-width:0;display:grid}.admin-candidate-section h3,.admin-ocr-form label,.admin-publish-form label,.admin-publish-form legend{color:var(--color-text);font-size:var(--font-size-small);font-weight:var(--font-weight-bold);margin:0;line-height:20px}.admin-post-text{color:var(--color-text);font-size:var(--font-size-body);white-space:pre-wrap;word-break:break-word;margin:0;line-height:24px}.admin-media-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-media-grid a{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);min-height:120px;color:var(--color-text-muted);place-items:center;text-decoration:none;display:grid;overflow:hidden}.admin-media-grid img{object-fit:cover;width:100%;height:100%;max-height:240px;display:block}.admin-reason-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-reason-list span{border-radius:var(--radius-pill);color:#3730a3;min-height:26px;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);background:#eef2ff;align-items:center;padding:0 10px;display:inline-flex}.admin-structured-event{gap:var(--space-3);border-radius:var(--radius-md);padding:var(--space-3);background:#f0f9ff;border:1px solid #bae6fd;display:grid}.admin-structured-event-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.admin-structured-event h3{color:var(--color-text);font-size:var(--font-size-body);font-weight:var(--font-weight-bold);margin:0;line-height:22px}.admin-structured-event-header span{color:#0369a1;font-size:var(--font-size-small);font-weight:var(--font-weight-bold);flex:none;line-height:20px}.admin-structured-event dl{gap:var(--space-2);margin:0;display:grid}.admin-structured-event dl div{gap:var(--space-2);grid-template-columns:52px minmax(0,1fr);display:grid}.admin-structured-event dt,.admin-structured-event dd,.admin-structured-event p{font-size:var(--font-size-small);margin:0;line-height:20px}.admin-structured-event dt{color:var(--color-text-subtle);font-weight:var(--font-weight-bold)}.admin-structured-event dd,.admin-structured-event p{color:var(--color-text)}.admin-raw-details{border-top:1px solid var(--color-border);padding-top:var(--space-3)}.admin-raw-details summary{color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-small);font-weight:var(--font-weight-semibold)}.admin-raw-details pre{margin:var(--space-2) 0 0;border-radius:var(--radius-md);color:#e2e8f0;padding:var(--space-3);font-family:var(--font-family-mono);background:#0f172a;font-size:12px;line-height:18px;overflow:auto}.admin-publish-panel{border-radius:var(--radius-md);background:var(--color-success-bg);padding:var(--space-3);border:1px solid #bbf7d0}.admin-publish-panel summary{border:1px solid var(--color-success);border-radius:var(--radius-md);background:var(--color-success);color:#fff;cursor:pointer;width:fit-content;min-height:40px;font-size:var(--font-size-small);font-weight:var(--font-weight-bold);padding:9px 12px;line-height:20px;list-style:none}.admin-publish-panel summary::-webkit-details-marker{display:none}.admin-publish-form{gap:var(--space-3);margin-top:var(--space-3);display:grid}.admin-unpublish-form{gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid #bbf7d0;display:grid}.admin-unpublish-form button{border-color:var(--color-danger);background:var(--color-danger);color:#fff;width:fit-content}.admin-unpublish-form span{color:var(--color-text-muted);font-size:var(--font-size-small);line-height:20px}.admin-publish-grid{gap:var(--space-3);display:grid}.admin-publish-form label{gap:var(--space-1);display:grid}.admin-publish-form input,.admin-publish-form select,.admin-publish-form textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:100%;min-height:40px;color:var(--color-text);font:inherit;font-size:var(--font-size-small);padding:8px 10px;line-height:20px}.admin-publish-form textarea{resize:vertical}.admin-publish-form fieldset{gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:0;padding:var(--space-3);margin:0;display:grid}.admin-publish-date-row{gap:var(--space-2);grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);display:grid}.admin-checkbox-list{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-checkbox-list label{align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);min-height:36px;padding:0 10px;display:flex}.admin-checkbox-list input{flex:none;width:16px;min-height:16px;padding:0}.admin-publish-form button{border-color:var(--color-success);background:var(--color-success);justify-self:start}.admin-ocr-form{gap:var(--space-2);display:grid}.admin-ocr-form textarea{resize:vertical;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:100%;color:var(--color-text);padding:var(--space-3);font:inherit;line-height:22px}.admin-ocr-form button{justify-self:start}.admin-ocr-run-form{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-ocr-run-form button:disabled{border-color:var(--color-border);background:var(--color-surface-muted);color:var(--color-text-subtle);cursor:not-allowed}.admin-ocr-run-form span{color:var(--color-text-subtle);font-size:var(--font-size-small);line-height:20px}.admin-action-row{flex-wrap:nowrap;flex:none;gap:6px;display:flex}.admin-action-row form{display:contents}.admin-action-row button{border-color:var(--color-border);background:var(--color-surface);color:var(--color-text-muted)}.admin-action-row button:active,.admin-source-link:active,.admin-ocr-form button:active,.admin-ocr-run-form button:active,.admin-publish-form button:active,.admin-unpublish-form button:active{transform:translateY(1px)}@media (min-width:760px){.admin-shell{padding-right:var(--space-6);padding-left:var(--space-6)}.admin-header{grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:end}.admin-panel-heading-row,.admin-telegram-subscription-row{grid-template-columns:minmax(0,1fr) auto;align-items:start}.admin-manual-add-panel{grid-template-columns:minmax(180px,.8fr) minmax(0,1.2fr);align-items:end}.admin-manual-add-row{grid-template-columns:minmax(0,1fr) auto}.admin-ingest-control-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-candidate-card{padding:var(--space-5)}.admin-candidate-header{grid-template-columns:minmax(0,1fr) auto}.admin-candidate-header-actions{justify-content:flex-end}.admin-candidate-grid{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:start}.admin-publish-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
