/* Programme: grouping comes from ruled rows and consistent columns. */
:root{--line:#bdc3cd}body{line-height:1.65}header{border-bottom:1px solid var(--text);max-width:1280px;padding:20px 24px;margin:auto;background:transparent}.mark{border-radius:2px}.brand{font-weight:650;letter-spacing:.04em}.brand small{font-size:11px;letter-spacing:0;font-weight:400}.nav-link{border-radius:3px;min-height:44px}main{max-width:1280px;padding:0 24px}.intro{padding:38px 0 30px;margin:0;border-bottom:2px solid var(--text);align-items:flex-end}.intro h1{font-family:"Noto Serif JP","Yu Mincho",serif;font-size:clamp(27px,3.8vw,43px);font-weight:500;line-height:1.45;letter-spacing:-.035em}.intro p{font-size:14px;margin-top:14px}.data-note{font-size:11px;border-top:1px solid var(--line);padding-top:10px;max-width:280px}.workspace{grid-template-columns:330px minmax(0,1fr);gap:32px;padding-top:28px}aside{border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;padding:0 26px 0 0;box-shadow:none}.section-label{padding-bottom:12px;border-bottom:1px solid var(--text);margin-bottom:18px}.section-label h2{font-size:14px;letter-spacing:.02em}.intent-switch{border:1px solid var(--line);padding:0;border-radius:4px;gap:0;background:transparent}.intent-switch button{border:0;border-right:1px solid var(--line);border-radius:0;min-height:48px;line-height:1.4;font-size:12px}.intent-switch button:last-child{border:0}.intent-switch button[aria-pressed=true]{background:var(--accent);color:#fff}label{font-size:12px;line-height:1.7}select,input[type=number],input[type=time]{border-color:var(--line);border-radius:4px;min-height:44px;background:var(--panel);font-size:14px;padding:9px;width:100%}button{border-radius:4px;min-height:44px;font-size:13px}.primary{border-radius:4px}.text{border-radius:3px}.hint{font-size:11px;line-height:1.8}.required-entry{padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:18px}#open-films{border-radius:4px;min-height:48px;font-size:14px}#required-preview{margin:8px 0}.film-priority{display:grid;grid-template-columns:minmax(0,1fr) 110px;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:8px 0;font-size:12px}.film-priority span{overflow-wrap:anywhere}.film-priority select{font-size:12px;padding:6px;width:110px}.extra-section{border:0;border-top:1px solid var(--line);padding:17px 0 0;margin:22px 0 0;min-width:0}.extra-section legend{font-size:12px;font-weight:650;padding:0 8px 0 0}.blocked-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;border-bottom:1px solid var(--line);margin-top:8px}.blocked-row button{border:0;color:var(--accent)}.result-heading{border-bottom:1px solid var(--text);padding-bottom:14px;align-items:flex-start;margin-bottom:8px;gap:16px}.result-heading h2{font-family:"Yu Mincho",serif;font-size:24px;font-weight:500;line-height:1.5}.sort-label select{font-size:13px;min-width:190px}#ranking-help{border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:16px}#condition-summary{border:0;padding:0 0 12px;background:transparent}.summary-chips{gap:0}.summary-chips span{background:none;border:0;border-right:1px solid var(--line);border-radius:0;padding:0 10px;font-size:11px}.summary-chips span:first-child{padding-left:0}.summary-chips span:last-child{border:0}.plan-tabs{border-top:1px solid var(--line);gap:0}.plan-tab{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:14px 12px;grid-template-columns:170px minmax(0,1fr);text-align:left}.plan-tab[aria-pressed=true]{box-shadow:inset 3px 0 var(--accent);background:var(--wash)}.plan-tab b{font-size:13px}.candidate-metrics{font-size:12px}.candidate-films{font-size:11px;line-height:1.8}.watchlist-result{padding:14px 0;border-top:1px solid var(--accent);border-bottom:1px solid var(--line);font-size:12px;color:var(--muted);line-height:1.9}.watchlist-result strong{font-size:17px;color:var(--text);font-weight:600}.trip-summary{background:transparent;border:0;border-bottom:1px solid var(--text);border-radius:0;margin-top:24px;padding:16px 0}.trip-summary strong{font-size:15px}.list-head{padding:12px 8px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.03em}.film-row{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:17px 8px}.row-main{grid-template-columns:78px minmax(0,1fr) 45px 95px 75px;gap:12px}.row-time strong{font-size:18px;font-weight:650}.row-time span{font-size:12px}.row-movie h3{font-size:16px;-webkit-line-clamp:3;line-height:1.6;font-weight:550}.row-venue{font-size:12px}.row-duration{font-size:12px}.row-detail{padding:14px 0}.row-detail p{font-size:12px}.compact-list .connection{border:0;padding:8px 0 8px 98px;margin:0;background:transparent;font-size:11px;color:var(--muted)}.ending{border-bottom:1px solid var(--text)}.sharebar{border-top:1px solid var(--line);padding-top:22px;margin-top:24px}.sharebar button{min-height:48px}.footnote{font-size:11px;line-height:1.85}.notice{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:3px;background:transparent;font-size:12px;padding:12px 14px}.empty{border:1px solid var(--line);border-radius:0;background:transparent;padding:34px 24px}.examples{border-top:1px solid var(--line);padding-top:12px;margin-top:22px}.examples>summary{font-size:12px}details>summary{min-height:44px;padding:10px 0}footer{border-top:1px solid var(--text);margin-top:40px;font-size:11px}#film-picker,#screen-picker,#venue-picker{border:1px solid var(--text);border-radius:8px}#venue-picker{width:min(620px,calc(100% - 24px));max-height:90dvh;padding:22px;background:var(--panel);color:var(--text)}#venue-list{max-height:55dvh;overflow-y:auto}.venue-choice{border-bottom:1px solid var(--line);min-height:58px;margin:0!important;padding:10px}.venue-choice small{display:block;color:var(--muted)}#film-picker .picker-film{border-bottom:1px solid var(--line);border-radius:0}#film-picker .film-group{margin-bottom:12px}.picker-footer button{border-radius:4px}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:1050px){.workspace{grid-template-columns:300px minmax(0,1fr);gap:24px}.row-main{grid-template-columns:68px minmax(0,1fr) 70px;gap:10px}.row-duration,.row-venue{display:none}.mobile-meta{display:block;font-size:11px;margin:5px 0 0}.plan-tab{grid-template-columns:1fr}.list-head{display:none}}
@media(max-width:740px){header{padding:14px 16px;flex-wrap:wrap}header nav{gap:0}main{padding:0 16px}.intro{padding:24px 0 20px;display:block}.intro h1{font-size:29px}.data-note{display:block;max-width:none;margin-top:18px}.workspace{display:block;padding-top:20px}aside{border-right:0;border-bottom:1px solid var(--text);padding:0 0 20px}.results{margin-top:26px}.result-heading{flex-direction:column;gap:10px}.result-heading h2{font-size:23px}.sort-label,.sort-label select{width:100%}.row-main{grid-template-columns:64px minmax(0,1fr) 60px;gap:8px}.row-actions{grid-column:3}.row-movie h3{font-size:15px}.row-actions button{padding:4px;min-width:48px;min-height:48px}.compact-list .connection{padding-left:80px}.trip-summary{gap:12px;flex-wrap:wrap}.trip-summary .primary{min-height:48px;width:100%}.candidate-metrics{font-size:12px}.plan-tab{padding:13px 12px}.sharebar{flex-direction:column}.sharebar button{width:100%}select,input[type=number],input[type=time]{font-size:16px}.intro br{display:none}.film-priority select{font-size:14px}#film-picker{border-radius:12px 12px 0 0}.notice{font-size:12px}}

header{height:auto;min-height:70px}


.priority-switch{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:14px}.priority-switch button{border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;min-height:48px;font-size:13px}.priority-switch button:last-child{border:0}.priority-switch button[aria-pressed=true]{background:var(--wash);box-shadow:inset 0 -3px var(--accent);color:var(--accent);font-weight:650}@media(max-width:740px){.priority-switch button{font-size:12px;padding:8px 4px}}

@media(min-width:1051px){.list-head{grid-template-columns:78px minmax(0,1fr) 45px 95px 75px;gap:12px}}.extra-section .twocol input[type=time]{width:100%;margin-right:0}
/* Count summary links stay inline with the programme chip row. */
.summary-chips .summary-chip-link{min-height:0;padding:0 10px;border:0;border-right:1px solid var(--line);border-radius:0;background:none;color:var(--accent);font-size:11px}
