@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Noto+Sans+KR:wght@400;500;700&display=swap";
@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-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--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:"Pretendard", "Apple SD Gothic Neo", "Malgun Gothic", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--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);--radius:3px;--color-bg:#eef0f4;--color-surface:#fff;--color-surface-2:#f4f5f7;--color-border:#dde1e7;--color-border-strong:#bec5ce;--color-text:#1a2130;--color-muted:#5a6474;--color-faint:#8d97a5;--color-accent:#2d4270;--color-accent-light:#3a5490;--color-accent-hover:#1f3060;--color-accent-fg:#fff;--color-accent-tint:#edf0f7;--color-ok:#246b43;--color-ok-bg:#e4f4eb;--color-ok-border:#b6dfc8;--color-warn:#9a6510;--color-warn-bg:#fdf3e1;--color-warn-border:#edcc84;--color-danger:#b03028;--color-danger-bg:#faecea;--color-danger-border:#f0c9c5;--color-info:#1e5fa0;--color-info-bg:#e8f1fb;--color-info-border:#b8d4f4}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table-row{display:table-row}.h-full{height:100%}.min-h-full{min-height:100%}.border-collapse{border-collapse:collapse}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.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))}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;font-size:12.5px;line-height:1.4}table.grid{border-collapse:collapse;background:var(--color-surface);width:100%;font-size:12px}table.grid th,table.grid td{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);text-align:left;white-space:nowrap;padding:3px 7px}table.grid th:first-child,table.grid td:first-child{border-left:1px solid var(--color-border)}table.grid thead tr:first-child th{border-top:1px solid var(--color-border)}table.grid th{background:var(--color-surface-2);color:var(--color-muted);letter-spacing:.01em;z-index:1;font-size:11.5px;font-weight:600;position:sticky;top:0}table.grid tbody tr:hover{background:var(--color-accent-tint)}table.grid tbody tr:hover td{border-bottom-color:#d4daea}table.grid tbody tr:nth-child(2n){background:#fafbfc}table.grid tbody tr:nth-child(2n):hover{background:var(--color-accent-tint)}.badge{letter-spacing:.03em;border:1px solid #0000;border-radius:2px;padding:1px 5px;font-size:10.5px;font-weight:700;line-height:1.5;display:inline-block}.badge-RV{color:var(--color-info);background:var(--color-info-bg);border-color:var(--color-info-border)}.badge-ING{color:var(--color-warn);background:var(--color-warn-bg);border-color:var(--color-warn-border)}.badge-FINAL{color:var(--color-ok);background:var(--color-ok-bg);border-color:var(--color-ok-border)}.badge-CXL{color:var(--color-danger);background:var(--color-danger-bg);border-color:var(--color-danger-border)}.badge-RQ{color:var(--color-muted);background:var(--color-surface-2);border-color:var(--color-border-strong)}.badge-OK{color:var(--color-ok);background:var(--color-ok-bg);border-color:var(--color-ok-border)}.btn{border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-surface);height:26px;color:var(--color-text);font-size:12px;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;align-items:center;gap:4px;padding:0 9px;text-decoration:none;transition:background .1s,border-color .1s;display:inline-flex}.btn:hover{background:var(--color-surface-2);border-color:#a8b2be}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-fg);font-weight:600}.btn-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.btn-sm{height:22px;padding:0 7px;font-size:11px}input,select,textarea{border:1px solid var(--color-border-strong);border-radius:var(--radius);background:var(--color-surface);height:26px;font-size:12px;font-family:var(--font-sans);color:var(--color-text);padding:0 7px;transition:border-color .1s,box-shadow .1s}textarea{height:auto;padding:5px 7px;line-height:1.45}input:focus,select:focus,textarea:focus{border-color:var(--color-accent-light);outline:none;box-shadow:0 0 0 2px #2d42701a}input::placeholder{color:var(--color-faint)}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.panel-header{border-bottom:1px solid var(--color-border);color:var(--color-muted);background:var(--color-surface-2);border-radius:var(--radius) var(--radius) 0 0;padding:7px 10px;font-size:12px;font-weight:600}.page-titlebar{border-bottom:1px solid var(--color-border);align-items:center;gap:8px;margin-bottom:10px;padding-bottom:8px;display:flex}.page-title{color:var(--color-text);letter-spacing:-.01em;font-size:14px;font-weight:700}.page-subtitle{color:var(--color-faint);font-size:11px;font-weight:400}.search-bar{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:5px;margin-bottom:8px;padding:6px 8px;display:flex}a.id-link{color:var(--color-accent);font-weight:600;text-decoration:none}a.id-link:hover{color:var(--color-accent-light);text-decoration:underline}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@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}
:root{--bg-app:#f3f1ea;--bg-canvas:#faf9f4;--bg-card:#fff;--bg-topbar:#ece8db;--bg-sidebar:#f7f5ee;--bg-sub:#f1eee3;--bg-row-alt:#f9f8f2;--bg-row-hover:#efebdc;--bg-thead:#e8e3d1;--bg-input:#fff;--lemon:#d6c079;--lemon-deep:#bfa654;--lemon-soft:#ebe3c6;--lemon-line:#dcd2ac;--accent:#a3853d;--accent-deep:#856d31;--bd-strong:#dcd4bc;--bd:#e5dfca;--bd-subtle:#eee8d9;--tx-heading:#433e2d;--tx-primary:#56503b;--tx-secondary:#6e6646;--tx-dim:#8a7d52;--tx-on-lemon:#45391b;--tx-link:#977c36;--rv:#8a6416;--rv-bg:#ede5d0;--ing:#355a7d;--ing-bg:#e1e7ee;--final:#3a6e4c;--final-bg:#dfeae1;--cxl:#9a463d;--cxl-bg:#eee0dd;--st-ok:#3a6e4c;--st-ok-bg:#dfeae1;--st-rq:#8a6416;--st-rq-bg:#ede5d0;--st-wt:#645c3a;--st-wt-bg:#e8e3d3;--st-cfm:#355a7d;--st-cfm-bg:#e1e7ee;--profit-pos:#4d8761;--profit-neg:#b56158;--font-ui:"Noto Sans KR","Noto Sans JP",-apple-system,"Malgun Gothic",sans-serif;--font-jp:"Noto Sans JP","Noto Sans KR",sans-serif;--font-mono:"SFMono-Regular",Consolas,"Menlo",monospace;--fs-xs:11px;--fs-sm:12px;--fs-md:13px;--fs-lg:16px;--fs-xl:20px;--sp-xs:3px;--sp-sm:6px;--sp-md:9px;--sp-lg:13px;--sp-xl:18px;--r-sm:4px;--r-md:7px;--r-lg:11px;--shadow-sm:0 1px 2px #96781414;--shadow:0 2px 8px #9678141a;--shadow-lg:0 6px 20px #96781424;--h-topbar:50px;--w-sidebar:232px}.dom-hotel{--lemon:#8fb0cc;--lemon-deep:#6389aa;--lemon-soft:#dde8f1;--lemon-line:#b7cee1;--accent:#41739a;--accent-deep:#345d7e;--tx-on-lemon:#16344c;--tx-link:#3f6f97;--bg-topbar:#dfe8f1;--bg-thead:#d1e0ed;--bg-row-hover:#e7eff6;--bg-sub:#eef3f8}.dom-op{--lemon:#9cc095;--lemon-deep:#6f9e68;--lemon-soft:#dfeadb;--lemon-line:#c2d8bb;--accent:#4e8a51;--accent-deep:#3d6c40;--tx-on-lemon:#1d3a1f;--tx-link:#4a854d;--bg-topbar:#e3eee0;--bg-thead:#d6e6d1;--bg-row-hover:#e9f1e6;--bg-sub:#eff5ec}.dom-settle{--lemon:#d6a09a;--lemon-deep:#bb746c;--lemon-soft:#f1e0dd;--lemon-line:#e2c6c1;--accent:#a9564f;--accent-deep:#8a443e;--tx-on-lemon:#4a1f1b;--tx-link:#a25149;--bg-topbar:#f1e2df;--bg-thead:#ecd5d1;--bg-row-hover:#f5e7e4;--bg-sub:#f8efed}.dom-msg{--lemon:#b3a0c9;--lemon-deep:#8a6faa;--lemon-soft:#e7dff1;--lemon-line:#cdbfdf;--accent:#785d9c;--accent-deep:#604a7d;--tx-on-lemon:#2f2147;--tx-link:#73599a;--bg-topbar:#e8e1f1;--bg-thead:#ded2ec;--bg-row-hover:#eee8f6;--bg-sub:#f2eef8}.dom-etc{--lemon:#bdb8ad;--lemon-deep:#969080;--lemon-soft:#e8e5dd;--lemon-line:#d4cfc3;--accent:#79735f;--accent-deep:#615c4d;--tx-on-lemon:#33301f;--tx-link:#756f5c;--bg-topbar:#e9e7e0;--bg-thead:#ddd9cf;--bg-row-hover:#eeece5;--bg-sub:#f2f0ea}body{font-family:var(--font-ui);font-size:var(--fs-md);color:var(--tx-primary);background:var(--bg-app);-webkit-font-smoothing:antialiased;line-height:1.45}.mono,.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.jp{font-family:var(--font-jp)}.right{text-align:right}.center{text-align:center}.text-dim{color:var(--tx-dim)}.text-secondary{color:var(--tx-secondary)}.text-xs{font-size:var(--fs-xs)}.text-sm{font-size:var(--fs-sm)}.pos{color:var(--profit-pos)}.neg{color:var(--profit-neg)}.app{grid-template-columns:var(--w-sidebar) 1fr;grid-template-rows:var(--h-topbar) 1fr;grid-template-areas:"brand topbar""sidebar main";height:100vh;display:grid}.brand{background:var(--lemon);color:var(--tx-on-lemon);align-items:center;gap:var(--sp-sm);padding:0 var(--sp-xl);font-weight:700;font-size:var(--fs-lg);border-bottom:1px solid var(--lemon-deep);letter-spacing:.02em;grid-area:brand;display:flex}.brand .brand-mark{border-radius:var(--r-sm);background:var(--bg-card);width:26px;height:26px;color:var(--accent-deep);box-shadow:var(--shadow-sm);place-items:center;font-size:13px;font-weight:800;display:grid}.brand .brand-sub{font-size:var(--fs-xs);opacity:.7;margin-left:2px;font-weight:500}.topbar{background:var(--bg-topbar);border-bottom:1px solid var(--lemon-line);padding:0 var(--sp-xl);align-items:center;gap:var(--sp-xs);grid-area:topbar;display:flex}.topnav{gap:2px;height:100%;display:flex}.topnav a{padding:0 var(--sp-lg);font-size:var(--fs-md);color:var(--tx-secondary);border-bottom:2.5px solid #0000;align-items:center;font-weight:500;text-decoration:none;transition:all .12s;display:flex}.topnav a:hover{color:var(--tx-heading);background:#ffffff80}.topnav a.active{color:var(--accent-deep);border-bottom-color:var(--lemon);font-weight:700}.topbar-right{align-items:center;gap:var(--sp-lg);margin-left:auto;display:flex}.icon-btn{border-radius:var(--r-md);cursor:pointer;width:32px;height:32px;color:var(--tx-secondary);background:0 0;border:1px solid #0000;place-items:center;display:grid;position:relative}.icon-btn:hover{background:var(--bg-card);border-color:var(--bd);color:var(--tx-heading)}.icon-btn .badge-dot{background:var(--cxl);color:#fff;border-radius:8px;place-items:center;min-width:15px;height:15px;padding:0 3px;font-size:9px;font-weight:700;display:grid;position:absolute;top:2px;right:2px}.user-chip{align-items:center;gap:var(--sp-sm);background:var(--bg-card);border:1px solid var(--bd);cursor:pointer;border-radius:16px;padding:4px 10px 4px 4px;display:flex}.user-chip .avatar{background:var(--lemon);width:24px;height:24px;color:var(--tx-on-lemon);font-weight:700;font-size:var(--fs-xs);border-radius:50%;place-items:center;display:grid}.user-chip .u-name{font-size:var(--fs-sm);color:var(--tx-heading);font-weight:600}.user-chip .u-role{color:var(--tx-dim);font-size:10px}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--bd);padding:var(--sp-sm) 0 var(--sp-xl);grid-area:sidebar;overflow-y:auto}.sidebar::-webkit-scrollbar{width:7px}.sidebar::-webkit-scrollbar-thumb{background:var(--bd-strong);border-radius:4px}.ctx-card{margin:var(--sp-md) var(--sp-md) var(--sp-lg);background:linear-gradient(135deg, var(--lemon-soft), #fff7d0);border:1px solid var(--lemon-line);border-radius:var(--r-md);padding:var(--sp-md) var(--sp-lg)}.ctx-card .ctx-id{font-family:var(--font-mono);color:var(--accent-deep);font-weight:700;font-size:var(--fs-sm)}.ctx-card .ctx-name{font-size:var(--fs-xs);color:var(--tx-secondary);margin-top:2px}.ctx-card .ctx-meta{gap:var(--sp-md);margin-top:var(--sp-sm);color:var(--tx-dim);font-size:10px;display:flex}.menu-group{margin-bottom:1px}.menu-head{align-items:center;gap:var(--sp-sm);padding:7px var(--sp-lg);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--fs-sm);color:var(--tx-heading);font-weight:700;display:flex}.menu-head:hover{background:var(--bg-row-hover)}.menu-head .chev{color:var(--tx-dim);width:9px;font-size:9px;transition:transform .15s}.menu-group.open .chev{transform:rotate(90deg)}.menu-head .m-icon{text-align:center;width:16px;color:var(--accent)}.menu-head .m-count{color:var(--tx-dim);background:var(--bg-sub);border-radius:8px;margin-left:auto;padding:0 5px;font-size:9px}.menu-items{padding:2px 0 var(--sp-sm);display:none}.menu-group.open .menu-items{display:block}.menu-items a{padding:5px var(--sp-lg) 5px 34px;font-size:var(--fs-sm);color:var(--tx-secondary);border-left:2px solid #0000;text-decoration:none;display:block}.menu-items a:hover{background:var(--bg-row-hover);color:var(--tx-heading)}.menu-items a.active{background:var(--lemon-soft);color:var(--accent-deep);border-left-color:var(--lemon);font-weight:600}.main{background:var(--bg-canvas);flex-direction:column;grid-area:main;display:flex;overflow:hidden}.breadcrumb{align-items:center;gap:var(--sp-sm);height:34px;padding:0 var(--sp-xl);font-size:var(--fs-sm);color:var(--tx-secondary);background:var(--bg-canvas);border-bottom:1px solid var(--bd-subtle);flex-shrink:0;display:flex}.breadcrumb .bc-sep{color:var(--tx-dim)}.breadcrumb .bc-cur{color:var(--accent-deep);font-weight:600;font-family:var(--font-mono)}.content{padding:var(--sp-xl);flex:1;overflow-y:auto}.content::-webkit-scrollbar{width:10px}.content::-webkit-scrollbar-thumb{background:var(--bd-strong);border-radius:5px}.content::-webkit-scrollbar-track{background:0 0}.page-head{margin-bottom:var(--sp-lg);align-items:center;gap:var(--sp-lg);display:flex}.page-title{font-size:var(--fs-xl);color:var(--tx-heading);font-weight:700}.page-head .page-actions{gap:var(--sp-sm);margin-left:auto;display:flex}.card{background:var(--bg-card);border:1px solid var(--bd);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--sp-xl);overflow:hidden}.card-head{align-items:center;gap:var(--sp-sm);padding:var(--sp-md) var(--sp-lg);border-bottom:1px solid var(--bd-subtle);background:var(--bg-sub);display:flex}.card-head .card-title{font-size:var(--fs-md);color:var(--tx-heading);font-weight:700}.card-head .card-tools{gap:var(--sp-sm);margin-left:auto;display:flex}.card-body{padding:var(--sp-lg)}.card-body.flush{padding:0}.metric-grid{gap:var(--sp-lg);margin-bottom:var(--sp-xl);grid-template-columns:repeat(4,1fr);display:grid}.metric{background:var(--bg-card);border:1px solid var(--bd);border-radius:var(--r-lg);padding:var(--sp-lg) var(--sp-xl);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.metric:before{content:"";background:var(--lemon);width:4px;position:absolute;top:0;bottom:0;left:0}.metric .m-label{font-size:var(--fs-xs);color:var(--tx-secondary);letter-spacing:.03em;font-weight:600}.metric .m-value{color:var(--tx-heading);font-size:26px;font-weight:800;font-family:var(--font-mono);margin-top:4px}.metric .m-sub{font-size:var(--fs-xs);color:var(--tx-dim);margin-top:3px}.metric.is-pos .m-value{color:var(--profit-pos)}.metric.is-neg .m-value{color:var(--profit-neg)}.data-table{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.data-table thead th{background:var(--bg-thead);color:var(--tx-heading);text-align:left;padding:7px var(--sp-md);white-space:nowrap;border-bottom:2px solid var(--lemon-line);z-index:1;font-weight:700;position:sticky;top:0}.data-table thead th.right{text-align:right}.data-table tbody td{padding:6px var(--sp-md);border-bottom:1px solid var(--bd-subtle);color:var(--tx-primary)}.data-table tbody tr:nth-child(2n){background:var(--bg-row-alt)}.data-table tbody tr:hover{background:var(--bg-row-hover)}.data-table tbody tr.is-final td{color:var(--tx-dim)}.data-table tbody tr.guide-subtotal td{background:var(--bg-sub);border-top:1px solid var(--lemon-line);border-bottom:2px solid var(--lemon-line)}.data-table tbody tr.guide-subtotal td.bold{color:var(--tx-heading);font-weight:700}.data-table tfoot td{padding:7px var(--sp-md);color:var(--tx-heading);background:var(--bg-sub);border-top:2px solid var(--lemon-line);font-weight:700}.data-table .clickable{color:var(--tx-link);cursor:pointer;text-decoration:none}.data-table .clickable:hover{text-decoration:underline}.data-table thead tr.col-search th{background:var(--bg-sub);border-bottom:2px solid var(--lemon-line);z-index:1;padding:2px 4px;position:sticky;top:30px}.data-table thead tr.col-search .col-input,.data-table thead tr.col-search .col-select{width:100%;font-size:var(--fs-xs);font-family:var(--font-ui);border:1px solid var(--bd-strong);border-radius:var(--r-sm);background:var(--bg-input);color:var(--tx-primary);padding:3px 6px}.data-table thead tr.col-search .col-input::placeholder{color:var(--tx-dim)}.data-table thead tr.col-search .col-input:focus,.data-table thead tr.col-search .col-select:focus{border-color:var(--lemon-deep);box-shadow:0 0 0 2px var(--lemon-soft);outline:none}.list-meta .col-search-hint{font-size:var(--fs-xs);color:var(--tx-dim)}.matrix{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.matrix th,.matrix td{padding:7px var(--sp-md);text-align:center;border:1px solid var(--bd)}.matrix thead th{background:var(--bg-thead);color:var(--tx-heading);font-weight:700}.matrix tbody th{background:var(--bg-sub);text-align:left;color:var(--tx-heading);font-weight:600}.matrix td .num{font-weight:600}.matrix tbody tr:hover td{background:var(--bg-row-hover)}.matrix tfoot td,.matrix tfoot th{background:var(--lemon-soft);color:var(--tx-heading);font-weight:700}.matrix .zero{color:var(--tx-dim)}.badge{letter-spacing:.02em;border-radius:10px;padding:1px 8px;font-size:10px;font-weight:700;line-height:1.6;display:inline-block}.badge-rv{background:var(--rv-bg);color:var(--rv)}.badge-ing{background:var(--ing-bg);color:var(--ing)}.badge-final{background:var(--final-bg);color:var(--final)}.badge-cxl{background:var(--cxl-bg);color:var(--cxl)}.badge-ok{background:var(--st-ok-bg);color:var(--st-ok)}.badge-rq{background:var(--st-rq-bg);color:var(--st-rq)}.badge-wt{background:var(--st-wt-bg);color:var(--st-wt)}.badge-cfm{background:var(--st-cfm-bg);color:var(--st-cfm)}.badge-soft{background:var(--bg-sub);color:var(--tx-secondary);border:1px solid var(--bd)}.btn{border-radius:var(--r-md);font-size:var(--fs-sm);font-family:var(--font-ui);cursor:pointer;border:1px solid var(--bd-strong);background:var(--bg-card);color:var(--tx-primary);align-items:center;gap:5px;padding:6px 14px;font-weight:600;transition:all .12s;display:inline-flex}.btn:hover{background:var(--bg-sub);border-color:var(--lemon-line)}.btn-primary{background:var(--lemon);color:var(--tx-on-lemon);border-color:var(--lemon-deep)}.btn-primary:hover{background:var(--lemon-deep);border-color:var(--lemon-deep)}.btn-ghost{color:var(--tx-secondary);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--bg-sub);color:var(--tx-heading)}.btn-danger{background:var(--cxl-bg);color:var(--cxl);border-color:var(--cxl)}.btn-danger:hover{background:var(--cxl);color:#fff;border-color:var(--cxl)}.btn-sm{font-size:var(--fs-xs);padding:3px 9px}.action-btn{border-radius:var(--r-sm);font-size:var(--fs-xs);cursor:pointer;border:1px solid var(--bd-strong);background:var(--bg-card);color:var(--tx-secondary);padding:2px 9px}.action-btn:hover{background:var(--lemon-soft);color:var(--accent-deep);border-color:var(--lemon-line)}.form-grid{gap:var(--sp-sm) var(--sp-md);display:grid}.form-grid.cols-2{grid-template-columns:1fr 1fr}.form-grid.cols-3{grid-template-columns:1fr 1fr 1fr}.form-grid.cols-4{grid-template-columns:repeat(4,1fr)}.form-group{flex-direction:column;gap:3px;display:flex}.form-label{font-size:var(--fs-xs);color:var(--tx-secondary);font-weight:600}.form-label .req{color:var(--cxl)}.form-label.hl{background:var(--lemon-soft);color:var(--accent-deep);border-radius:var(--r-sm);border-left:3px solid var(--lemon-deep);padding:1px 6px;display:inline-block}.form-control.hl{color:#3a2f00;background:#ffe21a;border-color:#e0b800;font-weight:600}.form-control{border:1px solid var(--bd-strong);border-radius:var(--r-sm);font-size:var(--fs-sm);font-family:var(--font-ui);background:var(--bg-input);color:var(--tx-primary);width:100%;padding:4px 8px}.form-control:focus{border-color:var(--lemon-deep);box-shadow:0 0 0 3px var(--lemon-soft);outline:none}select.form-control{cursor:pointer}.fieldset{border:1px solid var(--bd);border-radius:var(--r-md);padding:var(--sp-md) var(--sp-lg);margin-bottom:var(--sp-md)}.fieldset>legend{font-size:var(--fs-sm);color:var(--accent-deep);padding:0 var(--sp-sm);font-weight:700}.add-row-form{background:var(--bg-sub);border:1px dashed var(--lemon-line);border-radius:var(--r-md);padding:var(--sp-lg);margin-top:var(--sp-lg)}.add-form-title{font-size:var(--fs-xs);color:var(--accent-deep);margin-bottom:var(--sp-sm);font-weight:700}.add-row-grid{gap:var(--sp-md);grid-template-columns:1fr 1fr 1fr auto;align-items:end;display:grid}.add-row-grid.cols-5{grid-template-columns:1fr 1fr 1fr 1fr auto}.add-row-grid.cols-6{grid-template-columns:repeat(5,1fr) auto}.inner-tabs{border-bottom:2px solid var(--lemon-line);margin-bottom:var(--sp-lg);flex-wrap:wrap;gap:2px;display:flex}.inner-tab{padding:8px var(--sp-xl);cursor:pointer;font-size:var(--fs-md);color:var(--tx-secondary);border-radius:var(--r-md) var(--r-md) 0 0;border:1px solid #0000;border-bottom:none;margin-bottom:-2px;font-weight:600}.inner-tab:hover{background:var(--bg-sub);color:var(--tx-heading)}.inner-tab.active{background:var(--bg-card);color:var(--accent-deep);border-color:var(--lemon-line);border-bottom:2px solid var(--bg-card);font-weight:700}.inner-tab-panel{display:none}.inner-tab-panel.active{display:block}.tour-strip{align-items:center;gap:var(--sp-lg);background:linear-gradient(135deg, var(--lemon-soft), #fffade);border:1px solid var(--lemon-line);border-radius:var(--r-lg);padding:var(--sp-md) var(--sp-xl);margin-bottom:var(--sp-xl);flex-wrap:wrap;display:flex}.tour-strip .ts-id{font-family:var(--font-mono);color:var(--accent-deep);font-weight:800;font-size:var(--fs-lg)}.tour-strip .ts-name{color:var(--tx-heading);font-weight:600}.tour-strip .ts-meta{gap:var(--sp-xl);flex-wrap:wrap;margin-left:auto;display:flex}.tour-strip .ts-meta-item{font-size:var(--fs-sm);color:var(--tx-secondary)}.tour-strip .ts-meta-item strong{color:var(--tx-heading);margin-right:4px}.summary-strip{gap:var(--sp-lg);margin-bottom:var(--sp-xl);grid-template-columns:repeat(4,1fr);display:grid}.summary-cell{background:var(--bg-card);border:1px solid var(--bd);border-radius:var(--r-md);padding:var(--sp-md) var(--sp-lg);box-shadow:var(--shadow-sm)}.summary-cell .s-label{font-size:var(--fs-xs);color:var(--tx-secondary);font-weight:600}.summary-cell .s-value{font-size:var(--fs-lg);font-weight:800;font-family:var(--font-mono);color:var(--tx-heading);margin-top:2px}.filter-bar{background:var(--bg-card);border:1px solid var(--bd);border-radius:var(--r-md);padding:var(--sp-md) var(--sp-lg);margin-bottom:var(--sp-lg);gap:var(--sp-md);flex-wrap:wrap;align-items:end;display:flex}.filter-bar .form-group{min-width:120px}.filter-bar .filter-actions{gap:var(--sp-sm);margin-left:auto;display:flex}.status-select{border-radius:var(--r-sm);border:1px solid var(--lemon-line);background:var(--lemon-soft);color:var(--tx-on-lemon);cursor:pointer;padding:2px 6px;font-size:10px;font-weight:700}.notice-list{flex-direction:column;display:flex}.notice-item{gap:var(--sp-md);padding:var(--sp-md) var(--sp-lg);border-bottom:1px solid var(--bd-subtle);display:flex}.notice-item:hover{background:var(--bg-row-hover)}.notice-item .n-dot{background:var(--lemon);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:5px}.notice-item .n-body{flex:1}.notice-item .n-msg{font-size:var(--fs-sm);color:var(--tx-primary)}.notice-item .n-meta{color:var(--tx-dim);margin-top:2px;font-size:10px}.bar-row{align-items:center;gap:var(--sp-md);grid-template-columns:70px 90px 1fr;padding:5px 0;display:grid}.bar-row .bar-label{font-size:var(--fs-sm);color:var(--tx-heading);font-weight:600}.bar-row .bar-val{font-family:var(--font-mono);font-size:var(--fs-sm);text-align:right}.bar-track{background:var(--bg-sub);border-radius:8px;height:16px;overflow:hidden}.bar-fill{background:linear-gradient(90deg, var(--lemon), var(--lemon-deep));border-radius:8px;height:100%}.bar-fill.neg{background:linear-gradient(90deg, #f0a8a3, var(--cxl))}.gauge{background:var(--bg-sub);border-radius:5px;height:10px;margin-top:4px;overflow:hidden}.gauge-fill{background:linear-gradient(90deg, var(--lemon), var(--lemon-deep));height:100%}.proto-nav{gap:var(--sp-sm);padding:var(--sp-sm) var(--sp-xl);background:var(--bg-sub);border-top:1px solid var(--bd);flex-shrink:0;display:flex}.proto-nav a{font-size:var(--fs-xs);color:var(--tx-secondary);border-radius:var(--r-sm);padding:3px 10px;text-decoration:none}.proto-nav a:hover{background:var(--lemon-soft);color:var(--accent-deep)}.proto-nav a.active{background:var(--lemon);color:var(--tx-on-lemon);font-weight:700}.a4{width:210mm;min-height:297mm;box-shadow:var(--shadow-lg);color:#2a2a2a;background:#fff;margin:0 auto;padding:20mm;font-size:13px}.a4 .doc-title{letter-spacing:.3em;text-align:center;color:#222;margin-bottom:6mm;font-size:24px;font-weight:800}.a4 .doc-table{border-collapse:collapse;width:100%;margin:6mm 0}.a4 .doc-table th,.a4 .doc-table td{border:1px solid #555;padding:6px 10px}.a4 .doc-table th{background:#f4eec8}.a4 .doc-total{text-align:right;margin-top:4mm;font-size:18px;font-weight:800}.a4 .doc-note{margin-top:8mm;font-size:14px}.a4 .doc-sign{justify-content:space-between;margin-top:16mm;display:flex}.a4 .doc-sign .sign-box{text-align:center;color:#555;border-top:1px solid #555;width:60mm;padding-top:4px;font-size:12px}.form-control-sm{font-size:var(--fs-xs);padding:3px 6px}.text-link{color:var(--tx-link);cursor:pointer}.text-link:hover{text-decoration:underline}.text-warning{color:#d97706}.result-meta{font-size:var(--fs-sm);color:var(--tx-secondary);white-space:nowrap}.result-meta strong{color:var(--tx-primary)}.data-table thead th.sort-asc:after{content:" ▲";color:var(--lemon-deep);font-size:10px}.data-table thead th.sort-desc:after{content:" ▼";color:var(--lemon-deep);font-size:10px}@media print{.app,.brand,.topbar,.sidebar,.breadcrumb,.proto-nav,.page-actions,.no-print{display:none!important}body{background:#fff}.a4{box-shadow:none;width:auto;margin:0}.print-only{display:block!important}}
