/* PrototypeKit 1.1.0: review-only layout, no business components. */
.prototype-bar{min-height:58px;display:flex;align-items:center;gap:24px;padding:10px 22px;background:#202b3c;color:#f5f7fb;position:relative;z-index:60;font-size:13px;flex-wrap:wrap}
.prototype-identity{display:flex;align-items:center;gap:9px}
.prototype-identity strong{font-size:14px}
.version{font-size:11px;background:#344154;border:1px solid #4d5b6e;padding:2px 5px;border-radius:4px}
.prototype-tag{color:#aebacc;font-size:12px}
.segmented{display:flex;background:#142033;border:1px solid #405069;border-radius:6px;padding:3px}
.segmented button{padding:6px 14px;color:#bcc8da;border-radius:4px}
.segmented button.active{background:#fff;color:#243247;box-shadow:0 1px 3px #0002}
.prototype-actions{margin-left:auto;display:flex;gap:7px}
.tool-button{color:#dce5f3;border:1px solid #536077;border-radius:5px;padding:7px 10px}
.tool-button[aria-pressed=true]{background:#e8d8bc;color:#583b23;border-color:#e8d8bc}
.review-layout{display:flex;min-height:calc(100vh - 58px);align-items:stretch}
.scene-panel,.notes-panel{display:none}
.explain .scene-panel,.explain .notes-panel{display:block;background:#fbf8f3}
.scene-panel{width:190px;flex-shrink:0;border-right:1px solid #ded4c7;padding:18px 13px;max-height:calc(100vh - 58px);position:sticky;top:0;overflow-y:auto}
.notes-panel{width:326px;min-width:245px;max-width:520px;flex-shrink:0;border-left:1px solid #ded4c7;padding:22px;max-height:calc(100vh - 58px);position:sticky;top:0;overflow:auto;resize:horizontal;direction:rtl}
.notes-panel>*{direction:ltr}
.panel-caption{font-size:11px;letter-spacing:1.1px;color:#97754e;margin-bottom:10px;font-weight:650}
.note-tag{display:inline-flex;border:1px solid #d6c3a9;background:#f0e6d7;color:#78502b;padding:3px 6px;border-radius:4px;font-size:11px;margin-bottom:10px}
.note-title{font-size:17px;line-height:1.5;margin-bottom:12px}
.note-body{font-size:13px;line-height:1.85;color:#5e554b}
.note-body ul{padding-left:17px;margin:9px 0 17px}
.note-body p{margin-bottom:12px}
.note-body strong{color:#453b31}
.note-body .assumption{border-left:3px solid #bd9b69;padding:10px;background:#f3ebdf;margin:16px 0}
.note-meta{border-top:1px solid #e4dacc;padding-top:15px;margin-top:18px;font-size:12px;color:#8b7d6b;line-height:1.8}
.note-jump{width:100%;margin-top:18px;background:#fffaf3;border-color:#d8c4a7;color:#78502b}
.note-mark{display:none;align-items:center;justify-content:center;font-size:10px;min-width:21px;height:20px;background:#eee2d1;color:#78502b;border:1px solid #d8c3a5;border-radius:4px;margin-left:6px;padding:1px 4px;vertical-align:middle;line-height:1;white-space:nowrap}
.explain .note-mark{display:inline-flex}
.note-mark.active{background:#78502b;color:#fff}
.scene-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.scene-heading strong{font-size:13px;color:#665640}
.scene-group{font-size:11px;color:#9a8a76;margin:20px 7px 8px}
.scene-button{display:block;width:100%;text-align:left;font-size:12px;padding:9px 9px;border-radius:5px;line-height:1.5;margin:3px 0}
.scene-button.active{background:#ecdfcb;color:#725027;font-weight:600}
.scene-button:hover{background:#f1e9dd}
.scene-description{font-size:11px;line-height:1.7;color:#988774;padding:12px 8px;border-top:1px solid #e5dacb;margin-top:18px}
.scene-collapsed .scene-panel{width:42px;padding:16px 5px}
.scene-collapsed .scene-content,.scene-collapsed .scene-heading strong{display:none}
.notes-hidden .notes-panel{display:none}
.note-tools{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;gap:6px}
.mini-tool{font-size:12px;color:#866b48;border:1px solid #d8cbb9;border-radius:4px;padding:4px 6px}
.explain .overlay-layer{left:190px;right:326px}
.explain.scene-collapsed .overlay-layer{left:42px}
.explain.notes-hidden .overlay-layer{right:0}
@media(min-width:1700px){.notes-panel{width:360px}
.explain .overlay-layer{right:360px}}
@media(max-width:1150px){.prototype-bar{gap:12px}
.prototype-tag{display:none}
.explain .scene-panel{width:155px;padding:15px 8px}
.explain .notes-panel{width:275px;min-width:220px;padding:16px}
.explain .overlay-layer{left:155px;right:275px}
.explain .scene-collapsed .scene-panel{width:42px}
.explain.scene-collapsed .overlay-layer{left:42px}
.explain .scene-panel .scene-heading{gap:4px}}
@media(max-width:760px){.prototype-bar{padding:10px 12px;gap:8px;min-height:98px}
.prototype-identity{flex:1}
.prototype-actions{width:100%;margin:0;gap:6px}
.tool-button{font-size:12px;padding:6px 9px}
.segmented button{font-size:12px;padding:5px 10px}
.explain .overlay-layer,.explain.scene-collapsed .overlay-layer{inset:98px 0 0;padding:12px}
.explain .drawer-layer{padding:0}
.explain .scene-panel{display:none}
.explain .notes-panel{position:fixed;z-index:55;left:0;right:0;bottom:0;top:auto;width:100%;max-width:none;min-width:0;max-height:47dvh;box-shadow:0 -5px 22px #3d302820;border-top:1px solid #d8cbb9;border-left:0;resize:none}
.explain.notes-hidden .notes-panel{display:none}
.explain .overlay-layer{bottom:47dvh}
.explain.notes-hidden .overlay-layer{bottom:0}
.explain .modal{max-height:100%}
.explain .product{padding-bottom:45vh}
.explain.notes-hidden .product{padding-bottom:0}
.notes-panel .note-title{font-size:15px}
.note-body{font-size:12px}
.scene-mobile-select{display:block!important}}
.notes-panel{text-align:left}
.filter-row label>.note-mark{position:absolute;right:0;top:-2px}
.explain.scene-collapsed .scene-panel{width:42px}
:root{--prototype-height:58px}
.prototype-bar{position:sticky;top:0}
.scene-panel,.notes-panel{top:var(--prototype-height);max-height:calc(100dvh - var(--prototype-height))}
@media(max-width:760px){.notes-panel{top:auto!important;max-height:47dvh!important}
.explain .overlay-layer,.explain.scene-collapsed .overlay-layer{top:var(--prototype-height)}
.explain .modal{max-height:100%}}
.explain .notes-panel{width:var(--notes-width,520px);min-width:360px;max-width:min(720px,calc(100vw - 480px));padding:0;direction:ltr;resize:none;overflow:visible;display:flex;flex-direction:column;height:calc(100dvh - var(--prototype-height));max-height:calc(100dvh - var(--prototype-height));z-index:50;flex-shrink:0}
.explain.notes-hidden .notes-panel{display:none}
.notes-summary-header{padding:20px 22px 17px;border-bottom:1px solid #ded4c7;background:#fbf8f3;flex-shrink:0}
.notes-summary-title{display:flex;align-items:center;justify-content:space-between;gap:12px}
.notes-summary-title h2{font-size:18px;line-height:1.5}
.notes-count{color:#866848;background:#eee3d3;border-radius:4px;padding:4px 7px;white-space:nowrap;font-size:12px}
.notes-summary-header p{font-size:12px;line-height:1.7;color:#96836c;margin-top:9px}
.notes-scroll{overflow:auto;flex:1;min-height:0;padding:18px 20px 24px;overscroll-behavior:contain;scrollbar-gutter:stable}
.notes-group+.notes-group{margin-top:24px}
.notes-group>h3{font-size:12px;color:#96816a;font-weight:500;margin:0 0 10px 2px}
.note-card{border:1px solid #e4d9ca;background:#fffdf9;border-radius:7px;padding:16px;margin:0 0 12px;cursor:pointer;scroll-margin:12px;transition:border-color .15s,box-shadow .15s}
.note-card.selected{border-color:#ad7b3e;box-shadow:inset 3px 0 #ad7b3e;background:#fffcf5}
.note-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:12px}
.note-select-button{display:flex;align-items:baseline;text-align:left;gap:9px;padding:0;font-weight:600;font-size:14px;line-height:1.6;color:#463c2f}
.note-id{display:inline-block;font-size:11px;line-height:1.6;font-weight:500;border:1px solid #d8c3a5;background:#f2e8db;color:#805e32;padding:1px 5px;border-radius:4px;white-space:nowrap}
.note-selected-label{font-size:10px;color:#9b743e;white-space:nowrap;margin-top:3px;visibility:hidden}
.note-card.selected .note-selected-label{visibility:visible}
.note-card .note-body{font-size:13px;line-height:1.85;color:#665c4e}
.note-card .note-body p:last-child{margin-bottom:0}
.note-card .note-body ul{margin:8px 0 12px}
.note-card .assumption{margin:12px 0 0;padding:9px 12px;background:#f6efe4;border-left-width:2px;font-size:12px}
.note-condition{font-size:12px;background:#f5eee2;border-radius:4px;color:#85683e;padding:9px 11px;margin:0 0 12px;line-height:1.7;display:flex;gap:6px;flex-wrap:wrap;justify-content:space-between;align-items:center}
.note-scene-link{color:#815a28;border-bottom:1px solid #cfb895;font-size:12px;padding:0;white-space:nowrap}
.notes-resizer{position:absolute;left:-5px;top:0;bottom:0;width:10px;cursor:col-resize;touch-action:none;z-index:2}
.notes-resizer:after{content:"";position:absolute;top:46%;height:42px;width:4px;left:3px;border-radius:4px;background:#baa78f}
.notes-resizer:hover:after,.notes-resizer:focus-visible:after{background:#8a6537}
.resizing-notes{cursor:col-resize;user-select:none}
.explain .note-element-active{outline:2px solid #ba8a46!important;outline-offset:3px;border-radius:3px}
.explain .overlay-layer:not(.drawer-layer){overflow-x:auto;justify-content:safe center}
.explain .modal:not(.drawer){flex-shrink:0;max-width:none}
.explain .modal.wide{min-width:650px}
@media(min-width:761px) and (max-width:1100px){.explain .notes-panel{width:var(--notes-width,480px);min-width:300px;max-width:calc(100vw - 380px)}
.notes-summary-header{padding:17px}
.notes-scroll{padding:14px}
.note-card{padding:13px}}
@media(max-width:760px){.explain .notes-panel{width:100%;min-width:0;max-width:none;height:47dvh;max-height:47dvh!important;z-index:55}
.notes-summary-header{padding:12px 16px}
.notes-summary-title h2{font-size:15px}
.notes-summary-header .note-tools{margin-bottom:8px}
.notes-summary-header p{display:none}
.notes-scroll{padding:12px 14px 20px}
.note-card{padding:13px}
.notes-resizer{display:none}
.explain .modal:not(.drawer),.explain .modal.wide{min-width:0;max-width:100%;flex-shrink:1}
.note-selected-label{display:none}}

/* Two levels: page disclosure, then meaningful scene entries. */
.scene-page{margin:8px 0}
.scene-page-toggle{display:flex;align-items:center;gap:6px;width:100%;text-align:left;padding:9px 4px;font-size:12px;color:#665640;border-radius:4px;line-height:1.5}
.scene-page-toggle:hover{background:#f1e9dd}
.scene-page-toggle.current-page{font-weight:600;color:#725027}
.scene-chevron{width:10px;flex-shrink:0}
.scene-page-count{margin-left:auto;font-size:10px;font-weight:400;color:#9a8a76}
.scene-children{margin-left:9px;padding-left:8px;border-left:1px solid #ded4c7}
.scene-children[hidden]{display:none}
.scene-children .scene-button{padding:8px 7px}
