/*
 * Process Ideas presentation mode — a warm, low-chrome room display that enlarges the shared map
 * while retaining the established paper, route, and attribution visual language.
 */
.map-canvas-frame{position:relative;flex:0 0 auto;overflow:visible}
.presentation-control{display:inline-flex;align-items:center;justify-content:center;min-height:31px;padding:0 9px;border:1px solid #d7d1c5;border-radius:7px;background:#fffdf7;color:#4a4b45;font:700 9px Manrope,sans-serif;white-space:nowrap;transition:transform .16s cubic-bezier(.23,1,.32,1),background .16s cubic-bezier(.23,1,.32,1),border-color .16s cubic-bezier(.23,1,.32,1)}
.presentation-control:hover,.presentation-control:focus-visible{border-color:#d78573;background:#fff5f1;color:#934431;outline:none;transform:translateY(-1px)}
.presentation-control:active{transform:scale(.97)}
.presentation-enter{border-color:#cfb0a4;background:#fff7f2;color:#a44835}
.presentation-title{display:none;min-width:0;flex:1;align-items:baseline;gap:10px;padding:0 18px;border-left:1px solid #e4ddd1}
.presentation-title span{color:#a85340;font:500 8px "DM Mono",monospace;letter-spacing:.11em;white-space:nowrap}
.presentation-title strong{min-width:0;overflow:hidden;color:#353630;font:600 clamp(18px,2vw,27px)/1 Newsreader,serif;letter-spacing:-.7px;text-overflow:ellipsis;white-space:nowrap}
.presentation-title small{color:#77766e;font:500 8px "DM Mono",monospace;letter-spacing:.04em;white-space:nowrap}

/* Presentation layout intentionally hides editing rails instead of persisting a changed workspace preference. */
.app-shell.presentation-mode{min-height:100vh;background:#f8f6ef}
.app-shell.presentation-mode .topbar{height:58px;padding:0 18px;border-bottom-color:#ded7ca;background:rgba(255,253,247,.98)}
.app-shell.presentation-mode .brand{min-width:auto;gap:7px}
.app-shell.presentation-mode .brand strong{font-size:22px}
.app-shell.presentation-mode .brand strong small,.app-shell.presentation-mode .brand em,.app-shell.presentation-mode .live-status,.app-shell.presentation-mode .top-contributors{display:none}
.app-shell.presentation-mode .presentation-title{display:flex}
.app-shell.presentation-mode .top-actions{min-width:0;gap:6px}
.app-shell.presentation-mode .top-actions>.invite-button,.app-shell.presentation-mode .top-actions>.panel-toggle,.app-shell.presentation-mode .top-actions>.help-button{display:none}
.app-shell.presentation-mode .workbench{display:block;min-height:calc(100vh - 58px)}
.app-shell.presentation-mode .people-rail,.app-shell.presentation-mode .ledger{display:none}
.app-shell.presentation-mode .process-column{height:calc(100vh - 58px);min-height:0;background:#f8f6ef}
.app-shell.presentation-mode .process-hero{display:none}
.app-shell.presentation-mode .map-toolbar{min-height:38px;padding:0 24px;background:#f4f1e8}
.app-shell.presentation-mode .map-toolbar>div{gap:14px}
.app-shell.presentation-mode .map-toolbar button{display:none}
.app-shell.presentation-mode .map-viewport{height:calc(100vh - 138px);min-height:260px;align-items:center;justify-content:center;padding:20px 28px;overflow:hidden;cursor:default;background-image:radial-gradient(rgba(84,83,75,.08) .8px,transparent .8px),linear-gradient(90deg,transparent 0,transparent 50%,rgba(230,93,70,.035) 50%,rgba(230,93,70,.035) 50.1%,transparent 50.1%);background-size:18px 18px,100% 100%;touch-action:auto}
.app-shell.presentation-mode .map-viewport.is-panning{cursor:default}
.app-shell.presentation-mode .map-viewport.is-panning *{pointer-events:auto}
.app-shell.presentation-mode .map-canvas-frame{margin:auto}
.app-shell.presentation-mode .process-map{margin:0;transform-origin:top left;transition:transform .22s cubic-bezier(.23,1,.32,1)}
.app-shell.presentation-mode .map-footer{display:flex;min-height:42px;align-items:center;justify-content:center;padding:9px 24px;background:#f4f1e8;text-align:center}
.app-shell.presentation-mode .map-footer b{color:#a34936}
.app-shell.presentation-mode .stage-card{width:158px;min-height:94px;padding:0;overflow:visible;border-radius:7px 14px 8px 12px;box-shadow:0 9px 20px rgba(42,42,38,.09);transition:transform .18s cubic-bezier(.23,1,.32,1),box-shadow .18s cubic-bezier(.23,1,.32,1),border-color .18s cubic-bezier(.23,1,.32,1)}
.app-shell.presentation-mode .stage-card:hover,.app-shell.presentation-mode .stage-card:focus-within{z-index:35;transform:translateY(-4px);border-color:#d47c69;box-shadow:0 14px 28px rgba(122,66,52,.16)}
.app-shell.presentation-mode .stage-card.selected{padding:0;border:2px solid #d66a53}
.presentation-stage-card .stage-card-open{position:relative;display:flex;width:100%;min-height:92px;flex-direction:column;align-items:flex-start;padding:14px 14px 12px;border:0;border-radius:inherit;background:transparent;color:#34352f;text-align:left}
.presentation-stage-card .stage-index{margin-bottom:6px;color:#9a978d}
.presentation-stage-card strong{max-width:125px;margin:0;color:#30312d;font-size:12px;line-height:1.18}
.presentation-stage-card small{margin-top:7px;color:#77756c;font:400 8px/1.3 "DM Mono",monospace;letter-spacing:0}
.presentation-stage-owner{position:absolute;right:10px;bottom:10px;display:grid;min-width:21px;height:17px;place-items:center;border-radius:3px 7px 3px 6px;color:#fffdf7;font:500 7px "DM Mono",monospace}
.app-shell.presentation-mode .route-layer{overflow:visible}

/* The inspection sheet is deliberately read-only: it supports room discussion without becoming a second editor. */
.presentation-stage-overlay{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:24px;background:rgba(43,43,38,.34);backdrop-filter:blur(3px)}
.presentation-stage-sheet{display:flex;max-width:min(920px,100%);max-height:min(720px,calc(100vh - 48px));flex-direction:column;overflow:hidden;border:1px solid #d8d0c3;border-radius:12px 25px 14px 22px;background:#fffdf7;box-shadow:0 28px 75px rgba(42,41,35,.28)}
.presentation-stage-sheet>header{display:flex;gap:24px;justify-content:space-between;padding:24px 30px 18px;border-bottom:1px solid #e8e1d5;background:linear-gradient(115deg,#fffdf7 0%,#fff8f3 100%)}
.presentation-stage-sheet h2{max-width:660px;margin:6px 0 7px;color:#32332e;font:600 clamp(30px,4vw,45px)/.95 Newsreader,serif;letter-spacing:-1.3px}
.presentation-stage-sheet header p:not(.eyebrow){max-width:650px;margin:0;color:#66655d;font-size:12px;line-height:1.55}
.presentation-stage-sheet>header>button{width:34px;height:34px;flex:0 0 auto;border:1px solid #dfd6c8;border-radius:8px;background:#fffdf7;color:#69675e;font-size:20px;line-height:1}
.presentation-stage-meta{display:flex;gap:12px;flex-wrap:wrap;padding:12px 30px;border-bottom:1px solid #ece5d9;color:#6a6962;font:500 9px "DM Mono",monospace}
.presentation-stage-meta span{display:inline-flex;align-items:center;gap:7px}
.presentation-stage-meta b{display:grid;width:20px;height:20px;place-items:center;border-radius:3px 7px 3px 6px;color:#fffdf7;font:500 7px "DM Mono",monospace}
.presentation-stage-body{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);gap:28px;overflow:auto;padding:22px 30px 25px}
.presentation-task{padding:0 0 12px;border-bottom:1px solid #ede6da}
.presentation-task+.presentation-task{padding-top:12px}
.presentation-task header{display:flex;gap:10px;align-items:center}
.presentation-task header>span{color:#a24c39;font:500 8px "DM Mono",monospace}
.presentation-task header>strong{flex:1;color:#454640;font-size:12px}
.presentation-task-owner{display:grid;min-width:22px;height:19px;place-items:center;border-radius:3px 7px 3px 6px;color:#fffdf7;font:500 7px "DM Mono",monospace}
.presentation-task ul{display:grid;gap:7px;margin:9px 0 0;padding:0;list-style:none}
.presentation-task li{display:flex;gap:7px;align-items:flex-start;color:#636159;font-size:11px;line-height:1.42}
.presentation-task li b{display:grid;min-width:20px;height:20px;place-items:center;border-radius:3px 7px 3px 6px;color:#fffdf7;font:500 7px "DM Mono",monospace}
.presentation-notes{padding:15px 17px;border:1px solid #e2dbce;border-radius:8px 15px 9px 13px;background:#f5f1e7;align-self:start}
.presentation-notes>p:last-child{margin:8px 0 0;color:#5e5e57;font-size:11px;line-height:1.65}
.presentation-empty{margin:10px 0 0;color:#89867e;font-size:11px;line-height:1.5}
.presentation-stage-sheet>footer{display:flex;gap:15px;align-items:center;justify-content:space-between;padding:14px 30px;border-top:1px solid #e8e1d5;background:#faf8f1;color:#77756d;font-size:10px}
.presentation-stage-sheet>footer button{padding:9px 12px;border:1px solid #d69c8e;border-radius:7px;background:#fff5f1;color:#9b4532;font-size:10px;font-weight:700}

@media(max-width:900px){
  .app-shell.presentation-mode .presentation-title{padding:0 10px;gap:7px}
  .app-shell.presentation-mode .presentation-title small{display:none}
  .app-shell.presentation-mode .presentation-control{padding:0 7px;font-size:8px}
  .app-shell.presentation-mode .map-viewport{height:calc(100vh - 130px);padding:14px}
  .presentation-stage-body{grid-template-columns:1fr}
}
@media(max-width:680px){
  .app-shell.presentation-mode .topbar{height:auto;min-height:58px;flex-wrap:wrap;padding:8px 12px;gap:8px}
  .app-shell.presentation-mode .brand{display:none}
  .app-shell.presentation-mode .presentation-title{order:1;width:100%;padding:0;border:0}
  .app-shell.presentation-mode .top-actions{order:2;width:100%;justify-content:flex-end}
  .app-shell.presentation-mode .presentation-title strong{font-size:20px}
  .app-shell.presentation-mode .map-toolbar{padding:0 12px}
  .app-shell.presentation-mode .map-toolbar span{font-size:7px}
  .app-shell.presentation-mode .map-viewport{height:calc(100vh - 178px);min-height:230px;padding:10px}
  .app-shell.presentation-mode .map-footer{font-size:8px;line-height:1.4}
  .presentation-stage-overlay{padding:12px}
  .presentation-stage-sheet>header,.presentation-stage-meta,.presentation-stage-body,.presentation-stage-sheet>footer{padding-left:18px;padding-right:18px}
  .presentation-stage-sheet>header{padding-top:19px}
  .presentation-stage-sheet>footer{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
  .presentation-control,.app-shell.presentation-mode .process-map,.app-shell.presentation-mode .stage-card{transition:none}
}
