@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-border-style:solid;--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}.fixed{position:fixed}.static{position:static}.block{display:block}.flex{display:flex}.hidden{display:none}.table{display:table}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.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;--results-top-control-bg:var(--color-bg)}@supports (color:color-mix(in lab, red, red)){:root{--results-top-control-bg:color-mix(in srgb, var(--color-bg) 92%, white)}}:root{--calendar-nav-active-bg:var(--color-surface-muted)}@supports (color:color-mix(in lab, red, red)){:root{--calendar-nav-active-bg:color-mix(in srgb, var(--color-surface-muted) 72%, white)}}:root{--calendar-weekday-bg:var(--calendar-nav-active-bg)}@supports (color:color-mix(in lab, red, red)){:root{--calendar-weekday-bg:color-mix(in srgb, var(--calendar-nav-active-bg) 44%, white)}}:root{--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:#e4e9f0;--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-surface);overscroll-behavior-y:none;min-height:100%}body{background:var(--color-surface);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-calendar-view{padding-bottom:0}.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);grid-template-columns:var(--touch-target) minmax(0, 1fr) var(--touch-target);gap:var(--space-2);padding:var(--space-2) var(--page-gutter);background:var(--color-surface);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-items:center;display:grid;position:sticky}.telegram-channel-button{z-index:3;width:var(--touch-target);height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--results-top-control-bg);color:var(--color-text);place-items:center;transition:border-color .15s,background-color .15s,transform .15s;display:grid;position:relative}.telegram-channel-icon{background-image:url(/Telegram_logo.webp);background-position:50%;background-repeat:no-repeat;background-size:contain;width:23px;height:23px;display:block}.condition-chip-row{z-index:1;gap:var(--space-2);overscroll-behavior-x:contain;overscroll-behavior-y:none;touch-action:pan-x;-webkit-overflow-scrolling:touch;grid-column:2;min-width:0;display:flex;position:relative;overflow:auto hidden}.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{z-index:3;width:var(--touch-target);grid-template-columns:var(--touch-target);gap:var(--space-1);justify-self:end;display:grid;position:relative}.results-top-actions{z-index:3;grid-column:3;justify-self:end;align-items:center;display:flex;position:relative}.view-mode-button{width:var(--touch-target);height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--results-top-control-bg);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,.telegram-channel-button:active,.view-mode-button:active,.filter-icon-button:active{transform:translateY(1px)}.calendar-month-view{background:var(--color-surface);gap:0;padding:0;display:grid}.calendar-month-view.is-loading{opacity:.68}.calendar-sticky-header{top:calc(var(--sticky-top) + var(--results-top-height));z-index:15;padding:var(--space-3) 0 0;background:var(--calendar-weekday-bg);gap:0;display:grid;position:sticky}.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:20px;font-weight:var(--font-weight-bold);margin:0;line-height:28px}.calendar-month-nav{min-height:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--calendar-nav-active-bg);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);padding:var(--space-2) 0;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));grid-template-rows:repeat(var(--calendar-week-count,5), minmax(102px, auto));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);width:100%;padding:var(--space-6) var(--page-gutter) calc(var(--space-6) + env(safe-area-inset-bottom));background:var(--calendar-weekday-bg);color:var(--color-text-subtle);margin:0;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 a{color:inherit;text-decoration:none}.calendar-contact-brand{color:#000;justify-self:center;font-family:Malgun Gothic,맑은 고딕,sans-serif;font-weight:400}.calendar-contact-brand a{color:#000;font-weight:700;text-decoration:underline}.calendar-contact a:hover,.calendar-contact a:focus-visible{text-decoration:underline}.date-section{padding:0 var(--page-gutter);scroll-margin-top:calc(var(--results-top-height) + var(--space-3))}.load-previous-sentinel{pointer-events:none;width:100%;height:1px;margin-top:-1px}.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,.telegram-channel-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{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}.source-post-link-button{color:#000;background:#fff;border:1px solid #000}.source-share-button{color:#fff;background:#000;border:1px solid #000}.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(2,minmax(0,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{background:var(--color-surface);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}.source-action-row{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.source-action-row .source-link-button,.detail-source-section .source-action-row{margin-top:0}.related-petition-section{gap:var(--space-3);border-top:1px solid var(--color-border);padding-top:var(--space-3);display:grid}.related-petition-section h2{font-size:var(--font-size-body);margin-bottom:0;line-height:24px}.related-petition-links{gap:var(--space-2);display:grid}.related-petition-link{text-align:center;min-height:48px;margin-top:0;padding:11px 16px}.related-petition-link span{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:21px;display:-webkit-box;overflow:hidden}.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)}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@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}
