/* Module-owned compositions. Tokens and primitive components live in styles.css. */

/* Filters and named secondary information. */
.filters{padding:var(--s-3) 0;border-bottom:1px solid var(--line-soft);gap:var(--s-3) var(--s-4)}
.filters .ctl,.share-head .ctl{display:inline-flex;align-items:center;gap:var(--s-2);flex-wrap:wrap;max-width:100%}
.filters .ctl .label,.share-head .ctl .label{margin:0;color:var(--fg-soft);font-size:var(--fs-sm)}
.filters .select,.filters .input{min-width:0;max-width:100%}
.list-head{margin:0 0 var(--s-2);font-size:var(--fs-sm);color:var(--fg-soft)}
.tl-head{display:flex;align-items:center;gap:var(--s-2);flex-wrap:wrap;min-width:0}
.tl-head strong{font-weight:600;overflow-wrap:anywhere}
details.tech{margin-top:var(--s-1)}
details.tech>summary,.att-more>summary{font-size:var(--fs-sm);color:var(--fg-soft);min-height:40px;padding-block:var(--s-2)}
details.tech code,details.tech p{display:block;margin-top:var(--s-1);font-size:var(--fs-xs);color:var(--fg-soft);overflow-wrap:anywhere}
.page-intro{margin:0 0 var(--s-2)}

/* Current attention and human explanations. */
.att{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--gap-section)}
.act-list{grid-template-columns:minmax(0,1fr)}
.att>.calm-list{background:transparent;border:0;padding:0}
.att>.calm-list:empty{display:none}
.att-more{margin:0}
.att-more[open]{display:grid;gap:var(--s-3)}
.restate .act{margin:0}
.ctx-tools{padding-top:var(--s-2);gap:var(--s-2) var(--s-3)}
.ctx-tools .tag.sm{margin-right:var(--s-1)}
.ctx-tools>a{margin-left:var(--s-1)}
.ctx-tools .btn,.rec-body .row-btns .btn{min-height:36px}
.ctx-line summary .tag{flex:none}
.ctx-line[open]{padding-bottom:var(--s-2)}
.ctx-line[open]>summary .t{font-weight:600}
.ctx-line .ctx-body{font-size:var(--fs-base);padding-top:var(--s-2)}
.ctx-line .data-caption{padding:var(--s-2) var(--s-3);margin:0 0 var(--s-2) 22px;font-size:var(--fs-xs)}

/* Daily and retention modules. */
.digest,.ret{display:grid;gap:var(--gap-section)}
.dg-lead{margin:0;font-size:var(--fs-md);color:var(--fg)}
.dg-foot{margin:0}
.mini-num .eyebrow{display:flex;align-items:center;gap:var(--s-1);flex-wrap:wrap}
.mini-num .eyebrow .tag.sm{letter-spacing:0}
.mini-num .v{display:flex;align-items:center;gap:var(--s-2)}
.mini-num .row{display:flex;align-items:center;gap:var(--s-1) var(--s-2);flex-wrap:wrap;font-size:var(--fs-xs);color:var(--fg-mute)}
.daily-box .seg{margin:var(--s-2) 0}
.ret .legend .sw.a{background:var(--fg-faint)}
.ret .legend .sw.b{background:var(--fg-ghost)}
.annot .t{min-width:0;overflow-wrap:anywhere;color:var(--fg-soft)}

/* Targets and scenario blueprint. */
.tgt-editor>summary{font-size:var(--fs-sm);font-weight:500;min-height:40px}
.tgt-editor .tbl-wrap{margin-top:var(--s-3)}
.tgt-editor .input{width:100%;min-width:9em}
.tgt .small{display:flex;flex-wrap:wrap;gap:0 var(--s-1)}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:var(--s-4);padding-block:var(--s-4);border-block:1px solid var(--line-soft)}
.stat-grid>.mini-num{padding:var(--s-2) var(--s-3)}
.bp-toc .seg{max-width:100%}
.bp-tree{overflow-x:auto}
.bp-legend .muted{font-size:var(--fs-xs)}

/* Forms are grouped by intent rather than by repeated bordered cards. */
.links-form{border-top:1px solid var(--line-soft);padding-top:var(--s-4)}
.links-form .h-card{grid-column:1/-1}
.lf-set{display:grid;gap:var(--s-3);margin:0;padding:0;border:0}
.lf-set legend{padding:0}
.lf-opts{display:flex;flex-wrap:wrap;gap:var(--s-3) var(--s-5)}
.links .row-btns{flex-wrap:nowrap}
.user-form .uf-set,.links-form .lf-set{padding-top:var(--s-3);border-top:1px solid var(--line-soft);gap:var(--s-3)}
.user-form legend,.links-form legend{font-weight:600;color:var(--fg);padding-right:var(--s-3)}
.uf-grid>label,.share-form>label{padding-top:var(--s-2)}
.opt{min-height:32px;align-items:center}
.opt input{margin-top:0}
.uc-row{padding-block:var(--s-3)}
.log-list li>div{overflow-wrap:anywhere}
.deck-row .t{white-space:normal;overflow:visible}
.deck-file{display:block;font-size:var(--fs-xs);color:var(--fg-mute);overflow-wrap:anywhere}

/* Client view has the same hierarchy and explicit disclosure affordances. */
.share-note{margin:0;max-width:80ch;font-size:var(--fs-sm);line-height:1.6}
.share-col{display:grid;gap:var(--gap-section);align-content:start}
.share-toolbar{align-items:end;gap:var(--s-3);padding:var(--s-3) 0;border-block:1px solid var(--line);width:100%}
.share-toolbar .ctl{align-items:center;gap:var(--s-2)}
.share-toolbar .label{font-size:var(--fs-sm);color:var(--fg-soft)}
.share-toolbar .btn{min-height:40px}
.share-comments{scroll-margin-top:var(--s-6);outline-offset:var(--s-2)}
.share-comments:focus-visible{outline:2px solid var(--brand);border-radius:var(--r-sm)}
.share-disclosure{border-block:1px solid var(--line);background:transparent;gap:var(--gap-section)}
.share-disclosure>summary{display:flex;align-items:center;gap:var(--s-2);min-height:48px;padding:var(--s-3) 0;font-size:var(--fs-base);font-weight:500;color:var(--fg-soft)}
.share-disclosure>summary::before{content:'';display:inline-block;width:12px;height:12px;background:var(--fg-mute);-webkit-mask:var(--chev) center/12px no-repeat;mask:var(--chev) center/12px no-repeat;flex:none}
.share-disclosure[open]>summary{font-weight:600;color:var(--fg);border-bottom:1px solid var(--line-soft)}
.share-disclosure[open]>summary::before{transform:rotate(90deg)}
.share-disclosure>summary:hover{background:var(--accent-soft);color:var(--fg)}
.share-disclosure>.sec,.share-disclosure>.grid{padding-bottom:var(--s-4)}
.share-tabs{height:auto;min-height:40px;flex-wrap:wrap;gap:var(--s-1);margin:0;overflow:visible}
.share-tabs button{min-height:36px;height:auto;padding:var(--s-2) var(--s-3);white-space:normal;line-height:1.4}
.share .t td.is-selected,.share .t th.is-selected{background:var(--accent-soft);font-weight:600;box-shadow:inset 2px 0 var(--accent-line),inset -2px 0 var(--accent-line)}

@media (max-width:640px){
  .filters{align-items:stretch}
  .filters>.ctl{flex:1 1 100%;justify-content:space-between}
  .filters .ctl>.select{flex:1;max-width:75%}
  .flt{flex-wrap:wrap;gap:var(--s-2)}
  .flt .flt-in{flex:1 1 100%}
  .flt-n{font-size:var(--fs-xs)}
  .uf-grid>label,.share-form>label{padding-top:0}
  .user-form .uf-set,.links-form .lf-set{margin-top:var(--s-2)}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3)}
  .stat-grid>.mini-num{padding:var(--s-2) 0}
  .links .row-btns{flex-wrap:wrap}
  .rec-body .meta .ctl{display:flex;flex-wrap:wrap;gap:var(--s-2);width:100%}
  .rec-body .meta .select{max-width:100%}
  .share-toolbar{gap:var(--s-2)}
  .share-toolbar .ctl{flex:1 1 100%;justify-content:space-between}
  .share-toolbar .ctl .select{flex:1;max-width:75%}
  .share-toolbar .btn{font-size:var(--fs-sm);padding-inline:var(--s-2)}
}
@media (pointer:coarse){
  .opt,.ctx-tools .btn,.rec-body .row-btns .btn,.share-tabs button{min-height:44px}
}
