/* CAPSULE アプリ：値は DESIGN.md v0.3 の先頭の値だけ。部品は capsule-ui.css（.cx-）を先に読み、ここは色の値と、アプリ固有の並べ方だけ。 */
:root{
  --cx-bg:#FFFFFF;--cx-surface:#F6F8FA;--cx-text:#1A2130;--cx-muted:#687385;
  --cx-accent:#2F6B8A;--cx-accent-strong:#1F516B;--cx-accent-soft:#E9F2F6;--cx-on-accent:#FFFFFF;
  --cx-ink:#1A2130;--cx-on-ink:#FFFFFF;--cx-border:#E6E8EC;--cx-line-ui:#7D8899;
  --cx-ok:#1B7A4A;--cx-ok-bg:#E6F4EC;--cx-warn:#B8402B;--cx-warn-bg:#FBEDE9;--cx-bad:#B8402B;--cx-bad-bg:#FBEDE9;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme=light]){
    --cx-bg:#0F1319;--cx-surface:#161B23;--cx-text:#E6E9EF;--cx-muted:#9AA5B5;
    --cx-accent:#6FB2D1;--cx-accent-strong:#9ACBE2;--cx-accent-soft:#172A35;--cx-on-accent:#0B1218;
    --cx-ink:#E6E9EF;--cx-on-ink:#0F1319;--cx-border:#262D38;--cx-line-ui:#738096;
    --cx-ok:#5FCB93;--cx-ok-bg:#12291D;--cx-warn:#EE7F67;--cx-warn-bg:#2E1B17;--cx-bad:#EE7F67;--cx-bad-bg:#2E1B17;
  }
}
:root[data-theme=dark]{
  --cx-bg:#0F1319;--cx-surface:#161B23;--cx-text:#E6E9EF;--cx-muted:#9AA5B5;
  --cx-accent:#6FB2D1;--cx-accent-strong:#9ACBE2;--cx-accent-soft:#172A35;--cx-on-accent:#0B1218;
  --cx-ink:#E6E9EF;--cx-on-ink:#0F1319;--cx-border:#262D38;--cx-line-ui:#738096;
  --cx-ok:#5FCB93;--cx-ok-bg:#12291D;--cx-warn:#EE7F67;--cx-warn-bg:#2E1B17;--cx-bad:#EE7F67;--cx-bad-bg:#2E1B17;
}
html{background:var(--cx-bg)}
body{margin:0}
main{max-width:1120px;margin:0 auto;padding:var(--cx-sp-4) var(--cx-sp-4) var(--cx-sp-7)}
h1{font-size:var(--cx-fs-lg);font-weight:600;line-height:1.4;margin:var(--cx-sp-4) 0 var(--cx-sp-2)}
h2{font-size:var(--cx-fs-md);font-weight:600;line-height:1.5;margin:var(--cx-sp-5) 0 var(--cx-sp-2)}
h3{font-size:var(--cx-fs-body);font-weight:600;margin:var(--cx-sp-4) 0 var(--cx-sp-1)}
small{display:block;color:var(--cx-muted);font-size:var(--cx-fs-label);margin-top:var(--cx-sp-1)}
p{margin:var(--cx-sp-2) 0}
.muted{color:var(--cx-muted);font-size:var(--cx-fs-label)}
.mono{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:var(--cx-fs-table)}
.cx-btn--danger{color:var(--cx-bad);border-color:var(--cx-bad)}
.cx-btn--danger:hover{background:var(--cx-bad-bg)}
.cx-table-wrap{max-height:none}
.cx-table th a{color:inherit;text-decoration:none}
.cx-table th[aria-sort=none]::after{content:""}
.cx-table th[aria-sort=ascending]::after{content:" ▲"}
.cx-table th[aria-sort=descending]::after{content:" ▼"}
.cx-table.kv th{width:9em;color:var(--cx-muted);font-weight:400;background:none;position:static}
.cx-table td{white-space:normal;min-width:6em}
.cx-table td.is-num,.cx-table td.cx-num{white-space:nowrap}
.cx-error p,.cx-notice p{margin:0}
.cx-error ul{margin:var(--cx-sp-1) 0 0;padding-left:var(--cx-sp-5)}
.cx-tabs{margin:var(--cx-sp-3) 0}
.cx-actions{margin:var(--cx-sp-3) 0}
.cx-menu-list{background:var(--cx-bg)}
.cx-brand{font-weight:600;color:var(--cx-text);text-decoration:none;white-space:nowrap}
.cx-form{max-width:640px}
.cx-form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.cx-form select,.cx-form textarea,.filters input,.filters select,.imp input,.imp select{width:100%;min-height:var(--cx-touch);padding:8px 12px;border:1px solid var(--cx-line-ui);border-radius:var(--cx-r-md);background:var(--cx-bg);color:var(--cx-text);font:inherit;font-size:var(--cx-fs-body)}
.cx-form textarea{min-height:96px}
.cx-form label{font-size:var(--cx-fs-table);font-weight:600}
.cx-form label.chk{font-weight:400}
.chk{display:inline-flex;align-items:center;gap:var(--cx-sp-2);min-height:var(--cx-touch);margin-right:var(--cx-sp-3)}
.chk input{width:auto!important;min-height:0!important}
.chks{display:flex;flex-wrap:wrap}
.inl{display:inline-block;margin:0}
.mini{min-height:32px;min-width:32px;padding:2px 8px;border:1px solid var(--cx-line-ui);border-radius:var(--cx-r-sm);background:var(--cx-bg);color:var(--cx-text);font:inherit;cursor:pointer}
.box{border-top:1px solid var(--cx-border);padding:0 0 var(--cx-sp-3);margin:var(--cx-sp-5) 0}
.soon{color:var(--cx-muted)}
.filters details,.imp{border:1px solid var(--cx-border);border-radius:var(--cx-r-sm);padding:var(--cx-sp-1) var(--cx-sp-3);margin:var(--cx-sp-3) 0}
.filters summary,.imp summary{min-height:var(--cx-touch);display:flex;align-items:center;cursor:pointer}
.frow{display:flex;flex-wrap:wrap;gap:var(--cx-sp-2);margin:var(--cx-sp-2) 0}.frow>*{flex:1 1 140px}
.empty{color:var(--cx-muted);padding:var(--cx-sp-3) 0}
.cards.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--cx-sp-3)}
.card{background:var(--cx-bg);border:1px solid var(--cx-border);border-radius:0;padding:var(--cx-sp-3) var(--cx-sp-4)}
a.card.app{display:flex;flex-direction:column;gap:var(--cx-sp-1);text-decoration:none;color:inherit;min-height:var(--cx-touch)}
a.card.app:hover{background:var(--cx-surface)}
a.card.app .ic{color:var(--cx-accent)}
.caps{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--cx-sp-3)}
.cap{border:1px solid var(--cx-border);padding:0 var(--cx-sp-4) var(--cx-sp-3)}
.notices{list-style:none;padding:0}.notices li{border-bottom:1px solid var(--cx-border);padding:var(--cx-sp-3) 0}.notices li.unread{box-shadow:inset 3px 0 0 var(--cx-accent);padding-left:var(--cx-sp-3)}
.cx-kanban-card[draggable=true]{cursor:grab}.cx-kanban-card.drag{opacity:.4}
.cx-kanban-col.over{outline:2px dashed var(--cx-accent)}
.cx-kanban-card strong a{text-decoration:none}
.cx-kanban-move{display:flex;gap:var(--cx-sp-2);align-items:center}.cx-kanban-move .cx-select{min-height:32px;padding:3px 8px;font-size:var(--cx-fs-table)}
#csv-result{margin-top:var(--cx-sp-2)}
/* editor */
.ed{display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:var(--cx-sp-4);margin:var(--cx-sp-3) 0}
@media (max-width:700px){.ed{grid-template-columns:1fr}}
.ed .pane{border:1px solid var(--cx-border);border-radius:var(--cx-r-sm);padding:0 var(--cx-sp-3) var(--cx-sp-3)}
.ed ul{list-style:none;padding:0;margin:0}
.ed li.item{display:flex;align-items:center;gap:var(--cx-sp-1);border-bottom:1px solid var(--cx-border)}
.ed li.item button.pick{flex:1;text-align:left;background:none;border:0;color:inherit;font:inherit;min-height:var(--cx-touch);cursor:pointer;padding:var(--cx-sp-1)}
.ed li.item.sel{background:var(--cx-accent-soft)}
.sect{border:1px solid var(--cx-border);border-radius:var(--cx-r-sm);padding:0 var(--cx-sp-4) var(--cx-sp-3);margin:var(--cx-sp-3) 0}
.ed .rowline{display:flex;flex-wrap:wrap;gap:var(--cx-sp-2);align-items:center;margin:var(--cx-sp-2) 0}
.ed .rowline>*{flex:1 1 120px}.ed .rowline>button{flex:0 0 auto}
.ed label,#editor label{display:block;margin:var(--cx-sp-2) 0 var(--cx-sp-1);font-weight:600;font-size:var(--cx-fs-table)}
#editor label.chk{display:inline-flex;font-weight:400}
#editor input:not([type=checkbox]),#editor select,#editor textarea{width:100%;min-height:var(--cx-touch);padding:8px 12px;border:1px solid var(--cx-line-ui);border-radius:var(--cx-r-md);background:var(--cx-bg);color:var(--cx-text);font:inherit;font-size:var(--cx-fs-body)}
#editor .cx-btn,.cx-form .cx-btn{width:auto}
@media print{.cx-nav,.core-bar{display:none}}
