:root{--paper: #f5f4ef;--card: #fffffd;--ink: #141412;--muted: #6e6a60;--hairline: #d8d4ca;--hairline-strong: #b9b4a7;--accent: #8c7347;--danger: #a3271e;--amber: #a06a00;--green: #33691e;--font-display: "Didot", "Bodoni 72", "Playfair Display", "Georgia", serif;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", Menlo, monospace}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh}body{background:var(--paper);color:var(--ink);font-family:var(--font-ui);font-size:14px;line-height:1.5}a{color:inherit}button{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.eyebrow{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-weight:500}.display{font-family:var(--font-display);font-weight:400;letter-spacing:.01em}.mono{font-family:var(--font-mono);font-size:12px}.topbar{background:var(--card);border-bottom:1px solid var(--ink);position:sticky;top:0;z-index:20}.topbar-inner{max-width:1240px;margin:0 auto;padding:14px 28px 12px;display:flex;align-items:baseline;gap:40px}.brand{display:flex;flex-direction:column;gap:1px;text-decoration:none}.brand .name{font-family:var(--font-display);font-size:21px;letter-spacing:.04em}.brand .name em{font-style:italic;color:var(--accent)}.topnav{display:flex;gap:26px;margin-left:auto;align-items:baseline}.topnav a{text-decoration:none;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);padding-bottom:14px;border-bottom:2px solid transparent;margin-bottom:-13px}.topnav a.active{color:var(--ink);border-bottom-color:var(--ink)}.topnav a:hover{color:var(--ink)}.usermenu{position:relative;align-self:flex-start;margin-top:-7px}.usermenu-btn{display:flex;align-items:center;gap:8px;background:none;border:1px solid transparent;cursor:pointer;padding:5px 10px;font-size:12.5px;color:var(--ink)}.usermenu-btn:hover,.usermenu.open .usermenu-btn{border-color:var(--hairline-strong)}.usermenu-btn svg{color:var(--muted)}.usermenu-btn .chev{font-size:8px;color:var(--muted);transition:transform .12s ease}.usermenu.open .chev{transform:rotate(180deg)}.usermenu-dropdown{position:absolute;right:0;top:calc(100% + 7px);min-width:200px;z-index:40;background:var(--card);border:1px solid var(--ink);box-shadow:4px 4px #14141212;display:flex;flex-direction:column;padding:5px 0}.usermenu-role{padding:6px 16px 8px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--hairline);margin-bottom:4px}.usermenu-dropdown a,.usermenu-dropdown button{display:block;text-align:left;text-decoration:none;background:none;border:none;cursor:pointer;padding:8px 16px;font-size:12.5px;color:var(--ink)}.usermenu-dropdown a:hover,.usermenu-dropdown button:hover{background:#f2f0e9}.topbar:after{content:"";display:block;border-bottom:1px solid var(--hairline-strong);margin-top:3px}.page{max-width:1240px;margin:0 auto;padding:30px 28px 80px}.page-head{display:flex;align-items:baseline;gap:18px;margin-bottom:22px;flex-wrap:wrap}.page-head h1{font-family:var(--font-display);font-size:30px;font-weight:400;margin:0}.page-head .spacer{flex:1}.btn{background:var(--ink);color:var(--card);border:1px solid var(--ink);padding:7px 16px;cursor:pointer;font-size:11px;letter-spacing:.14em;text-transform:uppercase}.btn:hover{background:#2e2e2a}.btn.ghost{background:transparent;color:var(--ink)}.btn.ghost:hover{background:var(--ink);color:var(--card)}.btn.danger{background:transparent;color:var(--danger);border-color:var(--danger)}.btn.danger:hover{background:var(--danger);color:var(--card)}.btn.small{padding:4px 10px;font-size:10px}.btn:disabled{opacity:.45;cursor:default}.linklike{background:none;border:none;padding:0;cursor:pointer;color:var(--accent);text-decoration:underline;font-size:13px}input,select,textarea{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--hairline-strong);padding:6px 9px}textarea{width:100%;resize:vertical;line-height:1.55}label.field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}label.field>span{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase}.formrow{display:flex;gap:14px;flex-wrap:wrap}.formrow label.field{flex:1;min-width:140px}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.error-text{color:var(--danger);font-size:12.5px}.consumer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(272px,1fr));gap:16px}.consumer-card{background:var(--card);border:1px solid var(--hairline-strong);padding:18px 20px 14px;cursor:pointer;display:flex;flex-direction:column;gap:10px;transition:border-color .12s ease}.consumer-card:hover{border-color:var(--ink)}.consumer-card h2{font-family:var(--font-display);font-size:20px;font-weight:400;margin:0;display:flex;align-items:baseline;gap:8px}.consumer-card .meta{display:flex;flex-direction:column;gap:3px;font-size:12.5px;color:var(--muted)}.consumer-card .meta b{color:var(--ink);font-weight:500}.consumer-card footer{border-top:1px solid var(--hairline);padding-top:8px;display:flex;justify-content:space-between;font-size:11.5px;color:var(--muted)}.badge{display:inline-block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:2px 8px;border:1px solid var(--hairline-strong);color:var(--muted);background:transparent;white-space:nowrap}.badge.st-scenario_chosen{border-color:var(--accent);color:var(--accent)}.badge.st-testing{border-color:#4a5f82;color:#4a5f82}.badge.st-live{border-color:var(--green);color:var(--green)}.badge.st-in_discussion{border-color:var(--hairline-strong);color:var(--ink)}.badge.st-todo{color:var(--ink);border-color:var(--hairline-strong)}.badge.st-in_progress{border-color:#4a5f82;color:#4a5f82}.badge.st-waiting{border-color:var(--amber);color:var(--amber)}.badge.st-done{border-color:var(--green);color:var(--green)}.badge.st-dropped{text-decoration:line-through}.badge.tag{border-style:dashed}.rag{width:9px;height:9px;border-radius:50%;display:inline-block;flex:none}.rag.red{background:var(--danger)}.rag.amber{background:#d18b00}.rag.green{background:#4f8a33}.rag.none{background:transparent;border:1px solid var(--hairline-strong)}table.list{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--hairline-strong)}table.list th{text-align:left;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:500;padding:9px 12px;border-bottom:1px solid var(--ink)}table.list td{padding:9px 12px;border-bottom:1px solid var(--hairline);vertical-align:top}table.list tr:last-child td{border-bottom:none}table.list tr.clickable{cursor:pointer}table.list tr.clickable:hover td{background:#f9f8f4}td.actions-cell{white-space:nowrap;text-align:right}td.actions-cell button{margin-left:6px}.fiche-head{background:var(--card);border:1px solid var(--hairline-strong);padding:20px 24px;margin-bottom:20px}.fiche-head .title-row{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.fiche-head h1{font-family:var(--font-display);font-size:28px;font-weight:400;margin:0 0 4px}.fiche-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:14px}.tabs{display:flex;gap:0;border-bottom:1px solid var(--ink);margin-bottom:18px;flex-wrap:wrap}.tabs button{background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;padding:8px 16px;cursor:pointer;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.tabs button.active{color:var(--ink);border-bottom-color:var(--ink)}.tabs button .count{color:var(--accent);margin-left:5px;font-family:var(--font-mono);font-size:10px}.md{line-height:1.6;max-width:900px}.md h1,.md h2,.md h3{font-family:var(--font-display);font-weight:400;margin:1.2em 0 .4em}.md h1{font-size:22px}.md h2{font-size:18px;border-bottom:1px solid var(--hairline);padding-bottom:4px}.md h3{font-size:15.5px}.md table{border-collapse:collapse;margin:.6em 0}.md th,.md td{border:1px solid var(--hairline-strong);padding:4px 9px;font-size:13px;text-align:left}.md th{background:#efede6;font-weight:600}.md code{font-family:var(--font-mono);font-size:12px;background:#efede6;padding:1px 4px}.md blockquote{border-left:2px solid var(--accent);margin:.6em 0;padding:2px 14px;color:var(--muted)}.md a{color:var(--accent)}.md-editor textarea{font-family:var(--font-mono);font-size:12.5px;min-height:320px}.md-editor .bar{display:flex;gap:10px;margin-bottom:10px;align-items:baseline}.timeline{display:flex;flex-direction:column}.timeline-item{display:grid;grid-template-columns:110px 1fr auto;gap:16px;padding:12px 4px;border-bottom:1px solid var(--hairline)}.timeline-item .when{font-family:var(--font-mono);font-size:12px;color:var(--muted);padding-top:2px}.timeline-item h4{margin:0 0 2px;font-size:14px;font-weight:600}.timeline-item .who{font-size:12px;color:var(--muted)}.kanban{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;align-items:start}.kanban .col{background:#efede6;border:1px solid var(--hairline);padding:10px;min-height:120px}.kanban .col h3{margin:0 0 10px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:500;display:flex;justify-content:space-between}.kanban .kcard{background:var(--card);border:1px solid var(--hairline-strong);padding:10px 12px;margin-bottom:8px;cursor:pointer;font-size:13px}.kanban .kcard:hover{border-color:var(--ink)}.kanban .kcard .sub{margin-top:6px;font-size:11.5px;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14141273;display:flex;align-items:flex-start;justify-content:center;padding:8vh 20px 20px;z-index:50}.modal{background:var(--card);border:1px solid var(--ink);width:640px;max-width:100%;max-height:82vh;overflow:auto;padding:24px 28px}.modal h2{font-family:var(--font-display);font-weight:400;font-size:22px;margin:0 0 18px}.modal .modal-form{display:flex;flex-direction:column;gap:12px}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-card{background:var(--card);border:1px solid var(--ink);box-shadow:0 0 0 4px var(--card),0 0 0 5px var(--hairline-strong);padding:44px 48px 36px;width:380px;text-align:center}.login-card .rule{border:none;border-top:1px solid var(--hairline-strong);margin:18px 0 26px}.login-card form{display:flex;flex-direction:column;gap:12px;text-align:left}.login-card .display{font-size:26px;margin-top:6px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.toolbar input,.toolbar select{font-size:13px}.empty{color:var(--muted);font-style:italic;padding:18px 0}.section-block{background:var(--card);border:1px solid var(--hairline-strong);padding:18px 22px}.muted{color:var(--muted)}.overdue{color:var(--danger);font-weight:600}.page-full{max-width:none;margin:0;padding:0}.page-wide{max-width:none;padding-left:14px;padding-right:14px}.flux-strip{display:flex;align-items:center;gap:14px;padding:8px 20px;background:var(--card);border-bottom:1px solid var(--hairline-strong)}.flux-strip h1{font-family:var(--font-display);font-size:19px;font-weight:400;margin:0;cursor:default}.flux-strip select{font-size:12px;max-width:220px}.savestate{font-family:var(--font-mono);font-size:11px;color:var(--muted)}.flux-banner{background:#f3e9d7;border-bottom:1px solid var(--accent);padding:7px 20px;font-size:12.5px;display:flex;gap:14px;align-items:center}.flux-canvas{height:calc(100vh - 115px)}.flux-banner+.flux-canvas{height:calc(100vh - 151px)}.rm-scroll{overflow-x:auto;background:var(--card);border:1px solid var(--hairline-strong);position:relative}.rm-canvas{position:relative}.rm-headrow{display:flex;border-bottom:1px solid var(--ink);position:sticky;top:0;background:var(--card);z-index:6}.rm-corner{position:sticky;left:0;z-index:7;background:var(--card);border-right:1px solid var(--hairline-strong);flex:none;display:flex;align-items:flex-end;padding:6px 10px}.rm-month{flex:none;border-left:1px solid var(--hairline);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:6px 0 4px 6px;overflow:hidden;white-space:nowrap}.rm-month.year-start{border-left:1px solid var(--hairline-strong)}.rm-month .y{color:var(--ink);font-weight:600}.rm-body{position:relative}.rm-lane{display:flex;border-bottom:1px solid var(--hairline)}.rm-lane:last-child{border-bottom:none}.rm-lanelabel{position:sticky;left:0;z-index:5;background:var(--card);border-right:1px solid var(--hairline-strong);flex:none;padding:8px 10px;display:flex;flex-direction:column;gap:4px}.rm-lanelabel .lname{font-family:var(--font-display);font-size:14.5px;line-height:1.25}.rm-chevron{background:none;border:none;cursor:pointer;color:var(--accent);font-size:11px;padding:0 5px 0 0;vertical-align:1px}.rm-lane-sub{background:#faf9f5}.rm-lane-sub .rm-lanebody{background:transparent}.rm-sublabel{padding-left:26px;background:#faf9f5}.rm-sublabel .subname{font-size:12px;color:var(--muted)}.rm-lanelabel .lbtns{display:flex;gap:4px;align-items:center}.rm-lanelabel .lbtns button{background:none;border:1px solid var(--hairline-strong);color:var(--muted);font-size:10px;padding:1px 6px;cursor:pointer;line-height:1.5;white-space:nowrap}.rm-lanelabel .lbtns button:hover{border-color:var(--ink);color:var(--ink)}.rm-lanebody{position:relative;flex:none;touch-action:none}.rm-lane.drop-target .rm-lanebody{background:color-mix(in srgb,var(--accent) 7%,transparent)}.rm-bar{position:absolute;height:24px;border:1px solid var(--c, var(--accent));border-left-width:3px;background:color-mix(in srgb,var(--c, var(--accent)) 16%,white);font-size:11.5px;line-height:22px;padding:0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:grab;-webkit-user-select:none;user-select:none}.rm-bar:hover{box-shadow:0 1px 4px #1414122e;z-index:3}.rm-bar.conf-proposal,.rm-bar.conf-tbc{border-style:dashed;border-left-style:solid}.rm-bar .qmark{color:var(--c, var(--accent));font-weight:700;margin-left:4px}.rm-handle{position:absolute;top:0;bottom:0;width:7px;cursor:ew-resize}.rm-handle.l{left:-2px}.rm-handle.r{right:-2px}.rm-milestone{position:absolute;display:flex;align-items:center;gap:6px;height:24px;cursor:grab;-webkit-user-select:none;user-select:none;white-space:nowrap;font-size:11.5px;z-index:2}.rm-milestone .diamond{width:9px;height:9px;flex:none;transform:rotate(45deg) translate(0);background:var(--c, var(--accent));border:1px solid var(--c, var(--accent))}.rm-milestone.mt-meeting .diamond{background:var(--card)}.rm-milestone.mt-external .diamond{background:var(--card);border-style:dashed}.rm-milestone.conf-tbc .label:after,.rm-bar.conf-tbc-suffix:after{content:""}.rm-milestone:hover{z-index:4}.rm-markerline{position:absolute;top:0;bottom:0;width:0;border-left:1px dashed var(--hairline-strong);pointer-events:none}.rm-markerline.today{border-left:1.5px solid var(--danger)}.rm-marker-strip{position:relative;height:26px;border-bottom:1px solid var(--hairline);background:#f2f0e9}.rm-marker-chip{position:absolute;top:3px;transform:translate(-4px);font-size:10px;letter-spacing:.06em;background:var(--card);border:1px solid var(--hairline-strong);padding:1px 7px;white-space:nowrap;cursor:grab;-webkit-user-select:none;user-select:none;z-index:4}.rm-marker-chip:before{content:"▾ ";color:var(--danger)}.rm-marker-chip:hover{border-color:var(--ink);z-index:5}.rm-legend{display:flex;gap:18px;margin-top:10px;font-size:11px;color:var(--muted);flex-wrap:wrap;align-items:center}.rm-legend .diamond{width:8px;height:8px;display:inline-block;transform:rotate(45deg);background:var(--accent);margin-right:5px}.rm-legend .dash{display:inline-block;width:22px;border-top:2px dashed var(--hairline-strong);vertical-align:middle;margin-right:5px}.swatches{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.swatches button{width:22px;height:22px;border:1px solid var(--hairline-strong);cursor:pointer;padding:0}.swatches button.sel{outline:2px solid var(--ink);outline-offset:1px}.rm-filter{position:relative}.filter-badge{display:inline-block;margin-left:6px;min-width:15px;padding:0 3px;background:var(--accent);color:var(--card);border-radius:8px;font-size:10px;line-height:15px;text-align:center;letter-spacing:0}.filter-panel{position:absolute;left:0;top:calc(100% + 7px);z-index:30;min-width:260px;max-height:70vh;overflow:auto;background:var(--card);border:1px solid var(--ink);box-shadow:4px 4px #14141212;padding:12px 16px 10px}.filter-allnone{display:flex;gap:14px;padding-bottom:8px;margin-bottom:8px;border-bottom:1px solid var(--hairline)}.filter-allnone .linklike{font-size:11px}.filter-group{display:flex;flex-direction:column;gap:3px}.filter-group label,.filter-foot label{display:flex;align-items:center;gap:7px;font-size:12.5px;cursor:pointer}.filter-foot{margin-top:8px;padding-top:8px;border-top:1px solid var(--hairline)}.btn.ghost.filter-on{border-color:var(--accent);color:var(--accent)}.scope-picker{max-height:230px;overflow:auto;border:1px solid var(--hairline-strong);padding:8px 12px;display:flex;flex-direction:column;gap:6px}.scope-picker label{display:flex;gap:7px;align-items:center;font-size:13px;cursor:pointer}.scope-picker b{font-weight:500}.scope-markets{display:flex;flex-direction:column;gap:3px;padding:3px 0 2px 24px}.scope-markets label{font-size:12.5px;color:var(--muted)}@media(max-width:900px){.kanban{grid-template-columns:1fr 1fr}.topbar-inner{flex-wrap:wrap;gap:12px}.topnav{margin-left:0}.timeline-item{grid-template-columns:1fr;gap:4px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
