@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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--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-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}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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-md:28rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-semibold:600;--font-weight-bold:700;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--aspect-video:16 / 9;--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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.top-1\/2{top:50%}.top-3{top:calc(var(--spacing) * 3)}.right-3{right:calc(var(--spacing) * 3)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.z-80{z-index:80}.z-90{z-index:90}.z-100{z-index:100}.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-1{margin-inline:calc(var(--spacing) * -1)}.my-1{margin-block:var(--spacing)}.mt-1{margin-top:var(--spacing)}.mb-1{margin-bottom:var(--spacing)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.table{display:table}.aspect-\[3\/4\]{aspect-ratio:3/4}.aspect-\[4\/5\]{aspect-ratio:4/5}.aspect-\[16\/7\]{aspect-ratio:16/7}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:var(--aspect-video)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-full{height:100%}.h-px{height:1px}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\[calc\(100dvh-2rem\)\]{max-height:calc(100dvh - 2rem)}.max-h-full{max-height:100%}.min-h-0{min-height:0}.min-h-6{min-height:calc(var(--spacing) * 6)}.min-h-8{min-height:calc(var(--spacing) * 8)}.min-h-24{min-height:calc(var(--spacing) * 24)}.min-h-28{min-height:calc(var(--spacing) * 28)}.w-\[min\(960px\,calc\(100vw-2rem\)\)\]{width:min(960px,100vw - 2rem)}.w-full{width:100%}.max-w-full{max-width:100%}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:0}.min-w-32{min-width:calc(var(--spacing) * 32)}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.grid-cols-\[minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) auto}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[\#d8a336\]\/40{border-color:#d8a33666;border-color:lab(70.7038% 12.8872 61.0019/.4)}.border-\[\#f0c879\]{border-color:#f0c879}.border-border{border-color:var(--line)}.border-destructive,.border-destructive\/30{border-color:var(--red)}@supports (color:color-mix(in lab, red, red)){.border-destructive\/30{border-color:color-mix(in oklab, var(--red) 30%, transparent)}}.border-input{border-color:var(--line)}.border-primary,.border-primary\/30{border-color:var(--teal)}@supports (color:color-mix(in lab, red, red)){.border-primary\/30{border-color:color-mix(in oklab, var(--teal) 30%, transparent)}}.border-transparent{border-color:#0000}.bg-\[\#11181c\]\/50{background-color:#11181c80;background-color:lab(7.67733% -2.30934 -3.95033/.5)}.bg-\[\#f3fbf8\]{background-color:#f3fbf8}.bg-\[\#fbfdfd\]{background-color:#fbfdfd}.bg-\[\#fff0f3\]{background-color:#fff0f3}.bg-\[\#fff8e6\]{background-color:#fff8e6}.bg-accent{background-color:var(--teal-soft)}.bg-border{background-color:var(--line)}.bg-card{background-color:var(--surface)}.bg-destructive{background-color:var(--red)}.bg-popover{background-color:var(--surface)}.bg-primary{background-color:var(--teal)}.bg-secondary{background-color:#f4f8f9}.bg-transparent{background-color:#0000}.bg-\[linear-gradient\(45deg\,rgba\(221\,227\,231\,0\.55\)_25\%\,transparent_25\%\)\,linear-gradient\(-45deg\,rgba\(221\,227\,231\,0\.55\)_25\%\,transparent_25\%\)\,linear-gradient\(45deg\,transparent_75\%\,rgba\(221\,227\,231\,0\.55\)_75\%\)\,linear-gradient\(-45deg\,transparent_75\%\,rgba\(221\,227\,231\,0\.55\)_75\%\)\]{background-image:linear-gradient(45deg,#dde3e78c 25%,#0000 25%),linear-gradient(-45deg,#dde3e78c 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#dde3e78c 75%),linear-gradient(-45deg,#0000 75%,#dde3e78c 75%)}.bg-\[length\:14px_14px\]{background-size:14px 14px}.bg-\[position\:0_0\,0_7px\,7px_-7px\,-7px_0\]{background-position:0 0,0 7px,7px -7px,-7px 0}.object-contain{object-fit:contain}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.pt-1{padding-top:var(--spacing)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.align-top{vertical-align:top}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--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-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-\[\#75520c\]{color:#75520c}.text-accent-foreground{color:var(--teal-dark)}.text-card-foreground{color:var(--ink)}.text-destructive{color:var(--red)}.text-destructive-foreground{color:#fff}.text-foreground{color:var(--ink)}.text-muted-foreground{color:var(--muted)}.text-popover-foreground{color:var(--ink)}.text-primary-foreground{color:#fff}.text-secondary-foreground{color:var(--ink-soft)}.uppercase{text-transform:uppercase}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px 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)}.blur{--tw-blur:blur(8px);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-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.placeholder\:text-muted-foreground::placeholder{color:var(--muted)}.read-only\:bg-secondary:read-only{background-color:#f4f8f9}.focus-within\:border-primary:focus-within{border-color:var(--teal)}.focus-within\:ring-2:focus-within{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + 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)}.focus-within\:ring-ring\/20:focus-within{--tw-ring-color:var(--teal)}@supports (color:color-mix(in lab, red, red)){.focus-within\:ring-ring\/20:focus-within{--tw-ring-color:color-mix(in oklab, var(--teal) 20%, transparent)}}@media (hover:hover){.hover\:bg-\[\#d83253\]:hover{background-color:#d83253}.hover\:bg-\[\#ffefc4\]:hover{background-color:#ffefc4}.hover\:bg-\[var\(--teal-dark\)\]:hover{background-color:var(--teal-dark)}.hover\:bg-muted:hover,.hover\:bg-secondary:hover{background-color:#f4f8f9}.hover\:bg-secondary\/60:hover{background-color:#f4f8f999;background-color:lab(97.294% -1.23656 -.96904/.6)}.hover\:text-foreground:hover{color:var(--ink)}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:border-primary:focus-visible{border-color:var(--teal)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + 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)}.focus-visible\:ring-ring\/20:focus-visible{--tw-ring-color:var(--teal)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--teal) 20%, transparent)}}.focus-visible\:ring-ring\/25:focus-visible{--tw-ring-color:var(--teal)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/25:focus-visible{--tw-ring-color:color-mix(in oklab, var(--teal) 25%, transparent)}}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-55:disabled{opacity:.55}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[highlighted\]\:bg-accent[data-highlighted]{background-color:var(--teal-soft)}.data-\[highlighted\]\:text-accent-foreground[data-highlighted]{color:var(--teal-dark)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=active\]\:bg-accent[data-state=active]{background-color:var(--teal-soft)}.data-\[state\=active\]\:text-accent-foreground[data-state=active]{color:var(--teal-dark)}@media (min-width:48rem){.md\:grid{display:grid}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-\[minmax\(0\,1\.15fr\)_minmax\(180px\,0\.85fr\)_auto\]{grid-template-columns:minmax(0,1.15fr) minmax(180px,.85fr) auto}.md\:flex-nowrap{flex-wrap:nowrap}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child_td\]\:border-b-0 tr:last-child td{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&\>span\]\:truncate>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#202428;--ink-soft:#3f4750;--muted:#68717c;--subtle:#9aa2ad;--surface:#fff;--surface-soft:#ffffffeb;--page:#f5f6f7;--line:#d9dee4;--teal:#15959d;--teal-dark:#0b6f78;--teal-soft:#d7f6f4;--gold:#d8a336;--orange:#f59b45;--red:#ef4b67;--danger:var(--red);--blue:#557ea8;--purple:#6e52a3;--green:#5dae65;--crystal:#74a9f4;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--control-h:34px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--admin-sidebar-w:232px;--admin-content-max:1520px;--admin-page-x:24px;--shadow-soft:0 10px 24px #14202314;--shadow-sm:0 4px 12px #1420230f;--shadow:var(--shadow-soft);font-family:Inter,Noto Sans TC,PingFang TC,Microsoft JhengHei,Arial,sans-serif}*{box-sizing:border-box}html,body{background:var(--page);min-width:320px;min-height:100%;color:var(--ink);margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}a{color:inherit;text-decoration:none}.admin-layout{grid-template-columns:var(--admin-sidebar-w) minmax(0, 1fr);min-height:100vh;display:grid}.admin-sidebar{height:100vh;padding:var(--space-4) var(--space-3);border-right:1px solid var(--line);background:var(--surface);position:sticky;top:0;overflow-y:auto}.admin-brand{padding:0 var(--space-2) var(--space-3);border-bottom:1px solid var(--line);gap:4px;display:grid}.admin-brand strong{letter-spacing:0;font-size:17px;font-weight:850}.admin-brand span,.muted,.page-eyebrow,.status-line,.field-hint{color:var(--muted);font-size:12px;line-height:1.45}.admin-nav{gap:var(--space-4);padding:var(--space-4) 0;display:grid}.admin-nav-frame{gap:var(--space-3);align-content:start;display:grid}.admin-nav-section{gap:var(--space-1);display:grid}.admin-nav-section-label{padding:0 var(--space-2) var(--space-1);color:var(--subtle);letter-spacing:0;margin:0;font-size:11px;font-weight:850}.admin-nav-section-list{gap:var(--space-1);display:grid}.admin-nav a{min-height:36px;padding:0 var(--space-2) 0 var(--space-3);border-radius:var(--radius-md);color:var(--ink-soft);border:1px solid #0000;grid-template-columns:24px 1fr;align-items:center;gap:10px;font-size:13px;font-weight:750;display:grid;position:relative}.admin-nav svg{justify-self:center}.admin-logout-form{padding:var(--space-3) var(--space-2) 0;border-top:1px solid var(--line)}.admin-logout-button{width:100%;color:var(--muted);justify-content:flex-start}.admin-logout-button:hover{color:var(--ink-soft)}.admin-login-page{min-height:100vh;padding:var(--space-6);place-items:center;display:grid}.admin-login-panel{gap:var(--space-6);width:min(100%,392px);padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);display:grid}.admin-login-eyebrow{color:var(--teal-dark);font-size:12px;font-weight:850}.admin-login-panel h1{margin:4px 0 0;font-size:22px;line-height:1.2}.admin-login-form{gap:var(--space-4);display:grid}.admin-login-form label{gap:var(--space-2);display:grid}.admin-login-form label span{color:var(--ink-soft);font-size:12px;font-weight:850}.admin-login-error{border-radius:var(--radius-md);color:#a8243e;background:#ef4b6714;border:1px solid #ef4b6747;padding:9px 10px;font-size:13px;font-weight:750;line-height:1.45}.observability-toolbar{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.observability-toolbar h1{color:var(--ink);margin:0;font-size:20px;line-height:1.2}.observability-toolbar p{color:var(--muted);margin:4px 0 0;font-size:13px}.observability-tabs{border-bottom:1px solid var(--line);gap:4px;margin-bottom:14px;padding-bottom:1px;display:flex;overflow-x:auto}.observability-tabs a{min-height:40px;color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:850;display:inline-flex}.observability-tabs a[aria-current=page]{border-bottom-color:var(--teal);color:var(--teal-dark)}.observability-search{grid-template-columns:minmax(240px,1fr) auto;gap:8px;margin-bottom:14px;display:grid}.observability-search input{min-width:0;height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);padding:0 11px}.observability-section{border-top:1px solid var(--line);background:var(--surface);margin-top:16px}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:0 12px;display:flex}.section-heading h2{margin:0;font-size:14px}.section-heading a,.section-heading span{color:var(--teal-dark);font-size:12px;font-weight:850}.observability-table{min-width:960px}.observability-table td{vertical-align:top}.mono-link,.error-code,.log-entry code{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px}.diagnostic-details{max-width:min(720px,70vw);margin-top:8px}.diagnostic-details summary{color:var(--teal-dark);cursor:pointer;font-weight:700}.diagnostic-details pre{white-space:pre-wrap;word-break:break-word;max-height:280px;margin:6px 0 12px;overflow:auto}.mono-link{max-width:220px;color:var(--teal-dark);text-overflow:ellipsis;white-space:nowrap;display:inline-block;overflow:hidden}.error-code{color:var(--ink-soft);margin-top:4px}.badge.danger{color:#a8243e;background:#ef4b671a;border-color:#ef4b6747}.badge.warning{color:#75520c;background:#d8a3361f;border-color:#d8a33659}.empty-cell,.observability-unavailable{color:var(--muted);text-align:center;padding:12px}.observability-unavailable{border:1px dashed var(--line);background:var(--surface)}.observability-export-presets,.observability-export-sources{flex-wrap:wrap;gap:8px;display:flex}.observability-export-presets{margin-bottom:10px}.observability-export-presets button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-height:32px;color:var(--ink-soft);padding:0 10px;font-size:12px;font-weight:800}.observability-export-presets button:hover{border-color:var(--teal);color:var(--teal-dark)}.observability-export-levels{grid-template-columns:repeat(4,minmax(0,1fr))}.observability-export-sources{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;padding:8px}.log-stream{color:#e8edf0;background:#1f2428;max-height:680px;overflow:auto}.log-entry{border-bottom:1px solid #343b40;grid-template-columns:136px 90px minmax(0,1fr);gap:10px;padding:8px 10px;display:grid}.log-entry time,.log-entry span{color:#9fb0b9;font-size:11px}.log-entry code{overflow-wrap:anywhere;white-space:pre-wrap}.timeline-stack,.pagination-row{gap:2px;display:grid}.pagination-row{justify-content:end;margin-top:14px}.admin-nav a[aria-current=page]{background:var(--teal-soft);color:var(--teal-dark);border-color:#15959d47}.admin-nav a[aria-current=page]:before{background:var(--teal);content:"";border-radius:999px;width:3px;height:20px;position:absolute;left:0}.admin-main{min-width:0;min-height:100vh}.admin-main-standard{background:var(--page)}.admin-main-standard>.page-wrap{width:100%;max-width:none;margin-inline:0}.admin-main.immersive{min-height:100vh;display:grid}.admin-main.immersive>.page-wrap{max-width:none}.admin-topbar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f4f7f6e6;justify-content:space-between;align-items:center;gap:16px;min-height:50px;padding:8px 16px;display:flex;position:sticky;top:0}.admin-topbar strong{font-size:15px;font-weight:950}.admin-topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.page-wrap{padding:20px var(--admin-page-x) 32px}.admin-page{gap:16px;min-width:0;display:grid}.admin-page-full{width:100%}.admin-page-form{width:min(100%,1080px)}.admin-page-reading{width:min(100%,840px)}.admin-page-tabs-row,.admin-page-toolbar-row,.admin-page-content{min-width:0}.admin-page-content{gap:16px;display:grid}.page-header{justify-content:flex-end;align-items:center;gap:var(--space-4);margin-bottom:0;display:flex}.app-page-header{min-width:0;padding-bottom:var(--space-2);border-bottom:1px solid var(--line)}.page-header-actions-only{min-height:var(--control-h)}.page-header-main{gap:var(--space-1);min-width:0;display:grid}.page-breadcrumbs{gap:var(--space-1);min-width:0;color:var(--muted);flex-wrap:wrap;font-size:12px;font-weight:750;display:flex}.page-breadcrumbs span{gap:var(--space-1);min-width:0;display:inline-flex}.page-breadcrumbs a{color:var(--teal-dark)}.page-title-row{align-items:center;gap:var(--space-2);min-width:0;display:flex}.page-title{color:var(--ink);letter-spacing:0;margin:0;font-size:20px;font-weight:900;line-height:1.12}.page-header-metadata{align-items:center;gap:var(--space-2);min-width:0;color:var(--muted);flex-wrap:wrap;font-size:12px;display:inline-flex}.page-subtitle{max-width:760px;color:var(--muted);margin:0;font-size:12px;line-height:1.55}.page-header-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:none;display:flex}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.metric-grid.compact{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.work-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:start;gap:8px;display:grid}.panel{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 4px 12px #14202309}.panel-body{padding:10px}.panel-title{color:var(--ink-soft);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:800}.metric-card{min-height:76px;padding:10px}.metric-card.inline{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;min-height:0}.metric-card strong{margin-top:8px;font-size:18px;font-weight:850;display:block}.metric-card.inline strong{margin-top:6px;font-size:15px;line-height:1.35}.metric-card span{color:var(--muted);font-size:13px}.cms-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.cms-list li{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;grid-template-columns:1fr auto;align-items:center;gap:10px;min-height:52px;padding:8px 10px;display:grid}.cms-list strong{color:var(--ink);margin-bottom:3px;font-size:14px;font-weight:900;display:block}.badge{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-height:26px;color:var(--muted);white-space:nowrap;justify-content:center;align-items:center;padding:0 8px;font-size:12px;font-weight:850;display:inline-flex}.badge.teal{background:var(--teal-soft);color:var(--teal-dark);border-color:#15959d47}.button,.icon-button,.segmented button{min-height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink-soft);font-size:13px;font-weight:750;transition:border-color .14s,background-color .14s,color .14s,box-shadow .14s}.button{white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:0 10px;display:inline-flex}.button:hover,.icon-button:hover,.segmented button:hover{color:var(--ink);background:#f4f7f8;border-color:#c7d1d7}.button.primary{border-color:var(--teal);background:var(--teal);color:#fff}.button.primary:hover{border-color:var(--teal-dark);background:var(--teal-dark);color:#fff}.button.ghost{background:0 0}.button.ghost:hover{background:#f4f7f8}.button.secondary{background:#f4f8f9}.button.warn{color:var(--red);border-color:#ef4b6766}.button.warn:hover{background:#fff0f3;border-color:#ef4b678c}.button.danger{border-color:var(--red);background:var(--red);color:#fff}.button.danger:hover{color:#fff;background:#d83253;border-color:#d83253}.disabled-link{pointer-events:none;opacity:.5}.icon-button{width:var(--control-h);place-items:center;padding:0;font-size:16px;line-height:1;display:inline-grid}.icon-button.danger{color:var(--red);border-color:#ef4b6766}.icon-button.active{background:var(--teal-soft);color:var(--teal-dark);border-color:#15959d5c}.form-control,.form-select,.form-textarea,.form-color{width:100%;min-height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);outline:none;font-size:13px}.form-control,.form-select,.form-textarea{padding:7px 9px}.form-control.readonly,.form-control:read-only{color:#42515c;background:#f4f8f9}.form-textarea{resize:vertical;min-height:84px;line-height:1.45}.form-textarea-small{min-height:92px}.form-textarea.compact{min-width:220px;min-height:64px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.form-color{height:var(--control-h);padding:4px}.form-control:focus,.form-select:focus,.form-textarea:focus,.form-color:focus{border-color:var(--teal);box-shadow:0 0 0 3px #15959d24}input[type=range]{width:100%;accent-color:var(--teal)}.field{gap:4px;min-width:0;margin-bottom:6px;display:grid}.field>span,.field>label,.field-label-row>span,.range-help strong,.toolbar-field>span{color:var(--ink-soft);font-size:12px;font-weight:850}.field-label-row{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.field-label-row .button{min-height:30px;padding:0 9px;font-size:12px}.range-help{gap:3px;display:grid}.field>.field-description,.field>.field-example,.field>.field-hint,.check-copy .field-description,.check-copy .field-example,.check-chip-copy .field-description,.check-chip-copy .field-example,.range-help .field-description,.range-help .field-example,.toolbar-field .field-description,.toolbar-field .field-example{color:var(--muted);font-size:11px;font-weight:650;line-height:1.35}.field>.field-example,.check-copy .field-example,.check-chip-copy .field-example,.range-help .field-example,.toolbar-field .field-example{color:#55707b}.form-section{gap:var(--space-4);min-width:0;padding-block:var(--space-4);border-bottom:1px solid var(--line);display:grid}.form-section:first-child{padding-top:var(--space-3)}.form-section:last-child{padding-bottom:var(--space-3);border-bottom:0}.form-section-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);min-width:0;display:flex}.form-section-heading{gap:var(--space-1);min-width:0;display:grid}.form-section-heading h3{color:var(--ink);margin:0;font-size:14px;font-weight:850;line-height:1.35}.form-section-heading p{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.form-section-actions{align-items:center;gap:var(--space-2);flex:none;display:flex}.form-grid{gap:var(--space-3);min-width:0;display:grid}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid-12{grid-template-columns:repeat(12,minmax(0,1fr))}.form-field-span-1{grid-column:span 1}.form-field-span-2{grid-column:span 2}.form-field-span-3{grid-column:span 3}.form-field-span-4{grid-column:span 4}.form-field-span-5{grid-column:span 5}.form-field-span-6{grid-column:span 6}.form-field-span-7{grid-column:span 7}.form-field-span-8{grid-column:span 8}.form-field-span-9{grid-column:span 9}.form-field-span-10{grid-column:span 10}.form-field-span-11{grid-column:span 11}.form-field-span-12{grid-column:span 12}.field-control{gap:var(--space-1);min-width:0;color:var(--ink-soft);font-size:13px;display:grid}.field-control-label{color:var(--ink-soft);font-size:12px;font-weight:850}.field-control-hint{color:var(--muted);align-items:center;gap:5px;font-size:11px;line-height:1.4;display:inline-flex}.field-control-error{color:var(--red);font-size:12px;line-height:1.35}.described-check{align-items:flex-start}.check-copy{gap:3px;display:grid}.check-copy strong{color:var(--ink-soft);font-size:12px;font-weight:850}.range-field{grid-template-columns:minmax(0,1fr) 54px;align-items:flex-start;gap:6px 8px;margin-bottom:10px;display:grid}.range-field input{grid-column:1/-1}.range-field output{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;font-size:12px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.row{align-items:center;gap:8px;display:flex}.row.spaced,.compact-row.spaced,.segmented.spaced{margin-top:8px}.compact-row.spaced-lg{margin-top:10px}.toolbar-row{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;display:flex}.toolbar-row h2,.toolbar-row h3{color:var(--ink-soft);font-size:13px;font-weight:800;line-height:var(--control-h);margin:0}.inline-action{align-items:center;gap:8px;display:flex}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.data-table-scroll{width:100%;overflow-x:auto}.data-table,.admin-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th,.data-table td,.admin-table th,.admin-table td{vertical-align:top;border-bottom:1px solid var(--line);text-align:left;padding:8px 10px}.data-table th,.admin-table th{color:var(--ink-soft);text-transform:uppercase;font-size:12px;font-weight:800}.admin-table-wrap{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);width:100%;overflow-x:auto}.admin-table-wrap .admin-table th,.admin-table-wrap .admin-table td{padding:8px 10px}.admin-table-wrap .admin-table{min-width:760px}.data-table-shell{max-width:100%;overflow:auto}.data-table-component{min-width:760px}.data-table-sticky-header{z-index:1;position:sticky;top:0}.data-table-component th{white-space:nowrap}.data-table-component td{min-width:0}.data-table-compact-row td{vertical-align:middle;height:64px}.data-table-action-head,.data-table-actions-cell{text-align:right;white-space:nowrap;width:1%}.data-table-actions-cell>*{justify-content:flex-end}.database-table-name{gap:var(--space-1);min-width:0;display:grid}.database-table-name strong{color:var(--ink);font-size:13px;font-weight:900}.database-editor{gap:var(--space-3);min-width:0;display:grid}.database-table-code{min-height:var(--control-h);color:var(--muted);align-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;display:inline-flex}.database-warning-panel{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);color:#75520c;background:#fff8e6;border:1px solid #d8a33659;grid-template-columns:20px minmax(0,1fr);align-items:start;display:grid}.database-warning-panel strong{color:#5e4208;margin-bottom:2px;font-size:13px;font-weight:900;display:block}.database-warning-panel span{font-size:12px;line-height:1.45}.database-cell-editor{gap:var(--space-1);min-width:0;display:grid}.database-text-input{min-width:180px;min-height:56px;font-family:inherit}.database-json-input{min-width:260px;min-height:86px}.database-cell-meta{align-items:center;gap:var(--space-2);min-width:0;color:var(--muted);font-size:11px;display:flex}.database-change-state{color:var(--teal-dark);font-size:12px;font-weight:900}.asset-preview{gap:var(--space-2);min-width:0;display:grid}.asset-preview-frame{background-color:#fbfdfd;min-width:0}.asset-preview-image-pixelated{image-rendering:pixelated;image-rendering:crisp-edges}.asset-preview-loading-icon{animation:.8s linear infinite spin}.asset-preview-body{justify-content:space-between;align-items:center;gap:var(--space-2);min-width:0;display:flex}.asset-preview-copy{gap:var(--space-1);min-width:0;display:grid}.asset-preview-copy strong,.asset-preview-copy span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.asset-preview-copy strong{color:var(--ink);font-size:13px;font-weight:850}.asset-preview-copy span{color:var(--muted);font-size:11px;font-weight:700}.asset-preview-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex:none;display:flex}.asset-field{align-items:center;gap:var(--space-3);min-width:0;min-height:88px;padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:72px minmax(0,1fr);display:grid}.asset-field-preview{width:72px}.asset-field-main{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;display:flex}.asset-field-copy{gap:var(--space-1);min-width:0;display:grid}.asset-field-copy strong,.asset-field-copy span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.asset-field-copy strong{color:var(--ink);font-size:13px;font-weight:900}.asset-field-copy span{color:var(--muted);font-size:12px;line-height:1.4}.asset-field-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex:none;display:flex}.copyable-code{align-items:center;gap:var(--space-1);min-width:0;max-width:100%;color:var(--muted);display:inline-flex}.copyable-code code{min-width:0;color:var(--ink-soft);overflow-wrap:anywhere;font-size:12px}.copyable-code-truncate code{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.confirm-dialog-body{gap:var(--space-2);min-width:0;padding:var(--space-4);color:var(--ink-soft);font-size:13px;line-height:1.55;display:grid}.confirm-dialog-body dl,.technical-info{gap:var(--space-2);margin:0;display:grid}.confirm-dialog-body div,.technical-info-row{gap:var(--space-3);grid-template-columns:minmax(120px,.36fr) minmax(0,1fr);min-width:0;display:grid}.confirm-dialog-body dt,.technical-info-row dt{color:var(--muted);font-size:12px;font-weight:850}.confirm-dialog-body dd,.technical-info-row dd{min-width:0;color:var(--ink-soft);margin:0}.json-field-textarea{min-height:140px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.55}.markdown-editor-meta{color:var(--muted);justify-content:flex-end;font-size:12px;font-weight:750;display:flex}.markdown-editor-textarea{min-height:220px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px}.npc-template-dialog .asset-field{grid-template-columns:132px minmax(0,1fr);align-items:stretch;min-height:150px}.npc-template-dialog .asset-field-preview{width:132px}.npc-template-dialog .asset-field-main{flex-direction:column;justify-content:center;align-items:flex-start}.npc-template-dialog .asset-field-actions{flex-wrap:wrap;justify-content:flex-start}.catalog-cover-field{grid-template-columns:220px minmax(0,1fr);align-items:stretch;min-height:136px}.catalog-cover-field .asset-field-preview{width:220px}.catalog-cover-field .asset-field-main,.badge-icon-field .asset-field-main{flex-direction:column;justify-content:center;align-items:flex-start}.catalog-cover-field .asset-field-actions,.badge-icon-field .asset-field-actions{flex-wrap:wrap;justify-content:flex-start}.badge-icon-field{grid-template-columns:104px minmax(0,1fr);min-height:120px}.badge-icon-field .asset-field-preview{width:104px}.sticky-action-bar{z-index:20;justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;margin-top:var(--space-4);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);display:flex;position:sticky;bottom:0}@supports (color:color-mix(in lab, red, red)){.sticky-action-bar{background:color-mix(in srgb, var(--surface) 94%, transparent)}}.sticky-action-bar{box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sticky-action-bar-state{min-width:0;color:var(--muted);font-size:12px;font-weight:800}.sticky-action-bar-state[data-error=true]{color:var(--red)}.sticky-action-bar-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex:none;display:flex}.search-field{min-height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--muted);grid-template-columns:16px minmax(0,1fr);align-items:center;gap:7px;padding:0 10px;display:grid}.search-field input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.filter-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;margin-bottom:var(--space-3);padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);display:flex}.filter-toolbar-controls,.filter-toolbar-actions,.filter-toolbar-filters{align-items:center;gap:var(--space-2);min-width:0;display:flex}.filter-toolbar-controls{flex-wrap:wrap;flex:auto}.filter-toolbar-actions{flex-wrap:wrap;flex:none;justify-content:flex-end}.filter-toolbar-search{flex:260px;min-width:min(260px,100%)}.filter-toolbar-search>*,.filter-toolbar-filters>*{min-width:0}.filter-toolbar-count{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:800}.metric-compact-value{font-size:18px!important}.panel-stack{margin-top:14px}.admin-page-tabs{gap:12px;display:grid}.admin-tab-panel{min-width:0}.form-tabs,.form-tab-panel{gap:14px;min-width:0;display:grid}.form-tabs>[role=tablist]{align-self:start;width:max-content;max-width:100%;min-height:30px}.form-tabs [role=tabpanel]{min-width:0}.form-tabs [role=tab]{min-height:28px;padding-inline:var(--space-2);font-size:12px;font-weight:900}.data-table-spaced{margin-top:10px}.setting-value-compact{max-width:8rem}.map-monitor-npc-image{border:1px solid var(--line);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--muted)}.table-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.world-archive-import{gap:10px;max-width:760px;display:grid}.world-archive-import .upload-box{grid-template-columns:minmax(0,1fr) auto auto}.check-row.inline{align-items:center;gap:8px;min-height:28px;display:flex}.compact-select{width:auto;min-width:118px}.compact-field{gap:4px;margin-bottom:0}.shop-card-entry-row{align-items:start}.quest-admin-toolbar{grid-template-columns:minmax(220px, 320px) minmax(150px, 190px) minmax(130px, 170px) var(--control-h);align-items:center;gap:8px;display:grid}.quest-admin-cell{max-width:320px;color:var(--ink-soft);font-size:12px;line-height:1.45}.admin-record-list{gap:10px;display:grid}.admin-record-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;display:grid}.admin-record-card{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:8px;min-height:72px;padding:12px;display:grid}.admin-panel{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);gap:14px;padding:16px;display:grid}.world-system-toolbar{grid-template-columns:minmax(220px, 360px) var(--control-h);align-items:center;gap:8px;display:grid}.world-system-rank-row{grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr) minmax(150px,auto) auto}.world-system-rank-table .data-table-component{min-width:980px}.rank-table-identity{gap:var(--space-1);min-width:0;display:grid}.rank-table-identity strong,.rank-table-identity span,.rank-table-summary,.rank-table-code{text-overflow:ellipsis;min-width:0;overflow:hidden}.rank-table-identity strong{color:var(--ink);white-space:nowrap;font-size:14px;font-weight:900}.rank-table-identity span,.rank-table-summary{color:var(--muted);font-size:12px;line-height:1.4}.rank-table-summary{white-space:normal;max-width:520px;display:block}.rank-table-code{max-width:180px;color:var(--ink-soft);white-space:nowrap;font-size:12px;display:block}.world-system-dialog{width:min(1080px,100vw - 32px)}.world-system-small-dialog{width:min(840px,100vw - 32px);height:auto;min-height:min(620px,100dvh - 32px)}.panel-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.form-error{color:var(--danger);margin:0;font-size:13px;font-weight:800}.admin-record-list-virtual{height:max(520px,100dvh - 172px);min-height:0;margin-top:8px}.admin-record-list-virtual .virtual-row{padding-bottom:8px}.admin-record-row{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;grid-template-columns:minmax(0,1.2fr) minmax(180px,.8fr) auto;align-items:center;gap:10px;min-height:68px;padding:10px;display:grid}.admin-record-row.compact{min-height:62px}.admin-record-row.selected{background:var(--teal-soft);border-color:#15959d61}.admin-record-main,.admin-record-meta,.admin-record-stats{gap:4px;min-width:0;display:grid}.admin-record-stats{justify-items:start}.admin-stat-strip{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.admin-stat-strip span{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-height:30px;color:var(--ink-soft);white-space:nowrap;align-items:center;gap:6px;padding:0 9px;font-size:12px;font-weight:850;display:inline-flex}.badge-admin-toolbar{grid-template-columns:minmax(220px,320px) minmax(128px,164px) minmax(140px,180px);align-items:end;gap:8px;display:grid}.badge-record-row{grid-template-columns:minmax(0,1.18fr) minmax(220px,.82fr) auto}.badge-admin-table .data-table-component{min-width:1120px}.badge-table-icon{width:44px;height:44px;padding:var(--space-1)}.badge-table-identity,.badge-table-copy{gap:var(--space-1);min-width:0;display:grid}.badge-table-identity strong,.badge-table-identity code,.badge-table-copy strong,.badge-table-copy span{text-overflow:ellipsis;min-width:0;overflow:hidden}.badge-table-identity strong,.badge-table-copy strong{color:var(--ink);white-space:nowrap;font-size:13px;font-weight:900}.badge-table-identity code,.badge-table-copy span{color:var(--muted);font-size:12px;line-height:1.4}.badge-table-long-copy{max-width:420px}.badge-table-long-copy span{white-space:normal}.admin-record-title{align-items:center;gap:8px;min-width:0;display:flex}.admin-record-title strong,.admin-record-meta strong{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.admin-record-line{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.45;overflow:hidden}.admin-record-line.wrap{text-overflow:initial;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.admin-record-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.admin-record-thumbnail{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:8px;min-width:0;display:grid}.cards-toolbar{grid-template-columns:auto auto auto minmax(220px, 300px) minmax(150px, 200px) 140px var(--control-h);align-items:center;gap:8px;display:grid}.cards-toolbar-row{justify-content:flex-end}.cards-fullscreen{background:var(--surface);min-height:100vh}.cards-workspace-panel{min-height:100vh}.cards-search{min-height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--muted);grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;padding:0 10px;display:grid}.cards-search input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.card-catalog-dialog,.version-dialog,.quest-dialog,.npc-template-dialog,.npc-instance-dialog{max-width:680px}.quest-dialog,.npc-instance-dialog{max-width:980px}.catalog-cover-picker{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:8px;padding:8px;display:grid}.catalog-cover-preview{aspect-ratio:16/7;border:1px solid var(--line);border-radius:var(--radius-md);width:100%;color:var(--muted);background:#eef5f5;place-items:center;display:grid;overflow:hidden}.catalog-cover-preview img{object-fit:contain;width:100%;height:100%}.catalog-cover-actions{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.catalog-cover-actions .form-control{flex:260px;min-width:0}.catalog-cover-actions .muted{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.catalog-overview-list{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;margin:10px 0;display:grid}.catalog-overview-card{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;grid-template-rows:auto minmax(0,1fr);gap:0;min-width:0;display:grid;position:relative;overflow:hidden}.catalog-overview-card.selected{background:var(--teal-soft);border-color:#15959d61}.catalog-overview-main{min-width:0;color:inherit;text-align:left;background:0 0;border:0;grid-template-rows:auto minmax(0,1fr);gap:0;padding:0;display:grid}.catalog-overview-cover{aspect-ratio:16/7;border:0;border-bottom:1px solid var(--line);width:100%;color:var(--teal-dark);border-radius:0;place-items:center;display:grid;overflow:hidden}.catalog-overview-cover img{object-fit:contain;width:100%;height:100%}.catalog-overview-copy{gap:3px;min-width:0;padding:8px 9px 9px;display:grid}.catalog-overview-copy strong,.catalog-overview-copy span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.catalog-overview-copy strong{color:var(--ink);font-size:13px;font-weight:800}.catalog-overview-copy span{color:var(--muted);font-size:12px}.catalog-overview-card>.icon-button{z-index:1;background:#ffffffeb;position:absolute;top:6px;right:6px}.collection-grid{grid-template-columns:repeat(auto-fill,minmax(168px,196px));justify-content:start;gap:10px;display:grid}.collection-grid-virtual{height:max(540px,100dvh - 202px);min-height:0;max-height:none;display:block}.collection-grid-virtual .virtual-grid-cell{min-width:0;display:flex}.collection-card-slot{border:1px solid var(--line);border-radius:var(--radius-md);min-width:0;color:inherit;text-align:left;background:#fbfdfd;grid-template-rows:auto minmax(104px,auto);gap:8px;padding:8px;display:grid;box-shadow:0 8px 20px #1420230d}.collection-grid-virtual .collection-card-slot{width:100%}.collection-card-slot:hover{border-color:#15959d5c;box-shadow:0 8px 18px #14202314}.collection-card-art{aspect-ratio:3/4;border-radius:var(--radius-sm);background-color:#f8fbfb;background-image:linear-gradient(45deg,#dde3e773 25%,#0000 25%),linear-gradient(-45deg,#dde3e773 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#dde3e773 75%),linear-gradient(-45deg,#0000 75%,#dde3e773 75%),none;background-position:0 0,0 7px,7px -7px,-7px 0;background-repeat:repeat,repeat,repeat,repeat,repeat;background-size:14px 14px;background-attachment:scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box;border:1px solid #dde3e7e6;place-items:center;padding:6px;display:grid;overflow:hidden}.collection-card-art img{object-fit:contain;width:100%;height:100%}.catalog-cover-preview,.catalog-overview-cover,.image-asset-preview,.image-picker-preview,.npc-image-preview,.npc-template-thumbnail,.npc-instance-portrait,.resource-image-preview,.summon-preview,.card-carousel-empty-state,.map-monitor-entity-media{background-color:#f8fbfb;background-image:linear-gradient(45deg,#dde3e773 25%,#0000 25%),linear-gradient(-45deg,#dde3e773 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#dde3e773 75%),linear-gradient(-45deg,#0000 75%,#dde3e773 75%),none;background-position:0 0,0 7px,7px -7px,-7px 0;background-repeat:repeat,repeat,repeat,repeat,repeat;background-size:14px 14px;background-attachment:scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box}.catalog-cover-preview,.catalog-overview-cover,.image-asset-preview,.image-picker-preview,.npc-image-preview,.npc-template-thumbnail,.npc-instance-portrait,.resource-image-preview,.map-monitor-entity-media,.card-carousel-empty-state{padding:8px}.collection-card-empty,.card-carousel-empty{height:100%;color:var(--subtle);background:repeating-linear-gradient(135deg,#f7f9f9 0 8px,#eef3f2 8px 16px);place-items:center;gap:8px;display:grid}.collection-card-copy{gap:5px;min-width:0;display:grid}.collection-card-copy strong{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;line-height:1.25;overflow:hidden}.collection-card-meta{flex-wrap:wrap;gap:5px;display:flex}.collection-card-meta span{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-height:24px;color:var(--ink-soft);padding:3px 7px;font-size:11px;font-weight:850}.collection-empty{border:1px dashed var(--line);border-radius:var(--radius-md);background:#fbfdfd;place-items:center;min-height:112px;display:grid}.dialog-overlay{z-index:80;background:#11181c7a;position:fixed;inset:0}.dialog-content{z-index:90;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);width:min(1120px,100vw - 32px);max-height:calc(100dvh - 32px);box-shadow:var(--shadow-soft);flex-direction:column;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.form-dialog-content{height:auto;max-height:min(88dvh,100dvh - 32px)}.dialog-sm{width:min(520px,100vw - 32px)}.dialog-md{width:min(720px,100vw - 32px)}.dialog-lg{width:min(920px,100vw - 32px)}.dialog-xl{width:min(1160px,100vw - 32px)}.card-catalog-dialog,.quest-dialog,.world-system-dialog,.npc-instance-dialog,.npc-template-dialog{width:min(820px,100vw - 32px);height:auto}.form-dialog-frame{flex-direction:column;flex:0 auto;min-height:0;display:flex}.dialog-header,.dialog-footer{border-bottom:1px solid var(--line);background:#fbfdfd;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;display:flex}.dialog-title{color:var(--ink);letter-spacing:0;margin:0;font-size:16px;font-weight:800}.dialog-description{max-width:64ch;color:var(--muted);margin:2px 0 0;font-size:12px;line-height:1.35}.form-dialog-body{overscroll-behavior:contain;flex:0 auto;gap:16px;min-height:0;max-height:calc(88dvh - 112px);padding:16px;display:grid;overflow-y:auto}.card-detail-dialog,.card-editor-dialog{width:min(1120px,100vw - 32px);height:min(840px,100dvh - 32px)}.card-detail-form{flex-direction:column;flex:auto;min-height:0;display:flex}.card-detail-scroll{grid-template-columns:minmax(300px,400px) minmax(0,1fr);align-items:start;gap:12px;min-height:0;padding:12px;display:grid;overflow-y:auto}.card-detail-content{gap:10px;min-width:0;display:grid}.card-detail-section{gap:8px;min-width:0;display:grid}.card-detail-section h3{color:var(--ink-soft);text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.card-image-carousel{align-self:start;gap:10px;position:sticky;top:0}.card-carousel-shell{grid-template-columns:30px minmax(0,1fr) 30px;align-items:center;gap:6px;min-width:0;display:grid}.card-carousel-nav{justify-self:center}.card-carousel-viewport{border:1px solid var(--line);border-radius:var(--radius-md);background-color:#f8fbfb;background-image:linear-gradient(45deg,#dde3e773 25%,#0000 25%),linear-gradient(-45deg,#dde3e773 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#dde3e773 75%),linear-gradient(-45deg,#0000 75%,#dde3e773 75%),none;background-position:0 0,0 7px,7px -7px,-7px 0;background-repeat:repeat,repeat,repeat,repeat,repeat;background-size:14px 14px;background-attachment:scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box;justify-self:center;width:100%;min-width:0;max-width:360px;overflow:hidden}.card-carousel-track{will-change:transform;transition:transform .18s;display:flex}.card-carousel-frame{flex:0 0 100%;grid-template-rows:minmax(0,1fr) auto;gap:8px;min-width:0;height:clamp(300px,100dvh - 280px,500px);margin:0;padding:8px;display:grid}.card-carousel-image-frame{border-radius:var(--radius-sm);width:100%;height:100%;min-height:0;color:var(--subtle)}.card-carousel-caption{min-width:0;color:var(--muted);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;font-size:12px;display:grid}.card-carousel-caption strong{color:var(--ink);font-size:13px;font-weight:950}.card-carousel-caption .mono{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.card-carousel-thumb-row{gap:8px;min-width:0;padding:2px 2px 4px;display:flex;overflow-x:auto}.card-carousel-thumb-row button{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);min-width:0;min-height:58px;color:var(--ink-soft);text-align:left;flex:0 0 154px;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:8px;padding:6px;display:grid}.card-carousel-thumb-row button.active{background:var(--teal-soft);border-color:#15959d75;box-shadow:inset 0 0 0 1px #15959d2e}.card-carousel-thumb-image{aspect-ratio:1;border-radius:var(--radius-sm);width:52px;color:var(--subtle);border:1px solid #dde3e7db}.card-carousel-thumb-row span{gap:2px;min-width:0;display:grid}.card-carousel-thumb-row strong,.card-carousel-thumb-row small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.card-carousel-thumb-row strong{font-size:12px;font-weight:950}.card-carousel-thumb-row small{color:var(--muted);font-size:11px;font-weight:850}.card-carousel-empty-state{border:1px solid var(--line);border-radius:var(--radius-md);min-height:320px;color:var(--muted);place-items:center;display:grid}.card-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.card-detail-summary div{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;min-width:0;padding:8px}.card-detail-summary dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:850}.card-detail-summary dd{min-width:0;color:var(--ink-soft);overflow-wrap:anywhere;margin:3px 0 0;font-size:13px}.card-detail-fields{gap:10px;display:grid}.card-detail-mini-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;display:grid}.card-detail-mini-grid div{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;min-width:0;padding:9px}.card-detail-mini-grid dt{color:var(--muted);font-size:11px;font-weight:850}.card-detail-mini-grid dd{min-width:0;color:var(--ink-soft);overflow-wrap:anywhere;margin:2px 0 0;font-size:12px}.card-route-summary-list{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;display:grid}.card-route-summary{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;gap:3px;min-width:0;padding:10px;display:grid}.card-route-summary strong{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:950;overflow:hidden}.card-route-summary span{overflow-wrap:anywhere;min-width:0;color:var(--muted);font-size:12px}.card-detail-markdown{min-height:72px;max-height:160px;overflow:auto}.card-form-section{border-bottom:1px solid var(--line);gap:12px;padding:12px 0 14px;display:grid}.card-form-section.disabled{opacity:.72}.card-form-section h3{color:var(--ink-soft);letter-spacing:0;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.card-form-section .field{margin-bottom:0}.markdown-editor-field{gap:8px}.markdown-preview{overflow-wrap:anywhere;border:1px solid var(--line);border-radius:var(--radius-md);min-height:120px;color:var(--ink-soft);background:#fbfdfd;padding:12px;font-size:13px;line-height:1.65}.markdown-preview.empty{color:var(--muted);place-items:center;display:grid}.markdown-preview>:first-child{margin-top:0}.markdown-preview>:last-child{margin-bottom:0}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3{color:var(--ink);font-size:15px;line-height:1.35}.markdown-preview p,.markdown-preview ul,.markdown-preview ol,.markdown-preview blockquote{margin:0 0 10px}.markdown-preview code{font-size:12px}.json-textarea{min-height:138px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.field-error{color:var(--red);font-size:12px;line-height:1.35}.form-error-summary{border-radius:var(--radius-md);color:#9d243c;background:#fff0f3;border:1px solid #ef4b6747;gap:6px;margin-bottom:8px;padding:8px 10px;font-size:12px;line-height:1.45;display:grid}.form-error-summary strong{font-size:13px}.form-error-summary ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.form-error-summary li{grid-template-columns:minmax(120px,220px) minmax(0,1fr);gap:8px;display:grid}.form-error-summary li span{overflow-wrap:anywhere;color:#6e1e2f;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.virtual-scroll{overscroll-behavior:contain;width:100%;min-height:0;max-height:none;overflow:auto}.virtual-canvas{width:100%;min-height:100%;position:relative}.virtual-row,.virtual-grid-row{width:100%;position:absolute;top:0;left:0}.virtual-grid-row{align-items:stretch;display:grid}.virtual-grid-cell{min-width:0}.dialog-footer{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end}.form-dialog-footer{z-index:1;position:sticky;bottom:0}.badge.red{color:var(--red);background:#fff0f3;border-color:#ef4b6747}.compact-row{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.check-row{min-height:var(--control-h);color:var(--ink-soft);align-items:center;gap:8px;font-size:13px;font-weight:850;display:flex}.check-row input{width:18px;height:18px;accent-color:var(--teal)}.method-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:8px;display:grid}.check-chip{min-height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink-soft);background:#fbfdfd;align-items:center;gap:8px;padding:0 10px;font-size:13px;font-weight:850;display:flex}.check-chip.described-chip{align-items:flex-start;min-height:auto;padding:9px 10px}.check-chip input{width:18px;height:18px;accent-color:var(--teal);flex:none}.check-chip-copy{gap:3px;min-width:0;display:grid}.check-chip-copy strong{color:var(--ink-soft);font-size:12px;font-weight:850}.stage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.stage-card{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;gap:7px;padding:8px;display:grid}.stage-card strong{color:var(--ink);font-size:13px;font-weight:800}.stage-stack{gap:12px;display:grid}.field-note{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);background:#f7f9fa;padding:6px 8px;font-size:11px;line-height:1.4}.checkbox-line{color:var(--ink-soft);align-items:center;gap:8px;font-size:13px;font-weight:800;display:inline-flex}.npc-image-upload{grid-template-columns:132px minmax(0,1fr);align-items:start;gap:14px;display:grid}.npc-image-preview{aspect-ratio:4/5;border:1px solid var(--line);border-radius:var(--radius-md);width:132px;color:var(--teal-dark);text-align:center;word-break:break-all;place-items:center;font-size:12px;font-weight:900;display:grid;overflow:hidden}.npc-image-preview img{object-fit:contain;width:100%;height:100%}.resource-image-preview img{object-fit:contain;width:100%;height:100%;display:block}.resource-image-preview{place-items:center;display:grid;overflow:hidden}.resource-image-preview-empty{color:inherit;place-items:center;display:grid}.npc-template-image-cell{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:8px;min-width:220px;display:grid}.npc-template-thumbnail{border:1px solid var(--line);border-radius:var(--radius-sm);width:44px;height:54px;color:var(--teal-dark);place-items:center;display:grid;overflow:hidden}.npc-template-thumbnail img{object-fit:contain;width:100%;height:100%;display:block}.nested-control-group{border-top:1px solid var(--line);margin-top:10px;padding-top:10px}.nested-control-group h3{color:var(--ink-soft);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:800}.segmented{gap:6px;display:grid}.segmented.fit{grid-template-columns:repeat(4,minmax(0,1fr))}.segmented.align{grid-template-columns:repeat(3,minmax(0,1fr))}.segmented button{padding:0 8px;font-size:12px}.segmented button[aria-pressed=true]{border-color:var(--teal);background:var(--teal-soft);color:var(--teal-dark)}.npc-instance-page{background:#dfe8e5;min-height:100vh;position:relative;overflow:hidden}.npc-instance-map{position:absolute;inset:0}.npc-instance-sidebar{z-index:5;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-soft);width:min(410px,100vw - 28px);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);flex-direction:column;display:flex;position:absolute;top:14px;bottom:14px;right:14px;overflow:hidden}.npc-instance-sidebar-topbar{border-bottom:1px solid var(--line);background:#ffffffe6;flex:none;gap:8px;padding:12px;display:grid}.npc-instance-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.npc-instance-title strong{font-size:16px;font-weight:950}.npc-instance-title span{color:var(--muted);font-size:12px;font-weight:850}.npc-instance-list{flex:auto;min-height:0;padding:10px;overflow-y:auto}.npc-instance-list-item{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);width:100%;min-height:74px;color:inherit;text-align:left;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;margin-bottom:8px;padding:10px;display:grid}.npc-instance-list-item.active{background:var(--teal-soft);border-color:#15959d61}.npc-instance-list-item strong{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:950;overflow:hidden}.npc-instance-list-item>span:not(.badge){color:var(--muted);grid-column:1/2;font-size:12px;line-height:1.35}.npc-instance-list-item .badge{grid-area:1/2/3/3;align-self:center}.npc-instance-detail-panel{z-index:7;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-soft);width:min(360px,100vw - 452px);max-height:calc(100vh - 110px);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:absolute;top:84px;left:18px;overflow:hidden}.npc-instance-detail-body{gap:8px;max-height:58vh;padding:12px;display:grid;overflow-y:auto}.npc-instance-portrait{border:1px solid var(--line);border-radius:var(--radius-md);width:100%;height:160px;color:var(--teal-dark);place-items:center;font-size:28px;font-weight:950;display:grid;overflow:hidden}.npc-instance-portrait img{object-fit:contain;width:100%;height:100%;display:block}.npc-instance-detail-actions{border-top:1px solid var(--line);background:#fbfdfd;justify-content:flex-end;gap:8px;padding:12px;display:flex}.npc-location-picker{border:1px solid var(--line);border-radius:var(--radius-md);background:#e8f0ee;height:260px;overflow:hidden}.image-library-page{flex-direction:column;gap:10px;min-height:0;display:flex;overflow:visible}.image-library-path{min-width:0;min-height:34px;color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:12px;font-weight:800;display:flex}.image-library-path span{gap:4px;min-width:0;display:inline-flex}.image-library-path a{max-width:min(280px,70vw);color:var(--teal-dark);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.image-library-actionbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:0;display:grid}.image-library-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.image-library-search{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:min(250px,28vw);min-width:178px;min-height:34px;color:var(--muted);grid-template-columns:16px minmax(0,1fr);align-items:center;gap:7px;padding:0 10px;display:grid}.image-library-search input{width:100%;min-width:0;height:30px;color:var(--ink);background:0 0;border:0;outline:0;font-size:13px}.image-library-section{gap:6px;min-height:0;margin-top:0;display:grid}.image-library-grid-header{min-height:24px;color:var(--muted);flex:none;justify-content:flex-end;align-items:center;font-size:12px;font-weight:850;display:flex}.image-library-folder-row{flex:none;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-height:52px;display:grid}.image-library-folder-count{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:850}.image-folder-strip{gap:6px;min-width:0;padding-bottom:2px;display:flex;overflow-x:auto}.image-folder-tile{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);min-height:46px;color:var(--ink-soft);flex:0 0 min(210px,78vw);grid-template-columns:minmax(0,1fr) 32px;align-items:center;gap:6px;padding:5px 7px;display:grid}.image-folder-tile>a{min-width:0;color:inherit;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:7px;display:grid}.image-folder-tile:hover{border-color:#15959d5c;box-shadow:0 8px 18px #14202312}.image-folder-tile strong,.image-asset-copy strong{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:950;display:block;overflow:hidden}.image-folder-tile small{color:var(--muted);margin-top:2px;font-size:12px;display:block}.image-asset-grid{grid-template-columns:repeat(auto-fill,minmax(164px,1fr));gap:8px;display:grid}.image-asset-grid-virtual{flex:auto;height:auto;min-height:0;max-height:none;display:block}.image-asset-grid-virtual .virtual-grid-cell{min-width:0;display:flex}.image-asset-tile{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);min-width:0;display:grid;overflow:hidden}.image-library-section .image-asset-tile{grid-template-rows:136px minmax(0,1fr);min-height:214px}.image-asset-grid-virtual .image-asset-tile{width:100%}.image-asset-preview{border:0;border-radius:0;place-items:center;display:grid;overflow:hidden}.image-library-section .image-asset-preview{border-bottom:1px solid var(--line);height:136px;color:var(--subtle);padding:6px}.image-asset-preview img{object-fit:contain;width:100%;height:100%}.image-asset-body{grid-template-rows:minmax(0,1fr) auto;gap:5px;min-width:0;min-height:0;padding:7px;display:grid}.image-asset-copy{gap:3px;min-width:0;padding:7px 8px;display:grid}.image-asset-body .image-asset-copy{padding:0}.image-asset-copy .mono,.image-asset-copy .muted{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.image-asset-actions{justify-content:space-between;align-items:center;gap:5px;min-width:0;padding:0 7px 7px;display:flex}.image-asset-reference-count{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800;overflow:hidden}.image-asset-body .image-asset-actions{padding:0}.image-asset-button-group{flex:none;align-items:center;gap:6px;display:inline-flex}.image-asset-button-group .icon-button{border-radius:var(--radius-sm);width:30px;min-height:30px}.image-library-view-toggle{align-items:center;gap:var(--space-1);flex:none;display:inline-flex}.image-library-table .data-table-component{min-width:960px}.image-table-preview{width:44px;height:44px;padding:var(--space-1)}.image-table-identity{gap:var(--space-1);min-width:0;display:grid}.image-table-identity strong,.image-table-identity span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.image-table-identity strong{color:var(--ink);font-size:13px;font-weight:900}.image-table-identity span{color:var(--muted);font-size:12px}.card-editor-page{padding-bottom:32px}.card-editor-dialog-form{background:var(--page);flex:auto;min-height:0;padding:0 16px 16px;overflow-y:auto}.card-editor-actionbar{z-index:12;border:1px solid var(--line);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;padding:12px 18px;display:flex;position:sticky;top:0}.card-editor-dialog-form .card-editor-actionbar{border-top:0;border-left:0;border-right:0;border-radius:0;margin:0 -16px 14px;padding:10px 16px}.card-editor-actionbar>div:first-child{gap:2px;min-width:0;display:grid}.card-editor-actionbar strong,.card-editor-actionbar span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.card-editor-actionbar strong{color:var(--ink);font-size:14px;font-weight:950}.card-editor-actionbar span{color:var(--muted);font-size:12px}.card-editor-dialog-title{font-size:18px}.card-editor-tabs{gap:var(--space-1);margin-bottom:var(--space-3);padding:var(--space-1);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);flex-wrap:wrap;display:flex}.card-editor-tabs button{min-height:28px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--ink-soft);background:0 0;border:1px solid #0000;font-size:12px;font-weight:900}.card-editor-tabs button:hover{background:#f4f7f8}.card-editor-tabs button.active{background:var(--teal-soft);color:var(--teal-dark);border-color:#15959d57}.card-editor-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;display:grid}.card-editor-image-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.card-editor-image-tile{grid-template-rows:minmax(112px,auto) auto;grid-template-columns:86px minmax(0,1fr);min-height:128px}.card-editor-image-tile .image-asset-preview{min-height:112px}.card-editor-image-tile .image-asset-actions{grid-column:1/-1}.card-story-textarea,.card-story-preview{min-height:150px}.checkbox-field{flex-direction:row;align-items:center;gap:8px;width:fit-content;display:inline-flex}.card-route-list{gap:12px;display:grid}.card-route-card{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;gap:10px;padding:12px;display:grid}.card-route-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.card-route-header>div{gap:3px;min-width:0;display:grid}.card-route-header strong{color:var(--ink);font-size:14px;font-weight:950}.card-route-header span{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.card-pool-editor{align-items:stretch}.card-pool-list{gap:8px;display:grid}.card-pool-row{grid-template-columns:minmax(180px, 1fr) minmax(92px, 120px) var(--control-h);align-items:start;gap:8px;display:grid}.card-pool-row .form-select,.card-pool-row .form-control{width:100%;min-width:0}.empty-state{color:var(--muted);text-align:center;border:1px dashed var(--line);border-radius:var(--radius-md);background:#fbfdfd;justify-items:center;gap:8px;padding:28px 16px;display:grid}.empty-state strong{color:var(--ink);font-size:14px}.card-editor-map-shell{border:1px solid var(--line);border-radius:var(--radius-md);height:min(500px,50vh);min-height:340px;overflow:hidden}.metric-tile{min-height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfdfd;align-content:center;gap:4px;padding:8px 10px;display:grid}.metric-tile span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:850}.metric-tile strong{color:var(--ink);font-size:15px;font-weight:950;line-height:1}.metric-tile.compact{min-height:0}.spawn-point-map-editor{min-height:340px}.spawn-point-list{gap:8px;max-height:360px;padding-right:4px;display:grid;overflow:auto}.spawn-point-row{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;gap:8px;padding:9px;display:grid}.image-upload-dialog .form-dialog-body{gap:10px}.image-upload-dialog .field{margin-bottom:0}.image-upload-dialog .form-control.readonly,.image-upload-dialog .form-control:read-only{min-height:var(--control-h);padding-block:7px}.settings-page-layout{gap:16px;display:grid}.settings-group{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);min-width:0;display:grid;overflow:hidden}.settings-group-header{border-bottom:1px solid var(--line);background:#fbfdfd;justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 14px;display:flex}.settings-group-header h2{color:var(--ink);margin:0;font-size:15px;font-weight:900}.settings-group-header p{color:var(--muted);margin:3px 0 0;font-size:12px;line-height:1.4}.settings-group-header>span{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:850}.settings-list{display:grid}.settings-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(320px,1fr) minmax(220px,.72fr) minmax(150px,auto);align-items:center;gap:12px;min-width:0;padding:12px 14px;display:grid}.settings-row:last-child{border-bottom:0}.settings-row[data-dirty=true]{box-shadow:inset 3px 0 0 var(--teal);background:#15959d0f}.settings-row-main,.settings-row-control,.settings-row-meta{gap:4px;min-width:0;display:grid}.settings-row-main strong{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:900;overflow:hidden}.settings-row-main>span{color:var(--muted);font-size:12px;line-height:1.45}.settings-row-control .field-note{background:0 0;border:0;padding:0}.settings-row-meta span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:850}.settings-row-meta time{color:var(--ink-soft);white-space:nowrap;font-size:12px}.settings-dirty-filter{min-height:var(--control-h);white-space:nowrap;padding:0 6px}.setting-value-wide{max-width:100%}.technical-details{color:var(--muted);font-size:12px}.technical-details summary{cursor:pointer;width:fit-content;font-weight:750}.technical-details code{color:var(--muted);margin-top:4px;font-size:12px;display:inline-block}.empty-state-inline{border:1px dashed var(--line);border-radius:var(--radius-md);min-height:120px;color:var(--muted);background:#fbfdfd;place-items:center;gap:8px;font-size:13px;font-weight:800;display:grid}.shop-admin-stack,.shop-admin-panel .panel-body{gap:10px;display:grid}.shop-toolbar{align-items:center;margin-bottom:0}.shop-filter-toolbar{grid-template-columns:minmax(220px, 320px) var(--control-h);align-items:center;gap:8px;display:grid}.shop-empty-row{border:1px dashed var(--line);border-radius:var(--radius-md);background:#fbfdfd;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:8px 10px;display:flex}.shop-record-row{grid-template-columns:minmax(0,1.15fr) minmax(180px,.85fr) auto}.spawn-point-row.selected{border-color:#15959d8c;box-shadow:0 0 0 3px #15959d1f}.spawn-point-row-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.spawn-point-row-header .button{justify-content:flex-start;min-width:0}.card-editor-warning-list{flex-wrap:wrap;gap:8px;display:flex}.image-library-empty{border:1px dashed var(--line);border-radius:var(--radius-md);min-height:96px;color:var(--muted);background:#fbfdfd;place-items:center;gap:8px;font-size:13px;font-weight:700;display:grid}.image-folder-dialog{max-width:560px}.image-upload-dialog{width:min(660px,100vw - 32px);max-width:660px}.image-picker-dialog{width:min(900px,100vw - 32px);max-width:900px;height:min(720px,100dvh - 32px)}.image-picker-search{min-height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--muted);background:#fbfdfd;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;padding:0 10px;display:grid}.image-picker-search input{min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0}.image-picker-grid{grid-template-columns:repeat(auto-fill,minmax(154px,1fr));gap:10px;display:grid}.image-picker-grid-shell{min-height:0}.image-picker-grid-virtual{height:min(680px,100dvh - 220px);min-height:420px;max-height:none;display:block}.image-picker-grid-virtual .virtual-grid-cell{min-width:0;display:flex}.image-picker-tile{border:1px solid var(--line);border-radius:var(--radius-md);min-width:0;color:inherit;text-align:left;cursor:pointer;background:#fbfdfd;grid-template-rows:112px minmax(58px,auto);display:grid;position:relative;overflow:hidden}.image-picker-grid-virtual .image-picker-tile{width:100%}.image-picker-tile:hover{border-color:#15959d6b;box-shadow:0 10px 24px #1420231a}.image-picker-preview{place-items:center;min-width:0;display:grid;overflow:hidden}.image-picker-preview img{object-fit:contain;width:100%;height:100%}.image-picker-info{gap:2px;min-width:0;padding:7px 8px;display:grid}.image-picker-info strong,.image-picker-info small,.image-picker-info code{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.image-picker-info strong{color:var(--ink);font-size:13px;font-weight:950}.image-picker-info small{color:var(--muted);font-size:11px;font-weight:800}.image-picker-info code{color:var(--ink-soft);font-size:11px}.image-picker-check{border:1px solid var(--line);width:28px;height:28px;color:var(--teal);background:#ffffffeb;border-radius:999px;place-items:center;display:grid;position:absolute;top:8px;right:8px}.image-picker-empty{border:1px dashed var(--line);border-radius:var(--radius-md);min-height:180px;color:var(--muted);background:#fbfdfd;grid-column:1/-1;place-items:center;gap:8px;font-size:13px;font-weight:900;display:grid}.image-upload-dropzone{border-radius:var(--radius-md);min-height:104px;color:var(--ink-soft);text-align:center;cursor:pointer;background:#fbfdfd;border:1px dashed #c8d3d8;place-items:center;gap:6px;padding:12px;display:grid}.image-upload-dropzone.dragging{border-color:var(--teal);background:var(--teal-soft)}.image-upload-dropzone span{font-size:13px;font-weight:800}.image-upload-dropzone small{color:var(--muted);font-size:12px}.image-upload-preview-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;max-height:198px;display:grid;overflow:auto}.image-upload-preview{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;grid-template-rows:74px auto;min-width:0;display:grid;overflow:hidden}.image-upload-preview-frame{border:0;border-bottom:1px solid var(--line);border-radius:0;width:100%;height:74px;padding:5px}.image-upload-preview span{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;padding:7px;font-size:11px;font-weight:800;overflow:hidden}@media (max-width:1080px){.admin-layout{grid-template-columns:minmax(0,1fr);width:100%;overflow-x:hidden}.admin-sidebar{z-index:30;border-right:0;border-bottom:1px solid var(--line);height:auto;padding:10px 14px 0;position:sticky;top:0;overflow:hidden}.admin-brand{border-bottom:0;align-items:baseline;gap:10px;padding:0 4px 8px;display:flex}.admin-brand strong{font-size:17px}.admin-nav{scrollbar-width:thin;gap:4px;padding:0 0 8px;display:flex;overflow-x:auto}.admin-nav-frame{align-items:stretch;gap:8px;display:flex}.admin-nav-section{display:contents}.admin-nav-section-label{display:none}.admin-nav-section-list{gap:4px;display:flex}.admin-nav a{flex:none;min-height:38px;padding:0 10px;display:inline-flex}.admin-nav a[aria-current=page]:before{width:calc(100% - 16px);height:2px;bottom:2px;left:8px}.admin-logout-form{border-top:0;align-items:center;padding:0 0 8px;display:flex}.admin-logout-button{width:auto;min-height:38px;padding-inline:10px}.admin-main,.page-wrap{width:100%;min-width:0;max-width:100%}.dashboard-grid,.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.admin-sidebar{padding-inline:10px}.admin-brand span{display:none}.page-wrap{padding:10px}.observability-toolbar{display:grid}.observability-export-trigger{width:100%}.observability-export-levels{grid-template-columns:repeat(2,minmax(0,1fr))}.image-library-page{width:100%;max-width:100%}.card-editor-actionbar{flex-direction:column;align-items:stretch}.image-library-actionbar{grid-template-columns:minmax(0,1fr);align-items:stretch}.catalog-overview-list{grid-template-columns:minmax(0,1fr)}.collection-grid-virtual,.image-asset-grid-virtual{height:calc(100dvh - 250px);min-height:360px}.image-library-section .image-asset-grid-virtual{height:auto;min-height:0}.page-header>*,.page-subtitle{overflow-wrap:anywhere;min-width:0}.observability-search{grid-template-columns:minmax(0,1fr) auto}.page-header,.admin-topbar{display:grid}.page-header{align-items:stretch}.page-header-actions{justify-content:flex-start}.filter-toolbar{flex-direction:column;align-items:stretch}.filter-toolbar-controls,.filter-toolbar-actions,.filter-toolbar-filters{width:100%}.filter-toolbar-actions{justify-content:flex-start}.form-grid-2,.form-grid-3,.form-grid-12{grid-template-columns:minmax(0,1fr)}[class*=form-field-span-]{grid-column:span 1}.asset-field,.catalog-cover-field,.badge-icon-field,.npc-template-dialog .asset-field{grid-template-columns:56px minmax(0,1fr);min-height:72px}.asset-field-preview,.catalog-cover-field .asset-field-preview,.badge-icon-field .asset-field-preview,.npc-template-dialog .asset-field-preview{width:56px}.asset-field-main,.sticky-action-bar{flex-direction:column;align-items:stretch}.asset-field-actions,.sticky-action-bar-actions{flex-wrap:wrap;justify-content:flex-start}.admin-nav,.dashboard-grid,.work-grid,.card-editor-layout,.grid-2,.grid-3,.cards-toolbar,.world-system-toolbar,.quest-admin-toolbar,.toolbar-row{grid-template-columns:1fr}.admin-record-list-virtual{height:calc(100dvh - 230px);min-height:360px}.admin-record-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.world-system-rank-row{grid-template-columns:minmax(0,1fr)}.admin-record-title,.admin-record-actions{flex-wrap:wrap;justify-content:flex-start;align-items:flex-start}.image-library-toolbar{grid-template-columns:minmax(0, 1fr) var(--control-h);display:grid}.image-library-search{width:100%;min-width:0}.card-pool-row{grid-template-columns:minmax(0,1fr)}.image-library-toolbar .button{grid-column:1/-1;justify-content:center;width:100%}.toolbar-row{display:grid}.catalog-cover-picker,.npc-image-upload{grid-template-columns:1fr}.catalog-cover-preview{width:100%}.image-picker-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))}.image-picker-grid-virtual{height:calc(100dvh - 230px);min-height:360px}.upload-box{grid-template-columns:1fr}.map-monitor-page{min-height:100dvh}.map-monitor-toolbar{grid-template-columns:1fr var(--control-h);max-width:none;left:10px;right:10px}.map-monitor-toolbar .button{grid-column:1/-1;justify-content:center}.map-monitor-stats{grid-column:1/-1}.map-monitor-layer-control{flex-wrap:wrap;max-width:none;top:148px;left:10px;right:10px}.map-monitor-sidebar{width:auto;max-height:38vh;inset:auto 10px 10px}.map-monitor-detail-panel{width:auto;max-height:none;inset:210px 10px calc(38vh + 20px)}.map-monitor-status{max-width:none;bottom:calc(38vh + 24px);left:10px;right:10px}.collection-grid{grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:8px}.collection-card-slot{padding:7px}.dialog-content{width:calc(100vw - 18px);max-height:calc(100dvh - 18px)}.form-dialog-content{max-height:calc(100dvh - 18px)}.card-catalog-dialog,.quest-dialog,.world-system-dialog,.npc-instance-dialog,.npc-template-dialog,.image-picker-dialog{height:calc(100dvh - 18px)}.world-system-small-dialog{min-height:calc(100dvh - 18px)}.dialog-header,.dialog-footer,.card-detail-scroll,.form-dialog-body{padding:10px}.card-detail-scroll{grid-template-columns:1fr}.card-image-carousel{position:static}.card-carousel-shell{grid-template-columns:32px minmax(0,1fr) 32px;gap:6px}.card-carousel-frame{height:min(50dvh,390px);padding:8px}.card-carousel-caption,.dialog-footer{display:grid}.card-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.card-carousel-thumb-row button{flex-basis:128px;grid-template-columns:44px minmax(0,1fr)}.card-carousel-thumb-image{width:44px}.card-detail-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.range-field{grid-template-columns:minmax(0,1fr) 48px}.npc-instance-sidebar{width:auto;max-height:48vh;inset:auto 10px 10px}.npc-instance-detail-panel{width:auto;max-height:42vh;top:10px;left:10px;right:10px}.npc-location-picker{height:220px}}.card-generator{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:minmax(292px,360px) minmax(420px,1fr) minmax(292px,360px);min-height:calc(100vh - 128px);display:grid;overflow:hidden}.card-generator.full-bleed-generator{border:0;border-radius:0;height:100vh;min-height:100vh}.generator-panel{background:var(--surface-soft);border-right:1px solid var(--line);max-height:calc(100vh - 128px);padding:12px;overflow-y:auto}.full-bleed-generator .generator-panel{max-height:100vh}.generator-panel.right{border-right:0;border-left:1px solid var(--line)}.generator-brand-row,.stage-toolbar,.upload-box{align-items:center;gap:8px;display:flex}.generator-brand-row{justify-content:space-between;margin-bottom:12px}.generator-brand-row strong{font-size:16px;font-weight:850;line-height:1.2;display:block}.control-section{border-top:1px solid var(--line);padding:10px 0 12px}.control-section:first-of-type{border-top:0;padding-top:0}.advanced-settings{border-top:1px solid var(--line);margin-top:10px}.advanced-settings summary{min-height:var(--control-h);color:var(--ink-soft);cursor:pointer;padding:10px 0;font-size:13px;font-weight:950}.upload-box{border-radius:var(--radius-md);background:#fbfdfd;border:1px dashed #c8d3d8;grid-template-columns:minmax(0,1fr) auto auto;padding:8px;display:grid}.upload-box.dragging{border-color:var(--teal)}.file-name{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.summon-preview{border:1px solid var(--line);border-radius:var(--radius-md);place-items:center;min-height:104px;margin-top:8px;display:grid;overflow:hidden}.summon-preview img{object-fit:contain;max-width:100%;max-height:132px;display:block}.asset-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:8px;display:grid}.asset-strip img{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:100%;height:auto;padding:4px}.template-upload-row{grid-template-columns:minmax(0, 1fr) var(--control-h);align-items:center;gap:8px;display:grid}.template-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:7px;margin-top:8px;display:grid}.template-tile{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-width:0;min-height:0;color:var(--ink-soft);text-align:left;cursor:pointer;gap:5px;padding:6px;display:grid}.template-tile[aria-pressed=true]{border-color:var(--teal);background:var(--teal-soft);color:var(--teal-dark)}.template-thumb{aspect-ratio:2/3;border-radius:var(--radius-sm);background-color:#f9fbfb;background-image:linear-gradient(45deg,#dce6ea 25%,#0000 25%),linear-gradient(-45deg,#dce6ea 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#dce6ea 75%),linear-gradient(-45deg,#0000 75%,#dce6ea 75%);background-position:0 0,0 9px,9px -9px,-9px 0;background-size:18px 18px;border:1px solid #24282d1a;place-items:center;min-height:0;padding:5px;display:grid;overflow:hidden}.template-thumb img{object-fit:contain;width:100%;height:100%;display:block}.template-tile>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-weight:850;overflow:hidden}.stage-panel{background:#eaf2ef;grid-template-rows:auto 1fr auto;min-width:0;min-height:0;padding:12px;display:grid}.stage-toolbar{justify-content:space-between;min-height:38px;margin-bottom:10px}.stage-toolbar h2{color:var(--ink);letter-spacing:0;margin:0;font-size:16px;font-weight:850}.stage-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:8px;display:flex}.toolbar-field{gap:4px;width:min(210px,100%);display:grid}.compact-toolbar-field{width:min(132px,100%)}.canvas-shell{place-items:start center;min-height:0;padding:10px;display:grid;overflow:auto}.checker{aspect-ratio:2/3;border-radius:var(--radius-md);background-color:#f9fbfb;background-image:linear-gradient(45deg,#dce6ea 25%,#0000 25%),linear-gradient(-45deg,#dce6ea 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#dce6ea 75%),linear-gradient(-45deg,#0000 75%,#dce6ea 75%);background-position:0 0,0 14px,14px -14px,-14px 0;background-size:28px 28px;border:1px solid #24282d1f;width:min(100%,54vh,66.6667vh - 266.667px);min-width:240px;overflow:hidden}.checker canvas{image-rendering:auto;width:100%;height:100%;display:block}.status-line{text-overflow:ellipsis;white-space:nowrap;min-height:20px;padding-top:8px;overflow:hidden}.workflow-shell{background:var(--surface);grid-template-rows:auto 1fr;height:100vh;min-height:100vh;display:grid;overflow:hidden}.workflow-topbar{border-bottom:1px solid var(--line);background:#fffffff5;justify-content:flex-end;align-items:center;gap:12px;min-height:52px;padding:8px 16px;display:flex}.workflow-title{gap:3px;min-width:0;display:grid}.workflow-title strong{color:var(--ink);font-size:20px;font-weight:950}.workflow-stepper{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;min-width:0;display:grid}.workflow-step{border:1px solid var(--line);border-radius:var(--radius-md);min-height:42px;color:var(--muted);text-align:left;background:#fbfdfd;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;padding:6px 8px;display:grid}.workflow-step[aria-current=step]{border-color:var(--teal);background:var(--teal-soft);color:var(--teal-dark)}.workflow-step-number{background:var(--surface);width:28px;height:28px;color:inherit;border-radius:999px;place-items:center;font-size:12px;font-weight:950;display:grid}.workflow-step span:last-child{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:950;overflow:hidden}.workflow-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.workflow-body{min-height:0}.workflow-shell .card-generator.full-bleed-generator{height:100%;min-height:0}.workflow-shell .full-bleed-generator .generator-panel{max-height:none}.workflow-shell .card-generator.data-only{background:#f5f8f8;padding:24px;display:block;overflow:auto}.workflow-shell .card-generator.data-only .generator-panel{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);width:min(100%,820px);margin:0 auto}.workflow-card-picker{border-bottom:1px solid var(--line);margin-bottom:12px;padding-bottom:14px}.workflow-summary{gap:10px;display:grid}.summary-row{border-bottom:1px solid var(--line);color:var(--ink-soft);grid-template-columns:120px minmax(0,1fr);gap:10px;padding:9px 0;font-size:13px;display:grid}.summary-row span:first-child{color:var(--muted);font-weight:850}.map-editor-toolbar{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.maplibre-editor{border:1px solid var(--line);border-radius:var(--radius-md);background:#dde8ea;width:100%;min-height:460px;overflow:hidden}.maplibre-editor.drawing{border-color:var(--orange)}.map-editor-status{min-height:28px;color:var(--muted);padding-top:8px;font-size:12px;line-height:1.4}.workflow-map-body{min-height:0;overflow:hidden}.full-map-editor{background:#dce7e7;height:100%;min-height:0;position:relative}.full-map-editor.empty{place-items:center;display:grid}.full-map-canvas{position:absolute;inset:0}.map-editor-toolbar.floating{z-index:2;border-radius:var(--radius-md);box-shadow:var(--shadow);background:#fffffff0;border:1px solid #24282d1f;align-items:center;margin:0;padding:8px;position:absolute;top:16px;left:50%;transform:translate(-50%)}.map-editor-floating-panel{z-index:2;border-radius:var(--radius-md);width:min(380px,100% - 32px);max-height:calc(100% - 32px);box-shadow:var(--shadow);background:#fffffff5;border:1px solid #24282d1f;gap:12px;padding:14px;display:grid;position:absolute;top:16px;right:16px;overflow:auto}.map-editor-floating-panel .advanced-settings{margin-top:0}.map-editor-floating-panel .map-editor-status{justify-content:space-between;gap:12px;min-height:0;padding-top:0;display:flex}.map-editor-actions{flex-wrap:wrap;gap:8px;display:flex}.full-map-editor .maplibregl-ctrl-top-left{top:16px;left:16px}.full-map-editor .maplibregl-terradraw-add-control,.full-map-editor .maplibregl-terradraw-render-button,.full-map-editor .maplibregl-terradraw-delete-button,.full-map-editor .maplibregl-terradraw-delete-selection-button{width:34px;height:34px}.map-monitor-page{background:#dce7e7;width:100%;min-height:100vh;position:relative;overflow:hidden}.map-monitor-canvas{position:absolute;inset:0}.map-monitor-toolbar{z-index:2;grid-template-columns:minmax(190px, auto) auto var(--control-h) auto;border-radius:var(--radius-md);max-width:min(780px,100% - 470px);box-shadow:var(--shadow-soft);background:#fffffff0;border:1px solid #24282d1f;align-items:center;gap:8px;padding:8px;display:grid;position:absolute;top:16px;left:16px}.map-monitor-toolbar .button{white-space:nowrap;min-height:34px}.map-monitor-layer-control{z-index:2;border-radius:var(--radius-md);max-width:min(520px,100% - 470px);box-shadow:var(--shadow-soft);background:#fffffff0;border:1px solid #24282d1f;align-items:center;gap:6px;padding:6px;display:flex;position:absolute;top:78px;left:16px}.map-monitor-layer-control span,.map-monitor-layer-control button{border-radius:var(--radius-sm);align-items:center;min-height:30px;font-size:12px;font-weight:900;display:inline-flex}.map-monitor-layer-control span{color:var(--muted);gap:5px;padding:0 8px}.map-monitor-layer-control button{border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);padding:0 10px}.map-monitor-layer-control button[aria-pressed=true]{background:var(--teal-soft);color:var(--teal-dark);border-color:#15959d61}.map-monitor-title{gap:2px;min-width:0;display:grid}.map-monitor-title strong{font-size:14px;font-weight:950}.map-monitor-title span{color:var(--muted);font-size:12px}.map-monitor-stats{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.map-monitor-stats span{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-height:30px;color:var(--ink-soft);align-items:center;gap:5px;padding:0 8px;font-size:12px;font-weight:850;display:inline-flex}.map-monitor-stats .live-dot{color:var(--red);border-color:#ef4b6740}.map-monitor-stats .live-dot.connected{color:#2f7e45;border-color:#5dae6547}.map-monitor-status{z-index:2;border-radius:var(--radius-md);max-width:min(520px,100% - 32px);color:var(--ink-soft);box-shadow:var(--shadow-soft);background:#fffffff0;border:1px solid #24282d1f;padding:10px 12px;font-size:13px;position:absolute;bottom:24px;left:16px}.map-monitor-detail-panel{z-index:3;border-radius:var(--radius-md);width:min(380px,100% - 470px);max-height:calc(100vh - 156px);box-shadow:var(--shadow-soft);background:#fffffff5;border:1px solid #24282d1f;gap:10px;padding:14px;display:grid;position:absolute;top:132px;left:16px;overflow:auto}.map-monitor-panel-header{grid-template-columns:minmax(0, 1fr) var(--control-h);border-bottom:1px solid var(--line);align-items:start;gap:10px;padding-bottom:10px;display:grid}.map-monitor-panel-header div{gap:3px;min-width:0;display:grid}.map-monitor-panel-header strong{overflow-wrap:anywhere;color:var(--ink);font-size:18px;font-weight:950;line-height:1.2}.panel-kicker{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:850}.detail-row{color:var(--ink-soft);border-bottom:1px solid #dde3e7bf;grid-template-columns:104px minmax(0,1fr);gap:10px;padding:8px 0;font-size:12px;display:grid}.detail-row span{color:var(--muted);font-weight:850}.detail-row strong{overflow-wrap:anywhere;font-weight:800}.map-monitor-sidebar{z-index:4;border-radius:var(--radius-md);width:min(420px,100vw - 32px);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;border:1px solid #24282d1f;flex-direction:column;display:flex;position:absolute;top:16px;bottom:16px;right:16px;overflow:hidden}.map-monitor-sidebar-topbar{border-bottom:1px solid var(--line);background:#ffffffeb;flex:none;gap:8px;padding:12px;display:grid}.map-monitor-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.map-monitor-tabs button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-width:0;min-height:34px;color:var(--ink-soft);justify-content:center;align-items:center;gap:6px;padding:0 8px;font-size:12px;font-weight:950;display:inline-flex}.map-monitor-tabs button span{color:var(--muted);font-size:11px}.map-monitor-tabs button.active{background:var(--teal-soft);color:var(--teal-dark);border-color:#15959d61}.map-monitor-list{flex:auto;min-height:0;padding:10px;overflow:hidden}.map-monitor-virtual-list{height:100%;max-height:none}.map-monitor-list-item{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);width:100%;min-height:72px;color:inherit;text-align:left;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;margin-bottom:8px;padding:10px;display:grid}.map-monitor-list-item.active{background:var(--teal-soft);border-color:#15959d61}.map-monitor-list-item strong{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.map-monitor-list-item>span:not(.badge){color:var(--muted);grid-column:1/2;font-size:12px;line-height:1.35}.map-monitor-list-item .badge{grid-area:1/2/3/3;align-self:center}.map-monitor-detail-body{gap:8px;display:grid}.map-monitor-entity-media{border:1px solid var(--line);border-radius:var(--radius-md);width:100%;min-height:172px;color:var(--teal-dark);place-items:center;font-size:24px;font-weight:800;display:grid;overflow:hidden}.map-monitor-entity-media img,.map-monitor-entity-media>img{object-fit:contain;width:100%;height:100%;max-height:240px;display:block}.map-monitor-entity-media.card{background:#f4f6f7;min-height:240px}.map-monitor-entity-media.player{color:#a2384c;background:#fbf0f3;gap:8px;min-height:132px}.map-monitor-detail-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;padding-top:10px;display:flex}.card-generation-page{background:#dce7e7;width:100%;min-height:100vh;position:relative;overflow:hidden}.card-generation-map{position:absolute;inset:0}.card-generation-left-panel,.card-generation-right-panel{z-index:4;border-radius:var(--radius-md);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;border:1px solid #24282d1f;position:absolute;overflow:hidden}.card-generation-left-panel{flex-direction:column;width:min(390px,100vw - 32px);max-height:calc(100vh - 32px);display:flex;top:16px;left:16px}.card-generation-right-panel{gap:10px;width:min(390px,100vw - 440px);max-height:calc(100vh - 32px);padding:14px;display:grid;top:16px;right:16px;overflow-y:auto}.card-generation-panel-header,.card-generation-detail-header{grid-template-columns:minmax(0, 1fr) var(--control-h);align-items:start;gap:10px;display:grid}.card-generation-panel-header{border-bottom:1px solid var(--line);flex:none;padding:12px}.card-generation-panel-header>div,.card-generation-detail-header>div{gap:3px;min-width:0;display:grid}.card-generation-panel-header strong,.card-generation-detail-header strong{overflow-wrap:anywhere;color:var(--ink);font-size:18px;font-weight:950;line-height:1.2}.card-generation-left-panel .field{margin:12px 12px 0}.compact-field span{font-size:12px}.card-generation-panel-actions{flex-wrap:wrap;gap:8px;padding:12px;display:flex}.card-generation-right-panel .card-generation-panel-actions{padding:0}.card-generation-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:0 12px 12px;display:grid}.card-generation-tabs button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-width:0;min-height:36px;color:var(--ink-soft);justify-content:center;align-items:center;gap:6px;padding:0 8px;font-size:13px;font-weight:950;display:inline-flex}.card-generation-tabs button span{color:var(--muted);font-size:11px}.card-generation-tabs button.active{background:var(--teal-soft);color:var(--teal-dark);border-color:#15959d61}.card-generation-panel-body{flex-direction:column;flex:auto;gap:10px;min-height:0;padding:0 12px 12px;display:flex;overflow:hidden}.card-generation-wide-action{width:100%}.card-generation-note,.card-generation-empty{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.card-generation-list{min-height:0;padding-right:2px;overflow-y:auto}.card-generation-list-item{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);width:100%;min-height:74px;color:inherit;text-align:left;gap:4px;margin-bottom:8px;padding:10px;display:grid}.card-generation-list-item.with-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.card-generation-list-item-main{width:100%;min-width:0;color:inherit;text-align:left;background:0 0;border:0;gap:4px;padding:0;display:grid}.card-generation-list-item-actions{grid-template-columns:var(--control-h) var(--control-h);gap:6px;display:grid}.card-generation-list-item.active{background:var(--teal-soft);border-color:#15959d61}.card-generation-list-item strong,.card-generation-polygon-row strong,.card-generation-pool-row strong{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:850;overflow:hidden}.card-generation-list-item span,.card-generation-polygon-row span,.card-generation-pool-row span{overflow-wrap:anywhere;color:var(--muted);font-size:12px;line-height:1.35}.card-generation-polygon-list,.card-generation-pool-list{gap:8px;display:grid}.card-generation-polygon-row{grid-template-columns:minmax(0, 1fr) var(--control-h) var(--control-h);border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;align-items:center;gap:8px;padding:8px;display:grid}.card-generation-polygon-row>button:first-child{min-width:0;color:inherit;text-align:left;background:0 0;border:0;gap:3px;padding:0;display:grid}.card-generation-pool-row{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbf7f2;gap:3px;padding:8px;display:grid}.card-generation-filter-button{z-index:5;position:absolute;top:16px;right:16px}.card-generation-filter-button-offset{right:422px}.card-generation-status,.card-generation-loading{z-index:5;border-radius:var(--radius-md);max-width:min(520px,100% - 32px);color:var(--ink-soft);box-shadow:var(--shadow-soft);background:#fffffff0;border:1px solid #24282d1f;padding:10px 12px;font-size:13px;position:absolute;bottom:24px;left:16px}.card-generation-loading{left:auto;right:16px}.card-generation-polygon-dialog{width:min(1160px,100vw - 32px);height:min(880px,100dvh - 32px)}.card-generation-polygon-dialog .form-dialog-body,.card-generation-fixed-point-dialog .form-dialog-body{align-content:start}.card-generation-polygon-editor{gap:8px;display:grid}.card-generation-polygon-canvas{min-height:520px}.card-generation-polygon-draft-list{gap:8px;display:grid}.card-generation-polygon-draft-row{grid-template-columns:minmax(220px, 1fr) minmax(120px, 160px) var(--control-h);border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;align-items:center;gap:8px;padding:8px;display:grid}.card-generation-fixed-point-dialog{width:min(1180px,100vw - 32px)}.card-generation-pool-editor{gap:10px;display:grid}.card-generation-section-header{justify-content:space-between;align-items:center;gap:10px;padding-top:4px;display:flex}.card-generation-section-header strong{color:var(--ink);font-size:14px;font-weight:950}.card-generation-section-header span{color:var(--muted);font-size:12px;font-weight:850}.card-generation-hotspot-card-editor{gap:8px;display:grid}.card-generation-hotspot-card-picker,.card-generation-hotspot-card-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.card-generation-hotspot-card-row{grid-template-columns:minmax(0, 1fr) 96px var(--control-h);border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;padding:8px}.card-generation-pool-editor-row{grid-template-columns:minmax(220px, 1.5fr) 76px 92px 68px minmax(126px, .75fr) 68px minmax(106px, .7fr) var(--control-h);border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfd;align-items:center;gap:8px;padding:8px;display:grid}.card-generation-pool-editor-header-row{grid-template-columns:minmax(220px, 1.5fr) 76px 92px 68px minmax(126px, .75fr) 68px minmax(106px, .7fr) var(--control-h);color:var(--muted);gap:8px;padding:0 8px;font-size:11px;font-weight:900;display:grid}.card-generation-pool-entry-config{grid-column:1/-1}.card-generation-toggle-field>label{min-height:var(--control-h);color:var(--ink-soft);align-items:center;gap:8px;font-size:13px;font-weight:850;display:inline-flex}.card-generation-toggle-field input,.card-generation-weekday-picker input{width:16px;height:16px;accent-color:var(--teal)}.card-generation-weekday-picker{flex-wrap:wrap;gap:8px;display:flex}.card-generation-weekday-picker label{min-height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:850;display:inline-flex}.card-generation-rank-picker{flex-wrap:wrap;gap:8px;display:flex}.card-generation-rank-picker label{min-height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:850;display:inline-flex}.card-generation-rank-picker input{width:16px;height:16px;accent-color:var(--teal)}.card-generation-checkbox-list{gap:10px;display:grid}.card-generation-checkbox-list label{color:var(--ink-soft);align-items:center;gap:8px;font-size:13px;font-weight:800;display:flex}.card-generation-checkbox-list input{width:16px;height:16px;accent-color:var(--teal)}@media (max-width:980px){.map-monitor-toolbar{grid-template-columns:1fr var(--control-h);max-width:none;left:10px;right:10px}.map-monitor-toolbar .button{grid-column:1/-1;justify-content:center}.map-monitor-stats{grid-column:1/-1}.map-monitor-layer-control{flex-wrap:wrap;max-width:none;top:148px;left:10px;right:10px}.map-monitor-sidebar{width:auto;max-height:38vh;inset:auto 10px 10px}.map-monitor-detail-panel{width:auto;max-height:none;inset:210px 10px calc(38vh + 20px)}.map-monitor-status{max-width:none;bottom:calc(38vh + 24px);left:10px;right:10px}.card-generation-left-panel{width:auto;max-height:40vh;top:10px;left:10px;right:10px}.card-generation-right-panel{width:auto;max-height:34vh;inset:auto 10px 10px}.card-generation-filter-button{top:calc(40vh + 22px);right:10px}.card-generation-filter-button-offset{right:10px}.card-generation-status{max-width:none;bottom:calc(34vh + 22px);left:10px;right:10px}.card-generation-loading{inset:calc(40vh + 22px) auto auto 10px}.card-generation-pool-editor-row,.card-generation-hotspot-card-picker,.card-generation-hotspot-card-row,.card-generation-polygon-draft-row{grid-template-columns:minmax(0,1fr)}.card-generation-pool-editor-header-row{display:none}.card-generation-polygon-canvas{min-height:420px}}@media (max-width:1320px){.workflow-shell{height:auto;overflow:visible}.workflow-topbar{grid-template-columns:1fr}.workflow-stepper{grid-template-columns:repeat(5,minmax(120px,1fr));overflow-x:auto}.workflow-actions{justify-content:flex-start}.card-generator{grid-template-columns:minmax(292px,360px) minmax(420px,1fr)}.generator-panel.right{border-top:1px solid var(--line);border-left:0;grid-column:1/-1;grid-template-columns:repeat(2,minmax(260px,1fr));gap:0 20px;max-height:none;display:grid}.workflow-map-body{min-height:760px}.map-editor-toolbar.floating{justify-content:flex-start;left:16px;right:16px;transform:none}.map-editor-floating-panel{top:88px;right:16px}}@media (max-width:860px){.card-generator{display:block}.generator-panel,.generator-panel.right{border-left:0;border-right:0;border-bottom:1px solid var(--line);max-height:none;display:block}.stage-panel{min-height:70vh}.workflow-shell .card-generator.data-only{padding:12px}.workflow-shell .card-generator.data-only .generator-panel{width:100%}.workflow-map-body{min-height:820px}.checker{width:min(100%,420px);min-width:240px}}.risk-monitor-page{gap:10px;display:grid}.risk-tabs{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);justify-self:end;align-items:center;gap:6px;padding:4px;display:inline-flex}.risk-tabs button{min-height:28px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--muted);background:0 0;border:1px solid #0000;align-items:center;gap:7px;font-size:12px;font-weight:900;display:inline-flex}.risk-tabs button.active{background:var(--teal-soft);color:var(--teal-dark);border-color:#15959d40}.risk-monitor-layout{gap:var(--space-4);grid-template-columns:minmax(380px,420px) minmax(0,1fr);align-items:start;display:grid}.risk-player-panel,.risk-detail-panel,.risk-settings-panel{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.risk-player-panel,.risk-detail-panel{overflow:hidden}.risk-toolbar{z-index:2;border-bottom:1px solid var(--line);background:var(--surface-soft);flex-wrap:wrap;gap:8px;padding:10px;display:flex;position:sticky;top:0}.risk-search,.risk-min-score{min-width:0;height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);align-items:center;gap:8px;padding:0 10px;display:flex}.risk-search input,.risk-min-score input,.risk-toolbar select{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.risk-toolbar select{height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);flex:0 128px;padding:0 10px}.risk-search{flex:220px}.risk-min-score{flex:0 0 86px}.risk-toolbar .button{flex:none}.risk-player-list{align-content:start;max-height:calc(100vh - 238px);display:grid;overflow:auto}.risk-player-row{border-bottom:1px solid var(--line)}.risk-player-row>button{text-align:left;background:0 0;border:0;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;width:100%;padding:11px 12px;display:grid}.risk-player-row.active>button,.risk-player-row>button:hover{background:#15959d12}.risk-score{border-radius:var(--radius-md);background:var(--teal-soft);width:36px;height:36px;color:var(--teal-dark);border:1px solid #15959d42;place-items:center;font-weight:950;display:inline-grid}.risk-score.watch{color:#75520c;background:#d8a3361f;border-color:#d8a33659}.risk-score.review{color:#8d4b0d;background:#f59b4524;border-color:#f59b455c}.risk-score.critical{color:#a8243e;background:#ef4b671f;border-color:#ef4b6752}.risk-player-main{gap:2px;min-width:0;display:grid}.risk-player-main strong,.risk-player-main code,.risk-player-main span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.risk-player-main code{color:var(--muted);font-size:11px}.risk-player-main span,.risk-player-meta{color:var(--muted);font-size:12px}.risk-player-meta{flex-wrap:wrap;grid-column:2/3;justify-content:flex-start;gap:5px;display:flex}.button.small{min-height:30px;padding:0 9px;font-size:12px}.risk-detail-panel{gap:var(--space-3);padding:0;display:grid;overflow:visible}.risk-detail-section,.risk-danger-section{gap:var(--space-3);min-width:0;padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);display:grid}.risk-detail-hero{border-bottom:1px solid var(--line);grid-template-columns:58px minmax(0,1fr);align-items:center;gap:10px;padding-bottom:10px;display:grid}.risk-detail-hero .risk-score{width:54px;height:54px;font-size:18px}.risk-detail-hero h2{margin:0 0 4px;font-size:16px;line-height:1.25}.risk-detail-hero p{color:var(--ink-soft);margin:0 0 8px;line-height:1.45}.risk-badge-row{flex-wrap:wrap;gap:6px;display:flex}.risk-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.risk-detail-metric{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfdfd;gap:4px;min-width:0;padding:10px;display:grid}.risk-detail-metric span{color:var(--muted);font-size:12px;font-weight:800}.risk-detail-metric strong{overflow-wrap:anywhere;font-size:13px}.risk-timeline,.risk-setting-group{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.section-heading.compact{min-height:42px}.risk-moderation-form{gap:10px;display:grid}.risk-moderation-form label{gap:6px;display:grid}.risk-moderation-form label>span{color:var(--muted);font-size:12px;font-weight:850}.risk-danger-section{background:#fff7f9;border-color:#ef4b6747}.risk-danger-section h2{color:var(--ink);margin:0;font-size:14px;font-weight:900}.risk-danger-section p{color:var(--muted);margin:3px 0 0;font-size:12px;line-height:1.45}.risk-danger-actions{justify-content:flex-end;display:flex}.risk-timeline-list{display:grid}.risk-timeline-list article{border-top:1px solid var(--line);grid-template-columns:minmax(60px,auto) minmax(0,1fr) minmax(132px,auto);align-items:start;gap:10px;padding:10px 12px;display:grid}.risk-timeline-meta{color:var(--muted);font-size:12px;font-weight:850}.risk-timeline-list strong,.risk-timeline-list p{overflow-wrap:anywhere}.risk-timeline-list p{color:var(--muted);margin:3px 0 0;font-size:12px;line-height:1.4}.risk-timeline-list time{color:var(--muted);text-align:right;font-size:12px}.risk-empty,.risk-selected-hint{color:var(--muted);text-align:center;padding:14px}.risk-technical-details{padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--muted);font-size:12px}.risk-technical-details summary{cursor:pointer;font-weight:850}.risk-settings-panel{gap:12px;padding:12px;display:grid}.risk-settings-panel .risk-toolbar{border:0;justify-content:flex-end;padding:0;display:flex;position:static}.risk-setting-list{display:grid}.risk-setting-row{border-top:1px solid var(--line);grid-template-columns:minmax(260px,1fr) minmax(320px,auto);align-items:center;gap:12px;padding:12px;display:grid}.risk-setting-row>div:first-child{gap:4px;min-width:0;display:grid}.risk-setting-row strong,.risk-setting-row span,.risk-setting-row code{overflow-wrap:anywhere}.risk-setting-row span,.risk-setting-row code{color:var(--muted);font-size:12px;line-height:1.4}.risk-setting-control{grid-template-columns:120px 44px auto;align-items:center;gap:8px;display:grid}@media (max-width:1180px){.risk-monitor-layout{grid-template-columns:1fr}.risk-player-panel,.risk-detail-panel{max-height:none}.settings-row,.badge-record-row,.shop-record-row{grid-template-columns:minmax(0,1fr) minmax(180px,auto) auto}}@media (max-width:760px){.risk-player-row>button,.risk-detail-grid,.risk-setting-row,.risk-setting-control,.risk-timeline-list article{grid-template-columns:1fr}.risk-toolbar{align-items:stretch}.risk-toolbar select,.risk-search,.risk-min-score,.risk-toolbar .button{flex:100%;width:100%}.risk-player-row>button{grid-template-columns:40px minmax(0,1fr)}.risk-player-row .button.small{display:none}.risk-player-meta,.risk-timeline-list time{text-align:left;justify-items:start}.settings-row,.badge-record-row,.shop-record-row,.badge-admin-toolbar,.shop-filter-toolbar{grid-template-columns:minmax(0,1fr)}.shop-empty-row{justify-content:flex-start}}@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}@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-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-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}
