.section-launch{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;height:32px;min-height:32px;padding:0 9px;border:0;border-radius:var(--r-control);background:transparent;color:var(--text-secondary);font:var(--fw-medium) var(--fs-sm) var(--font-ui);white-space:nowrap;cursor:pointer;letter-spacing:var(--ls-12);}
.section-launch:hover:not([aria-expanded=true]){background:var(--state-hover);color:var(--text-primary)}
.section-launch[aria-expanded=true]{background:var(--state-selected);color:var(--accent-text)}
.section-launch:disabled{opacity:.6;cursor:wait}
.section-launch svg{width:16px;height:16px}
.web-reading .section-launch span{display:none}
.section-access-panel{position:fixed;inset:auto;margin:0;width:328px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 100px);overflow:auto;padding:0;border:1px solid var(--overlay-border);border-radius:var(--r-popover);background:var(--surface-overlay);color:var(--text-primary);box-shadow:var(--shadow-popover);font:var(--fs-sm)/var(--lh-relaxed) var(--font-ui);letter-spacing:var(--ls-12);}
.section-access-panel:popover-open{animation:section-access-in 140ms ease-out}
.section-access-panel header{display:flex;align-items:flex-start;gap:12px;padding:18px 18px 12px}
.section-access-panel header>div{flex:1;min-width:0}
.section-access-panel h2{margin:0;font-size:var(--fs-xl); letter-spacing:var(--ls-16);line-height:1.5;font-weight:var(--fw-semibold)}
.section-access-panel header p{margin:4px 0 0;font-size:var(--fs-sm); letter-spacing:var(--ls-12);color:var(--text-secondary)}
.section-access-panel button{min-height:32px;padding:0 10px;border:0;border-radius:var(--r-control);background:transparent;color:var(--text-secondary);font:inherit;cursor:pointer}
.section-access-panel button:hover:not(:disabled){background:var(--state-hover);color:var(--text-primary)}
.section-access-panel header button{display:grid;place-items:center;width:32px;min-height:32px;padding:0;margin-top:-3px}
.section-access-panel svg{width:16px;height:16px}
.section-access-rule{margin:0;padding:0 18px;font-size:var(--fs-md); letter-spacing:var(--ls-13);line-height:1.65}
.section-access-note{margin:12px 18px 16px;color:var(--text-secondary);font-size:var(--fs-sm); letter-spacing:var(--ls-12);line-height:1.65}
.section-access-panel fieldset{margin:0;padding:0 12px;border:0}
.section-access-panel fieldset label{display:flex;gap:10px;align-items:flex-start;padding:10px 6px;cursor:pointer;border-radius:var(--r-control)}
.section-access-panel fieldset label:hover:not(:has(input:checked)){background:var(--state-hover)}
.section-access-panel fieldset label:has(input:checked){background:var(--state-selected)}
.section-access-panel fieldset:disabled label{cursor:default;opacity:.65}
.section-access-panel input[type=radio]{appearance:auto;flex:none;width:16px;height:16px;margin:3px 0 0;accent-color:var(--accent)}
.section-access-panel strong{display:block;font-weight:var(--fw-medium)}
.section-access-panel small{display:block;margin-top:3px;color:var(--text-secondary);font-size:var(--fs-xs);letter-spacing:var(--ls-11);}
.section-access-actions{display:flex;justify-content:flex-end;gap:6px;padding:0 18px 14px}
.section-access-panel .section-access-save{background:var(--accent);color:var(--text-on-accent)}
.section-access-panel .section-access-save:hover:not(:disabled){background:var(--accent-hover);color:var(--text-on-accent)}
.section-access-panel .section-access-save:active:not(:disabled){background:var(--accent-active)}
.section-access-panel button:disabled{opacity:.45;cursor:default}
.section-access-panel footer{padding:10px 12px;border-top:1px solid var(--border-subtle)}
.section-access-panel footer button{display:flex;align-items:center;justify-content:space-between;width:100%;color:var(--text-primary)}
.section-access-error{margin:0 18px 12px;color:var(--danger-text);font-size:var(--fs-sm);letter-spacing:var(--ls-12);}
.section-access-status{margin:0 18px 12px;color:var(--text-secondary);font-size:var(--fs-sm);line-height:var(--lh-relaxed)}
.section-access-panel .section-access-retry{margin:0 18px 12px;color:var(--accent-text)}
.section-access-panel :focus-visible{outline:2px solid var(--accent-line);outline-offset:2px}
@keyframes section-access-in{from{opacity:0;translate:0 4px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){.section-access-panel:popover-open{animation:none}}
@media(max-width:600px),(pointer:coarse){.section-launch{min-height:44px;min-width:44px}.section-access-panel button{min-height:44px}.section-access-panel header button{width:44px;min-height:44px;margin-top:0}.section-dialog .native-dialog-close{min-width:44px;min-height:44px}.section-view-refresh{min-height:44px}}
.section-launch[hidden],.section-browser[hidden],.section-readonly[hidden]{display:none!important}
.section-dialog{width:480px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}
.section-dialog .native-dialog-head{gap:12px;padding:18px 22px}
.section-dialog .native-dialog-head h2{font-size:var(--fs-xl);line-height:var(--lh-snug);letter-spacing:var(--ls-16)}
.section-dialog .native-dialog-body{padding:22px}
.section-dialog .native-dialog-foot{padding:16px 22px}
.section-dialog-event{margin:0 0 18px;font-size:var(--fs-md); letter-spacing:var(--ls-13);color:var(--text-secondary);overflow-wrap:anywhere}
.section-choices{margin:0;padding:0;border:0}
.section-choices legend{margin:0 0 14px;font-size:var(--fs-md); letter-spacing:var(--ls-13);font-weight:var(--fw-medium);line-height:1.5}
.section-choice{display:flex;align-items:flex-start;gap:12px;padding:16px 14px;margin-bottom:10px;border:1px solid var(--border-default);border-radius:var(--r-panel);cursor:pointer;transition:background 140ms,border-color 140ms}
.section-choice:hover:not([data-selected=true]){background:var(--state-hover)}
.section-choice[data-selected=true]{border-color:var(--accent);background:var(--accent-soft)}
.section-dialog .section-choice input[type=radio]{flex:0 0 18px;width:18px;min-width:18px;height:18px;min-height:18px;max-width:18px;max-height:18px;margin:3px 0 0;padding:0;appearance:auto;accent-color:var(--accent);box-shadow:none}
.section-dialog .section-choice input[type=radio]:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px}
.section-choice>span{min-width:0}
.section-choice strong{display:block;font-size:var(--fs-md); letter-spacing:var(--ls-13);font-weight:var(--fw-semibold);line-height:1.5}
.section-choice small{display:block;margin-top:5px;font-size:var(--fs-md); letter-spacing:var(--ls-13);line-height:1.65;color:var(--text-secondary)}
.section-choice-note{margin:16px 0 0;font-size:var(--fs-sm); letter-spacing:var(--ls-12);line-height:1.7;color:var(--text-secondary)}
.section-settings-error,.section-browser-error{margin:16px 0 0;padding:10px 12px;border-radius:var(--r-control);background:var(--danger-soft);color:var(--danger-text);font-size:var(--fs-md); letter-spacing:var(--ls-13);line-height:1.5}
.section-dialog .section-save{min-width:126px;background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}
.section-dialog .section-save:hover:not(:disabled){background:var(--accent-hover)}
.section-dialog .section-save:active:not(:disabled){background:var(--accent-active)}
.section-browser{position:fixed;z-index:var(--z-popover,60);top:60px;right:16px;bottom:60px;width:340px;max-width:calc(100vw - 24px);display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--overlay-border);border-radius:var(--r-panel);background:var(--surface-overlay);color:var(--text-primary);box-shadow:var(--shadow-panel);font:var(--fs-sm)/1.5 var(--font-ui);animation:section-panel-in 160ms ease-out;letter-spacing:var(--ls-12);}
.section-browser-head{display:flex;align-items:center;gap:12px;flex-shrink:0;padding:18px 18px 14px;border-bottom:1px solid var(--border-subtle)}
.section-browser-head>div{flex:1;min-width:0}
.section-event-name{margin:0 0 3px;font-size:var(--fs-xs); letter-spacing:var(--ls-11);color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.section-browser h2{margin:0;font-size:var(--fs-xl); letter-spacing:var(--ls-16);line-height:1.4;font-weight:var(--fw-semibold)}
.section-browser button,.section-readonly button{box-sizing:border-box;min-height:36px;border:1px solid var(--border-default);border-radius:var(--r-control);background:var(--surface-top);color:var(--text-primary);font:inherit;font-size:var(--fs-sm); letter-spacing:var(--ls-12);font-weight:var(--fw-medium);cursor:pointer;transition:background 140ms}
.section-browser button:hover:not(:disabled,[aria-current=true]),.section-readonly button:hover:not(:disabled){background:var(--state-hover)}
.section-browser button:disabled,.section-readonly button:disabled{opacity:.5;cursor:default}
.section-browser [data-section-close]{display:grid;place-items:center;flex:0 0 36px;width:36px;padding:0;border:0;background:transparent;color:var(--text-secondary)}
.section-browser [data-section-close] svg{width:18px;height:18px}
.section-browser-body{flex:1;min-height:0;padding:18px;overflow-y:auto;overscroll-behavior:contain}
.section-browser-scope p{margin:0;font-size:var(--fs-md); letter-spacing:var(--ls-13);line-height:1.6;color:var(--text-secondary)}
.section-browser-scope strong{font-weight:var(--fw-medium);color:var(--text-primary)}
.section-browser-scope button{margin-top:10px;padding:0 12px;color:var(--accent-text)}
.section-directory{margin-top:20px}
.section-directory section+section{margin-top:22px}
.section-directory h3{margin:0 0 8px;font-size:var(--fs-sm); letter-spacing:var(--ls-12);font-weight:var(--fw-semibold);color:var(--text-secondary)}
.section-browser .section-directory-row{display:flex;align-items:center;gap:10px;width:100%;padding:10px 6px;border:0;border-radius:var(--r-control);background:transparent;text-align:left}
.section-browser .section-directory-row[aria-current=true]{background:var(--state-selected)}
.section-directory-initial{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:var(--r-lg);background:var(--fill-subtle);font-weight:var(--fw-semibold);color:var(--text-secondary)}
.section-directory-row>span:nth-child(2){flex:1;min-width:0}
.section-directory-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-md); letter-spacing:var(--ls-13);font-weight:var(--fw-medium);line-height:1.5}
.section-directory-row small{display:block;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-xs); letter-spacing:var(--ls-11);color:var(--text-secondary)}
.section-directory-row em{flex-shrink:0;font-size:var(--fs-xs); letter-spacing:var(--ls-11);font-style:normal;color:var(--text-secondary)}
.section-directory-empty{margin:12px 0;font-size:var(--fs-md); letter-spacing:var(--ls-13);line-height:1.7;color:var(--text-secondary)}
.section-browser-foot{display:flex;justify-content:space-between;gap:8px;flex-shrink:0;padding:14px 18px;border-top:1px solid var(--border-subtle)}
.section-browser-foot button{padding:0 10px;font-size:var(--fs-sm);letter-spacing:var(--ls-12);}
.section-readonly{position:absolute;z-index:var(--z-canvas-ui,10);top:16px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:20px;max-width:calc(100% - 32px);padding:10px 12px 10px 16px;border:1px solid var(--overlay-border);border-radius:var(--r-panel);background:var(--surface-overlay);color:var(--text-primary);box-shadow:var(--shadow-sm);font:var(--fs-sm)/1.5 var(--font-ui);letter-spacing:var(--ls-12);}
.section-readonly>div{min-width:0}
.section-readonly strong{display:block;font-weight:var(--fw-medium);overflow-wrap:anywhere}
.section-readonly span{display:block;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary);font-size:var(--fs-sm);letter-spacing:var(--ls-12);}
.section-readonly button{flex-shrink:0;padding:0 12px}
.section-return-error{margin:6px 0 0;color:var(--danger-text);font-size:var(--fs-sm);line-height:1.5}
.section-launch:focus-visible,.section-browser button:focus-visible,.section-readonly button:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px}
@keyframes section-panel-in{from{opacity:0;translate:8px 0}to{opacity:1;translate:0 0}}
@media(max-width:600px){
  .section-dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
  .section-dialog .native-dialog-head,.section-dialog .native-dialog-foot{padding:16px}
  .section-dialog .native-dialog-body{padding:18px 16px}
  .section-dialog .native-dialog-head h2{font-size:var(--fs-xl);letter-spacing:var(--ls-16);}
  .section-dialog .native-dialog-foot button{min-height:44px}
  .section-browser{top:56px;right:12px;bottom:calc(56px + env(safe-area-inset-bottom));width:calc(100vw - 24px);max-height:calc(100dvh - 112px - env(safe-area-inset-bottom))}
  .section-browser button,.section-readonly button{min-height:44px}
  .section-browser [data-section-close]{flex-basis:44px;width:44px}
  .section-readonly{top:10px;gap:12px;padding-left:12px;max-width:calc(100% - 24px)}
  .section-readonly span{max-width:150px}
}
@media(pointer:coarse){.section-browser button,.section-readonly button{min-height:44px}.section-browser [data-section-close]{flex-basis:44px;width:44px}.section-dialog .native-dialog-foot button{min-height:44px}}
@media(prefers-reduced-motion:reduce){.section-browser{animation:none}.section-choice,.section-browser button,.section-launch{transition:none}}
.section-view{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;overflow:hidden;border:0;border-radius:0;background:var(--surface-sunken);color:var(--text-primary);font:var(--fs-sm)/1.6 var(--font-ui);letter-spacing:var(--ls-12);}
.section-view[open]{display:flex;flex-direction:column}
.section-view::backdrop{background:var(--surface-sunken)}
.section-view-head{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0;min-height:68px;padding:12px 24px;border-bottom:1px solid var(--border-subtle);background:var(--surface-top)}
.section-view-identity{display:flex;align-items:center;gap:12px;min-width:0}
.section-view-heading{min-width:0;flex:1}.section-view-freshness{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}.section-view-status{color:var(--text-secondary);font-size:var(--fs-2xs)}.section-view-refresh{min-height:32px;padding:3px 8px;border:1px solid var(--border-subtle);border-radius:var(--r-control);background:var(--surface-top);color:var(--text-primary);font:var(--fs-xs) var(--font-ui);cursor:pointer}.section-view-refresh:focus-visible{outline:2px solid var(--accent-line);outline-offset:3px}.section-view-refresh:disabled{opacity:.6;cursor:wait}
.section-view h2{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-2xl); letter-spacing:var(--ls-20);line-height:1.4;font-weight:var(--fw-semibold)}
.section-view-badge{flex-shrink:0;padding:2px 8px;border-radius:var(--r-control);background:var(--fill-subtle);color:var(--text-secondary);font-size:var(--fs-2xs);letter-spacing:var(--ls-10);}
.section-view-close{flex-shrink:0;min-height:40px;padding:0 14px;border:1px solid var(--border-default);border-radius:var(--r-control);background:var(--surface-top);color:var(--text-primary);font:var(--fs-sm) var(--font-ui);cursor:pointer;letter-spacing:var(--ls-12);}
.section-view-close:hover{background:var(--state-hover)}
.section-view-close:focus-visible,.section-view a:focus-visible{outline:2px solid var(--accent-line);outline-offset:3px}
.section-view-body{flex:1;min-height:0;padding:24px;overflow:auto;overscroll-behavior:contain}
.section-view-layout{display:grid;grid-template-columns:minmax(0,1512px) minmax(280px,340px);align-items:start;gap:24px;max-width:1876px;margin:0 auto}
.section-view-single{grid-template-columns:minmax(0,1512px);max-width:1512px}
.section-view-main,.section-view-side{display:flex;flex-direction:column;gap:20px;min-width:0}
.section-view-card{min-width:0;padding:20px;border:1px solid var(--border-subtle);border-radius:var(--r-panel);background:var(--surface-top)}
.section-view-card h3{margin:0 0 14px;font-size:var(--fs-xl); letter-spacing:var(--ls-16);font-weight:var(--fw-semibold);line-height:1.5;overflow-wrap:anywhere}
.section-view-image-card{padding:0;overflow:hidden}
.section-view-image-card h3{margin:0;padding:16px 20px;border-bottom:1px solid var(--border-subtle)}
.section-view-image{display:block;width:100%;max-width:1512px;height:auto;object-fit:contain;background:var(--surface-top)}
.section-view-image[hidden],.section-view-image-error[hidden]{display:none}
.section-view-table-wrap{max-width:100%;overflow:auto;overscroll-behavior:contain}.section-view-table{border-collapse:collapse;min-width:100%;font-size:var(--fs-sm);letter-spacing:var(--ls-12)}.section-view-table th,.section-view-table td{padding:8px 10px;border:1px solid var(--border-subtle);text-align:left;vertical-align:top;overflow-wrap:anywhere}
.section-view-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--fs-md); letter-spacing:var(--ls-13);line-height:1.8}
.section-view a{color:var(--text-link);text-underline-offset:3px;overflow-wrap:anywhere}
.section-view-note-link{margin-top:10px}
.section-view-source{display:flex;flex-direction:column;gap:4px;margin:16px 0 0;font-size:var(--fs-xs); letter-spacing:var(--ls-11);line-height:1.5}
.section-view-source span{color:var(--text-secondary);overflow-wrap:anywhere}
.section-view-image-card .section-view-source{margin:0;padding:14px 20px;border-top:1px solid var(--border-subtle)}
.section-view-empty,.section-view-image-error{margin:0;color:var(--text-secondary);font-size:var(--fs-md); letter-spacing:var(--ls-13);line-height:1.7}
.section-view-image-card .section-view-image-error{padding:20px}
@media(max-width:900px){.section-view-layout{grid-template-columns:minmax(0,1fr);max-width:1512px}.section-view-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}
@media(max-width:600px){.section-view-head{min-height:64px;padding:10px 16px;gap:12px}.section-view-identity{gap:8px}.section-view h2{font-size:var(--fs-2xl);letter-spacing:var(--ls-20);}.section-view-close{min-height:44px;padding:0 10px}.section-view-body{padding:16px 12px}.section-view-layout{gap:16px}.section-view-main,.section-view-side{gap:14px}.section-view-side{display:flex}.section-view-card{padding:16px}.section-view-image-card{padding:0}.section-view-image-card h3{padding:14px 16px}.section-view-image-card .section-view-source{padding:12px 16px}}
@media(max-width:600px),(pointer:coarse){.section-view-refresh,.section-view-close{min-height:44px}}
