:root{--bg:#0a0a0a;--bg-surface:#141414;--bg-hover:#1e1e1e;--bg-input:#1a1a1a;--border:#2a2a2a;--text:#e0e0e0;--text-dim:#777;--text-bright:#fff;--accent:#4ade80;--danger:#ef4444;--font:"SF Mono", "Menlo", "Monaco", "Consolas", monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:13px;line-height:1.4;overflow:hidden}button{font-family:var(--font);font-size:inherit;cursor:pointer;color:var(--text);background:0 0;border:none}.btn{border:1px solid var(--border);background:var(--bg-surface);white-space:nowrap;border-radius:4px;padding:6px 10px;font-size:11px}.btn:hover{background:var(--bg-hover)}.btn:active{opacity:.7;transform:scale(.97)}.btn-accent{border-color:var(--accent);color:var(--accent)}.btn-danger{border-color:var(--danger);color:var(--danger)}.btn-sm{padding:3px 8px;font-size:11px}input,select,textarea{font-family:var(--font);font-size:inherit;background:var(--bg-input);color:var(--text);border:1px solid var(--border);border-radius:4px;outline:none;min-width:0;padding:5px 8px}input:focus,select:focus,textarea:focus{border-color:var(--accent)}.app{flex-direction:column;max-width:1200px;height:100%;margin:0 auto;padding:8px;display:flex;overflow:hidden}.header{border-bottom:1px solid var(--border);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;padding:6px 0;display:flex}.header-left{align-items:center;gap:6px;min-width:0;display:flex}.header h1{color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.header-date{color:var(--text-dim);white-space:nowrap;font-size:11px}.header-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.back-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:2px 4px;font-size:14px}.back-btn:hover{color:var(--text)}.header-name-edit{color:var(--text-bright);flex:1;min-width:0;font-size:14px;font-weight:600}.event-list{flex-direction:column;gap:6px;display:flex}.event-card{background:var(--bg-surface);border:1px solid var(--border);cursor:pointer;border-radius:4px;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.event-card:hover{background:var(--bg-hover)}.event-card:active{opacity:.8}.event-card-info{flex-direction:column;gap:2px;min-width:0;display:flex}.event-card-name{color:var(--text-bright);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.event-card-date{color:var(--text-dim);font-size:11px}.event-card-actions{flex-shrink:0;gap:4px;display:flex}.section-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin:12px 0 6px;font-size:11px}.create-form{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.create-form input{flex:1;min-width:100px}.table-wrap{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow:auto}.pack-table{border-collapse:collapse;table-layout:fixed;width:100%}.pack-table th{text-align:left;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);background:var(--bg);z-index:2;white-space:nowrap;padding:4px;font-size:10px;font-weight:600;position:sticky;top:0}.pack-table td{border-bottom:1px solid var(--border);white-space:nowrap;text-overflow:ellipsis;max-width:200px;padding:3px 4px;overflow:hidden}.col-grip{width:18px;padding:0!important}.col-check{text-align:center;width:32px}.col-field{width:80px}.grip-cell{text-align:center;vertical-align:middle;width:18px;padding:0!important}.drag-handle{cursor:grab;width:18px;height:28px;color:var(--border);-webkit-user-select:none;user-select:none;border-radius:3px;justify-content:center;align-items:center;font-size:14px;transition:color .1s,background .1s;display:inline-flex}.drag-handle:hover{color:var(--text-dim);background:var(--bg-hover)}.drag-handle:active{cursor:grabbing}tr.dragging{opacity:.3}.drag-ghost{opacity:.92;background:var(--bg-surface);pointer-events:none;border-radius:4px;overflow:hidden;box-shadow:0 8px 24px #00000080}.drag-ghost table{margin:0}.drop-indicator{background:var(--accent);pointer-events:none;z-index:999;height:2px;box-shadow:0 0 6px var(--accent);border-radius:1px;position:fixed}.row-category td{background:var(--bg-surface);color:var(--text-bright);cursor:pointer;padding:5px 4px;font-size:12px;font-weight:600}.row-category:hover td{background:var(--bg-hover)}.row-container td{background:var(--bg);color:var(--text-dim);cursor:pointer;padding:4px 4px 4px 14px;font-size:11px;font-style:italic}.row-container:hover td{background:var(--bg-hover)}.row-item td{font-size:12px}.row-item:hover td{background:var(--bg-hover)}.item-name{cursor:pointer;padding-left:8px}.item-name-indented{cursor:pointer;padding-left:20px}.check-cell{text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none}.check-cell:active .check-box{opacity:.6}.check-box{border:1.5px solid var(--border);vertical-align:middle;border-radius:3px;width:16px;height:16px;display:inline-block;position:relative}.check-box.checked:after{content:"";border-radius:2px;width:10px;height:10px;position:absolute;top:2px;left:2px}.check-header{cursor:pointer;position:relative}.check-header .check-del{color:var(--danger);font-size:8px;display:none;position:absolute;top:-2px;right:-2px}.check-header:hover .check-del{display:inline}.quick-add input{width:100%;color:var(--text-dim);background:0 0;border:none;border-bottom:1px solid #0000;border-radius:0;padding:4px 4px 4px 8px;font-size:12px}.quick-add input:focus{color:var(--text);border-bottom-color:var(--accent)}.quick-add-indented input{padding-left:20px}.quick-add-ctr input{padding-left:14px;font-style:italic}.row-editing td{background:var(--bg-surface)}.inline-edit{width:100%;font-size:inherit;font-family:inherit;line-height:inherit;color:var(--text-bright);box-sizing:border-box;background:0 0;border:none;border-radius:0;outline:none;margin:0;padding:0;display:block}.inline-edit-sm{text-align:center}.toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:6px;margin-bottom:2px;padding:4px 0;display:flex}.toolbar-group{align-items:center;gap:3px;display:flex}.toolbar-sep{background:var(--border);width:1px;height:14px;margin:0 2px}.search-input{width:100px;padding:3px 6px;font-size:11px}.col-toggle{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;white-space:nowrap;background:0 0;border-radius:3px;padding:2px 5px;font-size:10px}.col-toggle:active{opacity:.7}.col-toggle.active{background:var(--bg-hover);color:var(--text);border-color:var(--text-dim)}.row-actions{opacity:0;transition:opacity .1s}tr:hover .row-actions{opacity:1}.row-action-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:1px 3px;font-size:10px}.row-action-btn:hover{color:var(--text)}.row-action-btn:active{opacity:.6}.empty{text-align:center;color:var(--text-dim);padding:40px 16px;font-size:12px}.empty p{margin-bottom:12px}.modal-backdrop{z-index:100;background:#000000b3;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:10px;width:100%;max-width:340px;padding:16px;display:flex}.modal h2{color:var(--text-bright);font-size:14px}.modal label{color:var(--text-dim);flex-direction:column;gap:3px;font-size:11px;display:flex}.modal-actions{justify-content:flex-end;gap:6px;margin-top:4px;display:flex}.sync-bar{align-items:center;gap:4px;padding:4px 0;font-size:11px;display:flex}.sync-btn{color:var(--text-dim);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:3px;padding:2px 6px;font-size:11px}.sync-btn:hover{color:var(--text)}.sync-btn:active{opacity:.7}.sync-settings-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:14px}.sync-settings-btn:hover{color:var(--text)}.sync-settings{border:1px solid var(--border);background:var(--bg-surface);border-radius:4px;margin-bottom:8px;padding:8px}.sync-settings label{color:var(--text-dim);flex-direction:column;gap:3px;font-size:11px;display:flex}.sync-settings input{font-size:12px}.import-panel{border:1px solid var(--border);background:var(--bg-surface);border-radius:4px;flex-shrink:0;margin-bottom:8px;padding:10px}.import-textarea{width:100%;font-family:var(--font);background:var(--bg-input);color:var(--text);border:1px solid var(--border);resize:vertical;border-radius:4px;padding:6px;font-size:11px}.import-textarea:focus{border-color:var(--accent);outline:none}.import-mappings{flex-wrap:wrap;gap:6px;display:flex}.import-mapping{flex-direction:column;gap:2px;display:flex}.import-col-label{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;max-width:100px;font-size:10px;overflow:hidden}.import-mapping select{padding:2px 4px;font-size:11px}.import-preview{border-collapse:collapse;width:100%;margin-top:4px;font-size:11px}.import-preview th{text-align:left;color:var(--text-dim);border-bottom:1px solid var(--border);padding:2px 4px;font-size:10px}.import-preview td{border-bottom:1px solid var(--border);white-space:nowrap;text-overflow:ellipsis;max-width:120px;padding:2px 4px;overflow:hidden}@media (width<=480px){.desktop-only{display:none}.app{padding:4px}.header{gap:4px;padding:4px 0}.header h1{font-size:13px}.header-date{display:none}.header-actions{gap:3px}.header-actions .btn{padding:4px 6px;font-size:10px}.toolbar{gap:4px;padding:3px 0}.toolbar-sep{display:none}.search-input{width:80px}.create-form{flex-direction:column}.create-form input{flex:none;width:100%}.pack-table th{padding:3px;font-size:9px}.pack-table td{max-width:150px;padding:3px}.col-grip{width:16px}.col-check{width:28px}.grip-cell{width:16px}.drag-handle{width:16px;height:32px;font-size:12px}.row-category td{padding:4px 3px;font-size:11px}.row-container td{padding:3px 3px 3px 10px;font-size:10px}.row-item td{font-size:11px}.item-name{padding-left:4px}.item-name-indented{padding-left:12px}.quick-add input{padding-left:4px;font-size:11px}.quick-add-indented input{padding-left:12px}.quick-add-ctr input{padding-left:10px}.check-box{width:14px;height:14px}.check-box.checked:after{width:8px;height:8px}.row-actions{opacity:1}.import-panel{padding:8px}}
