@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--container-sm:24rem;--container-2xl:42rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-bold:700;--font-weight-black:900;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.z-10{z-index:10}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-full{height:100%}.h-px{height:1px}.min-h-screen{min-height:100vh}.w-6{width:calc(var(--spacing) * 6)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-sm{max-width:var(--container-sm)}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-12{padding-block:calc(var(--spacing) * 12)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-none{--tw-leading:1;line-height:1}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-1{transition-delay:1ms}.delay-2{transition-delay:2ms}.delay-3{transition-delay:3ms}.delay-5{transition-delay:5ms}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}}@media (min-width:40rem){.sm\:block{display:block}.sm\:flex-row{flex-direction:row}}}:root{--red-deep:#8b0014;--red-primary:#c41230;--red-bright:#e8192c;--black:#0a0005;--black-card:#130008;--black-panel:#1c0010;--gold:#f5c842;--gold-light:#ffe07a;--silver:#c8c8c8;--white:#f5f0f0;--text-muted:#9a7a82;--pp-red:#c41230;--pp-red-deep:#8b0014;--pp-yellow:#f5c842;--pp-cream:#fdf6e3;--pp-paper:#fffdf0;--pp-ink:#1a0008;--pp-ink-soft:#5a3a40;--floor-a:#2a1018;--floor-b:#3a1820;--floor-edge:#f5c84240;--z-sheet:8500;--z-inspector:8800;--z-banner:9000;--z-toast:9200;--z-modal:9500;--z-viewmode:10000}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{background-color:var(--pp-red);color:var(--pp-ink);font-family:var(--font-noto-sans-jp), sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden}@media (pointer:coarse){a,button,[role=button],[role=tab]{touch-action:manipulation}}body:before{content:"";pointer-events:none;z-index:0;opacity:.3;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");position:fixed;inset:0}.pixel-sprite,.pixel-sprite img{image-rendering:pixelated;image-rendering:crisp-edges;-webkit-user-select:none;user-select:none;filter:drop-shadow(2px 4px 4px #0000008c)}.character-sprite{image-rendering:auto;-webkit-user-select:none;user-select:none;filter:drop-shadow(2px 4px 4px #0000008c)}.text-gold-grad{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#f5c842 0%,#ffe07a 40%,#c8920a 80%,#f5c842 100%);-webkit-background-clip:text;background-clip:text}.slant-btn{clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%)}.housing-stage-wrap{border:4px solid var(--pp-ink);background:#8b1a2e;border-radius:6px;position:relative;overflow:hidden;box-shadow:4px 6px #00000059,inset 0 0 0 2px #f5c84214}.housing-stage-wrap:after{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(#ffffff0f 1.5px,#0000 2px);background-size:16px 16px;position:absolute;inset:0}.housing-stage-wrap:before{display:none}.housing-stage-header{z-index:1;box-sizing:border-box;border-bottom:2px solid var(--pp-ink);height:40px;color:var(--white);background:linear-gradient(90deg,#8b001499,#8b1a2e 70%);flex:none;align-items:center;gap:.75rem;padding:0 1rem;display:flex;position:relative}.iso-board{image-rendering:pixelated}.iso-wall{background-image:var(--room-wall-texture,url(/floor/wallpaper_hearts.png));image-rendering:pixelated;pointer-events:none;background-repeat:repeat;background-size:64px 64px;position:absolute;box-shadow:inset 0 0 60px #0000008c}.iso-wall:after{content:"";pointer-events:none;background:linear-gradient(#0000,#00000073);height:6px;position:absolute;bottom:0;left:0;right:0}.iso-wall-ne{transform-origin:0 0;filter:none;transform:skewY(26.565deg)}.iso-wall-nw{transform-origin:100% 100%;filter:brightness(.96);transform:skewY(-26.565deg)}.iso-wall[data-wallpaper=wallpaper_white]{box-shadow:inset 0 0 32px #4836281f}.iso-wall[data-wallpaper=wallpaper_white]:after{background:linear-gradient(#0000,#4836281f)}.iso-wall-nw[data-wallpaper=wallpaper_white]{filter:brightness(.99)}.iso-wall-layer{z-index:500;position:absolute}.iso-wall-layer-ne{transform-origin:0 0;transform:skewY(26.565deg)}.iso-wall-layer-nw{transform-origin:100% 100%;transform:skewY(-26.565deg)}.iso-cell{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);background-image:var(--room-floor-texture,url(/floor/wood_light.png));image-rendering:pixelated;background-position:50%;background-repeat:no-repeat;background-size:120% 120%;transition:filter .12s}.iso-cell.is-over{filter:brightness(1.4)drop-shadow(0 0 6px #f5c842e6)}.selected-ring{outline:2px solid var(--gold);outline-offset:3px;box-shadow:0 0 20px #f5c84299}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--pp-ink-soft);opacity:.5;border-radius:3px}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up{opacity:0;animation:.5s forwards fadeUp}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-5{animation-delay:.5s}.lp-cta{border:4px solid var(--pp-ink,#1a0008);color:#4a1b12;min-height:58px;font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.12em;min-width:min(360px,100vw - 48px);box-shadow:0 6px 0 var(--pp-ink,#1a0008), 0 14px 24px #00000057;text-shadow:0 1px #ffffff8c;cursor:pointer;background:linear-gradient(#fffdf5 0%,#ffe9a8 100%);border-radius:999px;justify-content:center;align-items:center;padding:16px 42px;font-size:clamp(1.05rem,2.6vw,1.25rem);font-weight:900;text-decoration:none;transition:transform .12s,box-shadow .12s;display:inline-flex;position:relative}.lp-cta:hover{box-shadow:0 3px 0 var(--pp-ink,#1a0008), 0 8px 16px #0000004d;transform:translateY(3px)}.lp-cta:active{box-shadow:0 0 0 var(--pp-ink,#1a0008), 0 2px 6px #00000059;transform:translateY(6px)}.lp-cta-main,.lp-cta-sub{display:inline}.lp-cta-arrow{color:var(--pp-red,#c41230);margin-left:.45em;font-size:.82em;line-height:1;display:inline-block;transform:translateY(-1px)}@media (max-width:520px){.lp-cta{min-height:74px;letter-spacing:.08em!important;width:min(330px,100vw - 40px)!important;min-width:0!important;max-width:min(330px,100vw - 40px)!important;padding:12px 44px 12px 24px!important;font-size:1rem!important}.lp-cta-main,.lp-cta-sub{line-height:1.2;display:block}.lp-cta-sub{letter-spacing:.06em;margin-top:3px;font-size:.82em}.lp-cta-arrow{margin-left:0;position:absolute;top:50%;right:22px;transform:translateY(-50%)}}.housing-panel{background:var(--pp-paper);border:4px solid var(--pp-ink);box-shadow:4px 6px 0 #00000059, inset 0 0 0 2px var(--pp-paper), inset 0 0 0 4px var(--pp-yellow);color:var(--pp-ink);border-radius:6px;position:relative}.room-panel{content-visibility:auto;contain-intrinsic-size:auto 300px;flex-direction:column;align-self:stretch;width:100%;min-height:0;display:flex;overflow:hidden}.room-panel:before{display:none}.room-panel-tabs,.room-panel-controls,.room-panel-scroll,.room-panel-footer{z-index:1;position:relative}.room-panel-tabs{grid-template-columns:1fr 1fr;gap:.35rem;padding:1rem 1rem 0;display:grid}.room-panel-tab{border:3px solid var(--pp-ink);background:var(--pp-cream);min-height:42px;color:var(--pp-ink);cursor:pointer;font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.06em;border-radius:999px;font-size:.86rem;font-weight:900;transition:transform .1s,box-shadow .1s,background .1s;box-shadow:0 3px #00000059}.room-panel-tab:hover{transform:translateY(-1px);box-shadow:0 4px #00000059}.room-panel-tab.is-active{background:var(--pp-red);color:#fff;transform:translateY(2px);box-shadow:0 1px #00000059}.room-panel-controls{padding:.75rem 1rem 0}.room-panel-search{border:2px solid var(--pp-ink);background:#fff;border-radius:999px;align-items:center;gap:.6rem;min-height:42px;padding:0 .75rem;display:flex}.room-panel-search span{border:2px solid var(--pp-ink-soft);border-radius:999px;flex:none;width:12px;height:12px;position:relative}.room-panel-search span:after{content:"";background:var(--pp-ink-soft);border-radius:999px;width:6px;height:2px;position:absolute;bottom:-4px;right:-5px;transform:rotate(45deg)}.room-panel-search input{width:100%;color:var(--pp-ink);background:0 0;border:0;outline:0;font-size:.86rem;font-weight:700}.room-panel-search input::placeholder{color:var(--pp-ink-soft);opacity:.5}.room-panel-search:focus-within{border-color:var(--pp-red);box-shadow:0 0 0 3px #c4123026}.room-panel-filters{gap:.35rem;margin-top:.65rem;padding-top:.15rem;padding-bottom:.15rem;display:flex;overflow-x:auto}.room-panel-filters button{border:2px solid var(--pp-ink);background:var(--pp-cream);min-height:34px;color:var(--pp-ink);cursor:pointer;font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.04em;border-radius:999px;flex:none;padding:0 .75rem;font-size:.72rem;font-weight:900;transition:transform .1s,box-shadow .1s,background .1s;box-shadow:0 2px #00000040}.room-panel-filters button:hover{transform:translateY(-1px);box-shadow:0 3px #00000040}.room-panel-filters button.is-active{background:var(--pp-red);color:#fff;transform:translateY(1px);box-shadow:0 1px #00000040}.room-panel-scroll{flex:1;min-height:0;padding:.8rem 1rem 1rem;overflow-y:auto}.room-item-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.room-character-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.room-panel-footer{border-top:2px solid var(--pp-ink);background:var(--pp-cream);color:var(--pp-ink-soft);font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.16em;justify-content:space-between;align-items:center;gap:.75rem;padding:.72rem 1rem;font-size:.62rem;display:flex}.room-panel-footer strong{color:var(--pp-red);white-space:nowrap;font-size:.64rem}.room-panel-section{gap:.55rem;margin-top:.75rem;margin-bottom:.85rem;display:grid}.room-panel-section-head{border:2px solid var(--pp-red);background:var(--pp-cream);color:var(--pp-ink);font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.12em;border-radius:5px;justify-content:space-between;align-items:center;gap:.75rem;padding:.22rem .6rem;font-size:.58rem;display:flex}.room-panel-section-head span{font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;color:var(--pp-ink);font-size:.9rem;font-weight:900;position:relative;top:.1em}.room-panel-section-head strong{color:var(--pp-red);font-size:.56rem}.floor-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.floor-card-grid+.room-panel-section-head{margin-top:.9rem}.floor-card{border:2px solid var(--pp-ink);background:var(--pp-cream);cursor:pointer;border-radius:6px;gap:.4rem;padding:.55rem;transition:transform .12s,box-shadow .12s;display:grid;position:relative;box-shadow:2px 3px #00000040}.floor-card:hover,.floor-card.is-selected{transform:translateY(-3px)scale(1.03);box-shadow:4px 6px #0006,0 0 14px #f5c84280}.floor-card-swatch{width:100%;height:42px;image-rendering:pixelated;background-position:50%;background-repeat:no-repeat;background-size:contain;border:1px solid #1a00081f;border-radius:4px;display:block}.floor-card-label{color:var(--pp-ink);text-align:left;font-size:.72rem;font-weight:900;line-height:1.2}.floor-card-status{background:var(--pp-yellow);border:2px solid var(--pp-ink);color:var(--pp-ink);font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.08em;border-radius:999px;padding:.22rem .32rem;font-size:.62rem;position:absolute;top:.42rem;right:.42rem;box-shadow:1px 2px #0003}.slot-card{border:3px solid var(--pp-ink);background:var(--pp-paper);cursor:grab;border-radius:6px;flex-direction:column;align-items:stretch;min-height:118px;padding:0;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden;box-shadow:3px 4px #00000059}.slot-card:after{content:"";pointer-events:none;border-radius:inherit;background:linear-gradient(#ffffff4d,#0000 40%);position:absolute;inset:0}.slot-card:hover{transform:translateY(-3px)scale(1.03);box-shadow:4px 6px #0006,0 0 14px #f5c84280}.slot-card.is-selected{border-color:var(--gold);animation:1.2s ease-in-out infinite slot-selected-pulse;transform:translateY(-3px)scale(1.03)}@keyframes slot-selected-pulse{0%,to{box-shadow:0 0 0 3px var(--gold), 4px 6px 0 #0006, 0 0 14px #f5c8428c}50%{box-shadow:0 0 0 3px var(--gold), 4px 6px 0 #0006, 0 0 30px #f5c842e6}}.slot-card:active,.slot-card.is-dragging{cursor:grabbing;transform:translateY(1px);box-shadow:1px 2px #00000059}.slot-card-topline{justify-content:space-between;align-items:center;gap:.35rem;height:30px;padding:.45rem .5rem 0;display:flex}.panel-grip{opacity:.8;grid-template-columns:repeat(2,3px);gap:3px 4px;width:20px;display:grid;position:absolute;top:.5rem;right:.5rem}.panel-grip span{background:var(--pp-ink-soft);opacity:.4;border-radius:999px;width:3px;height:3px}.slot-card:hover .panel-grip span{opacity:.7}.slot-card-badge,.slot-card-count{border:2px solid var(--pp-ink);background:var(--pp-yellow);color:var(--pp-ink);font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.1em;border-radius:999px;padding:.28rem .38rem;font-size:.52rem;line-height:1}.slot-card-media{background:var(--pp-cream);border-bottom:2px solid #1a000814;border-radius:4px;justify-content:center;align-items:center;height:74px;margin:.5rem .4rem 0;display:flex;overflow:hidden}.slot-card-fallback{border:1px dashed #f5c84252;border-radius:8px;width:38px;height:38px}.slot-card-copy{text-align:center;gap:.25rem;padding:.45rem .5rem .65rem;display:grid}.slot-card-label{color:var(--pp-ink);font-family:var(--font-noto-sans-jp), sans-serif;overflow-wrap:anywhere;justify-content:center;align-items:center;min-height:2.4em;font-size:.7rem;font-weight:900;line-height:1.25;display:flex}.slot-card-meta{color:var(--pp-ink-soft);font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.1em;white-space:nowrap;font-size:.52rem}.slot-card-count{background:var(--pp-red);border-color:var(--pp-ink);color:#fff;position:absolute;bottom:.45rem;right:.45rem}.slot-card-swatches{justify-content:center;gap:.28rem;padding:0 .5rem .5rem;display:flex}.slot-card-swatch-dot{border:1px solid #1a000859;border-radius:999px;flex:none;width:10px;height:10px;box-shadow:inset 0 1px #ffffff40}.char-card{--member-color:var(--red-primary);border:3px solid var(--pp-ink);background:var(--pp-paper);cursor:pointer;border-radius:6px;flex-direction:column;align-items:center;gap:.65rem;min-height:185px;padding:0;transition:transform .15s,box-shadow .15s;display:flex;position:relative;box-shadow:3px 4px #00000059}.char-card:hover{border-color:var(--member-color);box-shadow:4px 6px 0 #0006, 0 0 14px var(--member-color);transform:translateY(-3px)scale(1.03)}@supports (color:color-mix(in lab, red, red)){.char-card:hover{box-shadow:4px 6px 0 #0006, 0 0 14px color-mix(in srgb, var(--member-color) 45%, transparent)}}.char-card.is-selected{border-color:var(--member-color);animation:1.2s ease-in-out infinite char-selected-pulse;transform:translateY(-3px)scale(1.03)}@keyframes char-selected-pulse{0%,to{box-shadow:0 0 0 3px var(--member-color), 4px 6px 0 #0006, 0 0 14px color-mix(in srgb, var(--member-color) 45%, transparent)}50%{box-shadow:0 0 0 3px var(--member-color), 4px 6px 0 #0006, 0 0 30px color-mix(in srgb, var(--member-color) 70%, transparent)}}.char-card-portrait{background:var(--pp-cream);border:1px solid #1a000814;border-radius:4px;justify-content:center;align-items:center;width:120px;min-width:0;max-width:100%;height:110px;display:flex;overflow:hidden}.char-card-portrait .character-sprite{max-width:100%;max-height:100%}.char-card-copy{text-align:center;gap:.25rem;display:grid}.char-card-name{color:var(--pp-ink);overflow-wrap:anywhere;font-size:.78rem;font-weight:900;line-height:1.25}.char-card-member{color:var(--member-color)}@supports (color:color-mix(in lab, red, red)){.char-card-member{color:color-mix(in srgb, var(--member-color) 80%, var(--white))}}.char-card-member{font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.11em;font-size:.68rem}.char-card-status{background:var(--pp-yellow);border:2px solid var(--pp-ink);color:var(--pp-ink);font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.08em;border-radius:999px;padding:.26rem .34rem;font-size:.5rem;position:absolute;top:.48rem;right:.48rem;box-shadow:2px 2px #00000040}.slot-card.is-placing{border-color:var(--pp-yellow);background:var(--pp-paper);box-shadow:0 0 0 3px var(--pp-yellow), 4px 6px 0 #0000004d;animation:1.4s ease-in-out infinite placing-pulse}@keyframes placing-pulse{0%,to{box-shadow:0 0 0 2px #f5c8428c,0 0 18px #f5c84259}50%{box-shadow:0 0 0 2px #f5c842d9,0 0 28px #f5c842b3}}.iso-cell.is-placing-target{background-blend-mode:lighten;background-color:#f5c84226;transition:background-color .15s}.iso-cell.is-placing-target:hover{background-color:#f5c84273}.iso-cell.is-placing-target:active{background-color:#f5c8428c}.placement-pulse-overlay{pointer-events:none;will-change:opacity;background:#f5c842;animation:1.5s ease-in-out infinite overlay-pulse;position:absolute;top:0;left:0}@keyframes overlay-pulse{0%,to{opacity:.08}50%{opacity:.28}}@keyframes placement-success{0%{filter:brightness(1.6)drop-shadow(0 0 10px #f5c842e6);background-color:#f5c842b3}to{filter:brightness();background-color:#0000}}.iso-cell.placement-success{animation:.4s ease-out forwards placement-success}.save-indicator{top:calc(.5rem + env(safe-area-inset-top,0px));z-index:var(--z-toast);color:var(--pp-paper);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1a0008c7;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:.5rem;padding:.35rem .75rem;font-size:.72rem;font-weight:700;display:flex;position:fixed;right:.75rem}.save-indicator--error{background:#8b0014eb;border-color:#f5c84299}.save-indicator-retry{min-height:28px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #fff6;border-radius:999px;padding:0 .6rem}.app-toast{z-index:var(--z-toast);pointer-events:none;max-width:min(90vw,24rem);position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}@media (orientation:portrait) and (max-width:819px){.app-toast{bottom:calc(4.4rem + 3.2rem + env(safe-area-inset-bottom,0px))}}@media (orientation:landscape) and (max-height:499px){.app-toast{bottom:3.6rem}}.app-toast-inner{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#573308eb;border:1px solid #fbbf2473;border-radius:1rem;align-items:center;gap:.5rem;padding:.55rem 1rem;display:flex;box-shadow:0 4px 16px #00000059}.app-toast-icon{color:#fbbf24;flex-shrink:0;font-size:.85rem}.app-toast-text{color:#fef3c7;font-size:.82rem;font-weight:600;line-height:1.4}.placement-banner{z-index:var(--z-banner);pointer-events:none;width:min(94vw,560px);animation:.22s ease-out banner-slide-in;position:fixed;top:.5rem;left:50%;transform:translate(-50%)}@keyframes banner-slide-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.placement-banner-inner{pointer-events:auto;font-family:var(--font-noto-sans-jp), sans-serif;color:var(--white);background:linear-gradient(135deg,#c41230eb 0%,#14050af5 75%);border:1px solid #f5c842a6;border-radius:999px;align-items:center;gap:.55rem;padding:.55rem .65rem .55rem .85rem;display:flex;box-shadow:inset 0 0 0 1px #f5c8422e,0 8px 24px #0000008c,0 0 24px #f5c84238}.placement-banner-tag{font-family:var(--font-black-han-sans), sans-serif;letter-spacing:.22em;color:var(--gold-light);white-space:nowrap;background:#f5c8422e;border:1px solid #f5c84273;border-radius:999px;flex-shrink:0;padding:.2rem .55rem;font-size:.62rem}.placement-banner-name{color:var(--gold-light);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;max-width:9rem;font-size:.92rem;font-weight:900;overflow:hidden}.placement-banner-hint{color:#ffffffc7;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.72rem;overflow:hidden}.placement-banner-cancel{width:32px;height:32px;color:var(--white);cursor:pointer;background:#00000059;border:1px solid #ffffff59;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;line-height:1;transition:background .15s,transform .15s;display:inline-flex}.placement-banner-cancel:hover,.placement-banner-cancel:active{background:#e8192c73;transform:scale(1.06)}@media (orientation:portrait) and (max-width:819px){.placement-banner{top:auto;bottom:calc(4.4rem + env(safe-area-inset-bottom,0px))}}@media (orientation:landscape) and (max-height:499px){.placement-banner{top:auto;bottom:calc(.5rem + env(safe-area-inset-bottom,0px))}}@media (max-width:480px){.placement-banner{width:min(100vw - 1rem,560px)}.placement-banner-inner{border-radius:18px;flex-wrap:wrap;row-gap:.2rem;padding:.45rem .55rem .5rem}.placement-banner-name{max-width:calc(100% - 5rem)}.placement-banner-hint{color:#ffffffe6;text-align:center;white-space:normal;text-overflow:clip;flex-basis:100%;max-width:none;padding:.1rem .15rem 0;line-height:1.35;display:block;overflow:visible}}.placement-banner--inline{align-self:flex-start;width:auto;max-width:100%;margin-top:.75rem;animation:.22s ease-out banner-fade-up;position:static;top:auto;left:auto;transform:none}@keyframes banner-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.onboarding-banner{z-index:40;pointer-events:none;width:min(94vw,560px);font-family:var(--font-noto-sans-jp), sans-serif;color:#ffffffeb;text-align:center;background:linear-gradient(135deg,#14050af2 0%,#3a0e18f2 100%);border:1px solid #f5c8428c;border-radius:14px;padding:.5rem .85rem;font-size:.74rem;font-weight:700;line-height:1.5;position:fixed;top:.5rem;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #00000080}@media (orientation:portrait) and (max-width:819px){.onboarding-banner{left:calc(.5rem + env(safe-area-inset-left,0px));text-align:left;width:auto;padding:.4rem .6rem;font-size:.66rem;right:7rem;transform:none}}@media (orientation:landscape) and (max-height:499px){.onboarding-banner{border-radius:10px;width:auto;padding:.3rem .55rem;font-size:.6rem;line-height:1.4;left:9rem;right:9rem;transform:none}}.mobile-sheet-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:8000;background:#0000008c;animation:.18s ease-out backdrop-fade-in;position:fixed;inset:0}@keyframes backdrop-fade-in{0%{opacity:0}to{opacity:1}}@keyframes bubblePop{0%{opacity:0;transform:translate(-50%)scale(.3)}to{opacity:1;transform:translate(-50%)scale(1)}}.mobile-sheet{z-index:var(--z-sheet);background:var(--pp-paper);border-top:4px solid var(--pp-ink);max-height:80dvh;padding-bottom:env(safe-area-inset-bottom,0px);transform:translateY(calc(100% - 64px - env(safe-area-inset-bottom,0px)));will-change:transform;border-radius:18px 18px 0 0;flex-direction:column;transition:transform .35s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px #00000040}.mobile-sheet.is-open{transform:translateY(0)}.mobile-sheet.is-dragging{transition:none!important}.mobile-sheet-handle{appearance:none;border:0;border-bottom:2px solid var(--pp-ink);width:100%;height:56px;color:var(--pp-ink);font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.18em;cursor:pointer;background:0 0;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.25rem;padding:.4rem 0;font-size:.78rem;display:flex}.mobile-sheet-grip{background:var(--pp-ink-soft);border-radius:999px;width:44px;height:4px;display:block}.mobile-sheet-label{text-transform:uppercase}.mobile-sheet-body{content-visibility:auto;contain-intrinsic-size:auto 300px;flex:1;min-height:0;display:flex;overflow:hidden}.mobile-sheet-body>.room-panel{box-shadow:none!important;background:0 0!important;border:0!important}.mobile-sheet-body>.room-panel:before{display:none!important}.side-drawer-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:8000;background:#0006;animation:.18s ease-out backdrop-fade-in;position:fixed;inset:0}.side-drawer{z-index:var(--z-sheet);will-change:transform;pointer-events:none;flex-direction:row;transition:transform .3s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.side-drawer.is-open{pointer-events:auto;transform:translate(0)}.side-drawer-tab{appearance:none;background:var(--pp-paper);border:3px solid var(--pp-ink);width:36px;min-height:140px;color:var(--pp-ink);font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.15em;cursor:pointer;pointer-events:auto;z-index:1;border-right:0;border-radius:8px 0 0 8px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 2px;font-size:.7rem;display:flex;position:absolute;top:50%;right:100%;transform:translateY(-50%);box-shadow:-3px 3px #00000040}.side-drawer-tab-icon{font-size:1rem;line-height:1}.side-drawer-tab-text{writing-mode:vertical-rl;text-orientation:upright;letter-spacing:.2em;font-size:.65rem}.side-drawer-body{background:var(--pp-paper);border-left:4px solid var(--pp-ink);width:min(380px,65vw);height:100%;display:flex;overflow:hidden;box-shadow:-6px 0 #00000040}.side-drawer-body>.room-panel{box-shadow:none!important;background:0 0!important;border:0!important}.side-drawer-body>.room-panel:before{display:none!important}@media (pointer:coarse){.room-panel-tab{min-height:48px!important}.room-panel-search{min-height:46px!important}.room-panel-filters button{min-height:44px!important;padding:0 .95rem!important}.room-panel-material-toggle{min-height:44px}.slot-card{min-height:128px}.floor-card{min-height:100px}.slant-btn,.inspector-btn{min-height:44px}.inspector-close-btn{min-width:44px;min-height:44px}.room-panel-search input{font-size:16px!important}.inspector-panel{-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(8px);left:50%!important;bottom:calc(64px + env(safe-area-inset-bottom,0px) + 12px)!important;z-index:var(--z-inspector)!important;background:#14121ceb!important;border:2px solid #ffffff40!important;border-radius:14px!important;flex-wrap:nowrap!important;justify-content:flex-start!important;align-self:auto!important;width:min(94vw,560px)!important;max-width:none!important;margin-top:0!important;padding:8px 10px!important;position:fixed!important;overflow-x:auto!important;transform:translate(-50%)!important;box-shadow:0 8px 24px #00000073!important}.inspector-panel .inspector-kind-label{display:none!important}.inspector-panel .inspector-item-name{color:var(--pp-paper,#fffdf0)!important}.inspector-panel .inspector-close-btn{color:#ffffffb3!important}.inspector-panel .inspector-zone-divider{border-left-color:#ffffff40}.inspector-panel--color{flex-direction:column!important;align-items:stretch!important;overflow-x:hidden!important}.inspector-panel--color .inspector-zone{-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow-x:auto;flex-wrap:nowrap!important}.inspector-panel--color .inspector-zone::-webkit-scrollbar{display:none}.inspector-panel--color .inspector-zone>*{flex-shrink:0}.inspector-panel--color .inspector-btn{white-space:nowrap}.inspector-panel--color .inspector-zone-divider{border-top:2px dashed #ffffff38;border-left:none!important;align-self:auto!important;margin:2px 0!important}.inspector-panel--color .inspector-item-name{border-bottom-color:#ffffff59!important}.inspector-panel--color .inspector-color-label{color:#ffffffbf!important}.inspector-panel--color .inspector-zone-confirm{position:absolute;top:6px;right:8px;margin:0!important}.inspector-panel--color .inspector-zone-divider:last-of-type{display:none}}@media (pointer:coarse) and (orientation:landscape) and (max-height:500px){.inspector-panel{left:calc(8px + env(safe-area-inset-left,0px))!important;top:auto!important;bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;flex-direction:column!important;justify-content:flex-start!important;align-items:stretch!important;gap:6px!important;width:auto!important;max-width:132px!important;max-height:calc(100vh - 88px)!important;overflow:hidden auto!important;transform:none!important}.inspector-panel .inspector-item-name{text-align:center!important;white-space:normal!important;overflow-wrap:break-word!important;min-width:0!important;max-width:100%!important;font-size:.8rem!important}.inspector-panel .inspector-btn,.inspector-panel .inspector-close-btn{width:100%!important}.inspector-panel--color .inspector-color-group{flex-wrap:wrap!important;justify-content:center!important;gap:6px!important}.inspector-panel--color .inspector-color-label{text-align:center!important;flex:0 0 100%!important}.inspector-panel--color .inspector-color-group button{width:28px!important;height:28px!important}.inspector-panel--color .inspector-zone-actions{flex-wrap:wrap!important;justify-content:center!important;align-items:stretch!important;gap:6px!important;width:100%!important;overflow:visible!important}.inspector-panel--color .inspector-zone-actions .inspector-btn{letter-spacing:.02em!important;flex:calc(50% - 3px)!important;width:auto!important;min-width:0!important;min-height:34px!important;padding:5px 4px!important}.inspector-panel--color .inspector-zone-actions .inspector-btn:last-child{flex-basis:100%!important}.inspector-panel--color .inspector-zone-identity{align-items:center!important;width:100%!important}}@media (pointer:coarse) and (orientation:landscape) and (max-height:380px){.inspector-panel--color .inspector-color-group button{width:26px!important;height:26px!important}.inspector-panel--color .inspector-zone-actions .inspector-btn{min-height:32px!important}}.inspector-btn:focus-visible,.inspector-close-btn:focus-visible,.slot-card:focus-visible,.room-panel-filters button:focus-visible,.room-panel-tab:focus-visible{outline-offset:2px;outline:2px solid #ffd86b}.cs-wrapper{--cs-wood-back:#2a1608;--cs-wood-dark:#3a2214;--cs-wood-mid:#6b3a1f;--cs-wood-plank:#7d4b2a;--cs-wood-light:#8b5e3c;--cs-wood-highlight:#a67c52;--cs-wood-rim:#b8956a;--cs-wood-edge:#5a3018;--cs-wood-deep:#2e1509;--cs-frame-red:#c41420;--cs-frame-red-lite:#d83040;--cs-frame-red-dark:#8b0e16;--cs-frame-cream:#e8d5b0;--cs-frame-cream-dk:#d4bc90;--cs-frame-parch:#dcc89e;--cs-gold:#c8a84e;--cs-gold-light:#e8d280;--cs-gold-bright:#f0e0a0;--cs-gold-dark:#8a6b20;--cs-gold-shadow:#6a5018;--cs-cell-bg:#1e0e04;--cs-cell-floor:#4a2a14;--cs-title-text:#f0e0c0;--cs-pillar-w:14px;--cs-plank-h:16px}.cs-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:9000;background:#000000b8;justify-content:center;align-items:center;animation:.2s ease-out cs-fade-in;display:flex;position:fixed;inset:0}@keyframes cs-fade-in{0%{opacity:0}to{opacity:1}}.cs-wrapper{aspect-ratio:16/10;width:min(92vw,720px);image-rendering:pixelated;-webkit-font-smoothing:none;animation:.28s cubic-bezier(.34,1.56,.64,1) cs-pop-in;position:relative}@keyframes cs-pop-in{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}.cs-outer{background:repeating-linear-gradient(135deg, transparent 0px, #b496640f 2px, transparent 4px), repeating-linear-gradient(45deg, transparent 0px, #785a320a 3px, transparent 6px), linear-gradient(170deg, #edba 0%, var(--cs-frame-cream) 30%, var(--cs-frame-parch) 70%, var(--cs-frame-cream-dk) 100%);border:7px solid var(--cs-frame-red);box-shadow:inset 0 0 0 2px var(--cs-frame-cream), inset 0 0 0 4px var(--cs-frame-cream-dk), inset 0 0 0 6px var(--cs-frame-red-dark), 0 4px 12px #00000059, 0 12px 40px #0000008c;border-radius:4px;position:absolute;inset:0}.cs-corner{z-index:2;width:28px;height:28px;position:absolute}.cs-corner:before,.cs-corner:after{content:"";background:linear-gradient(180deg, var(--cs-gold-bright) 0%, var(--cs-gold) 50%, var(--cs-gold-dark) 100%);box-shadow:1px 1px 0 var(--cs-gold-shadow), inset 0 1px 0 #ffffff40;position:absolute}.cs-corner:before{width:100%;height:5px}.cs-corner:after{width:5px;height:100%}.cs-corner--tl{top:8px;left:8px}.cs-corner--tr{top:8px;right:8px}.cs-corner--tr:before,.cs-corner--tr:after{right:0}.cs-corner--bl{bottom:8px;left:8px}.cs-corner--bl:before,.cs-corner--bl:after{bottom:0}.cs-corner--br{bottom:8px;right:8px}.cs-corner--br:before,.cs-corner--br:after{bottom:0;right:0}.cs-title-bar{z-index:5;background:linear-gradient(180deg, var(--cs-frame-red-lite) 0%, var(--cs-frame-red) 35%, #a01018 65%, var(--cs-frame-red-dark) 100%);border:3px solid var(--cs-frame-red-dark);border-top-color:#e04050;padding:7px 40px;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:inset 0 1px #fff3,inset 0 -1px #0000004d,0 4px 8px #00000073}.cs-title-bar:before,.cs-title-bar:after{content:"";background:radial-gradient(circle at 35% 35%, var(--cs-gold-bright) 0%, var(--cs-gold) 50%, var(--cs-gold-dark) 100%);border:1px solid var(--cs-gold-shadow);border-radius:1px;width:8px;height:8px;position:absolute;top:50%;transform:translateY(-50%);box-shadow:inset 0 1px #ffffff59,0 1px 2px #0006}.cs-title-bar:before{left:8px}.cs-title-bar:after{right:8px}.cs-title-text{color:var(--cs-title-text);letter-spacing:4px;text-shadow:0 2px 0 var(--cs-frame-red-dark), 0 -1px 0 #ffffff26, 0 0 8px #f0e0c026;white-space:nowrap;text-transform:uppercase;font-family:Courier New,monospace;font-size:clamp(12px,2.4vw,17px);font-weight:700}.cs-close{z-index:6;border:3px solid var(--cs-frame-red-dark);cursor:pointer;background:linear-gradient(#c84848 0%,#a03020 40%,#802018 100%);border-top-color:#d85050;border-radius:2px;width:32px;height:32px;padding:0;transition:background .1s;position:absolute;top:12px;right:16px;box-shadow:inset 0 1px #ffffff40,inset 0 -1px #0000004d,0 2px 6px #0006}.cs-close:before{content:"✕";color:var(--cs-title-text);text-shadow:0 1px 2px #0006;font-size:14px;font-weight:700;line-height:26px}.cs-close:hover{background:linear-gradient(#e06060 0%,#c04030 40%,#a03028 100%)}.cs-close:active{border-top-color:var(--cs-frame-red-dark);border-bottom-color:#d85050;box-shadow:inset 0 2px 4px #0006,0 1px 2px #0000004d}.cs-body{background:repeating-linear-gradient(90deg, transparent 0px, #5a30181a 1px, transparent 3px), linear-gradient(180deg, var(--cs-wood-plank) 0%, var(--cs-wood-mid) 6%, var(--cs-wood-dark) 12%, var(--cs-wood-deep) 50%, var(--cs-wood-dark) 88%, var(--cs-wood-mid) 100%);border:5px solid var(--cs-wood-edge);box-shadow:inset 0 3px 0 var(--cs-wood-highlight), inset 0 -3px 0 #00000059, inset 3px 0 0 var(--cs-wood-mid), inset -3px 0 0 var(--cs-wood-mid), 0 4px 16px #00000080;border-top-width:3px;position:absolute;inset:50px 18px 18px}.cs-body:before{content:"";background:repeating-linear-gradient(90deg, transparent 0px, #a67c5214 2px, transparent 5px), linear-gradient(180deg, var(--cs-wood-rim) 0%, var(--cs-wood-highlight) 15%, var(--cs-wood-light) 35%, var(--cs-wood-plank) 55%, var(--cs-wood-mid) 75%, var(--cs-wood-edge) 100%);z-index:4;height:22px;position:absolute;top:0;left:-2px;right:-2px;box-shadow:0 3px 8px #00000073,inset 0 1px #ffffff1f,inset 0 -1px #00000040}.cs-body:after{content:"";background:repeating-linear-gradient(90deg, transparent 0px, #a67c520f 2px, transparent 5px), linear-gradient(180deg, var(--cs-wood-rim) 0%, var(--cs-wood-highlight) 20%, var(--cs-wood-light) 40%, var(--cs-wood-mid) 70%, var(--cs-wood-edge) 100%);z-index:4;height:14px;position:absolute;bottom:0;left:-2px;right:-2px;box-shadow:inset 0 1px #ffffff1a}.cs-grid{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(4,1fr);gap:0;display:grid;position:absolute;inset:24px 6px 14px}.cs-cell{background:radial-gradient(ellipse at 50% 30%, #2a1608 0%, var(--cs-cell-bg) 70%, #120600 100%);border-left:var(--cs-pillar-w) solid transparent;border-right:var(--cs-pillar-w) solid transparent;flex-direction:column;justify-content:flex-end;align-items:center;display:flex;position:relative;box-shadow:inset 0 4px 12px #000000b3,inset 0 -2px 6px #0006,inset 4px 0 8px #0000004d,inset -4px 0 8px #0000004d}.cs-cell:before{content:"";top:-6px;bottom:-6px;right:calc(-1 * var(--cs-pillar-w));width:var(--cs-pillar-w);background:linear-gradient(90deg, var(--cs-wood-deep) 0%, var(--cs-wood-edge) 10%, var(--cs-wood-mid) 22%, var(--cs-wood-light) 38%, var(--cs-wood-highlight) 48%, var(--cs-wood-rim) 52%, var(--cs-wood-highlight) 56%, var(--cs-wood-light) 65%, var(--cs-wood-mid) 78%, var(--cs-wood-edge) 90%, var(--cs-wood-deep) 100%);z-index:2;position:absolute;box-shadow:inset 0 2px #ffffff0f,2px 0 4px #00000040,-2px 0 4px #00000040}.cs-cell:nth-child(4n+1):after{content:"";top:-6px;bottom:-6px;left:calc(-1 * var(--cs-pillar-w));width:var(--cs-pillar-w);background:linear-gradient(90deg, var(--cs-wood-deep) 0%, var(--cs-wood-edge) 10%, var(--cs-wood-mid) 22%, var(--cs-wood-light) 38%, var(--cs-wood-highlight) 48%, var(--cs-wood-rim) 52%, var(--cs-wood-highlight) 56%, var(--cs-wood-light) 65%, var(--cs-wood-mid) 78%, var(--cs-wood-edge) 90%, var(--cs-wood-deep) 100%);z-index:2;position:absolute;box-shadow:2px 0 4px #00000040,-2px 0 4px #00000040}.cs-cell:nth-child(-n+4){border-bottom:var(--cs-plank-h) solid transparent}.cs-cell:nth-child(-n+4) .cs-cell__floor{bottom:calc(-1 * var(--cs-plank-h));left:calc(-1 * var(--cs-pillar-w));right:calc(-1 * var(--cs-pillar-w));height:var(--cs-plank-h);background:repeating-linear-gradient(90deg, transparent 0px, #a67c5212 2px, transparent 5px), linear-gradient(180deg, var(--cs-wood-rim) 0%, var(--cs-wood-highlight) 12%, var(--cs-wood-light) 28%, var(--cs-wood-plank) 50%, var(--cs-wood-mid) 72%, var(--cs-wood-edge) 90%, var(--cs-wood-deep) 100%);z-index:3;opacity:1;pointer-events:none;position:absolute;box-shadow:0 3px 8px #00000080,0 1px 3px #0000004d,inset 0 1px #ffffff1f,inset 0 -1px #0003}.cs-cell:nth-child(n+5) .cs-cell__floor{background:linear-gradient(0deg, var(--cs-cell-floor) 0%, #4a2a144d 50%, transparent 100%);opacity:.5;pointer-events:none;height:35%;position:absolute;bottom:0;left:0;right:0}.cs-cell__plate{background:linear-gradient(180deg, var(--cs-gold-bright) 0%, var(--cs-gold-light) 15%, var(--cs-gold) 45%, var(--cs-gold-dark) 85%, var(--cs-gold-shadow) 100%);border:1px solid var(--cs-gold-shadow);border-top-color:var(--cs-gold-light);z-index:1;border-radius:1px;flex-shrink:0;justify-content:center;align-items:center;width:70%;min-height:14px;margin-bottom:8px;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 4px #00000073,inset 0 1px #ffffff4d,inset 0 -1px #00000026,inset 1px 0 #ffffff1a,inset -1px 0 #0000001a}.cs-cell__plate:before,.cs-cell__plate:after{content:"";background:radial-gradient(circle at 35% 35%, var(--cs-gold-bright) 0%, var(--cs-gold) 60%, var(--cs-gold-dark) 100%);border-radius:50%;width:4px;height:4px;position:absolute;top:50%;transform:translateY(-50%);box-shadow:inset 0 1px #fff6,0 1px 1px #0000004d}.cs-cell__plate:before{left:3px}.cs-cell__plate:after{right:3px}.cs-cell__plate-text{color:var(--cs-wood-dark);text-shadow:0 1px #ffffff40,0 -1px #00000026;letter-spacing:.5px;white-space:nowrap;font-family:Courier New,monospace;font-size:clamp(6px,1.2vw,10px);font-weight:700;line-height:1}.cs-cell__item{flex:1;justify-content:center;align-items:center;width:100%;padding:6px;display:flex;position:relative}.cs-cell__item img{object-fit:contain;max-width:100%;max-height:100%;image-rendering:pixelated}.cs-cell--empty .cs-cell__item:after{content:"?";color:#ffffff0f;text-shadow:0 2px 4px #0000004d;font-family:Courier New,monospace;font-size:clamp(22px,4.5vw,40px);font-weight:700}.cs-cell--silhouette .cs-cell__item:after{content:"";aspect-ratio:1;background:#ffffff08;border:2px dashed #ffffff0f;border-radius:3px;width:55%;box-shadow:inset 0 0 8px #0003}.cs-cell--obtained .cs-cell__item{filter:drop-shadow(0 0 8px #c8a84e33)}.cs-open-btn{z-index:90;font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.06em;color:var(--pp-ink);background:var(--pp-cream);border:3px solid var(--pp-ink);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:8px 18px;font-size:.75rem;font-weight:700;transition:transform .1s,box-shadow .1s;display:inline-flex;position:fixed;top:12px;right:12px;box-shadow:0 4px #0006}.cs-open-btn:hover{transform:translateY(-2px);box-shadow:0 6px #0006}.cs-open-btn:active{transform:translateY(3px);box-shadow:0 1px #0006}@media (max-width:480px){.cs-wrapper{--cs-pillar-w:9px;--cs-plank-h:11px;aspect-ratio:14/10;width:min(96vw,720px)}.cs-title-bar{padding:5px 24px}.cs-body{inset:42px 12px 12px}.cs-grid{inset:18px 4px 10px}.cs-body:before{height:16px}.cs-body:after{height:10px}.cs-corner{width:18px;height:18px}.cs-cell__plate{min-height:10px}}.housing-nav{z-index:50;align-items:center;gap:.5rem;display:flex;position:absolute;top:.75rem;right:1rem}.nav-menu{align-items:center;gap:.5rem;display:flex;position:relative}.nav-menu-trigger{display:none}.nav-menu-items{align-items:center;gap:.5rem;display:flex}@media (orientation:landscape) and (max-height:499px){.housing-nav{top:.25rem;left:calc(.35rem + env(safe-area-inset-left,0px));flex-direction:column;align-items:stretch;gap:.25rem;right:auto}.nav-menu-items{flex-direction:column;align-items:stretch;gap:.2rem;position:absolute;top:calc(100% + .15rem);left:0}.housing-nav .btn-help,.housing-nav .btn-view,.housing-nav .btn-reset,.housing-nav .btn-logout{letter-spacing:.02em;min-height:1.9rem;padding:0 .5rem;font-size:.58rem;box-shadow:1px 2px #0000008c}}@media (orientation:portrait) and (max-width:480px){.nav-menu-items{flex-direction:column;align-items:flex-end;gap:.35rem;position:absolute;top:calc(100% + .35rem);right:0}.housing-nav .btn-help,.housing-nav .btn-view,.housing-nav .btn-reset,.housing-nav .btn-logout{min-height:2.2rem;padding:0 .7rem;font-size:.66rem}}@media (orientation:portrait) and (max-width:480px),(orientation:landscape) and (max-height:499px){.nav-menu-trigger{letter-spacing:.05em;min-height:2.2rem;color:var(--pp-ink);background:var(--pp-cream);border:2px solid var(--pp-ink);cursor:pointer;border-radius:9999px;justify-content:center;align-items:center;gap:.3rem;padding:0 .7rem;font-size:.66rem;font-weight:900;display:inline-flex;box-shadow:2px 3px #0000008c}.nav-menu-trigger:active{transform:translateY(1px);box-shadow:1px 2px #000000a6}.nav-menu-trigger:focus-visible{outline-offset:2px;outline:3px solid #fff}.nav-menu[data-open=false] .nav-menu-items{display:none}}@media (orientation:landscape) and (max-height:499px){.nav-menu-trigger{min-height:1.9rem;padding:0 .5rem;font-size:.58rem;box-shadow:1px 2px #0000008c}}.btn-logout{letter-spacing:.05em;min-height:2.5rem;color:var(--pp-ink);background:var(--pp-yellow);border:2px solid var(--pp-ink);cursor:pointer;border-radius:9999px;justify-content:center;align-items:center;padding:0 1rem;font-size:.75rem;font-weight:900;transition:background .2s,box-shadow .2s,transform .2s;display:inline-flex;box-shadow:2px 3px #0000008c}.btn-logout:hover{background:var(--gold-light);transform:translateY(-1px);box-shadow:2px 5px #000000a6}.btn-logout:active{transform:translateY(1px);box-shadow:1px 2px #000000a6}.btn-logout:focus-visible{outline-offset:2px;outline:3px solid #fff}.btn-view{letter-spacing:.05em;min-height:2.5rem;color:var(--pp-ink);background:var(--pp-yellow);border:2px solid var(--pp-ink);cursor:pointer;border-radius:9999px;justify-content:center;align-items:center;padding:0 1rem;font-size:.75rem;font-weight:900;transition:background .2s,box-shadow .2s,transform .2s;display:inline-flex;box-shadow:2px 3px #0000008c}.btn-view:hover{background:var(--gold-light);transform:translateY(-1px);box-shadow:2px 5px #000000a6}.btn-view:active{transform:translateY(1px);box-shadow:1px 2px #000000a6}.btn-view:focus-visible{outline-offset:2px;outline:3px solid #fff}.nav-menu-view-item{display:none}.btn-help{letter-spacing:.05em;min-height:2.5rem;color:var(--pp-ink);background:var(--pp-cream);border:2px solid var(--pp-ink);cursor:pointer;border-radius:9999px;justify-content:center;align-items:center;padding:0 1rem;font-size:.75rem;font-weight:900;transition:background .2s,box-shadow .2s,transform .2s;display:inline-flex;box-shadow:2px 3px #0000008c}.btn-help:hover{background:#fffdf5;transform:translateY(-1px);box-shadow:2px 5px #000000a6}.btn-help:active{transform:translateY(1px);box-shadow:1px 2px #000000a6}.btn-help:focus-visible{outline-offset:2px;outline:3px solid #fff}.btn-reset{letter-spacing:.05em;color:#fff;background:var(--pp-red);border:2px solid var(--pp-ink);cursor:pointer;border-radius:9999px;justify-content:center;align-items:center;min-height:2.5rem;padding:0 1rem;font-size:.75rem;font-weight:900;transition:background .2s,box-shadow .2s,transform .2s;display:inline-flex;box-shadow:2px 3px #0000008c}.btn-reset:hover{background:var(--red-bright);transform:translateY(-1px);box-shadow:2px 5px #000000a6}.btn-reset:active{transform:translateY(1px);box-shadow:1px 2px #000000a6}.btn-reset:focus-visible{outline-offset:2px;outline:3px solid #fff}.htu-backdrop{z-index:var(--z-modal);overscroll-behavior:contain;background:#0a0005b8;justify-content:center;align-items:flex-start;padding:16px;display:flex;position:fixed;inset:0;overflow-y:auto}.htu-panel{border:4px solid var(--pp-ink);background:var(--pp-cream);width:100%;max-width:820px;max-height:calc(100dvh - 32px);color:var(--pp-ink);text-align:center;font-family:var(--font-noto-sans-jp), sans-serif;flex-direction:column;margin:auto;padding:clamp(20px,4vw,32px);display:flex;position:relative;box-shadow:8px 10px #1a00088c}.htu-badge{border:4px solid var(--pp-ink);background:var(--pp-yellow);letter-spacing:.14em;justify-content:center;align-self:center;align-items:center;min-height:34px;padding:6px 20px;font-size:.76rem;font-weight:900;line-height:1;display:inline-flex;box-shadow:3px 4px #1a000873}.htu-title{letter-spacing:.04em;margin:16px 0 0;font-size:clamp(1.5rem,4.4vw,2rem);font-weight:900;line-height:1.15}.htu-title span{background:linear-gradient(#0000 68%,#c412302e 68%);padding:0 .1em}.htu-body{overscroll-behavior:contain;text-align:left;scrollbar-gutter:stable;flex:auto;min-height:0;margin-top:20px;overflow-y:auto}.htu-body::-webkit-scrollbar{width:6px}.htu-body::-webkit-scrollbar-track{background:var(--black)}.htu-body::-webkit-scrollbar-thumb{background:var(--red-primary);opacity:1;border-radius:3px}.htu-section+.htu-section{border-top:2px dashed #1a000838;margin-top:18px;padding-top:16px}.htu-section-head{letter-spacing:.04em;margin:0 0 8px;font-size:clamp(.92rem,2.6vw,1.02rem);font-weight:900}.htu-text,.htu-list{color:#1a0008d1;letter-spacing:.02em;margin:0;font-size:clamp(.84rem,2.3vw,.92rem);font-weight:700;line-height:1.75}.htu-list{padding-left:1.1em;list-style:none}.htu-list li{position:relative}.htu-list li:before{content:"・";color:var(--pp-red);font-weight:900;position:absolute;left:-1.1em}.htu-close{border:4px solid var(--pp-ink);color:#4a1b12;min-width:min(280px,100%);min-height:52px;box-shadow:0 5px 0 var(--pp-ink), 0 10px 18px #0000004d;font-family:var(--font-noto-sans-jp), sans-serif;letter-spacing:.12em;cursor:pointer;background:linear-gradient(#fffdf5 0%,#ffe9a8 100%);border-radius:999px;flex-shrink:0;justify-content:center;align-self:center;align-items:center;margin-top:22px;padding:12px 28px;font-size:clamp(.92rem,2.6vw,1.04rem);font-weight:900;display:inline-flex}.htu-close:active{box-shadow:0 2px 0 var(--pp-ink), 0 6px 12px #0000004d;transform:translateY(3px)}.htu-close:focus-visible{outline-offset:3px;outline:3px solid #fff}.htu-dismiss{z-index:1;border:3px solid var(--pp-ink);background:var(--pp-yellow);width:44px;height:44px;color:var(--pp-ink);box-shadow:0 3px 0 var(--pp-ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:1.05rem;font-weight:900;line-height:1;display:inline-flex;position:absolute;top:8px;right:8px}.htu-dismiss:active{box-shadow:0 1px 0 var(--pp-ink);transform:translateY(2px)}.htu-dismiss:focus-visible{outline-offset:3px;outline:3px solid #fff}.htu-panel--policy .htu-badge{max-width:calc(100% - 60px)}@media (max-width:640px){.htu-panel--policy .htu-close{display:none}}body.policy-modal-open .housing-nav{display:none}@media (orientation:landscape) and (max-height:600px){.htu-panel--help,.htu-panel--policy{max-height:calc(100dvh - 16px);padding:10px 24px}.htu-panel--help .htu-badge,.htu-panel--policy .htu-badge{border-width:3px;min-height:26px;padding:4px 12px;font-size:.62rem;box-shadow:2px 3px #1a000873}.htu-panel--help .htu-title,.htu-panel--policy .htu-title{margin-top:6px;padding-right:42px;font-size:1.3rem;line-height:1.05}.htu-panel--help .htu-body,.htu-panel--policy .htu-body{margin-top:8px}.htu-panel--help .htu-section+.htu-section,.htu-panel--policy .htu-section+.htu-section{margin-top:12px;padding-top:10px}.htu-panel--help .htu-close{min-width:min(200px,100%);min-height:44px;box-shadow:0 4px 0 var(--pp-ink), 0 8px 14px #0000004d;border-width:3px;margin-top:8px;padding:8px 20px;font-size:.88rem}.htu-panel--policy .htu-close{display:none}.htu-panel--policy .policy-doc-meta{margin-top:4px;font-size:.64rem}}.htu-actions{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:12px;display:flex}.htu-actions .htu-close{flex:160px;min-width:min(180px,100%)}.htu-close--danger{background:linear-gradient(180deg, var(--red-bright) 0%, var(--pp-red) 100%);color:#fff}.htu-close--danger:disabled{filter:grayscale(.7);opacity:.6;cursor:not-allowed}.room-angle-layout{grid-template-columns:minmax(0,1fr) minmax(190px,220px);align-items:stretch;gap:16px;display:grid}.room-angle-main{flex-direction:column;display:flex}.room-angle-preview{margin-top:0}.room-angle-preview-grid{flex-direction:column;flex:1;gap:10px;display:flex}@media (max-width:800px){.room-angle-layout{grid-template-columns:1fr}}.room-angle-preview{background:#fdf8f0;border:2px solid #251b1b;border-radius:12px;flex-direction:column;padding:10px;display:flex;box-shadow:4px 5px #251b1b1f}.room-angle-preview-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.room-angle-reset-button{color:#251b1b;cursor:pointer;background:#ffd447;border:2px solid #251b1b;border-radius:7px;min-height:34px;padding:5px 8px;font-size:10px;font-weight:900;line-height:1.1;transition:transform .15s,box-shadow .15s,background .15s;box-shadow:2px 2px #251b1b}.room-angle-reset-button:hover{background:#ffe17a;transform:translateY(-1px);box-shadow:2px 3px #251b1b}.room-angle-reset-button:active{transform:translateY(1px);box-shadow:1px 1px #251b1b}.room-angle-register-button{color:#fff;cursor:pointer;background:#c41230;border:2px solid #251b1b;border-radius:7px;min-height:34px;padding:5px 12px;font-size:10px;font-weight:900;line-height:1.1;transition:transform .15s,box-shadow .15s,background .15s;box-shadow:2px 2px #251b1b}.room-angle-register-button:hover{background:#e0213f;transform:translateY(-1px);box-shadow:2px 3px #251b1b}.room-angle-register-button:active{transform:translateY(1px);box-shadow:1px 1px #251b1b}.room-angle-register-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:2px 2px #251b1b}.room-angle-register-button:focus-visible{outline-offset:2px;outline:3px solid #ffd447}.room-angle-reset-button:focus-visible,.room-angle-item-picker select:focus-visible,.room-angle-adjustment-button:focus-visible{outline-offset:2px;outline:3px solid #c41230}.room-angle-item-picker{color:#251b1b;margin-bottom:10px;font-size:10px;font-weight:900;display:block}.room-angle-shadow-slider{margin-bottom:10px;display:block}.room-angle-select-wrap{margin-top:4px;display:block;position:relative}.room-angle-select-wrap:after{content:"";pointer-events:none;border-bottom:2px solid #251b1b;border-right:2px solid #251b1b;width:7px;height:7px;position:absolute;top:50%;right:11px;transform:translateY(-65%)rotate(45deg)}.room-angle-item-picker select{appearance:none;color:#251b1b;cursor:pointer;background:#fffdf9;border:2px solid #251b1b;border-radius:8px;width:100%;min-height:38px;padding:0 30px 0 10px;font-size:12px;font-weight:800}.room-angle-preview-card{text-align:center;background:#fffdf9;border:1px solid #d5c9c0;border-radius:9px;flex-direction:column;flex:1;justify-content:center;margin:0;padding:8px;display:flex;box-shadow:0 2px #251b1b12}.room-angle-direction-label{color:#fffdf9;letter-spacing:.12em;background:#251b1b;border-radius:999px;justify-content:center;min-width:48px;margin-top:2px;padding:3px 8px;font-size:10px;font-weight:900;display:inline-flex}.room-angle-adjustment-details{text-align:left;margin-top:7px}.room-angle-adjustment-button{color:#251b1b;cursor:pointer;background:#fffdf9;border:1px solid #bcaea3;border-radius:7px;justify-content:space-between;align-items:center;gap:6px;min-height:34px;padding:6px 8px;font-size:10px;font-weight:900;list-style:none;transition:color .15s,background .15s,border-color .15s;display:flex}.room-angle-adjustment-button::-webkit-details-marker{display:none}.room-angle-adjustment-button:after{color:#c41230;content:"+";font-size:16px;line-height:1}.room-angle-adjustment-details[open] .room-angle-adjustment-button{color:#fffdf9;background:#251b1b;border-color:#251b1b}.room-angle-adjustment-details[open] .room-angle-adjustment-button:after{color:#ffd447;content:"−"}.room-angle-adjustment-values{color:#6f6060;margin-left:auto;font-size:9px;font-weight:800}.room-angle-adjustment-details[open] .room-angle-adjustment-values{color:#ffdca5}.room-angle-adjustment-fields{background:#f4eee7;border-radius:7px;gap:7px;margin-top:6px;padding:8px;display:grid}.room-angle-range-label{color:#6f6060;gap:3px;font-size:10px;font-weight:800;display:grid}.room-angle-range-label span{justify-content:space-between;display:flex}.room-angle-range-label b{color:#251b1b}.room-angle-range-label input[type=range]{accent-color:#c41230;cursor:pointer;width:100%}.room-angle-apply-all-button{color:#251b1b;cursor:pointer;background:#d5f5e3;border:1.5px solid #251b1b;border-radius:5px;width:100%;min-height:28px;padding:4px 8px;font-size:10px;font-weight:900;transition:transform .12s,box-shadow .12s,background .12s;box-shadow:1px 1px #251b1b}.room-angle-apply-all-button:hover{background:#a9dfbf;transform:translateY(-1px);box-shadow:1px 2px #251b1b}.room-angle-apply-all-button:active{transform:translateY(1px);box-shadow:0 0 #251b1b}.room-angle-toolbar{background:#fffdf9;border:1.5px solid #d5c9c0;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding:10px 14px;display:flex}.room-angle-status{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.room-angle-status-label{color:#251b1b;letter-spacing:.02em;font-size:13px;font-weight:900}.room-angle-status-badge{font-variant-numeric:tabular-nums;color:#5a4a42;letter-spacing:.04em;background:#f0e8e0;border:1px solid #d5c9c0;border-radius:5px;align-items:center;padding:2px 8px;font-size:11px;font-weight:800;display:inline-flex}.room-angle-status-badge--rot{color:#c41230;background:#fef0f2;border-color:#e8b0ba}.room-angle-status-hint{color:#8a7a72;font-size:11px}.room-angle-status-empty{color:#a09088;font-size:12px;font-style:italic;font-weight:600}.room-angle-toolbar-hint{color:#6f6060;margin-left:auto;font-size:11px}.room-angle-move-controls{flex-wrap:wrap;gap:4px;display:inline-flex}.room-angle-move-btn{color:#251b1b;cursor:pointer;letter-spacing:.04em;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#fffdf9;border:1.5px solid #bcaea3;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:44px;min-height:44px;padding:4px 6px;font-size:10px;font-weight:800;transition:color .12s,background .12s,border-color .12s,box-shadow .12s;display:inline-flex}.room-angle-move-icon{font-size:15px;line-height:1}.room-angle-move-btn:hover:not(:disabled){background:#f4eee7;border-color:#251b1b;box-shadow:0 2px #251b1b1f}.room-angle-move-btn:active:not(:disabled){box-shadow:none;background:#e8ddd3;transform:translateY(1px)}.room-angle-move-btn:disabled{opacity:.35;cursor:not-allowed}.room-angle-move-btn--rotate{color:#c41230;border-color:#c41230}.room-angle-move-btn--rotate:hover:not(:disabled){background:#fef0f2;border-color:#a00e27}.room-angle-move-btn--rotate:active:not(:disabled){background:#fcdde2}.room-angle-move-btn:focus-visible{outline-offset:2px;outline:3px solid #c41230}.room-angle-floor-picker{color:#6f6060;gap:4px;font-size:10px;font-weight:900;display:grid}.room-angle-floor-buttons{gap:4px;display:inline-flex}.room-angle-floor-buttons button{color:#251b1b;cursor:pointer;background:#fffdf9;border:1px solid #bcaea3;border-radius:6px;min-width:31px;min-height:28px;padding:3px 7px;font-size:10px;font-weight:900;transition:color .15s,background .15s,border-color .15s}.room-angle-floor-buttons button:hover{background:#f4eee7;border-color:#251b1b}.room-angle-floor-buttons button.is-active{color:#fffdf9;background:#251b1b;border-color:#251b1b}.room-angle-floor-buttons button:focus-visible{outline-offset:2px;outline:3px solid #c41230}.room-view-open-btn{z-index:700;border:3px solid var(--pp-ink);background:var(--pp-cream);min-height:30px;color:var(--pp-ink);font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.08em;white-space:nowrap;cursor:pointer;border-radius:999px;padding:.25rem .8rem;font-size:.72rem;font-weight:900;transition:transform .15s,box-shadow .15s;position:absolute;top:8px;right:14px;box-shadow:3px 3px #00000059}.room-view-open-btn:hover{transform:translateY(-2px);box-shadow:3px 5px #00000059}.room-view-open-btn:active{transform:translateY(2px);box-shadow:2px 1px #00000059}.room-view-open-btn:focus-visible,.room-view-mode__close:focus-visible{outline-offset:3px;outline:3px solid #ffd86b}.room-view-mode{z-index:var(--z-viewmode);color:var(--pp-paper);background:radial-gradient(circle at 50% 40%,#8b1a2e38,#0000 58%),#12050cfa;position:fixed;inset:0;overflow:hidden}.room-view-mode__viewport{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.room-view-mode__viewport.is-dragging{cursor:grabbing}.room-view-mode__canvas{transform-origin:0 0;will-change:transform;position:absolute;top:0;left:0}.room-view-mode__toolbar{top:calc(1rem + env(safe-area-inset-top,0px));left:calc(1rem + env(safe-area-inset-left,0px));right:calc(1rem + env(safe-area-inset-right,0px));z-index:2;pointer-events:none;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex;position:absolute}.room-view-mode__title,.room-view-mode__hint{text-shadow:0 2px 5px #000000b3;margin:0}.room-view-mode__title{font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.12em;font-size:.85rem;font-weight:900}.room-view-mode__hint{color:#fffdf0c7;margin-top:.25rem;font-size:.72rem}.room-view-mode__close{border:3px solid var(--pp-paper);background:var(--pp-red);min-width:44px;min-height:44px;color:var(--pp-paper);font-family:var(--font-black-han-sans), var(--font-noto-sans-jp), sans-serif;letter-spacing:.08em;white-space:nowrap;cursor:pointer;pointer-events:auto;border-radius:999px;padding:.6rem .85rem;font-size:.72rem;font-weight:900;box-shadow:3px 3px #00000073}.room-view-mode__close:hover{background:var(--red-bright)}@media (max-width:560px){.room-view-open-btn{padding:.25rem .6rem;font-size:.68rem;top:8px;right:12px}.room-view-mode__toolbar{align-items:flex-start;gap:.5rem}.room-view-mode__title{font-size:.72rem}.room-view-mode__hint{display:none}.room-view-mode__close{padding:.55rem .65rem;font-size:.66rem}}@media (orientation:portrait) and (max-width:480px),(orientation:landscape) and (max-height:499px){.room-view-open-btn{display:none}.nav-menu-view-item{display:inline-flex}}.room-view-open-btn--below{order:2;align-self:center;min-height:44px;margin-top:.5rem;padding:.4rem 1.2rem;font-size:.78rem;position:static}@media (prefers-reduced-motion:reduce){.room-view-open-btn{transition:none}}.policy-doc-wrap{padding:clamp(24px,5vw,48px) 16px}.policy-doc{max-height:none;margin:0 auto}.policy-doc .htu-body{max-height:none;overflow:visible}.policy-doc-meta{letter-spacing:.1em;color:#1a000894;margin:10px 0 0;font-size:.72rem;font-weight:700}.htu-panel .htu-text a{color:var(--pp-red,#c41230);text-underline-offset:3px;font-weight:900;text-decoration:underline}.htu-panel .htu-text strong{color:var(--pp-ink,#1a0008)}.policy-footer{z-index:10;background:var(--black);padding:1.5rem 1rem calc(1.5rem + env(safe-area-inset-bottom,0px));text-align:center;position:relative}.policy-footer nav{font-family:var(--font-noto-sans-jp), "Noto Sans JP", sans-serif;letter-spacing:.04em;color:#ffffff8c;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;font-size:.7rem;display:flex}.policy-footer-item{align-items:center;gap:.5rem;display:inline-flex}.policy-footer a,.policy-footer button{appearance:none;font:inherit;cursor:pointer;color:#ffffffb8;text-underline-offset:3px;background:0 0;border:0;padding:.35rem .1rem;text-decoration:underline}.policy-footer a:hover,.policy-footer a:focus-visible,.policy-footer button:hover,.policy-footer button:focus-visible{color:#fff}.move-pad{z-index:var(--z-sheet);background:var(--pp-paper);border-top:3px solid var(--pp-ink);padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));color:var(--pp-ink);border-radius:16px 16px 0 0;justify-content:center;align-items:center;gap:18px;display:flex;position:fixed;bottom:0;left:0;right:0}.move-pad-info{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}@media (orientation:landscape) and (max-height:499px){.move-pad{left:calc(8px + env(safe-area-inset-left,0px));right:auto;bottom:calc(8px + env(safe-area-inset-bottom,0px));border:3px solid var(--pp-ink);border-radius:14px;flex-direction:column;gap:10px;padding:10px 12px;box-shadow:3px 4px #0000004d}.move-pad-info{align-items:center}.move-pad-label{display:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}
