/* finesse · register=product · A=wine+white · B=clear+compact · C=index+reading rail
 * D=native disclosure · E=wine fabric+white porcelain · SOUL=6 SPECTACLE=2 DENSITY=5 */

.dossier-shelf { background:#fff; padding-block:clamp(42px,6vw,84px); }
.dossier-shelf-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); border:1px solid #e9dce3; border-radius:23px; overflow:clip; box-shadow:0 14px 38px #3c142514; }
.dossier-shelf-lead, .dossier-book-header {
  color:#fff; background-color:#5f1630;
  background-image:repeating-linear-gradient(133deg,#fff0 0 4px,#ffffff0a 4px 5px,#fff0 5px 8px), radial-gradient(ellipse at 15% -30%,#a5536d 0%,transparent 67%), linear-gradient(119deg,#471026,#742542 62%,#501329);
}
.dossier-shelf-lead { padding:clamp(25px,4.2vw,55px); display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
.dossier-mark { display:flex; align-items:center; gap:8px; color:#f9e3eb; font-size:14px; font-weight:650; }
.dossier-mark svg { width:17px; height:17px; }
.dossier-shelf-lead h2 { font-size:clamp(27px,4vw,48px); line-height:1.21; margin:13px 0; font-weight:720; overflow-wrap:anywhere; }
.dossier-shelf-lead>p:not(.dossier-mark) { max-width:28em; color:#f8eaf0; line-height:1.75; font-size:14px; }
.dossier-shelf-cta { margin-top:25px; color:#631b35; background:#fff; }
.dossier-shelf-cta:hover { background:#f8e8ee; }
.dossier-shelf-lead :focus-visible, .dossier-book-header :focus-visible { outline-color:#fff; }
.dossier-shelf-index { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 15px; align-content:center; padding:clamp(18px,3vw,38px); }
.dossier-shelf-index a { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:7px; min-height:56px; border-bottom:1px solid #eee4e8; padding-inline:3px; font-size:13px; }
.dossier-shelf-index a:hover { color:var(--wine); border-color:#a5647e; }
.dossier-shelf-index a>span { display:flex; align-items:center; gap:7px; font-weight:670; white-space:nowrap; }
.dossier-shelf-index a svg { width:15px; height:15px; color:var(--wine); flex:none; }
.dossier-shelf-index a>svg { width:13px; height:13px; }
.dossier-shelf-index small { color:var(--muted); font-size:11px; white-space:nowrap; }

.dossier-append { margin-block:clamp(26px,4vw,51px); }
.dossier-append-inner { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:16px; border-block:1px solid #e9dce3; padding:17px 0; }
.dossier-emblem { display:grid; place-items:center; width:38px; height:38px; border-radius:11px; color:var(--wine); background:#f7eaf0; }
.dossier-append h2 { font-size:17px; line-height:1.45; overflow-wrap:anywhere; }
.dossier-append p { color:var(--muted); font-size:13px; margin-top:4px; }
.dossier-work-link { margin-top:12px; border-top:1px solid #eddee5; }
.dossier-work-link a { display:inline-flex; align-items:center; gap:7px; min-height:44px; color:var(--wine); font-size:13px; font-weight:670; }
.dossier-work-link a:hover { text-decoration:underline; text-underline-offset:4px; }
.dossier-work-link svg { width:15px; height:15px; }

.dossier-book-top { display:flex; justify-content:space-between; gap:18px; align-items:center; min-height:172px; padding-block:12px 25px; }
.dossier-back { color:#f7e1eb; font-size:13px; display:inline-flex; align-items:center; min-height:44px; }
.dossier-back:hover { text-decoration:underline; text-underline-offset:4px; }
.dossier-book-top h1 { font-size:clamp(39px,6vw,71px); line-height:1.1; margin-block:4px 9px; font-weight:690; letter-spacing:.02em; }
.dossier-book-top p { color:#f9eaf0; font-size:clamp(13px,2vw,16px); }
.dossier-book-mark { display:grid; text-align:right; color:#f7dde7; flex:none; }
.dossier-book-mark span { color:#fff0f6; font:450 clamp(53px,9vw,98px)/1 Georgia,serif; font-variant-numeric:lining-nums; }
.dossier-book-mark small { font-size:12px; letter-spacing:.13em; }
.dossier-book-content { padding-bottom:clamp(40px,6vw,78px); }
.dossier-boards { display:flex; align-items:center; gap:12px 24px; flex-wrap:wrap; border-bottom:1px solid #e9dce3; padding-block:10px; }
.dossier-boards a { min-height:44px; display:inline-flex; align-items:center; white-space:nowrap; font-size:14px; font-weight:620; color:var(--muted); border-bottom:2px solid transparent; }
.dossier-boards a[aria-current], .dossier-boards a:hover { color:var(--wine); border-bottom-color:var(--wine); }
.dossier-board-picker { display:none; }
.dossier-layout { display:grid; grid-template-columns:minmax(205px,.79fr) minmax(0,2.21fr); gap:clamp(24px,4vw,55px); margin-top:30px; }
.dossier-directory h2 { display:flex; align-items:center; gap:9px; font-size:19px; font-weight:690; }
.dossier-directory h2 svg { color:var(--wine); width:18px; height:18px; flex:none; }
.dossier-directory>p { color:var(--muted); font-size:13px; line-height:1.65; margin-block:6px 14px; }
.dossier-directory nav { border-top:1px solid #eadfe4; }
.dossier-directory nav a { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:6px; min-height:46px; padding:8px 9px; border-bottom:1px solid #eadfe4; font-size:14px; }
.dossier-directory nav a span { overflow-wrap:anywhere; }
.dossier-directory nav a svg { width:15px; height:15px; color:var(--wine); }
.dossier-directory nav a[aria-current], .dossier-directory nav a:hover { background:#f9f0f4; color:var(--wine-deep); font-weight:680; }
.dossier-reading { min-width:0; scroll-margin-top:14px; }
.dossier-topic { padding:2px 0 20px; }
.dossier-status { display:inline-flex; max-width:100%; padding:4px 10px; color:#683049; background:#f8edf2; border:1px solid #eddae3; border-radius:999px; font-size:12px; font-weight:640; }
.dossier-topic h2 { font-size:clamp(27px,4vw,44px); line-height:1.17; font-weight:710; margin:11px 0 5px; overflow-wrap:anywhere; }
.dossier-topic>a, .dossier-level-link, .dossier-plan-links a { display:inline-flex; min-height:44px; align-items:center; gap:7px; color:var(--wine); font-size:13px; font-weight:670; }
.dossier-topic>a:hover, .dossier-level-link:hover, .dossier-plan-links a:hover { text-decoration:underline; text-underline-offset:4px; }
.dossier-topic>a svg, .dossier-level-link svg, .dossier-plan-links svg { width:15px; height:15px; flex:none; }
.dossier-rail { position:relative; display:grid; gap:8px; }
.dossier-rail::before { content:""; position:absolute; top:18px; bottom:18px; left:31px; width:1px; background:#cca7b8; }
.dossier-level { position:relative; border:1px solid #e8dce2; border-radius:13px; background:#fff; scroll-margin-top:14px; }
.dossier-level[open] { border-color:#c9a3b4; box-shadow:0 6px 17px #5021370b; }
.dossier-level summary { list-style:none; display:grid; grid-template-columns:36px minmax(0,1fr) 13px; align-items:center; gap:11px; padding:11px 16px; min-height:64px; cursor:pointer; border-radius:12px; }
.dossier-level summary::-webkit-details-marker { display:none; }
.dossier-level summary:hover, .dossier-level[open] summary { background:#fcf6f9; }
.dossier-number { display:grid; place-items:center; width:31px; height:31px; border:1px solid #dfc5d1; border-radius:9px; color:#741f3d; background:#f8edf2; font:620 14px/1 system-ui,sans-serif; font-variant-numeric:tabular-nums; }
.dossier-level[open] .dossier-number { color:#fff; background:#731b37; border-color:#731b37; }
.dossier-level-heading { display:grid; gap:3px; min-width:0; }
.dossier-level-heading small { color:#765a69; font-size:12px; font-weight:670; }
.dossier-level-heading strong { font-size:16px; font-weight:690; line-height:1.35; overflow-wrap:anywhere; }
.dossier-chevron { display:block; width:8px; height:8px; border-right:1.5px solid #762345; border-bottom:1.5px solid #762345; transform:translateY(-2px) rotate(45deg); transition:transform .16s ease; }
.dossier-level[open] .dossier-chevron { transform:translateY(2px) rotate(225deg); }
.dossier-level-body { padding:15px 18px 8px 64px; }
.dossier-level-body>p, .dossier-review p { font-size:14px; color:#43343c; line-height:1.7; overflow-wrap:anywhere; }
.dossier-review { margin-top:12px; border-top:1px solid #ebdfe6; padding-top:9px; display:grid; grid-template-columns:auto minmax(0,1fr); gap:8px; }
.dossier-review>span { color:var(--wine); font-size:12px; font-weight:700; white-space:nowrap; padding-top:3px; }
.dossier-reuse { margin-top:12px; padding:10px 12px; background:#faf3f6; border:1px solid #eadfe4; border-radius:10px; }
.dossier-reuse>p { font-size:13px; font-weight:670; color:var(--wine-deep); }
.dossier-reuse dl { margin:4px 0 0; }
.dossier-reuse dl>div { display:grid; grid-template-columns:minmax(72px,.2fr) minmax(0,1fr); gap:8px; border-top:1px solid var(--line); padding:5px 0; font-size:13px; }
.dossier-reuse dt { color:var(--wine); font-weight:650; }
.dossier-reuse dd { margin:0; overflow-wrap:anywhere; }
.dossier-related { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:58px; margin-top:13px; padding:9px 14px; border:1px solid #eadfe4; border-radius:12px; color:var(--wine-deep); }
.dossier-related:hover { background:#faf2f6; border-color:#bd92a6; }
.dossier-related span { display:grid; font-size:12px; gap:2px; }
.dossier-related strong { font-size:15px; overflow-wrap:anywhere; }
.dossier-related small { color:var(--muted); font-size:13px; overflow-wrap:anywhere; }
.dossier-related svg { flex:none; }

.dossier-planner { margin-top:24px; padding:clamp(15px,3vw,25px); border:1px solid #e5d6de; border-radius:17px; background:linear-gradient(155deg,#f9f1f5,#fff 65%); scroll-margin-top:14px; }
.dossier-planner-title { display:flex; align-items:center; gap:12px; margin-bottom:15px; }
.dossier-planner-title .dossier-emblem { flex:none; }
.dossier-planner h3 { margin:0 0 3px; font-size:21px; line-height:1.35; }
.dossier-planner-title p { color:var(--muted); font-size:13px; }
.dossier-planner form { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:end; gap:10px; }
.dossier-planner form label { display:grid; gap:4px; font-size:13px; font-weight:650; min-width:0; }
.dossier-planner select { width:100%; min-width:0; min-height:44px; border:1px solid #dbbecd; border-radius:9px; padding:7px 9px; color:var(--ink); background:#fff; font-size:14px; }
.dossier-planner button { justify-self:start; grid-column:1/-1; }
.dossier-plan-result { margin-top:19px; padding:14px 5px 0; border-top:1px solid #eadce4; border-radius:8px; scroll-margin-top:14px; }
.dossier-plan-result:focus-visible { outline:2px solid #b47c97; outline-offset:3px; }
.dossier-plan-result h4 { margin:0; font-size:17px; }
.dossier-plan-result dl { margin:8px 0 3px; }
.dossier-plan-result dl div { display:grid; grid-template-columns:minmax(80px,.28fr) minmax(0,1fr); gap:10px; padding-block:8px; border-bottom:1px solid #eee4e9; font-size:14px; }
.dossier-plan-result dt { color:var(--wine); font-weight:670; }
.dossier-plan-result dd { margin:0; overflow-wrap:anywhere; }
.dossier-plan-result dd p { color:var(--muted); font-size:13px; margin-top:3px; }
.dossier-plan-links { display:flex; flex-wrap:wrap; gap:2px 15px; }
.dossier-assistant-action { padding:7px 12px; border-top:1px solid var(--line); }
.dossier-assistant-action button { display:flex; align-items:center; justify-content:space-between; gap:9px; width:100%; min-height:43px; padding:7px 10px; border:1px solid #d9bbca; border-radius:9px; background:#faf2f6; color:var(--wine); font-size:13px; font-weight:660; }
.dossier-assistant-action button:hover { border-color:var(--wine); }
.dossier-assistant-action svg { width:15px; height:15px; }
.admin-fieldset { min-width:0; border:1px solid #e3d4dc; border-radius:11px; margin:0; padding:14px; display:grid; gap:10px; }
.admin-fieldset legend { color:var(--wine); padding:0 6px; font-weight:660; }

@media (max-width:840px) {
  .dossier-shelf-index a>svg { display:none; }
  .dossier-shelf-index a { grid-template-columns:minmax(0,1fr) auto; }
}
@media (max-width:690px) {
  .dossier-shelf-grid, .dossier-layout { grid-template-columns:minmax(0,1fr); }
  .dossier-shelf-lead { padding:25px 20px; }
  .dossier-shelf-index { padding:8px 13px 13px; gap:0 12px; }
  .dossier-shelf-index a { min-height:46px; }
  .dossier-book-top { min-height:130px; padding-block:6px 14px; }
  .dossier-book-mark small { display:none; }
  .dossier-boards { display:none; }
  .dossier-board-picker { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:8px; padding-block:10px; border-bottom:1px solid #e9dce3; }
  .dossier-board-picker select { min-height:44px; min-width:0; border:1px solid #dbbecd; border-radius:9px; padding:7px 9px; color:var(--ink); background:#fff; }
  .dossier-layout { margin-top:15px; gap:19px; }
  .dossier-directory>p { margin-block:2px 6px; }
  .dossier-directory nav { display:flex; overflow-x:auto; scrollbar-width:thin; gap:7px; border:0; padding:2px 3px 6px; }
  .dossier-directory nav a { display:flex; white-space:nowrap; min-height:44px; border:1px solid #eadfe4; border-radius:8px; flex:none; font-size:13px; }
  .dossier-directory nav a svg { display:none; }
  .dossier-topic { padding-bottom:11px; }
  .dossier-level summary { padding:9px 11px; gap:7px; }
  .dossier-rail::before { left:27px; }
  .dossier-level-body { padding:12px 13px 5px; }
  .dossier-planner form { grid-template-columns:minmax(0,1fr); }
  .dossier-append-inner { grid-template-columns:auto minmax(0,1fr); gap:9px 12px; }
  .dossier-append-inner>a { grid-column:2; justify-self:start; }
}
@media (max-width:360px) {
  .dossier-shelf-index a>span>svg { display:none; }
  .dossier-review { grid-template-columns:minmax(0,1fr); gap:1px; }
}
@media (prefers-reduced-motion:reduce) {
  .dossier-chevron { transition:none; }
}
