:root{color-scheme:light;--surface: #fafafa;--surface-soft: #f0f0f5;--panel: #ffffff;--panel-soft: #f7f7f8;--line: #d9d9de;--line-strong: #bfc1c8;--text: #1a1a1a;--muted: #666666;--faint: #999999;--accent: #ff6b81;--accent-strong: #d91a37;--accent-soft: #fff1f4;--bucket: #ffe45c;--bucket-soft: #fff9d8;--danger: #b42318;--success: #16794c;--shadow: 0 18px 60px rgba(15, 23, 42, .08);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(135deg,#fafafa,#f0f0f5);color:var(--text);-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button{min-height:38px;border:1px solid #1f2937;border-radius:8px;background:#1f2937;color:#fff;padding:0 14px;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}button:hover{transform:translateY(-1px);background:#111827;box-shadow:0 8px 18px #0f172a1f}input,textarea{width:100%;border:1px dashed var(--line);border-radius:8px;background:#ffffff94;color:var(--text);padding:11px 12px;outline:none}textarea{resize:vertical;line-height:1.65}input:focus,textarea:focus{border-color:var(--line-strong);background:#ffffffc7;box-shadow:0 0 0 3px #0f172a0a}.shell{min-height:100vh}.login-view{min-height:100vh;display:grid;place-items:center;padding:24px}.login-panel{width:min(100%,340px);display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start;padding:12px;background:#fafafa6b;border:1px dashed var(--line);border-radius:8px;box-shadow:none;animation:fade-up .28s ease both}.eyebrow{margin:0 0 9px;color:var(--faint);font-size:12px;font-weight:650;letter-spacing:0}.login-panel h1{margin:0 0 22px;font-size:28px;line-height:1.1}.login-panel input{margin:0}.login-panel button{min-height:46px;padding-inline:18px}label{display:grid;gap:7px;margin-bottom:14px}label span,.field-label{color:var(--muted);font-size:13px;font-weight:650}.form-error{grid-column:1 / -1;min-height:20px;margin:0;color:var(--danger);font-size:14px}.app-view{min-height:100vh;padding:18px}.top-actions{display:flex;gap:8px;align-items:center;flex:0 0 auto}.ghost-button{background:#ffffff6b;border-color:var(--line);color:var(--muted)}.ghost-button:hover{background:#ffffffb8;border-color:var(--line-strong);color:var(--text);box-shadow:0 8px 18px #0f172a0f}.workspace{width:min(1180px,100%);margin:0 auto}.search-wrap{display:flex;align-items:center;gap:10px;margin-bottom:14px;animation:fade-up .3s ease both}.search-wrap input{flex:1 1 auto;min-height:46px;background:#ffffff70}.content-grid{display:grid;grid-template-columns:minmax(280px,390px) minmax(0,1fr);gap:14px;height:calc(100vh - 96px);min-height:540px}.list-pane,.detail-pane{min-height:0;overflow:auto}.item-list{display:grid;gap:8px}.item-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:64px;padding:12px 14px;border:1px dashed var(--line);border-radius:8px;background:#ffffff57;color:var(--text);text-align:left;box-shadow:none;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.item-row.has-image{grid-template-columns:minmax(0,1fr) 46px auto}.item-row:hover,.item-row.active{border-color:var(--line-strong);background:#ffffff9e;box-shadow:none}.item-row.active{border-color:#ff6b8180}.item-row-main{display:grid;min-width:0}.item-thumb{width:46px;height:46px;overflow:hidden;border:1px dashed var(--line);border-radius:8px;background:#fff9d885}.item-thumb img{display:block;width:100%;height:100%;object-fit:cover}.item-row strong{overflow:hidden;font-size:15px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.item-row small{justify-self:end;color:var(--faint);font-size:12px;line-height:1.3;white-space:nowrap}.empty-state,.blank-detail{display:grid;gap:8px;place-items:center;min-height:260px;border:1px dashed var(--line);border-radius:8px;background:transparent;color:var(--muted);text-align:center;padding:24px}.empty-state span,.blank-detail span{color:var(--faint);font-size:13px}.detail-card{min-height:100%;padding:20px;border:1px dashed var(--line);border-radius:8px;background:#ffffff47;box-shadow:none;animation:fade-up .32s ease both}.detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.detail-head h2{margin:0;font-size:22px;line-height:1.28;overflow-wrap:anywhere}.detail-actions{display:flex;flex:0 0 auto;gap:8px}.example-image{display:block;overflow:hidden;margin:0 0 16px;border:1px dashed var(--line);border-radius:8px;background:#ffffff57}.example-image:hover{border-color:var(--line-strong);box-shadow:none}.example-image img{display:block;width:100%;max-height:420px;object-fit:contain}.image-field{display:grid;gap:7px;margin-bottom:14px}.sr-only-file{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}.upload-box{position:relative;display:grid;min-height:92px;padding:12px;border:1px dashed var(--line);border-radius:8px;background:#fff6;cursor:pointer;outline:none;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.upload-box:hover,.upload-box:focus-visible,.upload-box.is-dragging{border-color:var(--accent);background:#ffffffad;box-shadow:0 0 0 3px #ff6b8117}.upload-empty{display:flex;align-items:center;gap:12px;color:var(--muted)}.upload-empty strong,.upload-preview-meta strong{display:block;color:var(--text);font-size:14px;line-height:1.4}.upload-empty small,.upload-preview-meta small{display:block;margin-top:3px;color:var(--faint);font-size:12px;line-height:1.4}.upload-icon{display:grid;flex:0 0 auto;place-items:center;width:42px;height:42px;border:1px dashed var(--line);border-radius:8px;background:#fff9d88f;color:var(--text);font-size:24px;font-weight:400;line-height:1}.upload-preview{display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:12px}.upload-preview img{display:block;width:72px;height:72px;border:1px dashed var(--line);border-radius:8px;background:#ffffff80;object-fit:cover}.upload-preview-meta{min-width:0}.upload-preview-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-clear{min-height:34px;padding:0 12px}.success-button{background:var(--success);border-color:var(--success)}.success-button:hover{background:#12623f}.body-block{white-space:pre-wrap;overflow-wrap:anywhere;min-height:360px;margin:0;border:1px dashed var(--line);border-radius:8px;background:#ffffff6b;padding:16px;line-height:1.7;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:13px}.meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 0}.meta-grid div{border-top:1px dashed var(--line);padding-top:12px}.meta-grid dt{color:var(--faint);font-size:12px}.meta-grid dd{margin:4px 0 0;color:var(--muted);font-size:13px}dialog{width:min(720px,calc(100vw - 24px));max-height:calc(100vh - 24px);border:1px dashed var(--line);border-radius:8px;padding:0;background:#fffffff0;box-shadow:var(--shadow)}dialog::backdrop{background:#ffffffbd;backdrop-filter:blur(8px)}.item-form{padding:20px}.item-form header,.item-form footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.item-form h2,.confirm-dialog h2{margin:0 0 18px;font-size:20px;line-height:1.2}.icon-button{width:36px;min-height:36px;padding:0;background:transparent;border-color:transparent;color:var(--muted);font-size:24px}.icon-button:hover{background:var(--accent-soft);color:var(--text);box-shadow:none}.danger-button{background:var(--danger);border-color:var(--danger)}.danger-button:hover{background:#8f1d14}.form-actions{display:flex;gap:8px}.confirm-dialog{width:min(420px,calc(100vw - 24px))}.confirm-dialog form{padding:20px}.confirm-dialog p{margin:0 0 20px;color:var(--muted);line-height:1.5;overflow-wrap:anywhere}.confirm-dialog footer{display:flex;justify-content:flex-end;gap:8px}*{scrollbar-width:thin;scrollbar-color:#d1d5db transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:999px}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}[hidden]{display:none!important}@media(max-width:860px){.app-view{padding:14px}.content-grid{grid-template-columns:1fr;height:auto;min-height:0}.list-pane,.detail-pane{overflow:visible}.body-block{min-height:260px}}@media(max-width:560px){.detail-head,.item-form footer{align-items:stretch;flex-direction:column}.search-wrap{align-items:stretch;flex-direction:column}.top-actions,.detail-actions,.form-actions{width:100%}.top-actions button,.detail-actions button,.form-actions button,.danger-button{flex:1}.meta-grid{grid-template-columns:1fr}.upload-preview{grid-template-columns:64px minmax(0,1fr)}.upload-preview img{width:64px;height:64px}.upload-clear{grid-column:1 / -1}}@media(max-width:420px){.login-panel{grid-template-columns:1fr}.login-panel button{width:100%}}
