@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap";:root{--bg-primary:#0f0f12;--bg-secondary:#1a1a1f;--bg-tertiary:#2a2a2f;--text-primary:#fff;--text-secondary:#a0a0a0;--accent-color:#00f0ff;--accent-hover:#4df4ff;--button-text-color:#000;--input-color-scheme:dark;--json-key-color:#9cdcfe;--json-string-color:#ce9178;--json-number-color:#b5cea8;--json-literal-color:#569cd6;--json-punctuation-color:#d4d4d4;--glass-bg:#ffffff0d;--glass-border:#ffffff1a;--border-subtle:#444;--search-bg:#ffffff0d;--color-error:#f55;--color-error-bg:#ff55551a;--color-success:#69db7c;--color-warning:#ffa94d;--selection-border:var(--accent-color);--selection-bg:color-mix(in srgb, var(--accent-color) 15%, transparent);--selection-bg-strong:color-mix(in srgb, var(--accent-color) 30%, transparent);--selection-glow:color-mix(in srgb, var(--accent-color) 50%, transparent);--font-family:"Noto Sans JP", system-ui, Avenir, Helvetica, Arial, sans-serif;--font-size-xs:.75rem;--font-size-sm:.85rem;--font-size-md:1rem;--font-size-lg:1.1rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 12px #0000004d;--shadow-lg:0 8px 32px #0006;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:.75rem;--spacing-lg:1rem;--spacing-xl:1.5rem}html{background-color:var(--bg-primary)}html,body{overscroll-behavior:none;width:100%;height:100%}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;margin:0;padding:0;overflow:hidden}#root{overscroll-behavior:none;flex-direction:column;height:100%;min-height:100dvh;display:flex}a{color:var(--accent-color);text-decoration:none;transition:color .2s}a:hover{color:var(--accent-hover)}button{cursor:pointer;border:none;outline:none;font-family:inherit}input[type=date]{color-scheme:var(--input-color-scheme)}input[type=date]::-webkit-calendar-picker-indicator{opacity:.75}:root[data-color-scheme=light]{--item-card-checkbox-bg:#ffffffe0;--item-card-checkbox-border:#1118279e;--item-card-checkbox-checked-bg:var(--accent-color);--item-card-checkbox-checked-border:color-mix(in srgb, var(--accent-color) 76%, #000);--item-card-checkbox-check-color:var(--button-text-color);--item-card-checkbox-check-scale:2;--item-card-checkbox-shadow:0 1px 4px #00000047}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--radius-lg)}.btn-primary{background:var(--accent-color);color:var(--button-text-color);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);font-weight:600;transition:all .2s}.btn-primary:hover{background:var(--accent-hover);box-shadow:0 4px 12px color-mix(in srgb, var(--accent-color) 30%, transparent);transform:translateY(-1px)}.dialog-button{min-height:2.35rem;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);box-sizing:border-box;color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:.5rem;font-weight:500;line-height:1;transition:background .2s,color .2s,opacity .2s;display:inline-flex}.dialog-button:disabled{cursor:not-allowed;opacity:.6}.dialog-button-secondary{background:var(--border-subtle);color:var(--text-primary)}.dialog-button-secondary:hover:not(:disabled){background:color-mix(in srgb, var(--border-subtle) 82%, var(--text-primary))}.dialog-button-primary{background:var(--accent-color);color:var(--button-text-color);font-weight:600}.dialog-button-primary:hover:not(:disabled){background:var(--accent-hover)}.dialog-button-danger{background:var(--color-error);color:#fff;font-weight:600}.dialog-button-danger:hover:not(:disabled){background:color-mix(in srgb, var(--color-error) 85%, var(--text-primary))}.dialog-button-compact{gap:.4rem;min-height:2rem;padding:.45rem .75rem}.input-field{background:var(--bg-secondary);border:1px solid var(--glass-border);color:var(--text-primary);padding:var(--spacing-md);border-radius:var(--radius-md);box-sizing:border-box;width:100%;transition:border-color .2s}.input-field:focus{border-color:var(--accent-color);outline:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.animate-pulse{animation:1.5s ease-in-out infinite pulse}.btn-primary .btn-text{display:inline}.item-card:hover{box-shadow:0 4px 12px color-mix(in srgb, var(--accent-color) 20%, transparent);transform:translateY(-2px)}.editable-field{border:1px solid #0000;border-bottom:1px solid var(--glass-border,#ffffff1a);transition:border-color .15s,border-radius .15s}.editable-field:hover{border:1px solid var(--glass-border,#ffffff26);border-radius:4px}.editable-field.bold{font-weight:600}.item-metadata-control{border:1px solid #0000;border-bottom:1px solid var(--glass-border,#ffffff1a);color-scheme:var(--input-color-scheme,dark);transition:border-color .15s,border-radius .15s}select.item-metadata-control option{background-color:var(--bg-secondary);color:var(--text-primary)}select.item-metadata-control option:checked{background-color:var(--accent-color);color:var(--button-text-color)}.item-metadata-control:hover{border:1px solid var(--glass-border,#ffffff26);border-radius:4px}.item-metadata-control:focus{border:1px solid var(--accent-color);border-radius:var(--radius-sm)}.item-metadata-control::placeholder{color:var(--text-secondary,#888);opacity:1}[draggable=true]{cursor:grab}[draggable=true]:active{cursor:grabbing}.clickable-tag{transition:transform .15s,background-color .15s,box-shadow .15s!important}.clickable-tag:hover{transform:scale(1.08);box-shadow:0 2px 8px #0000004d;background-color:var(--tag-bg-hover,#505050)!important}.hover-bg{transition:background-color .15s}.hover-bg:hover{background-color:var(--hover-bg,#ffffff1a)!important}.project-tree-node{transition:background-color .15s}.project-tree-node:not(.active):hover{background-color:var(--hover-bg,#ffffff0d)!important}.model-load-button{transition:transform .18s,background-color .18s,border-color .18s,filter .18s}.model-load-button:active{transform:scale(.97)}.item-card-action-btn{transition:transform .15s,background-color .15s,opacity .15s}@media (hover:hover){.model-load-button:hover{transform:scale(1.06);filter:drop-shadow(0 12px 24px #00000075)brightness(1.08)!important;background-color:#0000004d!important;border-color:#fff!important}.item-card-action-btn:hover,.item-card-checkbox-btn:hover{transform:scale(1.15);background-color:#000000b3!important}.item-card-checkbox-btn:not(.checked):hover{border-color:var(--accent-color)!important}:root[data-color-scheme=light] .item-card-checkbox-btn:hover{transform:scale(1.08);background-color:var(--item-card-checkbox-bg)!important}:root[data-color-scheme=light] .item-card-checkbox-btn.checked:hover{background-color:var(--accent-hover)!important;border-color:var(--accent-hover)!important}}.item-card-action-btn:active{transform:scale(.95)}.item-card-checkbox-btn{transition:transform .15s,background-color .15s,border-color .15s,box-shadow .15s,opacity .15s}.item-card-checkbox-btn:active{transform:scale(.95)}.project-link{transition:color .15s}@media (hover:hover){.project-link:hover{color:var(--accent-color)!important}}.project-menu-btn{opacity:.4;transition:opacity .15s,background-color .15s,transform .15s}.project-tree-node.context-menu-open .project-menu-btn{opacity:1}@media (hover:hover){.project-tree-node:hover .project-menu-btn{opacity:1}.project-menu-btn:hover{opacity:1;transform:scale(1.1);background-color:var(--hover-bg,#ffffff26)!important;color:var(--text-primary,#fff)!important}}.project-menu-btn:active{transform:scale(.95)}@media (width<=768px){.btn-primary.compact{padding:.5rem}.btn-primary.compact .btn-text,.app-title{display:none}.app-footer{display:none!important}.content-area{padding-bottom:env(safe-area-inset-bottom,0)}.page-header{gap:.5rem}.page-header-title{flex:1;min-width:0}.page-header-title h1{font-size:1rem!important}.page-header-actions{flex-shrink:0}}
