:root{--bg:#111;--panel:#1b1b1d;--panel-2:#242427;--border:#000;--line:#333338;--text:#e6e6e6;--muted:#8b8b93;--accent:#4f8cff;--danger:#e5484d;--label-width:96px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Hiragino Sans,Yu Gothic UI,Meiryo,sans-serif;font-size:13px}button,input,select,textarea{font:inherit;color:inherit}button{background:var(--panel-2);border:1px solid var(--line);cursor:pointer;white-space:nowrap;border-radius:4px;padding:3px 10px}button:hover:not(:disabled){background:#303036}button:disabled{opacity:.35;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover{background:#3b78ec}button.danger{border-color:var(--danger);color:var(--danger);background:0 0}input[type=text],input:not([type]),input[type=email],input[type=password],textarea,select{border:1px solid var(--line);background:#0d0d0f;border-radius:4px;width:100%;padding:5px 7px}textarea{resize:vertical}.center-message{min-height:100vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.top-bars{z-index:20;position:sticky;top:0}.toolbar{border-bottom:1px solid var(--line);background:#0b0b0c;flex-wrap:wrap;align-items:center;gap:6px;padding:4px 8px;display:flex}.app-title{margin-right:6px;font-size:14px}.tool-field{color:var(--muted);align-items:center;gap:4px;margin-left:4px;display:flex}.tool-field input[type=range]{width:110px}.tool-field .num{font-variant-numeric:tabular-nums;width:28px;color:var(--text)}.tool-field .num-input{width:52px;padding:1px 4px}.tool-field select{width:auto;padding:1px 4px}.sep{background:var(--line);width:1px;height:18px;margin:0 4px}.spacer{flex:1}.count{color:var(--muted)}.status{color:var(--muted);border-radius:3px;padding:1px 6px;font-size:12px}.status-pending,.status-saving{color:#f5c451}.status-error{color:#fff;background:var(--danger)}.user{color:var(--muted);font-size:12px}.board{padding:4px}.tiers{background:var(--border);flex-direction:column;gap:2px;max-width:100%;padding:2px;display:flex;position:relative}.tier-row{background:var(--panel);outline-offset:-2px;outline:2px solid #0000;align-items:stretch;display:flex}.tier-row.drop-target,.unsorted.drop-target{outline-color:var(--accent)}.tier-label{flex:0 0 var(--label-width);width:var(--label-width);color:#111;text-align:center;word-break:break-word;cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;min-height:60px;padding:4px;font-size:22px;font-weight:700;display:flex;position:relative}.tier-name{line-height:1.15}.tier-label-controls{flex-direction:column;gap:2px;display:none;position:absolute;top:50%;right:2px;transform:translateY(-50%)}.tier-label:hover .tier-label-controls{display:flex}.tier-label-controls button{color:#fff;background:#00000073;border:none;padding:0 3px;font-size:9px;line-height:14px}.item-grid{flex:1;min-width:0;margin:2px;position:relative}.item-card{cursor:grab;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#000;position:absolute;overflow:hidden}.item-card:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.item-card img,.drag-overlay img,.item-dialog-image img{width:100%;height:100%;display:block}.item-card.dragging{opacity:.25}.img-placeholder{background:#2a2a2e;width:100%;height:100%}.item-title{color:#fff;-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;opacity:0;pointer-events:none;background:linear-gradient(#0000,#000000d9);-webkit-box-orient:vertical;padding:10px 4px 2px;font-size:11px;line-height:1.25;display:-webkit-box;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.item-card:hover .item-title,.item-card.show-title .item-title{opacity:1}.memo-dot{background:#f5c451;border-radius:50%;width:6px;height:6px;position:absolute;top:3px;right:3px;box-shadow:0 0 0 1px #0009}.drop-marker{background:var(--accent);width:4px;box-shadow:0 0 6px var(--accent);pointer-events:none;z-index:5;border-radius:2px;position:absolute}.drag-overlay{outline:2px solid var(--accent);cursor:grabbing;pointer-events:none;overflow:hidden;box-shadow:0 8px 24px #000000b3}.unsorted{background:var(--panel);border:1px dashed var(--line);outline-offset:-2px;outline:2px solid #0000;margin-top:6px;padding:2px}.unsorted-header{flex-wrap:wrap;align-items:baseline;gap:6px;padding:2px 4px;font-weight:600;display:flex}.unsorted-header .hint{margin-left:auto;font-weight:400}.hint{color:var(--muted);font-size:12px}.file-drop-hint{background:var(--accent);color:#fff;pointer-events:none;z-index:50;border-radius:6px;padding:8px 16px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.progress{background:var(--panel-2);border:1px solid var(--line);z-index:60;border-radius:6px;padding:8px 14px;position:fixed;bottom:12px;right:12px}.modal-backdrop{z-index:100;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--line);border-radius:8px;width:380px;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);padding:16px;overflow:auto}.modal.wide{width:920px}.modal h2{margin:0 0 12px;font-size:15px}.field{color:var(--muted);flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.field>input,.field>textarea,.field>select{color:var(--text)}.color-row{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.swatch{border:2px solid #0000;border-radius:4px;width:24px;height:24px;padding:0}.swatch.selected{border-color:#fff}.color-row input[type=color]{background:0 0;border:none;width:36px;height:26px;padding:0}.modal-actions{gap:8px;margin-top:8px;display:flex}.item-dialog{gap:16px;display:flex}.item-dialog-image{flex-direction:column;flex:60%;align-items:center;gap:8px;display:flex}.crop-hint{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.crop-editor{cursor:move;touch-action:none;-webkit-user-select:none;user-select:none;line-height:0;position:relative;overflow:hidden}.crop-frame{pointer-events:none;outline:2px solid #fff;position:absolute;box-shadow:0 0 0 9999px #0009}.item-dialog-image img{width:auto;max-width:100%;height:auto;max-height:70vh}.item-dialog-fields{flex:40%;min-width:260px}.meta{color:var(--muted);font-size:12px;line-height:1.6}.login{justify-content:center;align-items:center;min-height:100vh;display:flex}.login-form{background:var(--panel);border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:12px;width:320px;padding:24px;display:flex}.login-form h1{margin:0 0 4px;font-size:18px}.login-form label{color:var(--muted);flex-direction:column;gap:4px;display:flex}.error{color:var(--danger);margin:0}.col-handle{cursor:ew-resize;z-index:6;width:10px;position:absolute;top:0;bottom:0;right:-6px}.col-handle:after{content:"";background:#4f8cff40;width:2px;position:absolute;top:0;bottom:0;left:4px}.col-handle:hover:after,.col-handle.active:after{background:var(--accent)}.col-badge{background:var(--accent);color:#fff;white-space:nowrap;border-radius:4px;padding:2px 6px;position:absolute;top:4px;left:14px}button.danger.active{background:var(--danger);color:#fff}button.danger-fill{background:var(--danger);border-color:var(--danger);color:#fff}button.danger-fill:hover:not(:disabled){background:#c93a3f}.delete-bar{border-bottom:1px solid var(--danger);background:#3a1416;flex-wrap:wrap;align-items:center;gap:8px;padding:4px 8px;display:flex}.item-card.delete-mode{cursor:pointer}.item-card.delete-mode:hover{outline-offset:-2px;outline:2px solid #e5484d99}.item-card.selected{outline:3px solid var(--danger);outline-offset:-3px}.item-card.selected img{opacity:.4}.delete-check{color:#fff;text-align:center;pointer-events:none;background:#0006;border:2px solid #fff;border-radius:50%;width:20px;height:20px;font-size:12px;font-weight:700;line-height:16px;position:absolute;top:4px;left:4px}.item-card.selected .delete-check{background:var(--danger);border-color:var(--danger)}.notice{background:var(--panel-2);white-space:pre-line;z-index:60;border:1px solid #f5c451;border-radius:6px;align-items:flex-start;gap:10px;max-width:560px;padding:8px 10px 8px 14px;display:flex;position:fixed;bottom:12px;left:12px}.notice button{padding:0 6px}@media (max-width:700px){.item-dialog{flex-direction:column}.item-dialog-fields{min-width:0}.item-dialog-image img{max-height:45vh}}@media (max-width:600px){:root{--label-width:60px}.tier-label{min-height:48px;font-size:16px}.toolbar{gap:4px;padding:4px 6px}.toolbar .sep{display:none}.top-bars{position:static}.delete-bar{z-index:30;border-bottom:none;border-top:1px solid var(--danger);position:fixed;bottom:0;left:0;right:0}.app{padding-bottom:96px}.delete-hint{display:none}.tool-field input[type=range]{width:80px}.unsorted-header .hint{flex-basis:100%;margin-left:0}.modal{max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:12px}input,select,textarea{font-size:16px}}.view-switch{border:1px solid var(--line);border-radius:4px;display:inline-flex;overflow:hidden}.view-switch button{color:var(--muted);background:0 0;border:none;border-radius:0}.view-switch button.active{background:var(--accent);color:#fff}.app.map-mode{flex-direction:column;height:100dvh;display:flex}.app.map-mode .top-bars{position:static}.map-view{flex:1;min-height:0;display:flex}.map-palette{background:var(--panel);border-right:1px solid var(--line);flex:0 0 180px;padding:6px;overflow-y:auto}.map-palette-section{margin-bottom:8px}.map-palette-tier{color:#111;border-radius:3px;margin-bottom:4px;padding:1px 6px;font-size:12px;font-weight:700}.map-palette-items{grid-template-columns:repeat(2,1fr);gap:4px;display:grid}.map-palette-item{aspect-ratio:16/9;cursor:grab;background:#000;border-radius:2px;overflow:hidden}.map-palette-item img{width:100%;height:100%;display:block}.map-palette-item.used{opacity:.45}.map-palette-item:hover{outline:2px solid var(--accent);outline-offset:-2px;opacity:1}.map-canvas{flex:1;min-width:0;position:relative}.map-canvas .react-flow{--xy-background-color:var(--bg)}.map-actions{z-index:5;pointer-events:none;flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex;position:absolute;top:8px;left:8px;right:8px}.map-actions button{pointer-events:auto}.map-empty{color:var(--muted);text-align:center;pointer-events:none;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.map-help{color:var(--muted);pointer-events:none;font-size:11px;position:absolute;bottom:8px;left:56px}.map-node{outline-offset:2px;border-radius:6px;outline:2px solid #0000}.map-node.selected{outline-color:var(--accent)}.map-item-node{background:var(--panel-2);overflow:hidden}.map-item-image{background:#000;overflow:hidden}.map-item-image img{width:100%;height:100%;display:block}.map-caption{white-space:pre-wrap;overflow-wrap:anywhere;padding:4px 6px 5px;font-size:12px;line-height:1.35}.map-text-node{min-width:80px;max-width:260px;padding:8px 12px;font-size:14px;font-weight:700}.map-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.35}.map-text-input{width:100%;min-width:120px;color:var(--text);border:1px solid var(--accent);resize:none;background:#0d0d0f;border-radius:3px;padding:4px;font-size:12px;display:block}.map-color-row{background:var(--panel-2);border:1px solid var(--line);border-radius:6px;gap:4px;padding:4px;display:flex}.map-color-row .swatch{width:20px;height:20px}.map-canvas .react-flow__handle{background:var(--accent);opacity:0;border:2px solid #fff;width:10px;height:10px;transition:opacity .1s}.map-canvas .react-flow__node:hover .react-flow__handle,.map-canvas .react-flow__node.selected .react-flow__handle,.map-canvas .react-flow__handle.connectingfrom,.map-canvas .react-flow__handle.connectingto{opacity:1}@media (max-width:600px){.map-palette{flex-basis:96px}.map-palette-items{grid-template-columns:1fr}.map-help{display:none}}.map-item-title{overflow-wrap:anywhere;padding:4px 6px 0;font-size:12px;font-weight:700;line-height:1.3}.map-item-title+.map-caption{padding-top:2px}.map-item-node .map-caption:last-child,.map-item-node .map-item-title:last-child{padding-bottom:5px}.map-check{background:var(--panel-2);border:1px solid var(--line);pointer-events:auto;cursor:pointer;border-radius:4px;align-items:center;gap:4px;padding:3px 8px;display:flex}.map-edge-panel{z-index:6;background:var(--panel-2);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;max-width:calc(100% - 16px);padding:6px 10px;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #00000080}.map-edge-panel-title{color:var(--muted);font-weight:700}.seg{border:1px solid var(--line);border-radius:4px;display:inline-flex;overflow:hidden}.seg button{background:0 0;border:none;border-radius:0;padding:2px 8px}.seg button+button{border-left:1px solid var(--line)}.seg button.active{background:var(--accent);color:#fff}.map-edge-panel .map-color-row{background:0 0;border:none;padding:0}
