@layer rdg{@layer Defaults,CheckboxInput,CheckboxIcon,CheckboxLabel,Cell,HeaderCell,SummaryCell,EditCell,Row,HeaderRow,SummaryRow,GroupedRow,Root;}@layer rdg.MeasuringCell{.rdg-7-0-0-beta-60-fa71d63e{contain:strict;visibility:hidden;grid-row:1}}@layer rdg.Cell{.rdg-7-0-0-beta-60-85c48527{border-inline-end:var(--rdg-border-width) solid var(--rdg-border-color);border-block-end:var(--rdg-border-width) solid var(--rdg-border-color);background-color:inherit;white-space:nowrap;text-overflow:ellipsis;outline:none;align-content:center;padding-block:0;padding-inline:8px;position:relative;overflow:clip}.rdg-7-0-0-beta-60-85c48527[aria-selected=true]{outline:var(--rdg-selection-width) solid var(--rdg-selection-color);outline-offset:calc(var(--rdg-selection-width) * -1)}}@layer rdg.Cell{.rdg-7-0-0-beta-60-203d9925{z-index:1;position:sticky}}@layer rdg.DragHandle{.rdg-7-0-0-beta-60-bfba19bc{--rdg-drag-handle-size: 8px;z-index:0;cursor:move;inline-size:var(--rdg-drag-handle-size);block-size:var(--rdg-drag-handle-size);background-color:var(--rdg-selection-color);place-self:end}.rdg-7-0-0-beta-60-bfba19bc:hover{--rdg-drag-handle-size: 16px;border:2px solid var(--rdg-selection-color);background-color:var(--rdg-background-color)}}@layer rdg.DragHandle{.rdg-7-0-0-beta-60-7abddb3e{z-index:1;position:sticky}}@layer rdg.CheckboxInput{.rdg-7-0-0-beta-60-3b807ead{block-size:20px;inline-size:20px;margin:auto;display:block}.rdg-7-0-0-beta-60-3b807ead:focus-visible{outline:2px solid var(--rdg-checkbox-focus-color);outline-offset:-3px}.rdg-7-0-0-beta-60-3b807ead:enabled{cursor:pointer}}@layer rdg.GroupCellContent{.rdg-7-0-0-beta-60-07919382{outline:none}}@layer rdg.GroupCellCaret{.rdg-7-0-0-beta-60-02a50147{stroke:currentColor;stroke-width:1.5px;fill:#0000;vertical-align:middle;margin-inline-start:4px}.rdg-7-0-0-beta-60-02a50147>path{transition:d .1s}}@layer rdg.SortableHeaderCell{.rdg-7-0-0-beta-60-56a248e4{display:flex}}@layer rdg.SortableHeaderCellName{.rdg-7-0-0-beta-60-7fad8c83{text-overflow:ellipsis;flex-grow:1;overflow:clip}}@layer rdg.Cell{.rdg-7-0-0-beta-60-35ccb4c8{background-color:#ccf}}@layer rdg.EditCell{.rdg-7-0-0-beta-60-46f9ea88{padding:0}}@layer rdg.HeaderRow{.rdg-7-0-0-beta-60-0dbd5994{background-color:var(--rdg-header-background-color);font-weight:700;display:contents}.rdg-7-0-0-beta-60-0dbd5994>.rdg-7-0-0-beta-60-85c48527{z-index:2;position:sticky}.rdg-7-0-0-beta-60-0dbd5994>.rdg-7-0-0-beta-60-203d9925{z-index:3}}@layer rdg.HeaderCell{.rdg-7-0-0-beta-60-2a7e240d{cursor:pointer}}@layer rdg.HeaderCell{.rdg-7-0-0-beta-60-1893dc0f{touch-action:none}}@layer rdg.HeaderCell{.rdg-7-0-0-beta-60-4e60db91{cursor:col-resize;inline-size:10px;position:absolute;inset-block:0;inset-inline-end:0}}@layer rdg.HeaderCell{.rdg-7-0-0-beta-60-f2d18717{background-color:var(--rdg-header-draggable-background-color)}}@layer rdg.HeaderCell{.rdg-7-0-0-beta-60-3d12c7ae{outline-offset:-2px;border-radius:4px;outline:2px solid #008cff;width:fit-content}}@layer rdg.Row{.rdg-7-0-0-beta-60-3c083f1b{grid-column:1 / -1;grid-template:subgrid / subgrid;background-color:var(--rdg-background-color);display:grid}.rdg-7-0-0-beta-60-3c083f1b:hover{background-color:var(--rdg-row-hover-background-color)}.rdg-7-0-0-beta-60-3c083f1b:focus{outline:none}.rdg-7-0-0-beta-60-3c083f1b[tabindex="0"]:after{content:"";z-index:1;pointer-events:none;border:var(--rdg-selection-width) solid var(--rdg-selection-color);grid-column:1 / -1}.rdg-7-0-0-beta-60-3c083f1b[tabindex="0"]>.rdg-cell-frozen-start:first-child:before,.rdg-7-0-0-beta-60-3c083f1b[tabindex="0"]>.rdg-cell-frozen-end:last-child:after{content:"";display:inline-block;position:absolute;inset-block:0}.rdg-7-0-0-beta-60-3c083f1b[tabindex="0"]>.rdg-cell-frozen-start:first-child:before{border-inline-start:var(--rdg-selection-width) solid var(--rdg-selection-color);inset-inline-start:0}.rdg-7-0-0-beta-60-3c083f1b[tabindex="0"]>.rdg-cell-frozen-end:last-child:after{border-inline-end:var(--rdg-selection-width) solid var(--rdg-selection-color);inset-inline-end:0}.rdg-7-0-0-beta-60-3c083f1b[aria-selected=true]{background-color:var(--rdg-row-selected-background-color)}.rdg-7-0-0-beta-60-3c083f1b[aria-selected=true]:hover{background-color:var(--rdg-row-selected-hover-background-color)}}@layer rdg.SortIcon{.rdg-7-0-0-beta-60-3d5115f3{fill:currentColor}.rdg-7-0-0-beta-60-3d5115f3>path{transition:d .1s}}@layer rdg.Defaults{.rdg-7-0-0-beta-60-ccd2e5d9 :before,.rdg-7-0-0-beta-60-ccd2e5d9 *,.rdg-7-0-0-beta-60-ccd2e5d9 :after{box-sizing:inherit}}@layer rdg.Root{.rdg-7-0-0-beta-60-ccd2e5d9{--rdg-selection-width: 2px;--rdg-selection-color: #67afe9;--rdg-font-size: 14px;--rdg-border-width: 1px;--rdg-summary-border-width: calc(var(--rdg-border-width) * 2);--rdg-color: light-dark(#000, #ddd);--rdg-border-color: light-dark(#ddd, #444);--rdg-summary-border-color: light-dark(#aaa, #555);--rdg-background-color: light-dark(#fff, #212121);--rdg-header-background-color: light-dark(#f9f9f9, #1b1b1b);--rdg-header-draggable-background-color: light-dark(#e7e7e7, #2d2d2d);--rdg-row-hover-background-color: light-dark(#f5f5f5, #171717);--rdg-row-selected-background-color: light-dark(#dbecfa, #1a73bc);--rdg-row-selected-hover-background-color: light-dark(#c9e3f8, #1768ab);--rdg-checkbox-focus-color: #61b8ff;accent-color:light-dark(#005194,#94cfff);contain:content;content-visibility:auto;border:1px solid var(--rdg-border-color);box-sizing:border-box;background-color:var(--rdg-background-color);block-size:350px;color:var(--rdg-color);font-size:var(--rdg-font-size);font-variant-numeric:tabular-nums;display:grid;overflow:auto;container:rdg-root / scroll-state}.rdg-7-0-0-beta-60-ccd2e5d9.rdg-dark{color-scheme:dark}.rdg-7-0-0-beta-60-ccd2e5d9.rdg-light{color-scheme:light}.rdg-7-0-0-beta-60-ccd2e5d9:before{content:"";grid-area:-2 / -2 / -1 / -1}.rdg-7-0-0-beta-60-ccd2e5d9>:nth-last-child(1 of.rdg-top-summary-row)>.rdg-7-0-0-beta-60-85c48527{border-block-end:var(--rdg-summary-border-width) solid var(--rdg-summary-border-color)}.rdg-7-0-0-beta-60-ccd2e5d9>:nth-child(1 of.rdg-bottom-summary-row)>.rdg-7-0-0-beta-60-85c48527{border-block-start:var(--rdg-summary-border-width) solid var(--rdg-summary-border-color)}}@layer rdg.Root{.rdg-7-0-0-beta-60-e9b0e1c9{-webkit-user-select:none;user-select:none}.rdg-7-0-0-beta-60-e9b0e1c9 .rdg-7-0-0-beta-60-3c083f1b{cursor:move}}.rdg-7-0-0-beta-60-2e639f12{pointer-events:none;z-index:1;opacity:1;width:10px;transition:opacity .1s;position:sticky}.rdg-7-0-0-beta-60-2e639f12:dir(rtl){transform:scaleX(-1)}.rdg-7-0-0-beta-60-86aef152{background-image:linear-gradient(to right,light-dark(#00000026,#0006),#0000)}@container rdg-root not scroll-state(scrollable: inline-start){.rdg-7-0-0-beta-60-86aef152{opacity:0}}.rdg-7-0-0-beta-60-7689f238{background-image:linear-gradient(to left,light-dark(#00000026,#0006),#0000)}@container rdg-root not scroll-state(scrollable: inline-end){.rdg-7-0-0-beta-60-7689f238{opacity:0}}.rdg-7-0-0-beta-60-487ac462{z-index:2}@layer rdg.SummaryRow{.rdg-7-0-0-beta-60-0b90c82c{z-index:2;position:sticky}}@layer rdg.GroupedRow{.rdg-7-0-0-beta-60-e74a2be3:not([aria-selected=true]){background-color:var(--rdg-header-background-color)}.rdg-7-0-0-beta-60-e74a2be3>.rdg-7-0-0-beta-60-85c48527:not(:last-child,.rdg-7-0-0-beta-60-203d9925),.rdg-7-0-0-beta-60-e74a2be3>:nth-last-child(n+2 of.rdg-cell-frozen-start),.rdg-7-0-0-beta-60-e74a2be3>:nth-last-child(n+2 of.rdg-cell-frozen-end){border-inline-end:none}}@layer rdg.TextEditor{.rdg-7-0-0-beta-60-2f8db206{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;vertical-align:top;block-size:100%;inline-size:100%;color:var(--rdg-color);background-color:var(--rdg-background-color);font-family:inherit;font-size:var(--rdg-font-size);border:2px solid #ccc;padding-block:0;padding-inline:6px}.rdg-7-0-0-beta-60-2f8db206:focus{border-color:var(--rdg-selection-color);outline:none}.rdg-7-0-0-beta-60-2f8db206::placeholder{color:#999;opacity:1}}:root{--bg: #f5f6f8;--panel: #ffffff;--border: #e2e5ea;--text: #1f2530;--muted: #6b7280;--primary: #2563eb;--primary-dark: #1d4ed8;--danger: #dc2626;--sidebar-bg: #1e293b;--sidebar-text: #cbd5e1}*{box-sizing:border-box}body{margin:0;font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;background:var(--bg);color:var(--text);font-size:14px}.layout{display:flex;min-height:100vh}.sidebar{width:200px;background:var(--sidebar-bg);color:var(--sidebar-text);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;flex-shrink:0}.logo{font-size:18px;color:#fff;padding:20px 16px 12px;margin:0}.nav-link{display:block;padding:10px 16px;color:var(--sidebar-text);text-decoration:none;border-left:3px solid transparent}.nav-link:hover{background:#ffffff0f}.nav-link.active{background:#ffffff1a;border-left-color:var(--primary);color:#fff}.nav-group{margin-top:4px}.nav-group-header{display:flex;align-items:center;gap:6px;width:100%;padding:8px 16px 4px;background:none;border:none;color:#7c8ba1;font-size:11px;font-weight:600;letter-spacing:.06em;cursor:pointer;text-align:left}.nav-group-header:hover{background:none;color:#cbd5e1}.nav-group-header .caret{display:inline-block;transition:transform .15s;font-size:10px}.nav-group-header .caret.open{transform:rotate(90deg)}.nav-link.child{padding-left:32px;font-size:13px}.sidebar-footer{margin-top:auto;padding:16px;font-size:11px;color:#64748b}.main{flex:1;padding:24px 28px;min-width:0}h2{margin:0 0 16px;font-size:20px}h3{margin:24px 0 8px;font-size:15px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:16px}.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:16px}input,select,textarea{padding:7px 10px;border:1px solid var(--border);border-radius:6px;font-size:14px;font-family:inherit;background:#fff}input:focus,select:focus,textarea:focus{outline:2px solid var(--primary);outline-offset:-1px}button{padding:7px 14px;border:1px solid var(--border);border-radius:6px;background:#fff;cursor:pointer;font-size:14px;font-family:inherit;white-space:nowrap}button:hover{background:#f1f5f9}button.primary{background:var(--primary);border-color:var(--primary);color:#fff}button.primary:hover{background:var(--primary-dark)}button.danger{color:var(--danger);border-color:var(--danger)}button:disabled{opacity:.5;cursor:not-allowed}table{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--border);border-radius:8px;overflow:hidden}th,td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}th{background:#f8fafc;font-weight:600;font-size:12px;color:var(--muted);white-space:nowrap}tbody tr:hover{background:#f8fafc}tbody tr:last-child td{border-bottom:none}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;background:#e0e7ff;color:#3730a3;white-space:nowrap}.badge.gray{background:#f1f5f9;color:#475569}.badge.green{background:#dcfce7;color:#166534}.badge.red{background:#fee2e2;color:#991b1b}.badge.amber{background:#fef3c7;color:#92400e}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.form-grid label,.field label{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.form-grid input,.form-grid select{width:100%}.field{margin-bottom:12px}.field textarea{width:100%;min-height:80px}.pagination{display:flex;gap:8px;align-items:center;margin-top:12px;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:20px}.stat-card{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px}.stat-card .value{font-size:26px;font-weight:700}.stat-card .label{font-size:12px;color:var(--muted)}.muted{color:var(--muted)}.error{color:var(--danger);padding:8px 0}.num{text-align:right;font-variant-numeric:tabular-nums}.table-scroll{overflow-x:auto}.table-nowrap th,.table-nowrap td{white-space:nowrap}.date-filter{display:inline-flex;align-items:center;gap:4px}.date-filter label{font-size:12px;color:var(--muted)}.master-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:16px;align-items:start}.master-section{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:12px 14px}.master-section-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.master-section-header h3{margin:0;font-size:14px}.master-table-wrap{max-height:320px;overflow-y:auto;border:1px solid var(--border);border-radius:6px}.master-table-wrap table{border:none}.master-table-wrap thead th{position:sticky;top:0;z-index:1}.cell-input{width:100%;border:1px solid transparent;background:transparent;padding:3px 6px;border-radius:4px}.cell-input:hover{border-color:var(--border)}.cell-input:focus{background:#fff;border-color:var(--primary);outline:none}.tabs{display:flex;gap:4px;border-bottom:2px solid var(--border);margin-bottom:16px}.tab{padding:8px 18px;color:var(--muted);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-size:14px}.tab:hover{color:var(--text);text-decoration:none}.tab.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}button.tab{background:none;border:none;border-bottom:2px solid transparent;border-radius:0;cursor:pointer}button.tab.active{border-bottom-color:var(--primary)}.filter-row th{background:#f1f5f9;padding:4px 8px}.col-filter-input{width:100%;min-width:70px;padding:4px 6px;font-size:12px;font-weight:400}.range-filter{display:flex;align-items:center;gap:2px}.range-filter .col-filter-input{min-width:55px;width:64px}.col-filter-btn{width:100%;padding:4px 8px;font-size:12px;font-weight:400;color:var(--muted);text-align:left}.col-filter-btn.filtering{color:var(--primary);border-color:var(--primary);font-weight:600}.multi-filter{position:relative;min-width:90px}.multi-filter-panel{z-index:200;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0000001f;padding:10px;min-width:220px;font-weight:400}.multi-filter-list{max-height:260px;overflow-y:auto}.multi-filter-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.image-card{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:8px}.image-card img{width:100%;height:110px;object-fit:contain;background:#f8fafc;border-radius:4px;display:block}.image-placeholder{height:110px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border-radius:4px;color:var(--muted);font-size:12px}.image-meta{display:flex;align-items:center;justify-content:space-between;margin-top:6px}.image-meta button{padding:2px 8px;font-size:12px}.image-name{font-size:11px;color:var(--muted);margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-bar{height:10px;background:#e2e8f0;border-radius:5px;overflow:hidden}.progress-fill{height:100%;background:var(--primary);border-radius:5px;transition:width .5s}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--panel);border-radius:10px;padding:20px;width:480px;max-width:calc(100vw - 40px);max-height:calc(100vh - 80px);overflow-y:auto;box-shadow:0 20px 50px #0000004d}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.column-picker{position:relative}.column-panel{position:absolute;right:0;top:calc(100% + 6px);z-index:30;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0000001f;padding:12px;width:240px;max-height:420px;overflow-y:auto;font-size:13px}.column-panel-group{font-size:11px;font-weight:600;color:var(--muted);margin:10px 0 2px;border-bottom:1px solid var(--border);padding-bottom:2px}.column-panel-item{display:flex;align-items:center;gap:8px;padding:4px 2px;cursor:pointer}.column-panel-item:hover{background:#f8fafc}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}th.sortable:hover{background:#eef2f7;color:var(--text)}th.sortable.sorted{color:var(--primary)}.sort-indicator{margin-left:4px;font-size:10px;opacity:.55}th.sortable.sorted .sort-indicator{opacity:1}th.drag-over{border-left:3px solid var(--primary)}.expand-btn{border:none;background:none;padding:0 6px 0 0;font-size:12px;color:var(--muted);cursor:pointer}.expand-btn:hover{background:none;color:var(--primary)}.variation-expand-row>td{background:#f8fafc;padding:8px 12px}.variation-subtable{border:1px solid var(--border);border-radius:6px;font-size:13px;width:auto;min-width:640px}.variation-subtable th,.variation-subtable td{padding:5px 10px}.mark-btn{border:none;background:none;padding:0 4px;font-size:16px;color:#cbd5e1;cursor:pointer;line-height:1}.mark-btn:hover{background:none;color:#f59e0b}.mark-btn.marked{color:#f59e0b}.checkbox-filter{display:inline-flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}.export-targets{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.export-target{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--border);border-radius:8px;padding:10px 12px;cursor:pointer;font-size:13px}.export-target input{margin-top:3px}.export-target.selected{border-color:var(--primary);background:#eff6ff}.export-target .target-name{font-weight:600;margin-bottom:2px}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--sidebar-bg)}.login-box{background:var(--panel);border-radius:10px;padding:32px;width:360px;box-shadow:0 8px 30px #0000004d}.login-box h1{margin:0 0 4px;font-size:20px}.login-box .field input{width:100%}.sidebar-user{margin-bottom:8px;color:#e2e8f0;font-size:13px}.muted-dark{color:#64748b;font-size:11px}.logout-btn{width:100%;background:transparent;color:var(--sidebar-text);border:1px solid #334155;font-size:12px;padding:5px 10px}.logout-btn:hover{background:#ffffff14}.sheet-page{display:flex;flex-direction:column;height:calc(100vh - 48px)}.product-sheet-grid{flex:1;min-height:0;border:1px solid var(--border);border-radius:8px;font-size:13px;block-size:auto}.product-sheet-grid .rdg-cell{border-inline-end:1px solid var(--border);border-block-end:1px solid var(--border)}.product-sheet-grid .cell-readonly{background:#f8fafc;color:var(--muted)}.product-sheet-grid .cell-new{background:#ecfdf5}.product-sheet-grid .row-dirty .rdg-cell{background:#fefce8}.product-sheet-grid .num{text-align:right}.rdg-select-editor{width:100%;height:100%;border:none;padding:0 6px}
