/* REPQUARTERS: the world is the primary interface; legacy tools remain accessible. */
:root{--rq-bg:#100f25;--rq-paper:#f1efff;--rq-muted:#b7b5d4;--rq-accent:#68f0ff;--rq-line:#a997ef25}
body.rq-world{background:var(--rq-bg);overflow:hidden;color:var(--rq-paper)}
body.rq-world #appFrame{display:none!important}
body.rq-tool #expeditionNav,body.rq-tool .shell-head{display:none!important}
body.rq-tool #appFrame{padding-top:58px}
body:not(.rq-classic) #home{visibility:hidden}
#rq-root{position:fixed;inset:0;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 52%,#423366 0,#232244 36%,#100f25 73%);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--rq-paper)}
#rq-root[hidden]{display:none}
#rq-root *{box-sizing:border-box}
#rq-root button,#rq-return{font:inherit;cursor:pointer;touch-action:manipulation;color:inherit}
#rq-root button:focus-visible,#rq-root select:focus-visible,#rq-root input:focus-visible{outline:2px solid var(--rq-accent);outline-offset:4px}
#rq-root button:disabled{opacity:.4;cursor:not-allowed}
#rq-root button{border:0}
#rq-root h1,#rq-root h2,#rq-root h3,#rq-root p{margin:0}
.rq-top{position:absolute;inset:max(20px,env(safe-area-inset-top)) 24px auto;display:flex;justify-content:space-between;align-items:center;z-index:3;gap:12px}
.rq-brand{display:flex;gap:10px;align-items:center;font-size:15px;font-weight:750;letter-spacing:2.7px}
.rq-logo{width:32px;height:36px;display:grid;place-items:center;border:1px solid #68f0ff88;border-radius:8px 0 8px 0;color:var(--rq-accent);font-weight:800;font-size:19px;letter-spacing:-3px;padding-right:3px}
.rq-top-actions{display:flex;gap:6px}
.rq-icon{width:43px;height:43px;display:grid;place-items:center;background:#ae9bfa0c;border:1px solid var(--rq-line)!important;border-radius:50%;font-size:20px}
.rq-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.rq-heading{position:absolute;top:calc(max(20px,env(safe-area-inset-top)) + 77px);left:24px;right:24px;pointer-events:none;text-align:center;z-index:2}
.rq-eyebrow{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--rq-accent);font-weight:650}
#rq-title{font-size:clamp(30px,4vw,46px);line-height:1.12;letter-spacing:-1.9px;font-weight:550;margin:11px 0 10px!important}
#rq-subtitle{font-size:12px;line-height:1.5;color:var(--rq-muted);letter-spacing:.15px}
.rq-canvas{position:absolute;inset:178px 0 126px;outline:none;touch-action:none}
.rq-canvas canvas{width:100%;height:100%;display:block;touch-action:none}
.rq-pins{position:absolute;inset:178px 0 126px;pointer-events:none;overflow:hidden;z-index:2}
.rq-pin{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;background:#211e44ea;color:#f6f1ff!important;border:1px solid #a58aff56!important;border-radius:10px;padding:9px 12px;min-height:44px;white-space:nowrap;box-shadow:0 6px 20px #0003;display:flex;align-items:center;gap:8px;font-size:12px!important;font-weight:600}
.rq-pin i{width:6px;height:6px;display:block;border-radius:50%;background:var(--rq-accent);box-shadow:0 0 8px #68f0ff66}
.rq-pin small{font-size:11px;opacity:.65;margin-left:2px}
.rq-bottom{position:absolute;bottom:calc(22px + env(safe-area-inset-bottom));left:24px;right:24px;z-index:3;display:flex;justify-content:space-between;gap:16px;align-items:center}
.rq-level{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--rq-muted)}
.rq-level-mark{width:38px;height:42px;border:1px solid #a489e963;border-radius:10px;display:grid;place-items:center;color:var(--rq-accent);font-size:15px;font-weight:600}
.rq-level strong{display:block;color:var(--rq-paper);font-size:12px;font-weight:550;margin-bottom:6px}
.rq-xp-track{height:3px;background:#a89bdf24;border-radius:3px;width:105px;margin-top:7px;overflow:hidden}
.rq-xp-track i{display:block;height:100%;width:0;background:var(--rq-accent)}
.rq-build-toggle{background:var(--rq-accent);color:#171536!important;padding:13px 18px;border-radius:12px;display:flex;align-items:center;gap:8px;font-size:12px!important;font-weight:700}
.rq-build-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.rq-camera-tools{position:absolute;right:17px;bottom:160px;z-index:3;display:flex;flex-direction:column;gap:7px}
.rq-camera-tools .rq-icon{width:38px;height:38px;background:#242041c9;font-size:19px}
.rq-hint{position:absolute;left:20px;right:20px;bottom:111px;text-align:center;font-size:10px;letter-spacing:.6px;color:#aaa6cf;pointer-events:none}
.rq-back{position:absolute;top:calc(max(20px,env(safe-area-inset-top)) + 72px);left:21px;z-index:4;border:1px solid var(--rq-line)!important;border-radius:50%;width:38px;height:38px;background:#332853b8;font-size:22px!important}
.rq-panel{position:absolute;left:50%;bottom:calc(19px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(440px,calc(100% - 28px));max-height:52%;overflow:auto;overscroll-behavior:contain;border:1px solid #b39bea31;border-radius:20px;background:#211d3d;color:#f0ecff;box-shadow:0 16px 60px #0005;padding:21px;z-index:5;scrollbar-width:thin}
.rq-panel[hidden]{display:none}
.rq-panel .rq-eyebrow{color:#75efff;font-size:9px;letter-spacing:2px}
.rq-panel h2{font-size:22px;line-height:1.2;letter-spacing:-.65px;font-weight:650;margin:7px 0!important;padding-right:28px}
.rq-panel p{font-size:12px;line-height:1.6;color:#c0b6d8}
.rq-panel .rq-close{position:absolute;right:13px;top:13px;width:37px;height:37px;background:#b796f510;border-radius:50%;font-size:22px}
.rq-primary{display:block;width:100%;min-height:46px;padding:13px 15px;background:#68f0ff;color:#151332!important;border-radius:10px;font-size:13px!important;font-weight:650;text-align:center;margin-top:15px}
.rq-secondary{min-height:42px;padding:10px 13px;background:#393056;color:#e9dfff!important;border-radius:9px;font-size:12px!important;font-weight:600}
.rq-row{display:flex;align-items:center;gap:8px;margin-top:12px}
.rq-row>*{flex:1;min-width:0}
.rq-row label,.rq-panel label{font-size:11px;font-weight:600;color:#c4b8df;display:block}
.rq-panel input,.rq-panel select{font:inherit;font-size:16px;color:#f0ecff;border:1px solid #675788;background:#17152d;border-radius:8px;padding:10px;width:100%;margin-top:6px;min-height:44px}
.rq-panel details{margin-top:12px;font-size:12px}
.rq-panel summary{cursor:pointer;padding:8px 0;color:#cebbf0}
.rq-panel ul{padding-left:18px;font-size:12px;line-height:1.7}
.rq-compartments{display:flex;background:#17162c;border-radius:9px;padding:3px;margin:13px 0;gap:3px}
.rq-compartments button{flex:1;min-height:38px;border-radius:7px;padding:5px;font-size:11px!important;background:transparent}
.rq-compartments button[aria-pressed=true]{background:#584275;box-shadow:0 1px 4px #b796f512;color:#f5eaff!important;font-weight:650}
.rq-batches{display:grid;gap:7px;margin-top:10px;max-height:190px;overflow:auto}
.rq-batch{display:flex;align-items:center;gap:12px;width:100%;padding:12px;background:#383050;text-align:left;border-radius:10px}
.rq-batch strong{display:block;font-size:12px;font-weight:650;line-height:1.4}
.rq-batch small{display:block;color:#c8bddc;font-size:11px;margin-top:3px}
.rq-container-icon{width:33px;height:26px;flex:0 0 auto;position:relative;border-radius:3px 3px 6px 6px;background:#da7ccb;border:2px solid #b58bda}
.rq-container-icon:before{content:'';position:absolute;left:-3px;right:-3px;top:-5px;height:5px;border-radius:3px;background:#83dceb;border:1px solid #65b6d0}
.rq-container-icon:after{content:'';position:absolute;left:6px;right:6px;top:7px;height:7px;border-radius:2px;background:#ece3ff}
.rq-macros{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;background:#302947;padding:12px;border-radius:10px;margin:12px 0}
.rq-macros strong{display:block;font-size:16px;letter-spacing:-.4px}.rq-macros small{font-size:9px;color:#c7bddc}
.rq-error{color:#ffacb9!important;font-weight:600;min-height:0;margin-top:10px!important}
.rq-error:empty{display:none}
.rq-success-mark{width:42px;height:42px;display:grid;place-items:center;background:#454461;border-radius:50%;font-size:24px;color:#d9ff77;margin-bottom:12px}
.rq-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}
.rq-actions button{text-align:left;display:flex;align-items:center;gap:7px}
.rq-build-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px;max-width:230px}
.rq-build-controls button{min-height:42px;border-radius:8px;background:#403358;font-size:18px!important}
.rq-build-controls button:nth-child(2){grid-column:2}
.rq-build-controls button:nth-child(3){grid-column:1}
.rq-placement{font-size:11px!important;margin-top:10px!important}
.rq-placement[data-valid=true]{color:#d9ff77}.rq-placement[data-valid=false]{color:#ffacb9}
#rq-toast{position:absolute;top:calc(max(20px,env(safe-area-inset-top)) + 65px);left:50%;transform:translateX(-50%);max-width:90%;background:#ceafff;color:#211633;border-radius:9px;padding:10px 15px;font-size:12px;z-index:8;box-shadow:0 5px 22px #0003;text-align:center}
#rq-toast:empty{display:none}
#rq-return{position:fixed;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:100;background:#201a37f5;border:0;border-bottom:1px solid #a787e533;min-height:51px;color:#eee5ff;display:flex;align-items:center;justify-content:center;gap:10px;font-size:12px;font-family:system-ui}
#rq-return[hidden]{display:none}
#rq-root[data-mode=fridge] .rq-canvas,#rq-root[data-mode=fridge] .rq-pins,#rq-root[data-mode=build] .rq-canvas,#rq-root[data-mode=build] .rq-pins{bottom:44%;top:126px}
#rq-root[data-mode=fridge] .rq-heading,#rq-root[data-mode=build] .rq-heading{top:calc(max(20px,env(safe-area-inset-top)) + 65px)}
#rq-root[data-mode=fridge] #rq-title,#rq-root[data-mode=build] #rq-title{font-size:23px;margin:6px 0!important}
#rq-root[data-mode=fridge] #rq-subtitle,#rq-root[data-mode=fridge] .rq-heading .rq-eyebrow,#rq-root[data-mode=build] #rq-subtitle,#rq-root[data-mode=build] .rq-heading .rq-eyebrow{display:none}
#rq-root[data-mode=fridge] .rq-bottom,#rq-root[data-mode=build] .rq-bottom,#rq-root[data-mode=fridge] .rq-hint,#rq-root[data-mode=build] .rq-hint,#rq-root[data-mode=fridge] .rq-camera-tools,#rq-root[data-mode=build] .rq-camera-tools{display:none}
#rq-root[data-fallback=true] .rq-canvas,#rq-root[data-fallback=true] .rq-pins{display:none}
#rq-root[data-fallback=true] .rq-panel{max-height:65%;bottom:20px}
#startup{background:radial-gradient(ellipse at 50% 40%,#4a346d,#100f25 70%)!important}
#startup .startup-landscape,#startup .startup-emblem{display:none!important}
#startup .startup-brand{font-family:system-ui;font-size:26px;font-weight:650;color:#68f0ff;letter-spacing:3px}
#startup .startup-tagline{color:#c4b3dc;font-size:10px}
@media(min-width:800px){
 .rq-top{inset:30px 42px auto}.rq-brand{font-size:18px}.rq-heading{top:100px}
 .rq-canvas,.rq-pins{inset:140px 30px 100px}.rq-bottom{left:42px;right:42px;bottom:30px}
 .rq-panel{left:auto;right:35px;bottom:35px;transform:none;width:350px;max-height:calc(100% - 170px)}
 #rq-root[data-mode=fridge] .rq-canvas,#rq-root[data-mode=fridge] .rq-pins,#rq-root[data-mode=build] .rq-canvas,#rq-root[data-mode=build] .rq-pins{inset:140px 390px 40px 20px}
 #rq-root[data-mode=fridge] .rq-heading,#rq-root[data-mode=build] .rq-heading{right:390px;top:90px}
 #rq-root[data-mode=fridge] #rq-title,#rq-root[data-mode=build] #rq-title{font-size:30px}
 .rq-camera-tools{right:40px}.rq-hint{bottom:104px}
}
@media(max-height:690px) and (max-width:799px){.rq-heading{top:82px}#rq-title{font-size:28px;margin:5px 0!important}.rq-canvas,.rq-pins{top:150px;bottom:115px}.rq-bottom{bottom:calc(12px + env(safe-area-inset-bottom))}.rq-hint{bottom:97px}.rq-panel{padding:15px;max-height:52%}.rq-panel h2{font-size:19px}.rq-batches{max-height:115px}#rq-root[data-mode=fridge] .rq-canvas,#rq-root[data-mode=build] .rq-canvas{top:110px;bottom:49%}}
@media(prefers-reduced-motion:reduce){#rq-root *,#startup{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Neon accents stay steady: no flashing or extra animation. */
.rq-logo{box-shadow:0 0 20px #68f0ff20;text-shadow:0 0 12px #68f0ff88}
#rq-title{color:#f5ecff;text-shadow:0 0 28px #cf79ff40}
.rq-build-toggle,.rq-primary{background:linear-gradient(110deg,#70f2ff,#b1a1ff);box-shadow:0 4px 22px #7c6fff30}
.rq-xp-track i{background:linear-gradient(90deg,#68f0ff,#ff79d9)}
.rq-pin[data-target=room-gym] i{background:#ff79d9;box-shadow:0 0 10px #ff79d9aa}
.rq-pin[data-target=room-office] i{background:#deff7a;box-shadow:0 0 10px #deff7aaa}
.rq-panel{border-color:#b99aff66;color-scheme:dark}

#rq-root{background:radial-gradient(ellipse at 50% 52%,#272332 0,#1b1823 36%,#100f16 73%);--rq-accent:#b4a6d5;--rq-paper:#e1e2e5;--rq-muted:#999da5;--rq-line:#9ca8b32b}
.rq-logo{border-color:#b4a6d566;box-shadow:none;text-shadow:none}
#rq-title{color:#e5e5e7;text-shadow:none}
.rq-pin{background:#100f16ed;border-color:#8596a64a!important;color:#dce0e5!important;box-shadow:0 5px 16px #0004}
.rq-pin i,.rq-pin[data-target=room-gym] i,.rq-pin[data-target=room-office] i{background:#b4a6d5;box-shadow:0 0 7px #b4a6d555}
.rq-build-toggle,.rq-primary{background:#b4a6d5;color:#100f16!important;box-shadow:none}
.rq-level-mark{border-color:#b4a6d555}.rq-xp-track{background:#89949d25}.rq-xp-track i{background:#b4a6d5}
.rq-camera-tools .rq-icon,.rq-back{background:#1b1823cc}.rq-hint{color:#89939d}
.rq-panel{background:#1b1823;border-color:#8a98a54d;color:#e1e2e5}.rq-panel .rq-eyebrow{color:#b4a6d5}
.rq-panel p,.rq-row label,.rq-panel label,.rq-panel summary,.rq-batch small{color:#acb1b8}
.rq-secondary,.rq-batch,.rq-macros,.rq-build-controls button{background:#272332;color:#e1e2e5!important}
.rq-panel input,.rq-panel select,.rq-compartments{background:#100f16;border-color:#74808c66;color:#e1e2e5}
.rq-compartments button[aria-pressed=true]{background:#272332;color:#b4a6d5!important}

/* Object functions share the existing live controllers; no cloned forms or stores. */
body.rq-object #appFrame{display:grid!important;position:fixed!important;inset:43% 12px 12px!important;width:auto!important;height:auto!important;grid-template-rows:auto minmax(0,1fr)!important;padding:0!important;border:1px solid #a89aba66;border-radius:20px;background:#191721;z-index:6;box-shadow:0 12px 45px #0006;isolation:isolate}
body.rq-object #appFrame>.shell-head,body.rq-object #appFrame>.chapterbar,body.rq-object #dockLayer,body.rq-object #nutritionTools,body.rq-object #rq-return{display:none!important}
body.rq-object #screenViewport{grid-row:2!important;overflow:auto!important;min-height:0;padding:0 8px 16px;background:#191721}
#rq-object-bar{grid-row:1;padding:12px 14px;border-bottom:1px solid #a89aba33;color:#e8e3f1;background:#24202f;font:13px system-ui}
#rq-object-bar[hidden]{display:none}#rq-object-bar>div{display:flex;justify-content:space-between;align-items:center;gap:12px}
#rq-object-close{width:36px;height:36px;border:0;border-radius:50%;background:#ffffff10;color:inherit;font-size:22px;cursor:pointer}
#rq-object-tabs{display:flex;gap:6px;overflow:auto;padding-top:8px;scrollbar-width:thin}
#rq-object-tabs button{white-space:nowrap;background:#ffffff09;border:1px solid #a89aba30;border-radius:8px;padding:9px 12px;color:#cec5df;font:12px system-ui;cursor:pointer}
#rq-object-tabs button[aria-current=true]{background:#b4a6d5;color:#171321}
#rq-root[data-mode=object] .rq-canvas,#rq-root[data-mode=object] .rq-pins{top:126px;bottom:57%}
#rq-root[data-mode=object] .rq-heading{top:85px}#rq-root[data-mode=object] #rq-title{font-size:23px;margin:6px 0!important}
#rq-root[data-mode=object] .rq-eyebrow,#rq-root[data-mode=object] #rq-subtitle,#rq-root[data-mode=object] .rq-bottom,#rq-root[data-mode=object] .rq-hint,#rq-root[data-mode=object] .rq-camera-tools{display:none}
body.rq-object .nutrition-feature .ov{position:fixed!important;inset:0!important;background:#191721!important;z-index:15;align-items:stretch!important;padding:0!important}
body.rq-object .nutrition-feature .sheet{max-height:100%!important;width:100%!important;border-radius:0!important;overflow:auto!important}
body.rq-object #appFrame{transform:translateZ(0)}
body.rq-object .training-feature .app-shell{padding:0!important;min-height:0!important}
body.rq-object .training-feature .adventure-landscape{min-height:0!important}
@media(min-width:800px){body.rq-object #appFrame{inset:145px 25px 25px auto!important;width:440px!important}#rq-root[data-mode=object] .rq-canvas,#rq-root[data-mode=object] .rq-pins{inset:140px 480px 40px 20px}#rq-root[data-mode=object] .rq-heading{right:480px}}
body.rq-object #appFrame{--chapter-art:none;--route-art:none;--scene-art:none;--hut-art:none;--bg:#191721;--surface:#252131;--surface-2:#302a3d;--panel:#252131;--panel-2:#302a3d;--line:#51465f;--text:#e9e3f0;--muted:#b3a9c1;--acc:#b4a6d5;--acc-lite:#d0c3ec;--lime:#b4a6d5}
body.rq-object #appFrame [data-art-scene],body.rq-object #appFrame .weight-station-header,body.rq-object #appFrame .profile-character-compact,body.rq-object #appFrame .history-heading,body.rq-object #appFrame .journal-chart-panel,body.rq-object #appFrame .diary-summary,body.rq-object #appFrame .provision-header,body.rq-object #appFrame .meal-picker-hero,body.rq-object #appFrame .profile-crew-banner{background:#252131!important;background-image:none!important;text-shadow:none!important}
body.rq-object .training-feature .adventure-selection,body.rq-object .training-feature .adventure-journey{padding:16px!important;min-height:0!important}
body.rq-object .route-training-picker>.adventure-back,body.rq-object .route-training-picker>.adventure-kicker{display:none}
body.rq-object .route-training-option,body.rq-object .weight-instrument,body.rq-object #nutrition-feature .recipe-book-dish{background:#292334!important;border-color:#635570!important}
body.rq-object #appFrame h1{font-size:25px!important}body.rq-object #appFrame h2{font-size:22px!important}
body.rq-object .weight-station-header{min-height:0;padding:16px!important}body.rq-object .weight-station-header>span{display:none}
body.rq-object .nutrition-feature .ov{inset:var(--rq-object-toolbar,104px) 0 0!important}
body.rq-object #rq-object-bar{position:relative;z-index:20}
body.rq-object dialog[open]{position:fixed;top:calc(43% + 12px);bottom:12px;left:12px;right:12px;width:auto;max-width:none;max-height:calc(57% - 24px);margin:0;overflow:auto;background:#252131;color:#eee6f6;border-color:#635570}
body.rq-object dialog::backdrop{background:#11101a44}
@media(min-width:800px){body.rq-object dialog[open]{top:145px;right:25px;left:auto;bottom:25px;width:440px;max-height:calc(100% - 170px)}}
body.rq-object dialog .personal-top{background:#302a3d!important;background-image:none!important}
body.rq-object #appFrame .weight-station .btn.solid{background:#b4a6d5;color:#171321}
body.rq-object #appFrame{grid-template-columns:minmax(0,1fr)!important}
#rq-object-bar,#rq-object-tabs,body.rq-object #screenViewport{min-width:0;max-width:100%}
#rq-object-tabs{width:100%;flex-shrink:1}#rq-object-close{flex-shrink:0}
