:root{--wall:#182c2c;--paper:#e9dec4;--ink:#292c25;--muted:#77765f;--red:#a34435;--green:#46674e;--line:#aaa188;--mono:'Courier New',monospace;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}body{margin:0;background:var(--wall);color:var(--paper);font-family:var(--mono);font-size:14px;min-height:100dvh;background-image:repeating-linear-gradient(0deg,transparent 0 3px,#ffffff02 3px 4px)}button,input,select,textarea{font:inherit}button{cursor:pointer;border-radius:0;transition:background .15s,transform .15s}button:disabled{cursor:default;opacity:.6}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #d09d54;outline-offset:3px}button:active:not(:disabled){transform:translateY(2px)}header{height:85px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;border-bottom:1px solid #837e62;gap:20px}a.brand{color:var(--paper);text-decoration:none;display:flex;align-items:center;gap:18px;font:13px var(--mono);letter-spacing:2px;line-height:1.5}.brand b{font:700 17px var(--serif);letter-spacing:1.5px}.seal{font:42px var(--serif);border:1px solid #b4af89;border-radius:50%;width:52px;height:52px;text-align:center;line-height:48px}.utilities{display:flex;gap:8px}nav{display:flex;height:100%;gap:8px;align-items:stretch}header button{background:transparent;color:#c8c3a8;border:0;padding:0 17px;font-weight:bold;font-size:12px;letter-spacing:1px}nav button{border-bottom:3px solid transparent;padding-top:3px}nav button:hover,nav button.active{color:#f4e7c8;border-bottom-color:#bc7655;background:#ffffff04}.utilities button{padding:8px;font-size:10px}.utilities #fullBtn{font-size:25px}.nav-count{margin-left:6px;opacity:.5}.workspace{max-width:1680px;margin:auto;padding:26px 28px 25px;display:grid;grid-template-columns:minmax(210px,.9fr) minmax(420px,1.7fr) minmax(230px,.8fr);gap:25px;height:calc(100dvh - 128px);min-height:620px}.visitor{display:flex;flex-direction:column;min-height:0}.window{position:relative;flex:1;min-height:260px;overflow:hidden;border:5px solid #5a5e4e;box-shadow:0 0 0 2px #111f1e,6px 7px 0 #0d1c1c}.window img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;position:absolute;inset:0;image-rendering:auto}.window-label{position:absolute;top:14px;left:12px;color:#ddd1af;background:#1c2b28e8;padding:7px 9px;font-size:10px;letter-spacing:1px;border:1px solid #79775d}.window-label b{color:#f7e1ab;margin-left:6px}.nameplate{position:absolute;bottom:14px;left:12px;right:12px;padding:12px;background:#182a27e8;border-left:3px solid #c09a64}.nameplate span{display:block;font-weight:bold;letter-spacing:1px;font-size:13px}.nameplate small{display:block;color:#b8b79a;font-size:10px;line-height:1.5;margin-top:4px}.speech{background:#dbd0b5;color:var(--ink);padding:17px 19px;margin-top:22px;position:relative;box-shadow:3px 4px 0 #0c1d1c}.speech:before{content:'';position:absolute;top:-12px;left:25px;border-right:15px solid transparent;border-bottom:15px solid #dbd0b5}.small-label{font-size:10px;letter-spacing:1.8px;font-weight:bold;color:var(--muted)}.speech p{font-family:var(--serif);font-size:17px;line-height:1.5;margin:9px 0 0}.quiet{background:transparent;border:0;color:#c7bea1}.help{padding:16px 0 0;text-align:left;font-size:11px}.help span{float:right;border:1px solid #8a8b70;padding:0 4px}.paper{color:var(--ink);background-color:var(--paper);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 150 150' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' opacity='.055' filter='url(%23n)' d='M0 0h150v150H0z'/%3E%3C/svg%3E");box-shadow:5px 6px 0 #0d1b1bc0,0 0 0 1px #b9ac8e}.case{padding:27px 31px 22px;display:flex;flex-direction:column;position:relative;min-height:0;border-top:5px solid #c7b99b;clip-path:polygon(0 0,98.8% 0,100% 1.5%,100% 98.5%,98% 100%,.8% 100%,0 98%)}.document-header{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:3px double var(--red);padding-bottom:16px}.document-mark{font:30px var(--serif);margin-right:10px;color:#656647}.document-office{display:flex;align-items:center;font-weight:bold;font-size:11px;line-height:1.5;letter-spacing:.7px}.document-id{text-align:right;color:#7c5745;font-size:11px;line-height:1.7}.document-meta{display:flex;justify-content:space-between;margin-top:20px;gap:10px;font-size:10px;color:#74715e}.case h1{font:700 clamp(22px,2vw,34px)/1.15 var(--serif);margin:14px 0 17px;text-wrap:balance}.case-content{flex:1;overflow:auto;min-height:0;padding-right:5px;scrollbar-width:thin;scrollbar-color:#9a967a transparent}.case .label{font-size:10px;font-weight:bold;letter-spacing:1.5px;border-bottom:1px solid var(--line);padding-bottom:9px;margin-bottom:14px}.statement{font:20px/1.6 var(--serif);margin:12px 0 20px}.signature{border-top:1px solid #aaa188;padding-top:12px;display:flex;justify-content:space-between;color:#77735e;font-size:10px;align-items:center;margin-top:15px}.signature em{font:italic 21px var(--serif);color:#595c4c}.actions{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:23px}.stamp{background:transparent;padding:13px 5px;font:700 clamp(16px,1.8vw,28px) var(--serif);letter-spacing:2px;border:3px solid currentColor;outline:1px solid currentColor;outline-offset:-7px;min-height:58px;position:relative}.stamp.approve{color:var(--green);transform:rotate(-1deg)}.stamp.reject{color:var(--red);transform:rotate(1deg)}.stamp:hover{background:#fff6}.stamp kbd{font:10px var(--mono);position:absolute;bottom:5px;right:9px;opacity:.65}.case-bottom{font-size:10px;text-align:center;color:#7f7c65;margin-top:13px}.directive{align-self:start;margin-top:13px;position:relative;border-top:3px solid #c9ba9a;padding:23px 19px 18px;max-height:100%;overflow:auto}.pin{width:12px;height:39px;border:2px solid #66654f;border-radius:10px;position:absolute;right:14px;top:-12px;transform:rotate(9deg);box-shadow:2px 1px #bcae8c}.directive h2{font:700 clamp(17px,1.5vw,24px) var(--serif);color:var(--red);letter-spacing:1px;padding-bottom:15px;border-bottom:3px double var(--red);margin:0 0 23px}.directive h3{font:700 22px/1.2 var(--serif);margin:9px 0 12px}.directive p{font:15px/1.55 var(--serif);margin:0}.rule{height:1px;background:var(--line);margin:20px 0}.directive .order{font-weight:bold;font-size:17px}.directive .instruction{font-size:13px;color:#666b58;margin-top:12px}.shift-progress{border:1px solid #aaa188;padding:11px 8px;margin-top:22px;text-align:center}.shift-progress strong{display:block;font-size:29px;margin:10px 0}.progress{height:4px;background:#c8c0a8;overflow:hidden}.progress i{height:100%;display:block;background:var(--green);transition:width .4s}.stats{display:flex;justify-content:space-around;text-align:center;padding:15px 0}.stats b{display:block;font-size:21px}.stats span{font-size:9px;color:#767960}.review{width:100%;background:transparent;color:var(--red);border:1px solid #a98d71;font-size:10px;font-weight:bold;padding:12px 6px}.review:hover{background:#b44b3520}.review span{margin-left:7px}.saved{text-align:center;font-size:9px;line-height:1.6;color:#757861;margin-top:13px}.directive-seal{text-align:center;font:29px var(--serif);color:#93937c;padding-top:18px}footer{height:43px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:10px;color:#999d86;border-top:1px solid #5e6553;background:#132422}.status-dot{display:inline-block;width:5px;height:5px;background:#94b18c;margin-right:7px;box-shadow:0 0 6px #93ab75}.keys{font-size:9px;opacity:.7}#footerHint{font-family:var(--serif);font-size:14px;color:#c1b89a}.primary{background:var(--green);color:#fff0d5;border:1px solid #354e39;padding:13px 20px;font-size:12px;font-weight:bold;letter-spacing:1px}.primary:hover{background:#35593e}.secondary{background:transparent;color:var(--ink);border:1px solid #969178;padding:11px 15px;font-size:11px}.choice{display:block;width:100%;text-align:left;border:1px solid #a7a187;background:#fff2;color:var(--ink);padding:13px 15px;margin:11px 0;font:16px/1.5 var(--serif)}.choice:hover{background:#fff7;border-color:#64745b}.choice-index{font:11px var(--mono);color:#85836d;margin-right:9px}.subheading{font:700 21px var(--serif);margin:20px 0 12px}.verdict{font:700 28px var(--serif);border:3px solid currentColor;display:inline-block;padding:7px 14px;transform:rotate(-3deg);margin:8px 0 16px;animation:stamp .2s ease-out}.good{color:var(--green)}.bad{color:var(--red)}.result-intro{font:17px/1.55 var(--serif);margin:0 0 15px}.feedback-box{border-left:3px solid var(--green);background:#ffffff24;padding:12px 15px;font:16px/1.6 var(--serif)}.source-label{display:block;font:9px/1.5 var(--mono);color:#7c7d67;margin-bottom:9px;text-transform:uppercase;letter-spacing:1px}details{border-top:1px solid #b6ad93;margin-top:15px;padding:13px 0;font:15px/1.65 var(--serif)}summary{cursor:pointer;font:700 12px/1.5 var(--mono)}.full-answer{white-space:pre-line;margin-top:14px}.annotation{background:#b8994a19;border-left:3px solid #aa7542;padding:12px;font:13px/1.6 var(--serif);margin-top:12px}.after-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:20px}.hint-link{font-size:10px;color:#656c54;background:transparent;border:0;text-decoration:underline;padding:6px}.recall{width:100%;min-height:90px;background:#fff2;border:1px solid #a6a086;padding:10px;color:var(--ink);font:15px/1.5 var(--serif);resize:vertical;margin-top:10px}.report{font:16px/1.65 var(--serif)}.report-numbers{display:flex;gap:30px;border-block:1px solid #aaa188;padding:20px 0;margin:20px 0}.report-numbers b{display:block;font:34px var(--mono);color:var(--green)}.report-numbers span{font:11px var(--mono)}.chapter-note{font:italic 19px/1.5 var(--serif);border-left:3px solid var(--red);padding:12px 18px;margin:20px 0}.report-list{font-size:12px;line-height:1.7}.report-list button{background:none;border:0;text-align:left;text-decoration:underline;color:var(--red);font-size:11px;padding:7px 0}dialog{background:var(--paper);color:var(--ink);border:1px solid #ae9f7c;padding:0;max-width:930px;width:calc(100% - 44px);max-height:85dvh;box-shadow:15px 15px 0 #0005}dialog::backdrop{background:#081918bd;backdrop-filter:blur(4px)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 28px;border-bottom:3px double var(--red);position:sticky;top:0;background:var(--paper);z-index:1}.modal-header h2{font:700 27px var(--serif);margin:0}.modal-header button{border:1px solid #a69a7d;color:var(--ink);background:transparent;min-width:40px;height:40px}#modalBody{padding:25px 28px}.searchbar{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.searchbar input,.searchbar select{padding:12px;border:1px solid #96937a;background:#fff3;color:var(--ink);font-size:12px}.searchbar input{flex:1;min-width:160px}.ticket-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.ticket{background:transparent;border:1px solid #aba28a;text-align:left;color:var(--ink);padding:12px;font-size:11px;min-height:85px}.ticket:hover{background:#fff5}.ticket b{font:22px var(--serif);display:block;margin:3px 0 10px}.ticket span{font-size:9px;color:#777962}.ticket.done{border-color:var(--green);background:#46674e0e}.archive-top{display:flex;gap:10px;margin:20px 0;flex-wrap:wrap}.book-row{border-bottom:1px solid #b6ad93;padding:0 0 13px;margin-top:13px}.book-row summary{font:700 16px/1.4 var(--serif)}.book-row .small-label{margin-right:8px}.book-tools{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.help-text{font:17px/1.6 var(--serif)}.help-text li{padding-bottom:12px}.toast{position:fixed;bottom:60px;left:50%;transform:translateX(-50%);background:#e9dec4;color:#293a2c;padding:14px 25px;box-shadow:3px 4px #0005;z-index:15;font:12px var(--mono);opacity:0;pointer-events:none;transition:opacity .2s;max-width:90vw}.toast.show{opacity:1}.empty{text-align:center;font:17px/1.6 var(--serif);padding:25px}.rotate{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@keyframes stamp{from{transform:rotate(-8deg) scale(1.4);opacity:0}to{transform:rotate(-3deg) scale(1);opacity:1}}
@media(min-width:1450px){.workspace{gap:30px;padding:30px 35px}.case{padding:30px 40px}.statement{font-size:23px}.directive{padding:26px}.directive p{font-size:17px}.speech p{font-size:19px}}
@media(max-width:1100px){header{padding:0 18px;height:68px;gap:8px}.brand b{font-size:13px}.brand{gap:10px!important}.seal{width:39px;height:39px;font-size:32px;line-height:35px}header button{padding:0 10px;font-size:10px}.utilities #soundBtn{font-size:8px}.workspace{padding:18px;gap:17px;grid-template-columns:minmax(175px,.8fr) minmax(350px,1.65fr) minmax(190px,.8fr);height:calc(100dvh - 104px);min-height:580px}.case{padding:19px 22px}.case h1{font-size:25px}.statement{font-size:19px}.directive{padding:18px 13px}.directive h2{font-size:17px}.directive p{font-size:14px}.directive h3{font-size:20px}.speech{padding:15px}.speech p{font-size:16px}.actions{gap:14px}.stamp{font-size:20px}.directive .instruction{font-size:12px}.saved{font-size:8px}footer{height:36px;padding:0 18px}.keys{display:none}.ticket-grid{grid-template-columns:repeat(6,1fr)}}
@media(max-height:650px) and (min-width:650px){header{height:48px;padding:0 15px}.brand{font-size:9px!important;line-height:1.3!important}.brand b{font-size:12px}.seal{font-size:27px;line-height:29px;width:33px;height:33px}header button{font-size:10px;padding:0 10px}.workspace{height:calc(100dvh - 76px);min-height:0;padding:12px 15px;gap:15px;grid-template-columns:minmax(145px,.75fr) minmax(340px,1.8fr) minmax(165px,.8fr)}.window{min-height:140px;border-width:3px}.window img{object-position:50% 40%}.nameplate{bottom:7px;left:6px;right:6px;padding:7px}.nameplate span{font-size:10px}.nameplate small{font-size:8px;margin-top:1px}.window-label{font-size:8px;top:7px;left:6px;padding:4px}.speech{padding:10px 12px;margin-top:13px}.speech .small-label{font-size:8px}.speech p{font-size:13px;margin-top:4px;line-height:1.4}.help{padding-top:8px;font-size:9px}.case{padding:14px 18px 11px;border-top-width:3px}.document-header{padding-bottom:8px}.document-office{font-size:8px}.document-mark{font-size:22px}.document-id{font-size:8px}.document-meta{margin-top:10px;font-size:8px}.case h1{font-size:22px;margin:9px 0 11px}.case .label{font-size:8px;margin-bottom:8px;padding-bottom:7px}.statement{font-size:17px;line-height:1.45;margin:10px 0 13px}.signature{margin-top:8px;padding-top:7px;font-size:8px}.signature em{font-size:17px}.actions{margin-top:13px;gap:16px}.stamp{font-size:19px;min-height:46px;padding:9px 3px}.case-bottom{font-size:8px;margin-top:8px}.directive{margin-top:4px;padding:13px 12px;max-height:100%}.directive h2{font-size:16px;padding-bottom:10px;margin-bottom:12px}.directive h3{font-size:18px;margin:6px 0 9px}.directive p{font-size:12px;line-height:1.4}.small-label{font-size:8px}.rule{margin:11px 0}.directive .order{font-size:14px}.directive .instruction{font-size:10px;margin-top:8px}.shift-progress{margin-top:12px;padding:7px}.shift-progress strong{font-size:22px;margin:5px 0}.stats{padding:10px 0}.stats b{font-size:16px}.stats span{font-size:8px}.review{font-size:8px;padding:9px 4px}.saved{font-size:7px;margin-top:8px}.directive-seal{font-size:19px;padding-top:7px}footer{height:28px;font-size:8px;padding:0 15px}#footerHint{font-size:11px}.subheading{font-size:19px;margin:12px 0 8px}.choice{font-size:14px;padding:9px 11px;margin:8px 0}.verdict{font-size:21px;padding:5px 10px;margin:5px 0 10px}.feedback-box,.result-intro{font-size:14px}.after-actions{margin-top:12px}.primary{padding:10px 13px;font-size:10px}.report{font-size:14px}.report-numbers{padding:10px 0;margin:12px 0}.report-numbers b{font-size:24px}.chapter-note{font-size:16px;margin:12px 0}.modal-header{padding:14px 20px}.modal-header h2{font-size:22px}#modalBody{padding:18px 20px}}
@media(max-width:850px) and (orientation:landscape){header .brand b{font-size:10px;letter-spacing:.6px}a.brand{font-size:8px;gap:8px!important}header .seal{width:29px;height:29px;line-height:25px;font-size:24px}header nav{gap:0}header nav button{padding:0 9px;font-size:9px;letter-spacing:.5px}.utilities #soundBtn{font-size:7px;padding:3px}.utilities{gap:1px}.utilities #fullBtn{font-size:19px;padding:3px}.workspace{grid-template-columns:145px minmax(280px,1fr) 156px;gap:11px;padding:10px}.case{padding:12px 14px}.case h1{font-size:19px}.document-office{font-size:7px}.document-id{font-size:7px}.statement{font-size:16px}.stamp{font-size:16px;letter-spacing:1px}.directive{padding:12px 10px}.directive h2{font-size:14px;letter-spacing:0}.directive h3{font-size:16px}.directive .instruction{display:none}.speech p{font-size:12px}.help{font-size:8px}.directive-seal{display:none}.ticket-grid{grid-template-columns:repeat(6,1fr)}}
@media(max-width:649px){header{height:auto;min-height:70px;flex-wrap:wrap;padding:12px}.utilities{position:absolute;top:12px;right:10px}.brand b{font-size:12px}nav{width:100%;justify-content:space-between;height:38px}nav button{padding:0 6px}.workspace{height:auto;min-height:0;display:flex;flex-direction:column;padding:15px;gap:20px}.visitor{display:grid;grid-template-columns:100px 1fr;gap:12px}.window{min-height:155px}.window-label{display:none}.nameplate{padding:5px;bottom:5px;left:3px;right:3px}.nameplate span{font-size:7px}.nameplate small{display:none}.speech{margin:0;padding:13px}.speech:before{display:none}.speech p{font-size:15px}.help{grid-column:2;padding:0}.case{min-height:480px;padding:22px}.case-content{overflow:visible}.case h1{font-size:27px}.statement{font-size:20px}.directive{margin:0}.directive h2{font-size:23px}.directive-inner{display:grid;grid-template-columns:1fr 1fr;gap:12px}.directive .rule,.directive .order,.directive .instruction,.directive-seal{display:none}.directive-inner #story{grid-column:1/-1}.directive-inner #act{grid-column:1/-1}.directive-inner h3{grid-column:1/-1}.shift-progress{margin:0}.saved{grid-column:1/-1}.review{grid-column:1/-1}.stats{padding:0;align-items:center}footer{height:auto;min-height:45px;font-size:8px}#footerHint{display:none}.ticket-grid{grid-template-columns:repeat(3,1fr)}dialog{width:calc(100% - 24px);max-height:90dvh}.modal-header{padding:16px}.modal-header h2{font-size:22px}#modalBody{padding:18px}.rotate{display:flex;position:fixed;inset:0;z-index:30;background:#182c2c;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px}.rotate span{font-size:75px;color:#c7ac76}.rotate h1{font:28px var(--serif)}.rotate p{font:16px/1.6 var(--serif);color:#c4c2a4}.rotate button{margin-top:20px;background:transparent;color:var(--paper);border:1px solid #a89e79;padding:13px;font-size:12px}.rotate.dismissed{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}} 
.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:25px 0}.menu-grid .primary{grid-column:1/-1;padding:18px}.menu-grid .secondary{min-height:50px;text-align:left}.menu-save{border-top:1px solid #b5ab91;padding-top:18px}.menu-save .hint-link{margin-right:20px;padding-left:0}.audio-controls{margin:25px 0;max-width:550px}.audio-controls label{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid #b7ad94;font:16px var(--serif)}.audio-controls input[type=checkbox]{width:24px;height:24px;accent-color:#46674e}.audio-controls input[type=range]{width:180px;accent-color:#46674e}.audio-controls output{font:11px var(--mono);margin-left:7px}.audio-controls~.primary{margin-top:15px}@media(max-width:649px){.menu-grid{grid-template-columns:1fr}.menu-grid .primary{grid-column:1}.audio-controls input[type=range]{width:120px}.menu-grid{margin:18px 0}.menu-grid .secondary{min-height:44px;font-size:10px}}
/* v1-compatible study room and portrait touch layout */
.study-invite{margin:20px 0;padding:18px;border:1px solid #a49b7a;background:#54745b12}.study-invite p{font:17px/1.5 var(--serif);margin:10px 0 15px}.study-scene{border-left:3px solid var(--green);background:#46674e0b;padding:18px 20px;margin:0 0 20px}.study-scene p{font:20px/1.6 var(--serif);margin-bottom:0}.study-metrics{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:18px 0;border-block:1px solid #aba28a;margin:18px 0}.study-metrics b{display:block;font:32px var(--serif);color:var(--green)}.study-metrics span{font:11px/1.5 var(--mono)}.study-progress{margin:15px 0}.study-answer{margin:24px 0;padding:20px 0;border-block:1px solid #aba28a;scroll-margin-top:12px}.study-answer .full-answer{font:17px/1.7 var(--serif)}.rating-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.rating-grid button{min-height:76px;padding:12px 8px;font-size:10px}.rating-grid small{display:block;font:12px/1.4 var(--serif);margin-top:8px}.study-reveal{margin-top:15px;width:100%;min-height:48px}#studyDraft{min-height:150px;width:100%;box-sizing:border-box;font-size:17px;line-height:1.6;resize:vertical}.recall{font-size:16px}button,summary,a,input,select,textarea{touch-action:manipulation}button:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #bd8b3f;outline-offset:3px}.case{scroll-margin-top:12px}
@media(max-width:649px){
 .rotate{display:none!important}body{overflow-x:hidden}header{padding-top:max(12px,env(safe-area-inset-top));position:relative}.brand{padding-right:98px}.brand b{font-size:11px}header nav{gap:0;overflow:visible}header nav button{font-size:9px;letter-spacing:0;min-height:44px;padding:0 7px}header nav .nav-count{display:none}.utilities #soundBtn{font-size:8px;padding:0 5px;min-height:44px}.utilities #fullBtn{min-width:34px;min-height:44px}.workspace{padding:12px;gap:14px}.visitor{grid-template-columns:68px minmax(0,1fr);gap:10px}.window{min-height:104px;height:104px}.window img{height:100%;object-fit:cover}.nameplate{display:none}.speech{padding:11px 13px}.speech p{font-size:15px;line-height:1.5;margin-bottom:0}.visitor .help{grid-column:1/-1;min-height:36px;text-align:right}.case{padding:18px;min-height:0}.document-header{gap:8px}.document-office{font-size:8px}.document-id{font-size:8px}.document-meta{gap:8px;font-size:9px;flex-wrap:wrap}.case h1{font-size:25px;line-height:1.25;overflow-wrap:anywhere}.statement{font-size:20px;line-height:1.55}.actions{gap:15px;margin-top:22px}.stamp{min-height:58px;font-size:20px;letter-spacing:1px}.choice{font-size:17px;line-height:1.5;min-height:56px}.after-actions{flex-wrap:wrap;gap:14px}.after-actions .primary{width:100%;min-height:50px;font-size:12px}.case-bottom{font-size:10px;line-height:1.6}.directive{padding:18px}.saved{font-size:10px;line-height:1.5}.directive .review{min-height:48px;font-size:11px}footer{padding-bottom:max(12px,env(safe-area-inset-bottom))}dialog{max-height:92dvh;width:calc(100% - 16px);max-width:100%;box-sizing:border-box}.modal-header{position:sticky;top:0;background:var(--paper);z-index:2;gap:12px}.modal-header h2{font-size:22px;line-height:1.2;overflow-wrap:anywhere}#closeModal{flex-shrink:0;min-width:44px;min-height:44px}#modalBody{padding:18px 16px}.help-text{font-size:17px}.primary,.secondary{min-height:48px;font-size:11px;white-space:normal;line-height:1.5}.hint-link{min-height:44px}.ticket-grid{gap:8px}.ticket{padding:10px;min-width:0}.ticket span{font-size:10px;line-height:1.5}.searchbar input,.searchbar select{font-size:16px;max-width:100%;min-height:48px}.study-scene{padding:14px}.study-scene p{font-size:18px}.rating-grid{grid-template-columns:1fr}.rating-grid button{min-height:60px;font-size:12px;display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left}.rating-grid small{margin:0}.full-answer{overflow-wrap:anywhere}.toast{bottom:24px;font-size:12px;width:max-content;max-width:calc(100vw - 32px);box-sizing:border-box}.book-row summary{font-size:17px;min-height:44px}
}
@media(max-height:500px) and (orientation:landscape){.workspace{grid-template-columns:135px minmax(0,1fr);min-width:0}.directive{display:none}.case h1{font-size:21px}header nav button{padding-inline:7px}dialog{max-height:94dvh}.modal-header{padding-block:10px}.rating-grid button{min-height:54px}}
.reason-feedback{border-left:2px solid var(--green);padding:10px 14px;margin:14px 0;background:#46674e09}.reason-feedback p{font:17px/1.6 var(--serif);margin:8px 0 0}.mira-art{display:block;width:100%;max-width:600px;height:auto;aspect-ratio:3/2;object-fit:contain;border:1px solid #8d866b;margin:0 auto 18px;filter:saturate(.8)}@media(max-width:649px){.mira-art{height:auto}.reason-feedback p{font-size:17px}}
