:root{--bg:#f7f8fa;--ink:#242d3d;--muted:#7d8595;--line:#e7eaf0;--purple:#6b59c7;--green:#358275}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Arial,Noto Sans KR,Malgun Gothic,sans-serif;font-size:14px;line-height:1.65}button,input,textarea,select{font:inherit}button,a,label.file-label{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:var(--ink);border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:9px 13px;display:inline-flex}button:hover{background:#f1effa;border-color:#c7c0e4}:is(button:focus-visible,a:focus-visible){outline-offset:2px;outline:3px solid #afa2ed}a{color:inherit;text-decoration:none}.primary{background:var(--purple);color:#fff;border:1px solid var(--purple);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 17px;display:inline-flex}.primary:hover{color:#fff;background:#5948b0}.app{min-height:100vh;display:flex}aside{border-right:1px solid var(--line);background:#fff;flex-direction:column;width:238px;padding:32px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:-.7px;align-items:center;gap:11px;font-size:20px;font-weight:750;display:flex}.brand-icon{color:var(--purple);background:#eeeafa;border-radius:12px;place-items:center;width:42px;height:44px;display:grid}.brand small{letter-spacing:1.8px;color:#9690ab;margin-top:1px;font-size:8px;display:block}.side-label{color:#a0a5b1;letter-spacing:1.6px;margin:42px 12px 13px;font-size:10px}.nav{color:#6f7787;background:0 0;border:none;justify-content:flex-start;margin-bottom:6px;padding:12px 14px}.nav.active{color:var(--purple);background:#f0edfa;font-weight:700}.side-bottom{border-top:1px solid var(--line);color:#858b99;gap:9px;margin-top:auto;padding-top:22px;font-size:11px;display:flex}.side-bottom small{margin-top:6px;font-size:10px;line-height:1.8;display:block}main{flex:1;min-width:0;margin-left:238px}header{border-bottom:1px solid var(--line);background:#ffffffb0;justify-content:space-between;align-items:center;height:80px;padding:0 46px;display:flex}.crumb{color:#858b98;align-items:center;gap:12px;font-size:12px;display:flex}.identity{align-items:center;gap:8px;max-width:30%;font-size:11px;display:flex;overflow:hidden}.dot{background:#65a395;border-radius:50%;width:7px;height:7px;display:inline-block}.content{max-width:1600px;min-height:calc(100vh - 145px);margin:auto;padding:43px 46px 60px}.heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:31px;display:flex}.eyebrow{color:#9890b4;letter-spacing:2px;margin-bottom:9px;font-size:10px;font-weight:700}h1{letter-spacing:-1px;margin:0 0 12px;font-size:29px;line-height:1.3}h2{letter-spacing:-.5px;margin:0;font-size:18px}h3{align-items:center;gap:8px;font-size:15px;display:flex}.heading p,p{color:var(--muted);margin:6px 0}.import-banner{background:#efedf8;border:1px solid #e4dff3;border-radius:13px;align-items:center;gap:22px;margin-bottom:36px;padding:30px;display:flex}.import-banner h2{font-size:20px}.import-banner p{font-size:13px}.import-banner small{color:#9c93b4;font-size:11px}.import-banner .primary{flex-shrink:0;margin-left:auto}.upload-icon{color:var(--purple);background:#fff9;border-radius:13px;padding:18px;display:flex}input[type=file]{display:none}.section-row{justify-content:space-between;align-items:center;gap:15px;margin:0 0 18px;display:flex}.count{color:var(--purple);background:#eae7f4;border-radius:7px;margin-left:7px;padding:3px 8px;font-size:13px}.rooms{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;display:grid}.room-card{text-align:left;white-space:normal;border-radius:12px;min-height:215px;padding:24px;display:block}.card-top{color:#8d7cc7;justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.badge,.pill{color:#858b98;background:#f0f1f5;border:none;border-radius:5px;align-items:center;gap:4px;padding:3px 9px;font-size:11px;display:inline-flex}.badge{color:#7a69aa;background:#f0edf8}.room-card p{font-size:12px}.card-foot{border-top:1px solid var(--line);color:#938ba8;justify-content:space-between;align-items:center;margin-top:22px;padding-top:13px;font-size:11px;display:flex}.empty{text-align:center;color:#a09ab4;background:#fff;border-radius:12px;flex-direction:column;align-items:center;gap:13px;padding:65px 25px;display:flex}.empty h1,.empty h2{color:var(--ink)}.empty p{max-width:550px}.empty.dashed{background:#ffffff80;border:1px dashed #d9d5e6}.small{padding:35px}.guide{border:1px solid var(--line);background:#fff;border-radius:11px;margin-top:28px;padding:22px 26px}.guide p{max-width:900px;font-size:13px}.guide b{color:#666174}.guide small{color:#9b9daa;font-size:11px}.guide-grid{gap:45px;margin:22px 0 18px;font-size:12px;display:flex}.guide-grid b{color:#9989c7;margin-right:9px}.stats{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:1fr 1fr 1fr 1.1fr;margin-bottom:34px;padding:23px 0;display:grid}.stats>div{border-right:1px solid var(--line);padding:0 28px}.stats>div:last-child{border:0}.stats span{color:#8d94a1;font-size:11px}.stats strong{margin-top:6px;font-size:29px;font-weight:650;line-height:1.4;display:block}.stats strong small{color:#9fa4af;margin-left:7px;font-size:12px;font-weight:400}.status-stat{align-items:center;gap:10px;display:flex}.status-stat small{color:#999fac;margin-top:6px;font-size:10px;display:block}.status-stat b{font-size:12px;font-weight:500}.actions{align-items:center;gap:8px;display:flex}.right{justify-content:flex-end}.tablebox{border:1px solid var(--line);background:#fff;border-radius:11px;overflow:hidden}.toolbar{border-bottom:1px solid var(--line);color:#a1a6b3;align-items:center;gap:10px;padding:15px 21px;display:flex}.toolbar input{background:0 0;border:0;outline:none;width:240px;padding:4px}.toolbar span{margin-left:auto;font-size:11px}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%;font-size:12px}th{color:#8a91a0;border-bottom:1px solid var(--line);background:#fafbfc;padding:15px 22px;font-weight:500}td{border-bottom:1px solid #f0f1f5;padding:17px 22px}tbody tr:last-child td{border-bottom:0}td strong{font-size:13px;font-weight:600}td small,th small{color:#aaa5b8;margin-top:4px;font-size:10px;display:block}.center{text-align:center}.green{color:#478b72;background:#eaf5f0}.acquire{color:#bcc1cb;border-color:#eeeff3;border-radius:7px;width:31px;height:31px;padding:3px;font-size:10px}.acquire.yes{color:#7462bb;background:#eeeafa;border-color:#e4dff4}.checkmark{color:#7462bb;background:#eeeafa;border-radius:6px;place-items:center;width:28px;height:28px;display:inline-grid}.textbutton{color:#8d80b5;background:0 0;border:none;padding:5px;font-size:12px}.footnote{color:#9b9eaa;align-items:flex-start;gap:6px;margin-top:15px;font-size:11px;display:flex}.footnote svg{flex-shrink:0;margin-top:3px}.muted{color:#969cab;font-size:12px}.check{align-items:center;gap:8px;font-size:12px;display:flex!important}.check input{accent-color:var(--purple);width:auto!important}select,input,textarea{color:var(--ink);background:#fff;border:1px solid #e2e5ed;border-radius:7px;max-width:100%;padding:10px}textarea{resize:vertical;line-height:1.7}input:focus,textarea:focus,select:focus{outline-offset:1px;outline:2px solid #d8cff0}.overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:20;background:#20263766;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:15px;width:550px;max-height:90vh;padding:28px;overflow:auto;box-shadow:0 25px 90px #1113}.modal.wide{width:650px}.modal label{color:#747b8b;margin-bottom:16px;font-size:12px;display:block}.modal label>input:not([type=checkbox]),.modal textarea,.modal label>select{width:100%;margin-top:6px;display:block}.modal .check{margin:13px 0}.form-row{grid-template-columns:1fr 2fr;gap:15px;display:grid}.preview-summary{color:#8676ac;background:#f6f4fb;border-radius:8px;gap:22px;padding:15px;font-size:12px;display:flex}.import-preview{border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-height:270px;margin:18px 0;overflow:auto}.import-preview small{color:#a7a1b5;margin-left:auto}.prose{white-space:pre-wrap;overflow-wrap:anywhere;color:#626c7f;background:#f7f8fa;border-radius:9px;padding:20px;font-size:14px;line-height:1.9}.secret{background:#f3effb}.locked{color:#aaa3b7;font-size:12px}.alert,.notice{color:#a95c50;background:#fff0ee;border:1px solid #f3dcd7;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:12px 17px;display:flex}.notice{color:#528267;background:#f0f7f2;border-color:#dbecdf}.alert button,.notice button{background:0 0;border:0;padding:3px}.log-list{border:1px solid var(--line);background:#fff;border-radius:10px;margin-top:16px;padding:18px}.log-list>div{border-bottom:1px solid var(--line);padding:12px;font-size:12px}.log-list span{color:#a1a6b1;margin-right:20px;font-size:11px;display:inline-block}footer{border-top:1px solid var(--line);color:#b2b5c0;height:65px;padding:22px 46px;font-size:10px}footer span{float:right}summary{cursor:pointer;color:#7d739a;font-size:13px}details td{white-space:pre-wrap;min-width:100px}@media (min-width:1600px){.content{padding-top:55px}}@media (max-width:1050px){aside{width:200px;padding:25px 15px}main{margin-left:200px}.content{padding:30px 25px}header{padding:0 25px}.import-banner{flex-wrap:wrap;padding:22px}.upload-icon{display:none}.stats>div{padding:0 16px}.status-stat{display:none!important}.stats{grid-template-columns:repeat(3,1fr)}.heading{align-items:flex-start}.heading h1{font-size:24px}.heading>.actions{flex-wrap:wrap;justify-content:flex-end}.guide-grid{gap:22px}td,th{padding:15px}.brand{font-size:18px}}@media (max-width:720px){.app{display:block}aside{border-bottom:1px solid var(--line);flex-flow:wrap;align-items:center;gap:4px;width:100%;padding:17px 18px 10px;display:flex;position:static}.brand{width:100%;margin-bottom:10px}.brand small{font-size:7px}.side-label,.side-bottom{display:none}.nav{margin:0;padding:7px 10px;font-size:11px}.nav svg{width:14px}main{margin:0}header{height:50px;padding:0 20px}.content{padding:26px 18px 40px}.heading{flex-wrap:wrap;gap:12px}.heading h1{font-size:25px}.heading p{font-size:12px}.eyebrow{font-size:8px}.import-banner{gap:17px;padding:22px}.import-banner h2{font-size:17px}.import-banner .primary{margin-left:0}.stats{padding:20px 0}.stats strong{font-size:25px}.stats>div{padding:0 13px}.stats span{font-size:10px}.section-row{flex-wrap:wrap}.section-row h2{font-size:16px}.toolbar{padding:13px}.toolbar input{width:160px}.toolbar span{font-size:9px}.actions button{font-size:11px}.guide{padding:20px}.guide-grid{flex-wrap:wrap;gap:12px}.modal{padding:22px}.overlay{padding:12px}.preview-summary{gap:14px;font-size:11px}.identity{font-size:9px}.crumb{font-size:10px}footer{padding:20px}.form-row{grid-template-columns:1fr}.log-list span{display:block}.import-preview small{font-size:9px}td,th{padding:14px 16px}}.guest-form{text-align:left;flex-direction:column;gap:10px;width:min(100%,360px);margin:10px 0;display:flex}.guest-form label{color:#747b8b;font-size:12px}.guest-form input{width:100%;padding:12px}.guest-form small{text-align:center;color:#9690a5;margin-top:6px;font-size:10px;line-height:1.8}.observer-panel{background:#f2effa;border:1px solid #ded7f1;border-radius:12px;margin-bottom:24px;padding:23px 26px}.observer-controls{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.observer-controls h2{color:#73629f;align-items:center;gap:8px;display:flex}.observer-controls .eyebrow{font-size:8px}.observer-controls select{min-width:190px}.observer-request{color:#83769e;border-top:1px solid #ded7f1;align-items:center;gap:16px;margin-top:20px;padding-top:20px;display:flex}.observer-request b{font-size:13px}.observer-request p{font-size:11px}.observer-request button{margin-left:auto;font-size:12px}.observer-request>svg{flex-shrink:0}@media (max-width:720px){.observer-panel{padding:18px}.observer-controls{gap:13px}.observer-request{flex-wrap:wrap}.observer-request button{margin-left:0}}article.room-card{border:1px solid var(--line);background:#fff}.room-open{text-align:left;white-space:normal;background:0 0;border:0;border-radius:0;width:100%;padding:0;display:block}.room-open:hover{color:var(--purple);background:0 0}.delete-icon{color:#a0a5af;background:0 0;border:none;padding:6px}.delete-icon:hover,.danger-outline:hover{color:#b65b57;background:#fff0ee}.danger-outline{color:#b26962}.danger-button{color:#fff;background:#b75550;border-color:#b75550}.danger-button:hover{color:#fff;background:#9f4541;border-color:#9f4541}.delete-warning{color:#b56259;margin:15px 0;font-size:12px}.image-editor{margin:10px 0 22px}.image-add{cursor:pointer;color:#57458e;background:#ede9fe;border-radius:9px;padding:9px 14px;display:inline-flex}.image-add input{display:none}.image-thumbs{flex-wrap:wrap;gap:12px;margin-top:12px;display:flex}.image-thumb{border:1px solid #e4dfee;border-radius:10px;width:150px;padding:8px}.image-thumb img{object-fit:contain;width:100%;height:100px}.image-thumb small{overflow-wrap:anywhere;margin:6px 0;display:block}.image-thumb button{padding:5px 8px}.pager{justify-content:space-between;align-items:center;gap:10px;margin:10px 0;display:flex}.pager span{color:#6b6378;font-size:13px}.image-open{background:#f6f3f9;border:0;flex-direction:column;align-items:center;gap:10px;width:100%;padding:12px;display:flex}.image-open img{object-fit:contain;max-width:100%;max-height:55vh}.image-open span{color:#67557e;font-size:12px}.image-lightbox{z-index:2000;color:#fff;background:#17131eed;flex-direction:column;padding:16px;display:flex;position:fixed;inset:0}.lightbox-bar{flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:12px;display:flex}.lightbox-bar>span:first-child{overflow-wrap:anywhere;flex:1}.lightbox-bar button{color:#282135;background:#fff}.zoom-scroll{touch-action:pan-x pan-y pinch-zoom;overscroll-behavior:contain;flex:1;overflow:auto}.zoom-scroll img{object-fit:contain;min-height:0;display:block}.image-pages:focus-visible{border-radius:8px;outline:2px solid #8c72bc}.import-warning{color:#805820;background:#fff3dc;border-radius:8px;margin:12px 0;padding:12px}.import-warning p{margin:5px 0}.guest-lobby{border:1px solid #e5deee;border-radius:12px;margin:20px 0;padding:20px}button:disabled,.disabled{opacity:.5;cursor:not-allowed}@media (max-width:600px){.image-lightbox{padding:8px}.lightbox-bar>span:first-child{flex-basis:100%}.pager button{padding:8px}.image-thumb{width:130px}}.session-period{background:#f0edf7;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0;padding:14px 18px;display:flex}.session-period p{margin:0}.session-period small{color:#6a6079}.chat-widget{z-index:70;position:fixed;bottom:20px;right:22px}.chat-launch{box-shadow:0 4px 20px #28203925}.chat-badge{color:#674699;background:#fff;border-radius:20px;padding:2px 7px}.chat-panel{background:#fff;border:1px solid #dfd8e9;border-radius:16px;flex-direction:column;width:min(460px,100vw - 28px);height:min(690px,100dvh - 100px);padding:18px;display:flex;position:absolute;bottom:54px;right:0;box-shadow:0 12px 60px #26153640}.chat-panel h2{font-size:18px}.chat-panel .section-row{margin:0 0 10px}.chat-controls{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.chat-controls select{flex:1;min-width:0}.chat-controls button{font-size:11px}.chat-messages{overscroll-behavior:contain;flex:1;min-height:100px;margin:12px 0;padding:4px;overflow:auto}.chat-message{overflow-wrap:anywhere;background:#f3f0f7;border-radius:12px;margin:8px 26px 8px 0;padding:10px 12px}.chat-message.mine{background:#eae3fa;margin:8px 0 8px 26px}.chat-message.notice-message{background:#fff7df;border-left:3px solid #ad812a}.chat-message>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.chat-message b{font-size:12px}.chat-message time{color:#6f6678;font-size:10px}.chat-message p{white-space:pre-wrap;margin:6px 0 0;font-size:14px}.chat-panel textarea{resize:vertical;width:100%;max-height:150px}.chat-toast{color:#fff;background:#2e2545;border-radius:10px;max-width:340px;margin-bottom:10px;display:flex;box-shadow:0 4px 20px #0002}.chat-toast button{color:inherit;white-space:normal;background:0 0;border:0}.chat-panel .alert{padding:8px;font-size:12px}.chat-panel .actions{margin-top:8px}@media (max-width:600px){.chat-widget{bottom:12px;right:12px}.chat-panel{padding:12px}.session-period{flex-direction:column;align-items:flex-start}}.floating-toolbar{color:#53456e;background:#ede8f5;border-bottom:1px solid #ded4ed;justify-content:space-between;align-items:center;gap:12px;height:48px;padding:6px 18px;display:flex}.floating-toolbar>span{font-size:12px;font-weight:600}.floating-toolbar>div{align-items:center;gap:10px;display:flex}.floating-toolbar button{padding:6px 12px;font-size:12px}.floating-toolbar small{font-size:10px}.workspace-host .app>aside{height:calc(100vh - 48px);top:48px}.floating-placeholder{text-align:center;background:#fff;border-radius:16px;max-width:660px;margin:15vh auto;padding:32px}.floating-placeholder h1{font-size:24px}.floating-placeholder p{color:#786b8b}.floating-placeholder .actions{justify-content:center}.floating-dialog{z-index:3000}.floating-dialog input{width:100%;margin:16px 0}.floating-dialog .actions{margin-top:20px}@media (max-width:720px){.workspace-host .app>aside{height:auto;top:auto}.floating-toolbar{padding:6px 10px}.floating-toolbar small{display:none}.floating-placeholder{margin:30px 12px;padding:20px}}@media (display-mode:picture-in-picture){.content{padding-top:22px}.floating-toolbar{z-index:60;position:sticky;top:0}}.modal>.section-row{z-index:5;border-bottom:1px solid var(--line);background:#fff;flex-wrap:nowrap;margin:-28px -28px 20px;padding:20px 28px;position:sticky;top:-28px}.modal>.section-row>div{min-width:0}.modal>.section-row h2{overflow-wrap:anywhere}.modal>.section-row>button{flex-shrink:0}.madness-card{border:1px solid var(--line);background:#fff}.madness-card label{margin-top:16px;display:block}.madness-card select{width:100%;display:block}.madness-import{margin-bottom:24px}.madness-import>button{margin-left:8px}.madness-card .actions{flex-wrap:wrap}@media (max-width:720px){.modal>.section-row{margin:-22px -22px 18px;padding:16px 22px;top:-22px}}.madness-tools{flex-wrap:wrap}.madness-card .image-pages{margin-top:12px}.madness-groups{background:#f1eef9;border-radius:12px;margin-bottom:28px;padding:20px}.group-card{border:1px solid var(--line);background:#fff;border-radius:10px;padding:16px}.group-choices{border-block:1px solid var(--line);max-height:45vh;margin:16px 0;padding:12px;overflow:auto}.group-choices .check{margin:0;padding:8px}.group-apply{flex-wrap:wrap;margin-top:16px}.madness-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}.modal.madness-window{width:1050px;max-width:100%;max-height:90vh}.madness-open{color:var(--purple);background:#f0edfa;border-color:#d9d0ee}.madness-window .rooms{grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr))}.pdf-editor{border:1px dashed #c7bfdf;border-radius:9px;margin:12px 0 24px;padding:14px}.pdf-editor label{border:1px solid var(--line);cursor:pointer;border-radius:7px;padding:8px 12px;margin:0 10px 8px 0!important;display:inline-flex!important}.pdf-editor>.actions{justify-content:space-between;margin-top:8px}.pdf-editor span,.pdf-files a{overflow-wrap:anywhere}.pdf-files{gap:8px;margin:14px 0 24px;display:grid}.pdf-files a{color:#58449e;background:#eeebf8;border:1px solid #d8d1eb;border-radius:8px;justify-content:space-between;gap:12px;padding:12px;display:flex}.pdf-report{margin:18px 0}.pdf-report td{white-space:normal;overflow-wrap:anywhere;min-width:120px}.workspace-host.is-floating{width:100%;min-width:0;overflow-x:auto}.workspace-host.is-floating .app{min-height:calc(100dvh - 48px);display:block}.workspace-host.is-floating .app>aside{border-right:0;border-bottom:1px solid var(--line);flex-flow:wrap;align-items:center;gap:6px;width:100%;height:auto;padding:12px 16px;display:flex;position:static;inset:auto}.workspace-host.is-floating .brand{width:auto;margin:0 16px 0 0;font-size:17px}.workspace-host.is-floating .brand small,.workspace-host.is-floating .side-label,.workspace-host.is-floating .side-bottom{display:none}.workspace-host.is-floating .brand-icon{width:32px;height:34px}.workspace-host.is-floating .nav{margin:0;padding:8px 11px;font-size:12px}.workspace-host.is-floating main{width:100%;min-width:0;margin-left:0}.workspace-host.is-floating .content{min-width:0;max-width:100%;padding:22px 18px 40px}.workspace-host.is-floating header{height:54px;padding:0 18px}.workspace-host.is-floating .heading,.workspace-host.is-floating .section-row,.workspace-host.is-floating .actions{flex-wrap:wrap}.workspace-host.is-floating .tablebox{max-width:100%;overflow-x:auto}.workspace-host.is-floating .table-scroll{overscroll-behavior:contain;touch-action:pan-x pan-y;scrollbar-gutter:stable;max-width:100%;max-height:65dvh;overflow:scroll auto}.workspace-host.is-floating .table-scroll:focus-visible{outline:2px solid var(--purple);outline-offset:-2px}.workspace-host.is-floating .tablebox table{width:100%;min-width:max-content}.workspace-host.is-floating .toolbar{flex-wrap:wrap}.workspace-host.is-floating .floating-toolbar{z-index:60;flex-wrap:wrap;height:auto;min-height:48px;position:sticky;top:0}.workspace-host.is-floating .table-scroll::-webkit-scrollbar{width:12px;height:12px}.workspace-host.is-floating .tablebox::-webkit-scrollbar{width:12px;height:12px}.workspace-host.is-floating .table-scroll::-webkit-scrollbar-thumb{background:#aca2c4;border:2px solid #f3f0f8;border-radius:8px}.workspace-host.is-floating .tablebox::-webkit-scrollbar-thumb{background:#aca2c4;border:2px solid #f3f0f8;border-radius:8px}.workspace-host.is-floating .table-scroll::-webkit-scrollbar-track{background:#f3f0f8}.workspace-host.is-floating .tablebox::-webkit-scrollbar-track{background:#f3f0f8}.game-board{margin-top:28px}.board-topline{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.board-topline h1{margin-bottom:6px;font-size:26px}.board-canvas-shell{border:1px solid #373149;border-radius:18px;overflow:hidden;box-shadow:0 18px 45px #29223b20}.board-canvas{color:#fff;isolation:isolate;background-color:#211b32;background-image:radial-gradient(at 65% 20%,#49406266,#0000 65%),linear-gradient(135deg,#171323,#2c2440);background-position:50%;background-size:cover;height:min(62vh,660px);min-height:440px;position:relative}.board-location{pointer-events:none;text-shadow:0 2px 12px #000;position:absolute;top:24px;left:28px;right:28px}.board-location>span{letter-spacing:2px;color:#c8bddb;font-size:10px}.board-location h2{letter-spacing:-1px;margin-top:4px;font-size:30px}.board-location p{color:#e5dfee;max-width:650px;font-size:12px}.board-scene{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:2;background:#181322c9;border:1px solid #eee3ff22;border-radius:12px;max-width:calc(100% - 56px);padding:14px 18px;font-size:12px;position:absolute;top:125px;left:28px}.board-scene>b,.board-scene>span{display:block}.board-scene p{color:#d0c4df;white-space:pre-wrap;max-height:90px;overflow:auto}.board-scene button{margin-top:8px;padding:5px 10px;font-size:11px}.board-welcome{text-align:center;color:#b8abc9;font-size:13px;position:absolute;top:62%;left:20px;right:20px}.board-token{color:#fff;text-shadow:0 2px 5px #000;z-index:3;border:none;flex-direction:column;gap:0;max-width:150px;padding:0;display:flex;position:absolute;transform:translate(-50%,-50%);background:0 0!important}.board-token img,.token-initial{object-fit:cover;background:#4b3d64;border:3px solid #d1bfec;border-radius:50%;width:82px;height:82px;box-shadow:0 8px 24px #0008}.token-initial{place-items:center;font-size:32px;display:grid}.board-token b{text-overflow:ellipsis;max-width:145px;margin-top:5px;font-size:13px;overflow:hidden}.board-token small{white-space:nowrap;background:#171323b0;border-radius:4px;padding:2px 5px;font-size:9px}.board-token.placing img,.board-token.placing .token-initial{border-color:#f0cc87}.board-placement{color:#332744;z-index:5;background:#fff;border-radius:8px;align-items:center;gap:10px;max-width:95%;padding:8px 12px;font-size:12px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.board-placement button{padding:4px 8px}.board-layout{grid-template-columns:minmax(0,1fr) 280px;gap:20px;margin-top:24px;display:grid}.board-workbench{border:1px solid var(--line);background:#fff;border-radius:14px;min-width:0;overflow:hidden}.board-tabs{background:#f2eff8;border-bottom:1px solid #e6e0ee;gap:5px;padding:10px;display:flex;overflow-x:auto}.board-tabs button{background:0 0;border:0;padding:9px 12px;font-size:12px}.board-tabs button.active{color:#624699;background:#fff;box-shadow:0 2px 7px #37204d10}.board-tool-content{padding:23px}.board-tool-content h2{margin-bottom:8px}.board-tool-content>p{margin-bottom:16px;font-size:12px}.board-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.board-tool-content form>label,.board-form-grid>label,.board-editor form>label{color:#766886;margin:12px 0;font-size:12px;display:block}.board-tool-content input:not([type=checkbox]),.board-tool-content textarea,.board-tool-content select,.board-form-grid input,.board-form-grid select{width:100%;min-width:0;margin-top:6px;display:block}.board-tool-content .check input{width:auto}.board-action-guide{grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 8px;display:grid}.board-action-guide>div{background:#faf8fd;border:1px solid #e5dff0;border-radius:10px;padding:12px}.board-action-guide b{color:#6e509d;font-size:14px}.board-action-guide p{font-size:11px;line-height:1.5}.board-request-list article,.board-handouts article{border:1px solid var(--line);border-radius:10px;margin-top:12px;padding:16px}.board-request-list article>div:first-child{justify-content:space-between;gap:8px;display:flex}.board-request-list p{white-space:pre-wrap;font-size:12px}.board-character-list{gap:12px;display:grid}.board-character-list article{border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:14px;padding:16px;display:flex}.board-character-list img,.character-placeholder{object-fit:cover;color:#705694;background:#eee8f6;border-radius:50%;place-items:center;width:58px;height:58px;display:grid}.board-character-list article>div:nth-child(2){flex:1}.board-character-list p,.board-character-list small,.board-character-list .actions button{font-size:11px}.board-resource-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.board-resource-grid article{border:1px solid var(--line);border-radius:12px;flex-direction:column;align-items:flex-start;gap:10px;padding:16px;display:flex}.board-resource-grid article>img{object-fit:contain;background:#f0edf5;border-radius:8px;width:100%;height:130px}.board-resource-grid .actions{flex-wrap:wrap}.board-resource-grid button{padding:6px 10px;font-size:11px}.board-resource-grid small{color:#8a7d98;font-size:11px}.board-share{border-top:1px solid var(--line);width:100%;padding-top:10px}.board-share select{margin-bottom:8px}.board-image-preview{align-items:center;gap:12px;margin:15px 0;display:flex}.board-image-preview img{object-fit:contain;max-width:70%;max-height:180px}.board-image-scroll{max-height:65vh;margin-top:16px;overflow:auto}.board-reader>.actions{margin-top:16px}.board-reader .prose{margin-bottom:16px}.board-layout>.board-log{border:1px solid var(--line);background:#fff;border-radius:14px;width:auto;min-width:0;padding:20px;display:block;position:static;inset:auto;height:auto!important}.board-log h2{font-size:15px}.board-log>p{margin-bottom:16px;font-size:11px}.board-events{max-height:750px;overflow-y:auto}.board-events article{border-top:1px solid #eee9f3;padding:14px 0}.board-events article>div:first-child{color:#7c6c8d;justify-content:space-between;align-items:center;font-size:11px;display:flex}.board-events time{font-size:10px}.board-events p{white-space:pre-wrap;overflow-wrap:anywhere;color:#4e435b;font-size:12px}.board-events small{color:#a28fba;font-size:10px}.dice-values{flex-wrap:wrap;gap:5px;margin:9px 0;display:flex}.dice-values span{color:#684b92;background:#eee8f8;border:1px solid #d8cce8;border-radius:7px;place-items:center;width:30px;height:30px;font-size:15px;font-weight:700;display:grid}.board-roll{margin-top:12px}.board-loading{background:#f0ebf7;border-radius:14px;padding:35px}.acquisition-notice{z-index:1000;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#21172fee;border:1px solid #a987cf;border-radius:18px;align-items:center;gap:16px;width:560px;max-width:calc(100vw - 24px);padding:20px;display:flex;position:fixed;top:70px;left:50%;transform:translate(-50%);box-shadow:0 20px 80px #25143455}.acquisition-notice small{color:#c5b1dd;font-size:10px}.acquisition-notice h2{color:#f0d5ff;font-size:23px}.acquisition-notice p{color:#e3d6f0;font-size:12px}.acquisition-notice>div{overflow-wrap:anywhere;flex:1;min-width:0}.acquisition-emblem{color:#e0b7ff;font-size:34px}.acquisition-notice button{padding:8px 10px;font-size:11px}.board-tool-content .actions{flex-wrap:wrap}@media (max-width:1200px){.board-layout{grid-template-columns:minmax(0,1fr)}.board-events{max-height:320px}.board-canvas{min-height:400px}.board-topline{flex-wrap:wrap}}@media (max-width:600px){.board-canvas{min-height:420px}.board-location{left:18px;right:18px}.board-location h2{font-size:24px}.board-token img,.token-initial{width:60px;height:60px}.board-token small{font-size:8px}.board-form-grid{grid-template-columns:1fr}.board-tool-content{padding:16px}.board-action-guide{gap:6px}.board-action-guide>div{padding:9px}.board-topline h1{font-size:22px}.acquisition-notice{flex-wrap:wrap;padding:14px}.acquisition-emblem{display:none}.board-scene{max-width:calc(100% - 36px);left:18px}}.workspace-host.is-floating .board-layout>.board-log{width:auto;height:auto;display:block;position:static}.workspace-host.is-floating .board-layout{grid-template-columns:minmax(0,1fr)}.board-music{background:#201c34;border:1px solid #514266;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0;padding:12px 18px;display:flex}.board-music audio{max-width:100%;height:36px}.board-music small{color:#c4b9d3;flex-basis:100%}.board-consent-banner{background:#f4eefe;border:1px solid #9474c8;border-radius:12px;margin:20px 0;padding:18px}.board-consent-banner article{border-top:1px solid #d7c8ec;padding:12px 0}.character-library{border:1px solid var(--line,#ddd);border-radius:14px;margin-bottom:24px;padding:20px}.character-library h2{margin-top:0}.rule-actor{border-bottom:1px solid #ddd;flex-wrap:wrap;align-items:center;gap:16px;padding:12px 0;display:flex}.rule-actor input[type=number]{width:90px}.board-tabs{flex-wrap:wrap;overflow-x:auto}.board-editor>.section-row{background:var(--card,#fff);z-index:3;padding:12px 0;position:sticky;top:0}.skill-search{margin:12px 0;position:relative}.skill-results{background:#fff;border:1px solid #d7c8ec;border-radius:10px;flex-wrap:wrap;gap:6px;max-height:240px;padding:10px;display:flex;overflow:auto}.skill-results .section-row{width:100%}.skill-results>button{align-items:center;gap:8px;padding:7px 10px;display:flex}.skill-results small{color:#716581}.handout-mechanics{border:1px solid #d7c8ec;border-radius:12px;margin:20px 0;padding:18px}.handout-mechanics legend{font-weight:700}.board-music label{min-width:180px;margin:0}.board-music input[type=range]{accent-color:#ae8bf1;padding:0}.emotion-table{border-collapse:collapse;width:100%;margin:12px 0}.emotion-table th,.emotion-table td{text-align:left;border-bottom:1px solid #ded4e9;padding:10px}.emotion-table th{background:#f4eefe}.emotion-table input{width:100%;min-width:0}.stage-shell{--stage-night:#171725;--stage-gold:#d9ba7b;background:#eeedf3 radial-gradient(at 100% 0,#dfd8ee,#0000 55%);min-height:100dvh}.stage-shell:-webkit-full-screen{background-color:#eeedf3;width:100%;height:100%;overflow:auto}.stage-shell:fullscreen{background-color:#eeedf3;width:100%;height:100%;overflow:auto}.stage-header{background:var(--stage-night);color:#fff;border-bottom:1px solid #51435e;gap:24px;height:auto;min-height:86px;padding:18px 32px}.stage-wordmark{color:var(--stage-gold);flex-shrink:0;align-items:center;gap:12px;font-size:24px;display:flex}.stage-wordmark span{font-size:17px;font-weight:700}.stage-wordmark small{letter-spacing:3px;color:#b4a7c8;font-size:8px;display:block}.stage-session{flex-direction:column;flex:1;min-width:0;display:flex}.stage-session b{overflow-wrap:anywhere;font-size:18px}.stage-session span{color:#b8afc9;font-size:11px}.stage-header .actions{flex-wrap:wrap;font-size:12px}.stage-header button{color:#eee4ff;background:#302a40;border-color:#584766}.stage-nav{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#211d30f5;border-bottom:1px solid #534666;justify-content:center;gap:8px;padding:12px;display:flex;position:sticky;top:0;box-shadow:0 8px 24px #20132618}.stage-nav button{color:#b8afc9;background:0 0;border-color:#0000;padding:10px 24px}.stage-nav button.active{color:#f5e6c8;background:#4c3c5e;border-color:#8a718b}.stage-nav small{opacity:.65;margin-right:8px;font-size:10px}.stage-main{width:100%;max-width:1800px;margin:0 auto;padding:24px 32px 36px}.stage-page-heading{justify-content:space-between;align-items:center;gap:12px;margin:0 0 18px;display:flex}.stage-page-heading h1{margin:0;font-size:23px}.stage-page-heading>span{color:#81748d;font-size:11px}.stage-party{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px;margin-bottom:24px;display:grid}.stage-pc{white-space:normal;text-align:left;background:#fff;border:1px solid #dcd6e5;border-radius:12px;justify-content:flex-start;gap:12px;padding:15px;box-shadow:0 4px 12px #231c3510}.stage-pc.is-me{border-color:#9580b9;box-shadow:inset 3px 0 #8b70b1}.stage-pc>img,.stage-avatar{object-fit:cover;color:#74608d;background:#ebe5f3;border-radius:50%;flex-shrink:0;place-items:center;width:48px;height:48px;display:grid}.stage-pc>div:nth-child(2){flex-direction:column;flex:1;min-width:0;display:flex}.stage-pc b{overflow-wrap:anywhere;font-size:14px}.stage-pc small{color:#8c7e9a;font-size:9px}.stage-pc span{color:#81718f;font-size:10px}.stage-pc i{border-left:1px solid #d6cde0;height:8px;margin:0 6px;display:inline-block}.stage-pc-counts{text-align:center;gap:13px;display:flex}.stage-pc-counts strong{color:#62527a;font-size:23px;font-weight:600;line-height:1.2}.stage-pc-counts small{margin-top:4px;font-size:8px;font-weight:400;line-height:1.8;display:block}.stage-pc-counts .madness-count{color:#a05373}.stage-board[data-current=false] .game-board>:not(.board-music),.stage-board[data-current=false] .board-loading{display:none}.stage-shell .board-canvas{border-radius:18px;height:60vh;min-height:540px;max-height:850px}.stage-shell .board-canvas-shell{border-radius:18px;box-shadow:0 14px 40px #21182b25}.stage-shell .board-topline{margin-bottom:18px}.stage-shell .board-topline h1{font-size:20px}.stage-shell .board-workbench,.stage-shell .board-log{box-shadow:0 5px 20px #2a203309}.stage-shell .board-tabs{padding:12px}.stage-shell .board-music{margin-bottom:20px}.stage-archive-intro{color:#fff;background:linear-gradient(120deg,#2c253c,#44334f);border:1px solid #695270;border-radius:16px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;padding:32px;display:flex;box-shadow:0 8px 25px #281b3520}.stage-archive-intro h2{letter-spacing:-1px;font-family:Georgia,Malgun Gothic,serif;font-size:27px}.stage-archive-intro p{color:#c4b6d1;max-width:650px;margin-top:12px;font-size:12px}.stage-archive-intro .eyebrow{color:#d6b881}.stage-total{text-align:center;border-left:1px solid #716079;flex-direction:column;flex-shrink:0;min-width:110px;padding-left:25px;display:flex}.stage-total b{color:#efd5a5;font-size:48px;font-weight:400;line-height:1.2}.stage-total span{color:#c3b4cf;margin-top:7px;font-size:10px}.stage-filters{align-items:flex-end;gap:12px;margin:22px 0;display:flex}.stage-filters label{color:#756783;font-size:11px}.stage-filters input,.stage-filters select{min-width:190px;margin-top:6px;display:block}.stage-filters>label:first-child{flex:1}.stage-filters input{width:100%}.stage-handout-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px;display:grid}.stage-handout-grid>article{background:#fff;border:1px solid #ded8e6;border-radius:14px;padding:22px;box-shadow:0 6px 18px #211a2d08}.stage-file-number{letter-spacing:1px;color:#9584a5;font-size:10px}.stage-handout-title{text-align:left;white-space:normal;background:0 0;border:0;width:100%;padding:0;display:block}.stage-handout-title h3{margin:10px 0;font-size:20px}.stage-handout-title>span{color:#9584a5;font-size:11px}.stage-owners{border-top:1px solid #eee9f3;flex-wrap:wrap;gap:7px;margin:22px 0 15px;padding-top:18px;display:flex}.stage-owners>span,.stage-owners>label{color:#9a90a4;border:1px solid #e7e1ec;border-radius:7px;align-items:center;gap:6px;padding:5px 9px;font-size:11px;display:flex}.stage-owners .owns{color:#6a4d8b;background:#eee8f7;border-color:#d1c0e3}.stage-owners input{accent-color:#8764ac}.stage-handout-grid article>small{color:#9a8ba6;font-size:10px}.stage-reader{background:#fff;border:1px solid #ded6e7;border-radius:16px;max-width:1080px;min-height:65vh;margin:0 auto;padding:32px;box-shadow:0 12px 35px #2418320c}.stage-reader-tabs{border-bottom:1px solid #e7dfee;gap:10px;margin-bottom:22px;padding:12px 0 22px;display:flex}.stage-reader-tabs .active{color:#fff;background:#6b59c7}.stage-reader>.image-pages{margin-top:25px}.stage-reader .prose{min-height:280px;padding:30px;font-size:16px;line-height:2}.stage-reader .image-open img{max-height:65vh}.stage-reader>p{font-size:12px}.stage-footer{border-top:1px solid #dcd4e6;justify-content:center;align-items:center;gap:24px;height:auto;padding:24px 90px 90px;display:flex}.stage-footer span{float:none;color:#8d7e9e;font-size:11px}.stage-footer button{font-size:12px}.stage-gate{max-width:700px;margin:12vh auto;padding:32px}.stage-gate p{margin:20px 0}.stage-gate a{color:#6b59c7;padding:10px}.stage-shell .overlay:has(>.modal.wide){-webkit-backdrop-filter:none;backdrop-filter:none;background:#eeedf3;padding:0}.stage-shell .overlay>.modal.wide{width:100%;max-width:none;height:100dvh;max-height:100dvh;box-shadow:none;border-radius:0;padding:28px max(28px,50vw - 550px)}.stage-shell .overlay>.modal.wide>.section-row{background:#fff;margin:-28px 0 24px;padding:20px 0;top:-28px}.stage-shell .image-lightbox{z-index:2100}@media (max-width:900px){.stage-header{flex-wrap:wrap;gap:14px;padding:16px 20px}.stage-session{min-width:180px}.stage-main{padding:20px}.stage-party{grid-template-columns:repeat(auto-fit,minmax(245px,1fr))}.stage-nav button{padding:10px 16px}.stage-archive-intro{padding:24px}.stage-shell .board-canvas{height:58vh;min-height:440px}}@media (max-width:600px){.stage-wordmark{font-size:20px}.stage-wordmark span{font-size:14px}.stage-header .actions{justify-content:flex-end;width:100%}.stage-header{gap:10px}.stage-nav{gap:3px;padding:8px}.stage-nav button{padding:9px 10px;font-size:12px}.stage-nav small{display:none}.stage-main{padding:18px 12px}.stage-page-heading>span{font-size:9px}.stage-party{scroll-snap-type:x mandatory;padding-bottom:8px;display:flex;overflow-x:auto}.stage-pc{scroll-snap-align:start;min-width:280px}.stage-archive-intro{gap:12px;padding:22px 18px}.stage-archive-intro h2{font-size:22px}.stage-total{min-width:70px;padding-left:14px}.stage-total b{font-size:35px}.stage-total span{font-size:9px}.stage-filters{flex-wrap:wrap}.stage-filters>label:first-child{flex-basis:100%}.stage-filters select{min-width:170px}.stage-reader{padding:20px 15px}.stage-reader .prose{padding:20px;font-size:14px}.stage-footer{gap:10px;padding:20px 12px 100px}.stage-footer button{font-size:10px}.stage-shell .overlay>.modal.wide{padding:22px 18px}.stage-shell .overlay>.modal.wide>.section-row{margin-top:-22px;top:-22px}.stage-shell .board-canvas{min-height:420px}}.table-groups{background:#f3eff9;border:1px solid #ded4eb;border-radius:14px;margin-bottom:22px;padding:22px}.table-group-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;display:grid}.table-group-list article{background:#fff;border:1px solid #e4dbea;border-radius:10px;flex-direction:column;align-items:flex-start;gap:10px;padding:14px;display:flex}.table-group-list article.selected{background:#faf6ff;border-color:#8d70ad}.table-group-list .textbutton{white-space:normal;text-align:left}.table-library-filters{flex-wrap:wrap;align-items:flex-end;gap:12px;margin:22px 0;display:flex}.table-library-filters label{color:#81718f;font-size:12px}.table-library-filters input,.table-library-filters select{min-width:180px;margin-top:6px;display:block}.table-library-filters label:first-child{flex:1}.table-library-filters input{width:100%}.table-library .heading{flex-wrap:wrap}.table-library .heading h1{font-size:25px}.table-library .board-resource-grid{margin-bottom:24px}.table-library .board-resource-grid h3{margin:0}.table-library-dialog{z-index:80}.table-group-picks{border:1px solid #e4dbea;border-radius:10px;max-height:50vh;margin:18px 0;padding:12px;overflow:auto}.table-read-image{max-width:100%;height:auto;margin-top:20px;display:block}.table-kind-tabs{flex-wrap:wrap;margin-bottom:24px}.table-library .image-add{margin-top:12px}.table-library form>.actions{margin-top:20px}.table-import{flex-wrap:wrap;margin:0 0 24px}.table-import .image-add{margin:0}.shock-targets{background:#f5f0fa;border:1px solid #e3d6ef;border-radius:10px;margin:16px 0;padding:16px}.shock-targets>label{margin-bottom:12px;display:block}.shock-targets select,.shock-targets>label>input{width:100%;margin-top:6px;display:block}.shock-targets .actions{flex-wrap:wrap;gap:14px}.visibility-presets{border:1px solid var(--border,#ddd);border-radius:12px;margin-bottom:20px;padding:16px}.visibility-presets summary{cursor:pointer;font-weight:600}.visibility-presets summary small{margin-left:12px;font-weight:400}.visibility-presets p{margin:12px 0;font-size:13px;line-height:1.6}.visibility-presets .actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.visibility-presets input,.visibility-presets select{min-width:180px;max-width:100%}.visibility-presets [role=alert]{color:#dc5757}.scene-controls{border:1px solid var(--border,#ddd);border-radius:12px;margin:14px 0;padding:18px}.scene-controls>.actions{flex-wrap:wrap;gap:10px;display:flex}.scene-cast-item{border:1px solid var(--border,#ddd);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px;display:flex}.scene-controls summary{cursor:pointer;font-weight:600}.scene-controls details{margin-top:16px}.modal.character-sheet-modal{background:#f8f7f4;width:min(1440px,96vw);max-width:1440px}.character-sheet-modal>.section-row{z-index:8;border-bottom:1px solid var(--line);background:#f8f7f4;padding:12px 0;position:sticky;top:0}.character-sheet{color:#242d3d;grid-template-columns:300px minmax(0,1fr);gap:22px;display:grid}.sheet-profile,.sheet-details{background:#fff;border:1px solid #d8d4ce;border-radius:8px;min-width:0;padding:18px}.sheet-profile{border-top:4px solid #6b59c7;flex-direction:column;gap:8px;display:flex}.sheet-title{text-align:center;border-bottom:1px solid #dedad5;margin-bottom:10px;padding:10px 0 20px}.sheet-title small{color:#80798a}.sheet-title h2{margin-top:8px;font-size:22px}.character-sheet label{margin:6px 0;display:block}.character-sheet input:not([type=checkbox]):not([type=color]),.character-sheet select,.character-sheet textarea{width:100%;min-width:0}.sheet-pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}.sheet-portrait{color:#938a9c;background:repeating-linear-gradient(0deg,#faf9f7,#faf9f7 24px,#efede8 25px);border:1px solid #e5e1db;border-radius:6px;place-items:center;height:280px;display:grid;overflow:hidden}.sheet-portrait img{object-fit:contain;width:100%;height:100%}.sheet-profile small{color:#7d8595;font-size:11px}.sheet-status{border-collapse:collapse;width:100%;margin:8px 0}.sheet-status th,.sheet-status td{text-align:center;border:1px solid #dedad5;padding:6px}.sheet-status th{font-size:12px}.sheet-status input{text-align:center;width:68px!important;padding:5px!important}.sheet-scroll{max-width:100%;overflow-x:auto}.sheet-skills{border:1px solid #d8d4ce;grid-template-columns:repeat(6,minmax(105px,1fr));min-width:660px;display:grid}.sheet-skills section{border-right:1px solid #d8d4ce}.sheet-skills section:last-child{border:0}.sheet-skills h4{text-align:center;color:#5e4a9c;background:#f2eef9;margin:0;padding:10px 4px}.sheet-skills label{white-space:nowrap;cursor:pointer;border-top:1px solid #ece8e2;align-items:center;gap:5px;margin:0;padding:7px 4px;font-size:12px;display:flex}.sheet-skills label>span{color:#999;width:16px;font-size:10px}.sheet-skills input[type=checkbox]{accent-color:#6b59c7;width:15px;height:15px;margin:0}.sheet-skills label.selected{color:#4c378a;background:#ebe5fa;font-weight:700}.sheet-details h3{margin:12px 0}.sheet-details h3 small{margin-left:auto;font-size:12px;font-weight:400}.sheet-details details{margin:10px 0}.sheet-details summary{cursor:pointer;color:#74648d}.sheet-abilities{border-collapse:collapse;width:100%;min-width:640px;margin:14px 0}.sheet-abilities th,.sheet-abilities td{vertical-align:top;border:1px solid #dedad5;padding:10px;font-size:12px}.sheet-abilities thead{background:#f2eef9}.sheet-abilities th small{font-weight:400;display:block}.sheet-abilities td.prose{white-space:pre-wrap;overflow-wrap:anywhere;min-width:230px}.sheet-abilities button{padding:4px 8px}.ability-manager form{border:1px solid var(--line);background:#f8f7fc;border-radius:12px;margin:18px 0;padding:18px}.ability-list{gap:12px;margin-top:15px;display:grid}.ability-list article{border:1px solid var(--line);border-radius:10px;padding:16px}.ability-list .prose{white-space:pre-wrap;color:var(--ink);margin-bottom:12px}.ability-list .section-row{flex-wrap:wrap}.ability-list .section-row span{color:var(--muted);font-size:12px}@media (max-width:980px){.character-sheet{grid-template-columns:240px minmax(0,1fr);gap:12px}.sheet-profile,.sheet-details{padding:12px}}@media (max-width:700px){.character-sheet{grid-template-columns:1fr}.sheet-portrait{height:240px}.character-sheet-modal{padding:12px!important}.sheet-profile{max-width:none}}.skill-target{text-align:right;color:#8b5595;min-width:20px;margin-left:auto;font-size:11px}.automatic-target{background:#f7f3ff;border:1px solid #e1d9ee;border-radius:8px;margin:12px 0;padding:10px 14px}.automatic-target small{color:#81738e;font-size:11px}.sheet-skills{grid-template-columns:repeat(6,minmax(120px,1fr));min-width:750px}.sheet-skills section.curiosity-column{border-left:2px solid #8f7ac2;border-right:2px solid #8f7ac2}.sheet-skills .fear-skill{box-shadow:inset 3px 0 #c35d65}.sheet-skills .fear-skill .skill-target{color:#b63f4c}.stage-character{z-index:3;color:#fff;text-shadow:0 2px 5px #000;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;max-width:180px;display:flex;position:absolute;transform:translate(-50%,-50%)}.stage-character.movable{cursor:grab;touch-action:none}.stage-character.movable:active{cursor:grabbing}.stage-character>img{object-fit:contain;width:clamp(70px,12vw,160px);height:clamp(100px,19vw,220px);box-shadow:none;pointer-events:none;background:0 0;border:0;border-radius:0;display:block}.stage-character>b{font-size:13px}.stage-character>small{white-space:nowrap;background:#171323c0;border-radius:4px;padding:1px 5px;font-size:10px}.stage-character-actions{gap:3px;margin-top:4px;display:flex}.stage-character-actions button{text-shadow:none;padding:3px 5px;font-size:10px}.stage-initial{font-size:40px}.character-bubble{color:#292338;width:clamp(130px,20vw,240px);text-shadow:none;white-space:pre-wrap;overflow-wrap:anywhere;cursor:default;-webkit-user-select:text;user-select:text;background:#fff;border-radius:14px;padding:10px 14px;position:absolute;bottom:100%;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0004}.character-bubble:after{content:"";border:8px solid #0000;border-top-color:#fff;position:absolute;top:100%;left:48%}.character-bubble>div{max-height:130px;overflow:auto}.character-bubble small{color:#79608a;font-size:10px}.scene-chat-form{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.scene-chat-form input{flex:1;min-width:160px}.overlay>.modal.board-editor:has(>form){isolation:isolate;flex-direction:column;height:90dvh;max-height:90dvh;display:flex;overflow:hidden;padding:0!important}.stage-shell .overlay>.modal.board-editor:has(>form){isolation:isolate;flex-direction:column;height:90dvh;max-height:90dvh;display:flex;overflow:hidden;padding:0!important}.stage-shell .overlay>.modal.board-editor:has(>form){width:100%;max-width:none;height:100dvh;max-height:100dvh}.overlay>.modal.board-editor:has(>form)>.section-row{z-index:1;border-bottom:1px solid var(--line);background:#f8f7f4;flex:none;gap:16px;width:100%;margin:0;padding:16px 24px;position:relative;top:auto}.stage-shell .overlay>.modal.board-editor:has(>form)>.section-row{z-index:1;border-bottom:1px solid var(--line);background:#f8f7f4;flex:none;gap:16px;width:100%;margin:0;padding:16px 24px;position:relative;top:auto}.overlay>.modal.board-editor:has(>form)>.section-row h2{overflow-wrap:anywhere;min-width:0;margin:0}.overlay>.modal.board-editor:has(>form)>.section-row>button{flex:none}.overlay>.modal.board-editor:has(>form)>form{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;min-height:0;padding:24px;overflow:auto}.overlay>.modal.board-editor:has(>form)>p[role=alert]{flex:none;margin:0;padding:8px 24px}@media (max-width:720px){.overlay>.modal.board-editor:has(>form)>.section-row{padding:12px 16px}.stage-shell .overlay>.modal.board-editor:has(>form)>.section-row{padding:12px 16px}.overlay>.modal.board-editor:has(>form)>form{padding:12px}}.pending-handout{font-weight:700;color:#b42332!important}.cycle-declarations,.climax-actions{background:#fff;border:1px solid #e3ddeb;border-radius:12px;margin:12px 0;padding:18px}.cycle-declarations .actions{flex-wrap:wrap}.climax-actions label{margin:8px 0;display:block}.climax-actions form>label>select{width:100%;display:block}.handout-window .stage-main{max-width:1100px;margin:auto;padding:16px}.handout-window .stage-header{flex-wrap:wrap;gap:12px}.handout-window .stage-handout-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr))}.handout-window .stage-page-heading{margin-bottom:16px}.board-canvas{isolation:isolate}.screen-panel{cursor:grab;position:absolute;transform:translate(-50%,-50%)}.screen-panel>img{object-fit:contain;pointer-events:none;width:100%;height:100%}.screen-panel.panel-hidden{opacity:.45;outline:1px dashed #b794f6}.panel-caption{color:#fff;white-space:nowrap;background:#181323e8;font-size:11px;position:absolute;bottom:100%;left:0}.panel-open,.panel-resize{opacity:0;padding:2px 6px;font-size:12px;position:absolute}.panel-open{top:0;right:0}.panel-resize{cursor:nwse-resize;touch-action:none;bottom:0;right:0}.screen-panel:hover button,.screen-panel:focus-within button{opacity:1}.board-canvas .stage-character{z-index:151}.board-canvas .board-location,.board-canvas .board-scene,.board-canvas .board-placement{z-index:260}@media (pointer:coarse){.panel-open,.panel-resize{opacity:1}}.companion-preparation>:not(.board-layout):not(.overlay){display:none!important}.companion-preparation .board-log{display:none}.companion-preparation .board-layout{display:block}.companion-preparation .board-workbench{width:100%}.handout-distribution{text-align:left;flex-direction:column;gap:4px;padding:5px 0;display:flex}.distribution-switch{background:#f7f5fa;border:1px solid #dcd6e5;border-radius:9px;align-self:flex-start;display:inline-flex;overflow:hidden}.distribution-switch .distribution-option{color:#82778f;box-shadow:none;white-space:nowrap;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;min-width:53px;min-height:32px;margin:0;padding:7px 10px;font-size:12px;line-height:1.4;display:inline-flex}.distribution-switch .distribution-option+.distribution-option{border-left:1px solid #dcd6e5}.distribution-switch .owners[aria-pressed=true],.distribution-switch .owners.is-active{color:#23644a;background:#e1f1ea;font-weight:700}.distribution-switch .holders[aria-pressed=true],.distribution-switch .holders.is-active{color:#69428c;background:#eae0f5;font-weight:700}.distribution-option:focus-visible{outline-offset:-3px;outline:2px solid #7953a0}.handout-distribution small{white-space:normal;max-width:180px}.handout-publish .actions{align-items:center;gap:10px}.publish-more{color:#79658b;font-size:12px}.publish-more summary{cursor:pointer;padding:7px 4px}.publish-more[open]{border-top:1px solid #e8e2ee;flex-basis:100%;padding-top:6px}.publish-more small{color:#82778f;margin:7px 0;display:block}.stage-owners>div{min-width:110px}.stage-owners>div>b{font-size:12px}.workspace-switch{background:#eae4f0;border-radius:12px;gap:5px;margin:12px 0;padding:5px;display:flex}.workspace-switch button{color:#6c5a7c;background:0 0;border:0;border-radius:8px;flex:1;padding:10px 14px}.workspace-switch button.active,.workspace-switch button[aria-pressed=true]{color:#422d57;background:#fff;font-weight:700;box-shadow:0 2px 8px #33224415}.preparation-board>.cycle-declarations,.preparation-board>.scene-chat-form{display:none}.session-vault{background:#faf8fc;border:1px solid #ded6e6;border-radius:16px;margin:20px 0;padding:24px}.vault-save{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.vault-save label{flex:1;min-width:180px}.session-vault .room-card button{margin-top:15px}.grant-history-list article{border:1px solid #e2dbe9;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin:12px 0;padding:18px;display:flex}.grant-history-list p{overflow-wrap:anywhere;font-size:12px}.custodian-field{margin:8px 0;font-size:12px}.custodian-field select{max-width:170px;padding:6px}.live-status{z-index:13000;color:#426a54;pointer-events:none;background:#fffffff5;border:1px solid #ddd4e6;border-radius:20px;padding:7px 12px;font-size:11px;position:fixed;bottom:10px;left:14px;box-shadow:0 3px 15px #24153212}.live-status.is-error{color:#ac364a;border-color:#e0a6af}.acquisition-bell{z-index:11000;color:#fff;background:#6d4690;position:fixed;top:18px;right:22px}.acquisition-list{max-height:55vh;overflow:auto}.acquisition-list article{border-bottom:1px solid #e6dfed;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;display:flex}.acquisition-list b{margin-top:7px;display:block}.climax-plot{z-index:300;background:#f8f3fff5;border:1px solid #cbb8df;border-radius:12px;margin:12px 0;padding:12px 16px;position:sticky;top:0;box-shadow:0 4px 20px #28143820}.climax-plot small{color:#786786;font-size:11px}.plot-input,.plot-values,.plot-summary{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.plot-values button{width:36px;padding:8px}.plot-values button[aria-pressed=true]{color:#fff;background:#68458a;border-color:#68458a}.plot-summary{border-top:1px solid #e4d9ef;margin-top:10px;padding-top:10px}.plot-summary>span{background:#fff;border:1px solid #ddd0e9;border-radius:7px;padding:5px 10px;font-size:12px}.plot-notice{color:#754592;margin:8px 0}.plot-notice button{margin-left:10px;padding:3px 9px}.handout-window .climax-plot{margin:8px 12px;top:55px}.handout-window .stage-archive-intro{padding:14px}.handout-window .stage-archive-intro h2{font-size:20px}.handout-window .stage-archive-intro p{font-size:12px}.handout-window .stage-session>span{display:none}@media (max-width:600px){.session-vault{padding:16px}.grant-history-list article{flex-direction:column;align-items:stretch}.climax-plot{padding:10px}.plot-values button{width:31px}.live-status{font-size:10px;bottom:5px}}.handout-reset{margin:0 0 18px}.reset-panel{background:#faf8fc;border:1px solid #ddd2e8;border-radius:14px;margin-top:12px;padding:20px}.reset-panel>p{margin:10px 0;font-size:13px}.reset-panel>label{margin:14px 0;display:block}.reset-panel .check{align-items:center;gap:8px;display:flex}.reset-counts{flex-wrap:wrap;gap:18px;padding:16px 0;display:flex}.reset-changes{background:#fff;border:1px solid #ddd2e8;border-radius:10px;max-height:420px;margin:10px 0;overflow:auto}.reset-changes details{border-bottom:1px solid #eee6f2;padding:12px}.reset-changes summary{cursor:pointer}.reset-changes p{overflow-wrap:anywhere;margin:10px 0;font-size:12px}.reset-type{color:#69448a;background:#eee7f5;border-radius:5px;padding:3px 6px;font-size:11px}.reset-type.danger{color:#ad2d43;background:#ffebef}.climax-plot{z-index:auto;box-shadow:none;background:0 0;border:0;border-radius:0;margin:8px 0;padding:0;position:static}.plot-toggle{padding:7px 12px;font-size:12px}.plot-panel{background:#f8f3ff;border:1px solid #cbb8df;border-radius:12px;margin-top:8px;padding:12px 16px}.handout-window .climax-plot{margin:8px 12px;position:static}.game-board.companion-preparation>.climax-plot{display:block!important}.overlay.character-sheet-overlay{padding:8px}.overlay>.modal.board-editor.character-sheet-modal:has(>form){width:calc(100vw - 16px);max-width:1760px;height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.character-sheet-modal .character-sheet{grid-template-columns:300px minmax(0,1fr);gap:24px;font-size:16px}.character-sheet-modal .character-sheet label,.character-sheet-modal .character-sheet input,.character-sheet-modal .character-sheet select,.character-sheet-modal .character-sheet textarea{color:#242d3d;font-size:15px}.character-sheet-modal .sheet-skills{grid-template-columns:repeat(6,minmax(140px,1fr));min-width:840px}.character-sheet-modal .sheet-skills label{gap:6px;padding:10px 6px;font-size:15px}.character-sheet-modal .sheet-skills label>span{font-size:12px}.character-sheet-modal .sheet-skills input[type=checkbox]{width:18px;height:18px}.character-sheet-modal .sheet-abilities{table-layout:fixed;white-space:normal;min-width:800px}.character-sheet-modal .sheet-abilities th,.character-sheet-modal .sheet-abilities td{overflow-wrap:anywhere;padding:14px 12px;font-size:15px}.character-sheet-modal .sheet-abilities th:first-child{width:15%}.character-sheet-modal .sheet-abilities th:nth-child(2){width:10%}.character-sheet-modal .sheet-abilities th:nth-child(3){width:18%}.character-sheet-modal .sheet-abilities th:nth-child(4){width:47%}.character-sheet-modal .sheet-abilities th:nth-child(5){width:10%}.ability-original{white-space:pre-wrap;overflow-wrap:anywhere;color:#242d3d;text-align:left;font-size:16px;line-height:1.9}.sheet-save-actions{z-index:2;background:#f8f7f4;border-top:1px solid #d8d4ce;flex-wrap:wrap;margin-top:20px;padding:16px 0;position:sticky;bottom:-24px}.overlay.ability-detail-overlay{z-index:100}.modal.ability-detail-modal{width:min(1000px,96vw);max-height:92dvh}.ability-detail-modal>.section-row{z-index:1;background:#fff;padding:12px 0;position:sticky;top:-28px}@media (max-width:1200px){.character-sheet-modal .character-sheet{grid-template-columns:1fr}.character-sheet-modal .sheet-profile{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.sheet-profile .sheet-title{grid-column:1/-1}}@media (max-width:600px){.character-sheet-modal .sheet-profile{display:flex}.sheet-save-actions{bottom:-12px}.character-sheet-modal .sheet-save-actions button{white-space:normal}}.chat-launch-actions{align-items:center;gap:6px;display:flex}.chat-restore{background:#fff;border-radius:50%;min-width:40px;min-height:40px;padding:8px;box-shadow:0 3px 14px #28203925}.chat-launch-actions>button:last-child{padding:7px;font-size:11px}.handout-actor-label{text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;max-width:140px;display:inline-block;overflow:hidden}.sheet-window{max-width:1600px;margin:auto;padding:20px}.sheet-window-header{z-index:5;background:#f8f7f4;border-bottom:1px solid #ddd;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex;position:sticky;top:0}.sheet-window h1{font-size:24px}.sheet-window .prose{white-space:pre-wrap;overflow-wrap:anywhere}.sheet-window-ability{border:1px solid #ddd;border-radius:8px;margin:12px 0;padding:14px}.sheet-window .sheet-skills button{padding:4px 0;font-size:13px}.sheet-window .skill-target{font-size:14px}.sheet-window select{max-width:100%}.ability-multi-list{border:1px solid var(--line);max-height:320px;margin:10px 0;padding:10px;overflow-y:auto}.character-sheet .ability-multi-list label{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:8px;display:flex}.overlay>.modal.board-editor.live-sheet-modal{isolation:isolate;flex-direction:column;width:calc(100vw - 16px);max-width:1760px;height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);display:flex;overflow:hidden;padding:0!important}.overlay>.modal.board-editor.live-sheet-modal>.section-row{border-bottom:1px solid var(--line);z-index:1;background:#f8f7f4;flex:none;margin:0;padding:12px 16px;position:relative;top:auto}.live-sheet-modal>.section-row h2{overflow-wrap:anywhere;min-width:0}.live-sheet-modal>.section-row>button{flex-shrink:0}.live-sheet-body{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;min-height:0;padding:16px;overflow:auto}.notice,.live-status.is-success{color:#21663a;background:#eaf7ee;border-color:#a8d5b7}
