:root{--bg:#12151a;--panel:#181c24;--panel-raised:#1f2430;--border:#282e3a;--border-soft:#202531;--text:#e9ebef;--text-muted:#8b93a5;--text-faint:#5c6478;--accent:#35c2a6;--accent-dim:#23503f;--accent-text:#7fe0cc;--warn:#e8a33d;--danger:#e5646b;--danger-dim:#3a2226;--radius-sm:4px;--radius-md:7px;--font-ui:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,monospace;--page-panel-raised:var(--panel-raised);--page-border:var(--border);--page-border-soft:var(--border-soft);--page-text:var(--text);--page-text-muted:var(--text-muted);--page-text-faint:var(--text-faint)}:root[data-theme=light]{--bg:#f4f5f7;--panel:#fff;--panel-raised:#edeff3;--border:#dde1e8;--border-soft:#e6e9ef;--text:#1a1d24;--text-muted:#5b6472;--text-faint:#8991a0;--accent:#1f9d85;--accent-dim:#d3f3ea;--accent-text:#147a65;--warn:#a3660a;--danger:#c62f3a;--danger-dim:#fbe4e5}:root[data-theme=light] .auth-shell{background:radial-gradient(1100px 760px at 12% -12%,rgba(31,157,133,.2),transparent 62%),radial-gradient(900px 700px at 108% 112%,rgba(91,141,239,.16),transparent 60%),linear-gradient(160deg,#f8fafb,#eef2f5)}:root[data-theme=light] .auth-card{border-color:rgba(26,29,36,.08);box-shadow:0 1px 2px rgba(26,29,36,.05),0 24px 60px -24px rgba(26,29,36,.22)}:root[data-theme=light] .modal-overlay{background:rgba(30,34,42,.35)}*{box-sizing:border-box}body,html{padding:0;margin:0}html{touch-action:manipulation}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;transition:background .15s ease,color .15s ease}a{color:inherit}button{font-family:inherit;font-size:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-dim);color:var(--text)}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--panel-raised);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:border-color .12s ease,background .12s ease}.btn:hover{border-color:#3a4150}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#06231c;font-weight:600}.btn-primary:hover{background:#3fd6b8;border-color:#3fd6b8}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-muted)}.btn-ghost:hover{color:var(--text);background:var(--panel-raised)}.btn-danger{background:transparent;border-color:var(--border);color:var(--danger)}.btn-danger:hover{background:var(--danger-dim);border-color:var(--danger)}.btn-sm{padding:5px 10px;font-size:12px}.btn-block{width:100%;justify-content:center}label.field-label{display:block;font-size:12px;color:var(--text-muted);margin-bottom:6px;font-weight:500}.input,select.input,textarea.input{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-sm);padding:9px 11px;font-size:13.5px;font-family:var(--font-ui);transition:border-color .12s ease}.input:focus{border-color:var(--accent);outline:none}.input::placeholder{color:var(--text-faint)}textarea.input{resize:vertical;min-height:70px}.input-mono{font-family:var(--font-mono)}.field-group{margin-bottom:16px}.field-hint{font-size:11.5px;color:var(--text-faint);margin-top:5px}.checkbox-row{display:flex;align-items:center;gap:8px}.checkbox-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1fr;place-items:center;background:radial-gradient(1100px 760px at 12% -12%,rgba(53,194,166,.2),transparent 62%),radial-gradient(900px 700px at 108% 112%,rgba(91,141,239,.14),transparent 60%),linear-gradient(160deg,#10151a,#12151a 55%,#0c1014);background-attachment:fixed;padding:24px}.auth-card{width:100%;max-width:380px;background:var(--panel);border:1px solid hsla(0,0%,100%,.07);border-radius:12px;padding:32px 28px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04),0 28px 70px -28px rgba(0,0,0,.7)}.auth-brand{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.auth-brand .mark{width:22px;height:22px;border-radius:5px;background:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:12px;font-weight:600;color:#06231c}.auth-brand h1{font-size:17px;margin:0;font-weight:600}.auth-sub{color:var(--text-muted);font-size:13px;margin:6px 0 24px}.auth-error{background:var(--danger-dim);border:1px solid #5c2a2f;color:#f3a5a9;font-size:12.5px;padding:9px 11px;border-radius:var(--radius-sm);margin-bottom:16px}.auth-foot{margin-top:18px;font-size:12.5px;color:var(--text-muted);text-align:center}.auth-foot a{color:var(--accent-text);text-decoration:none}.auth-foot a:hover{text-decoration:underline}.app-shell{display:grid;grid-template-columns:248px 1fr;height:100vh}.content-area{height:100vh;min-width:0}.content-area,.sidebar{display:flex;flex-direction:column}.sidebar{background:var(--panel);color:var(--text);border-right:1px solid var(--border);box-shadow:1px 0 0 rgba(0,0,0,.03),4px 0 16px -8px rgba(0,0,0,.25);padding:18px 14px;overflow-y:auto;position:relative;z-index:1;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.sidebar-list::-webkit-scrollbar,.sidebar::-webkit-scrollbar{width:7px}.sidebar-list::-webkit-scrollbar-track,.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar-list::-webkit-scrollbar-thumb,.sidebar::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.sidebar-list:hover::-webkit-scrollbar-thumb,.sidebar:hover::-webkit-scrollbar-thumb{background-color:var(--text-faint)}.sidebar-list::-webkit-scrollbar-thumb:hover,.sidebar::-webkit-scrollbar-thumb:hover{background-color:var(--accent)}.sidebar-brand{display:flex;align-items:center;gap:8px;padding:4px 6px 18px}.sidebar-brand .mark{width:22px;height:22px;border-radius:5px;background:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:12px;font-weight:600;color:#06231c;flex-shrink:0}.sidebar-brand span{font-weight:600;font-size:14.5px}.sidebar-section-label{font-size:11px;text-transform:none;color:var(--text-faint);padding:0 6px;margin:6px 0;display:flex;justify-content:space-between;align-items:center}.sidebar-section-actions{display:flex;align-items:center;gap:2px}.sidebar-new{color:var(--text-muted);background:none;border:none;cursor:pointer;font-size:15px;line-height:1;padding:2px 4px;border-radius:var(--radius-sm)}.sidebar-new:hover{color:var(--text);background:var(--panel-raised)}.sidebar-search-input{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-sm);padding:6px 9px;font-size:12px;font-family:var(--font-ui);margin-bottom:8px}.sidebar-search-input:focus{border-color:var(--accent);outline:none}.sidebar-search-input::placeholder{color:var(--text-faint)}.sidebar-search-highlight{background:var(--accent-dim);color:var(--accent-text);border-radius:2px;padding:0 1px}.sidebar-link-match{color:var(--text)}.sidebar-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1 1;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.sidebar-link{display:flex;align-items:center;gap:9px;padding:8px;border-radius:var(--radius-sm);color:var(--text-muted);text-decoration:none;font-size:13.5px}.sidebar-link.active,.sidebar-link:hover{background:var(--panel-raised);color:var(--text)}.sidebar-track-icon{width:18px;height:18px;border-radius:5px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:9px;font-weight:600;overflow:hidden}.sidebar-link-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-link-row{display:flex;align-items:center;gap:2px;cursor:-webkit-grab;cursor:grab;border-radius:var(--radius-sm);border:1px solid transparent;border-bottom:1px solid var(--border-soft);margin-bottom:3px;padding-bottom:3px}.sidebar-link-row.dragging{opacity:.4}.sidebar-link-row.drag-over{border-color:var(--accent);background:var(--accent-dim)}.sidebar-link-row.drag-invalid{opacity:.35}.sidebar-section-label.drag-over{outline:1px dashed var(--accent);outline-offset:2px;border-radius:var(--radius-sm);color:var(--accent-text)}.sidebar-dnd-error{font-size:11.5px;color:var(--danger);padding:4px 6px;margin:0 0 6px}.sidebar-link-row .sidebar-link{flex:1 1;min-width:0}.sidebar-tree-toggle{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;background:none;border:none;color:var(--text-faint);font-size:11px;cursor:pointer;border-radius:var(--radius-sm)}.sidebar-tree-toggle:hover{color:var(--text);background:var(--panel-raised)}.sidebar-tree-toggle-spacer{width:20px;flex-shrink:0}.sidebar-sublist{flex:none;overflow:visible}.sidebar-foot{border-top:1px solid var(--border-soft);padding-top:12px;margin-top:8px;display:flex;flex-direction:column;gap:8px}.sidebar-foot-row,.sidebar-user-btn{display:flex;align-items:center;gap:8px}.sidebar-user-btn{flex:1 1;min-width:0;background:none;border:none;padding:4px;margin:-4px;border-radius:var(--radius-sm);cursor:pointer;text-align:left;color:inherit}.sidebar-user-btn:hover{background:var(--panel-raised)}.sidebar-user{font-size:12.5px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{width:26px;height:26px;border-radius:50%;background:var(--accent-dim);color:var(--accent-text);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;font-family:var(--font-mono);flex-shrink:0;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-lg{width:64px;height:64px;font-size:22px}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--panel-raised);color:var(--text-muted);cursor:pointer;flex-shrink:0}.theme-toggle:hover{color:var(--text);border-color:#3a4150}.theme-toggle svg{width:15px;height:15px}.profile-avatar-row{display:flex;align-items:center;gap:14px;margin-bottom:20px}.profile-avatar-actions{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.modal-section-title{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);margin:4px 0 14px;padding-top:18px;border-top:1px solid var(--border-soft)}.topbar{display:flex;align-items:center;justify-content:flex-end;gap:10px;height:58px;padding:0 28px;flex-shrink:0;background:var(--panel);color:var(--text);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:3;box-shadow:0 1px 0 rgba(0,0,0,.02),0 10px 24px -18px rgba(0,0,0,.6)}.notes-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--panel-raised);border:1px solid var(--border);font-size:14px;text-decoration:none;cursor:pointer}.notes-menu-trigger:hover{border-color:#3a4150}.topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,var(--accent) 0,transparent 55%);opacity:.55;pointer-events:none}.profile-menu{position:relative}.profile-menu-trigger{background:none;border:none;padding:0;cursor:pointer;border-radius:50%}.profile-menu-trigger .avatar{width:32px;height:32px;font-size:13px}.profile-menu-trigger:hover .avatar{outline:2px solid var(--border)}.profile-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--page-panel-raised);border:1px solid var(--page-border);border-radius:var(--radius-md);box-shadow:0 8px 24px rgba(0,0,0,.25);padding:6px;z-index:40;--text:var(--page-text);--text-muted:var(--page-text-muted);--text-faint:var(--page-text-faint);--border:var(--page-border);--border-soft:var(--page-border-soft);--panel-raised:var(--page-panel-raised);color:var(--text)}.profile-menu-header{display:flex;flex-direction:column;padding:8px 10px 10px;margin-bottom:4px;border-bottom:1px solid var(--border-soft)}.profile-menu-name{font-size:13px;font-weight:600;color:var(--text)}.profile-menu-email{font-size:12px;color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-menu-item{display:block;width:100%;text-align:left;background:none;border:none;padding:8px 10px;font-size:13px;color:var(--text);border-radius:var(--radius-sm);cursor:pointer}.profile-menu-item:hover{background:var(--panel)}.profile-menu-item-danger{color:var(--danger)}.main{padding:26px 34px 60px;width:100%;flex:1 1;overflow-y:auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:26px}.page-head h1{font-size:20px;margin:0 0 4px;font-weight:600}.track-name-text{cursor:text;border-radius:var(--radius-sm);padding:2px 5px;margin:-2px -5px}.track-name-text:hover{background:var(--panel-raised)}.track-name-input{font-size:20px;font-weight:600;font-family:inherit;padding:2px 5px;width:320px;max-width:100%}.page-head p{margin:0;color:var(--text-muted);font-size:13px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;max-width:640px}.page-head-actions{display:flex;gap:8px;flex-shrink:0}.track-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:12.5px;color:var(--text-faint);margin-bottom:10px}.track-breadcrumb-item a{color:var(--text-muted);text-decoration:none}.track-breadcrumb-item a:hover{color:var(--text);text-decoration:underline}.track-breadcrumb-sep{margin-left:4px;color:var(--text-faint)}.dashboard-search-input{max-width:360px;margin-bottom:20px}.track-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:12px;gap:12px}.track-grid-sub{margin-bottom:24px}.track-card{display:block;text-decoration:none;color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px;transition:border-color .12s ease}.track-card:hover{border-color:#3a4150}.track-card-top{display:flex;align-items:center;gap:10px;margin-bottom:10px}.track-card-icon{width:30px;height:30px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:12px;font-weight:600;flex-shrink:0;overflow:hidden}.track-icon-img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.track-title-icon{width:28px;height:28px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:13px;font-weight:600;border:none;cursor:pointer;overflow:hidden;vertical-align:middle;margin-right:8px}.track-title-icon:hover{filter:brightness(1.15)}.icon-picker{display:flex;flex-direction:column;gap:10px}.icon-picker-preview{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:16px;font-weight:600;overflow:hidden}.icon-picker-preview img{width:100%;height:100%;object-fit:cover}.icon-picker-preview i{font-size:20px}.icon-picker-tabs{display:flex;gap:4px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px;width:-moz-fit-content;width:fit-content}.icon-picker-tab{border:none;background:none;color:var(--text-muted);padding:6px 10px;border-radius:3px;font-size:12px;cursor:pointer;font-weight:500}.icon-picker-tab.active{background:var(--panel-raised);color:var(--text)}.icon-picker-grid{display:flex;flex-wrap:wrap;gap:6px}.icon-picker-swatch{width:34px;height:34px;border-radius:6px;border:1px solid var(--border);background:var(--bg);font-family:var(--font-mono);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center}.icon-picker-swatch:hover{border-color:#3a4150}.icon-picker-swatch.selected{border-color:var(--accent);background:var(--accent-dim)}.icon-picker-swatch i{font-size:15px}.icon-picker-grid-scroll{max-height:220px;overflow-y:auto;margin-top:8px;padding-right:2px}.track-card h3{font-size:14.5px;margin:0;font-weight:600;cursor:text;border-radius:var(--radius-sm)}.track-card h3:hover{background:var(--panel-raised)}.track-card p{margin:0;font-size:12.5px;color:var(--text-muted);min-height:32px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.track-card-meta{margin-top:12px;font-size:11.5px;color:var(--text-faint);display:flex;justify-content:space-between;border-top:1px solid var(--border-soft);padding-top:10px}.track-card-path{display:block;font-size:11px;color:var(--text-faint);margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-card-highlight{background:var(--accent-dim);color:var(--accent-text);border-radius:2px;padding:0 1px}.empty-state{border:1px dashed var(--border);border-radius:var(--radius-md);padding:48px 24px;text-align:center;color:var(--text-muted)}.empty-state h3{color:var(--text);margin:0 0 6px;font-size:15px}.empty-state p{margin:0 0 18px;font-size:13px}.table-wrap{border:1px solid var(--border);border-radius:var(--radius-md);overflow:auto;background:var(--panel);box-shadow:0 1px 2px rgba(0,0,0,.06),0 12px 28px -16px rgba(0,0,0,.45)}table.data-table{border-collapse:collapse;width:100%;min-width:640px}.data-table th{text-align:left;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:12px 14px;border-bottom:2px solid var(--border);border-right:1px solid var(--border-soft);white-space:nowrap;background:linear-gradient(180deg,var(--panel-raised) 0,var(--panel) 100%);box-shadow:0 2px 6px -4px rgba(0,0,0,.5);position:-webkit-sticky;position:sticky;top:0;z-index:1;overflow:visible;cursor:-webkit-grab;cursor:grab}.data-table th:last-of-type{border-right:none}.data-table th.col-dragging{opacity:.4}.data-table th.col-drag-over{box-shadow:inset 2px 0 0 var(--accent);background:var(--accent-dim)}.col-header{display:flex;align-items:center;gap:6px}.col-header-icon{color:var(--text-faint);font-family:var(--font-mono);font-size:10.5px;flex-shrink:0;width:14px;text-align:center}.col-header-label{display:flex;flex-direction:column;flex:1 1;min-width:0;white-space:normal}.col-header-name,.data-table th .col-type{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-table th .col-type{display:block;color:var(--text-faint);font-weight:400;margin-left:0;margin-top:2px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:0}.col-resize-handle{position:absolute;right:-5px;top:0;bottom:0;width:10px;cursor:col-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:10;flex-shrink:0}.col-resize-handle:after{content:"";position:absolute;right:4px;top:15%;bottom:15%;width:2px;border-radius:2px;background:var(--border);transition:background .1s,width .1s}.col-resize-handle:active:after,.col-resize-handle:hover:after{background:var(--accent);width:3px}.col-header-actions{display:flex;align-items:center;gap:1px;margin-left:auto;padding-left:8px;opacity:0;transition:opacity .12s ease}.data-table th:hover .col-header-actions{opacity:1}.col-icon-btn{background:none;border:none;color:var(--text-faint);cursor:pointer;padding:3px 5px;font-size:12px;line-height:1;border-radius:var(--radius-sm)}.col-icon-btn:hover{color:var(--text);background:var(--border-soft)}.col-icon-btn.danger:hover{color:var(--danger)}.data-table td{padding:0;border-bottom:1px solid var(--border-soft);border-right:1px solid var(--border-soft);font-size:13px;vertical-align:middle}.data-table td:last-of-type{border-right:none}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:nth-child(2n) td{background:hsla(0,0%,100%,.02)}:root[data-theme=light] .data-table tbody tr:nth-child(2n) td{background:rgba(0,0,0,.02)}.data-table tr:hover td{background:rgba(53,194,166,.06)!important}:root[data-theme=light] .data-table tr:hover td{background:rgba(31,157,133,.06)!important}.data-table tbody tr:hover td:first-child{box-shadow:inset 2px 0 0 var(--accent)}.cell-serial{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 7px;border-radius:999px;background:linear-gradient(135deg,var(--accent-dim) 0,var(--accent) 130%);color:var(--accent-text);font-family:var(--font-mono);font-size:11px;font-weight:600}.cell-inner{padding:9px 14px;min-height:20px;min-width:0;display:flex;align-items:center;gap:6px;cursor:text}.cell-inner.editable:hover{background:var(--panel-raised)}.cell-empty{color:var(--text-faint);font-style:italic}.cell-inner-clamp{align-items:flex-start}.cell-text-wrap{min-width:0;white-space:normal;line-height:1.4;word-break:break-word;overflow-wrap:anywhere}.cell-load-more{display:inline;background:none;border:none;padding:0 0 0 6px;margin:0;color:var(--accent-text);font-size:12.5px;font-weight:600;cursor:pointer}.cell-load-more:hover{text-decoration:underline}.cell-link{color:var(--accent-text);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.cell-link:hover{text-decoration:underline}.cell-file-link{display:inline-flex;align-items:center;gap:7px;color:var(--accent-text);text-decoration:none;min-width:0;background:none;border:none;padding:0;font:inherit;cursor:pointer}.cell-file-link:hover{text-decoration:underline}.cell-file-thumb{width:22px;height:22px;border-radius:4px;object-fit:cover;border:1px solid var(--border);flex-shrink:0}.cell-file-icon{font-size:14px;line-height:1;flex-shrink:0}.cell-secret{font-family:var(--font-mono);letter-spacing:1px}.cell-reveal{background:none;border:none;color:var(--text-faint);cursor:pointer;padding:2px;flex-shrink:0}.cell-edit-input,.cell-reveal:hover{color:var(--text)}.cell-edit-input{width:100%;background:var(--bg);border:1px solid var(--accent);border-radius:3px;padding:7px 9px;font-size:13px;font-family:inherit}.row-actions-cell{width:78px}.row-drag-cell{width:28px;text-align:center}.row-drag-handle{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--text-faint);font-size:13px;cursor:-webkit-grab;cursor:grab;border-radius:var(--radius-sm)}.row-drag-handle:hover{color:var(--text-muted);background:var(--panel-raised)}.data-table tr.row-dragging td{opacity:.4}.data-table tr.row-drag-over td{box-shadow:inset 0 2px 0 var(--accent)}.data-table tr.row-locked td{background:var(--panel-raised)}.cell-locked-row .cell-inner{padding:9px 14px;display:flex;align-items:center;gap:10px;cursor:default}.cell-locked-dots{font-family:var(--font-mono);letter-spacing:3px;color:var(--text-faint);font-size:15px}.cell-locked-label{color:var(--text-faint);font-size:11.5px;font-style:italic}.entry-card.entry-card-locked{background:var(--panel-raised)}.entry-card-locked .entry-card-field{display:flex;align-items:center;gap:10px}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding:0 8px}.row-action-btn{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;background:var(--panel-raised);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);font-size:13px;line-height:1;box-shadow:0 1px 0 rgba(0,0,0,.18)}.row-action-btn:hover{color:var(--text);background:var(--panel);border-color:#3a4150;box-shadow:0 1px 2px rgba(0,0,0,.25)}.row-action-btn:active{box-shadow:none;transform:translateY(1px)}.row-action-btn.danger{color:var(--danger);border-color:#4a2a2f}.row-action-btn.danger:hover{color:#fff;background:var(--danger);border-color:var(--danger)}.table-panel{border:1px solid var(--border);border-top:2px solid var(--accent);border-radius:var(--radius-md);background:var(--panel);box-shadow:0 1px 2px rgba(0,0,0,.06),0 12px 28px -16px rgba(0,0,0,.45);overflow:hidden}.table-panel .table-wrap{border:none;border-radius:0;box-shadow:none}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border-soft)}.table-toolbar-actions{display:flex;align-items:center;gap:10px}.search-wrap{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:10px;color:var(--text-faint);font-size:13px;pointer-events:none}.search-input{width:200px;padding:7px 10px 7px 28px;font-size:12.5px}.filter-bar{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-items:end;grid-gap:14px 16px;gap:14px 16px;padding:14px 16px;background:var(--panel-raised);border-bottom:1px solid var(--border-soft)}.filter-bar .btn{align-self:end}.filter-field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:500;color:var(--text-muted)}.filter-field .input-sm{width:100%}.input-sm{padding:7px 9px;font-size:12.5px}.filter-field select.input-sm{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:26px;background-image:linear-gradient(45deg,transparent 50%,var(--text-faint) 50%),linear-gradient(135deg,var(--text-faint) 50%,transparent 50%);background-position:calc(100% - 14px) calc(50% - 1px),calc(100% - 9px) calc(50% - 1px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}.pagination-bar{display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 16px;border-top:1px solid var(--border-soft)}.pagination-status{font-size:12.5px;color:var(--text-muted)}.settings-column-list{border:1px solid var(--border-soft);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:6px}.settings-column-row{display:grid;grid-template-columns:1fr 56px 56px;align-items:center;grid-gap:8px;gap:8px;padding:8px 12px;font-size:13px;border-top:1px solid var(--border-soft)}.settings-column-row:first-child{border-top:none}.settings-column-row-head{font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--text-faint);background:var(--panel-raised)}.settings-column-name{display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-column-row input[type=checkbox]{justify-self:center;width:15px;height:15px}.table-toolbar .tabs{display:flex;gap:4px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px}.tab-btn{border:none;background:none;color:var(--text-muted);padding:6px 12px;border-radius:3px;font-size:12.5px;cursor:pointer;font-weight:500}.tab-btn.active{background:var(--panel-raised);color:var(--text)}.modal-overlay{position:fixed;inset:0;background:rgba(8,10,13,.6);display:flex;align-items:flex-start;justify-content:center;padding:60px 20px;z-index:50;overflow-y:auto}.modal{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;max-width:480px;padding:22px 22px 20px}.modal h2{font-size:15.5px;margin:0 0 16px;font-weight:600}.modal-sm{max-width:380px}.modal-file-preview{max-width:720px}.file-preview-body{min-height:160px;max-height:65vh;overflow:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);display:flex;align-items:center;justify-content:center;margin-bottom:16px}.file-preview-image{max-width:100%;max-height:65vh;display:block}.file-preview-frame{width:100%;height:65vh;border:none}.file-preview-text{width:100%;align-self:flex-start;margin:0;padding:14px;font-family:var(--font-mono);font-size:12.5px;line-height:1.5;white-space:pre-wrap;word-break:break-word;color:var(--text)}button.cell-link{background:none;border:none;padding:0;font:inherit;cursor:pointer}.confirm-message{margin:0;color:var(--text-muted);font-size:13px;line-height:1.5}.appearance-swatch-row{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.appearance-swatch{width:28px;height:28px;border-radius:50%;border:2px solid transparent;box-shadow:0 0 0 1px var(--border-soft);cursor:pointer;padding:0;flex-shrink:0}.appearance-swatch.active{border-color:var(--accent)}.appearance-swatch-custom{position:relative;display:inline-flex;align-items:center;justify-content:center;background:var(--panel-raised);color:var(--text-faint);font-size:15px;cursor:pointer}.appearance-swatch-custom input[type=color]{position:absolute;inset:0;opacity:0;cursor:pointer}.info-list{margin:0 0 4px}.info-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;border-bottom:1px solid var(--border-soft);font-size:13px}.info-row:last-child{border-bottom:none}.info-row dt{color:var(--text-muted);font-weight:500;flex-shrink:0}.info-row dd{margin:0;color:var(--text);text-align:right;word-break:break-word}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;border-top:1px solid var(--border-soft);padding-top:16px}.builder-grid{display:grid;grid-template-columns:220px 1fr;grid-gap:20px;gap:20px;align-items:start}.palette{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);padding:12px;position:-webkit-sticky;position:sticky;top:20px}.palette h4{font-size:11.5px;color:var(--text-faint);margin:0 0 10px;font-weight:500;padding:0 2px}.palette-group-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);padding:10px 2px 6px}.palette-item{display:flex;align-items:center;gap:9px;padding:9px;border-radius:var(--radius-sm);border:1px solid var(--border-soft);background:var(--panel-raised);margin-bottom:6px;cursor:-webkit-grab;cursor:grab;font-size:12.5px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.palette-item:active{cursor:-webkit-grabbing;cursor:grabbing}.palette-item:hover{border-color:var(--accent)}.palette-icon{width:22px;height:22px;border-radius:4px;background:var(--bg);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:10px;color:var(--accent-text);flex-shrink:0}.palette-item-text strong{display:block;font-size:12.5px;font-weight:500}.palette-item-text small{display:block;color:var(--text-faint);font-size:10.5px}.dropzone{border:1px dashed var(--border);border-radius:var(--radius-md);padding:14px;min-height:220px;background:var(--panel)}.dropzone.drag-over{border-color:var(--accent);background:var(--accent-dim)}.dropzone-empty{color:var(--text-faint);font-size:13px;text-align:center;padding:60px 20px}.builder-row{display:grid;grid-template-columns:20px 1fr 130px 24px;grid-gap:10px;gap:10px;align-items:center;padding:8px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--panel-raised);margin-bottom:8px}.builder-row.dragging{opacity:.4}.builder-row-handle{color:var(--text-faint);cursor:-webkit-grab;cursor:grab;text-align:center;font-size:13px}.builder-row-type{font-size:11px;color:var(--text-faint);font-family:var(--font-mono);text-align:right;padding-right:4px}.builder-row-remove{background:none;border:none;color:var(--text-faint);cursor:pointer;font-size:15px;padding:2px}.builder-row-remove:hover{color:var(--danger)}.builder-row input.input{padding:7px 9px;font-size:13px}.top-error{background:var(--danger-dim);border:1px solid #5c2a2f;color:#f3a5a9;border-radius:var(--radius-sm)}.top-error,.top-notice{font-size:12.5px;padding:9px 11px;margin-bottom:16px}.top-notice{background:var(--accent-dim);border:1px solid var(--accent);color:var(--accent-text);border-radius:var(--radius-sm)}.backup-drive-status{gap:10px;padding:9px 11px;margin-bottom:14px;background:var(--panel-raised);border:1px solid var(--border-soft);border-radius:var(--radius-sm);font-size:12.5px;color:var(--text-muted)}.backup-action,.backup-drive-status{display:flex;align-items:center;justify-content:space-between}.backup-action{gap:12px;padding:10px 0;border-top:1px solid var(--border-soft)}.backup-action-info strong{font-size:13px}.backup-action-info .field-hint{margin-top:2px}.backup-result-row{display:flex;align-items:flex-start;gap:8px;padding:9px 11px;margin-bottom:10px;border-radius:var(--radius-sm);font-size:12.5px}.backup-result-row.ok{background:var(--accent-dim);color:var(--accent-text);border:1px solid var(--accent)}.backup-result-row.fail{background:var(--danger-dim);color:#f3a5a9;border:1px solid #5c2a2f}.muted-link{color:var(--text-muted);font-size:12.5px;text-decoration:none}.muted-link:hover{color:var(--text)}@media (max-width:800px){.app-shell{grid-template-columns:1fr;grid-template-rows:auto 1fr}.sidebar{display:none}.main{padding:20px}.builder-grid{grid-template-columns:1fr}}.entry-card-list,.mobile-topbar{display:none}.entry-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 16px}.entry-card-fields{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}.entry-card-field{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;font-size:13.5px}.entry-card-label{color:var(--text-muted);font-size:12px;font-weight:500;flex-shrink:0;padding-top:1px;min-width:80px}.entry-card-value{color:var(--text);text-align:right;word-break:break-word;flex:1 1}.entry-card-value-empty{color:var(--text-faint);font-style:italic}.entry-card-actions{display:flex;gap:8px;border-top:1px solid var(--border-soft);padding-top:12px}.entry-card-btn{flex:1 1;padding:9px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--panel-raised);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;text-align:center}.entry-card-btn-danger{color:var(--danger);border-color:var(--border)}.entry-card-empty{text-align:center;color:var(--text-faint);font-size:13px;padding:40px 20px}@media (max-width:800px){.mobile-topbar{display:flex;align-items:center;justify-content:space-between;gap:8px;position:fixed;top:0;left:0;right:0;height:calc(52px + env(safe-area-inset-top));background:var(--panel);color:var(--text);border-bottom:1px solid var(--border);padding:env(safe-area-inset-top) max(10px,env(safe-area-inset-right)) 0 max(10px,env(safe-area-inset-left));z-index:100}.mobile-topbar-title{flex:1 1;min-width:0;text-align:center;font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-menu-btn{display:flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;background:none;border:none;cursor:pointer;padding:8px;border-radius:var(--radius-sm)}.mobile-menu-btn span{display:block;height:2px;background:var(--text);border-radius:2px;width:100%}.mobile-menu-btn:hover{background:var(--panel-raised)}.mobile-drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:200;display:flex}.mobile-drawer{width:280px;max-width:85vw;height:100%;overflow-y:auto;background:var(--panel);border-right:1px solid var(--border);animation:slideInLeft .22s ease}.mobile-drawer .sidebar{display:flex;height:100%;border-right:none}@keyframes slideInLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.app-shell{display:flex;flex-direction:column;height:100vh;height:100dvh;padding-top:calc(52px + env(safe-area-inset-top));padding-bottom:calc(58px + env(safe-area-inset-bottom))}.content-area{height:auto;flex:1 1;min-height:0}.main{padding:16px max(14px,env(safe-area-inset-right)) 28px max(14px,env(safe-area-inset-left));overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.topbar{display:none}.page-head{flex-direction:column;gap:10px;margin-bottom:16px}.page-head h1{font-size:17px}.page-head p{font-size:12.5px}.page-head-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;width:100%}.page-head-actions .btn{justify-content:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:44px;font-size:13px}.page-head-actions .btn-primary{grid-column:1/-1}.table-wrap{display:none}.entry-card-list{display:flex;flex-direction:column;gap:10px;padding:12px 14px}.table-toolbar{flex-wrap:wrap;gap:8px;padding:10px 12px}.table-toolbar-actions{flex-wrap:wrap;gap:6px}.search-input{width:100%}.search-wrap{flex:1 1;min-width:0}table.data-table{min-width:480px}.data-table th{padding:10px 12px;font-size:11px}.data-table td{font-size:13px}.cell-inner{padding:10px 12px;min-height:44px}.row-actions-cell{width:44px}.row-action-btn{width:32px;height:32px}.filter-bar{grid-template-columns:1fr 1fr;gap:10px 12px;padding:10px 12px}.track-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.track-grid .track-card{display:flex;flex-direction:column;padding:12px;min-width:0}.track-grid .track-card-top{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:6px}.track-grid .track-card-icon{width:34px;height:34px;font-size:15px}.track-grid .track-card h3{font-size:14px;line-height:1.3;max-width:100%;word-break:break-word;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.track-grid .track-card p{flex:1 1;min-height:0;font-size:12px;line-height:1.4;-webkit-line-clamp:2}.track-grid .track-card-meta{margin-top:10px;padding-top:8px;font-size:11px;flex-wrap:wrap;gap:2px 8px}.dashboard-search-input{max-width:none;margin-bottom:14px}.builder-grid{grid-template-columns:1fr}.palette{position:static;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:6px;gap:6px}.palette h4,.palette-group-label{grid-column:1/-1}.palette-item{margin-bottom:0}.modal-overlay{align-items:flex-end;padding:0}.modal{border-radius:var(--radius-md) var(--radius-md) 0 0;padding:20px 18px 32px;max-height:92vh;overflow-y:auto}.modal,.modal-sm{max-width:100%}.auth-card{padding:24px 18px}.btn{padding:10px 14px;min-height:44px}.btn-sm{padding:8px 12px;min-height:36px}.cell-edit-input,.dashboard-search-input,.input,.search-input,.sidebar-search-input,select.input,textarea.input{font-size:16px}.pagination-bar{flex-wrap:wrap;gap:8px;padding:10px 12px}}.note-card-icon{font-size:15px}.note-editor{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel)}.note-editor>.note-sticky>:first-child{border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.note-editor>.note-statusbar{border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.note-sticky{position:-webkit-sticky;position:sticky;top:58px;z-index:3}.note-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:8px;background:var(--panel-raised);border-bottom:1px solid var(--border)}.note-toolbar-group{display:flex;align-items:center;gap:2px;padding-right:6px;margin-right:6px;border-right:1px solid var(--border-soft)}.note-toolbar-group:last-child{border-right:none;margin-right:0;padding-right:0}.note-tb-btn{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 6px;background:none;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);font-size:13px;cursor:pointer}.note-tb-btn:hover{background:var(--panel);color:var(--text)}.note-tb-btn.active{background:var(--accent-dim);color:var(--accent-text);border-color:var(--accent)}.note-tb-select{padding:0 6px;background:var(--bg);border:1px solid var(--border);color:var(--text);font-size:12.5px;max-width:150px}.note-tb-color-label,.note-tb-select{height:28px;border-radius:var(--radius-sm)}.note-tb-color-label{display:inline-flex;align-items:center;justify-content:center;position:relative;width:28px;color:var(--text-muted);font-size:13px;font-weight:700;cursor:pointer;overflow:hidden}.note-tb-color-label:hover{background:var(--panel)}.note-tb-color-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none;padding:0}.note-link-prompt{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--panel-raised);border-bottom:1px solid var(--border)}.note-link-prompt .input{flex:1 1}.note-content-wrap{padding:24px;min-height:300px}.note-content-wrap .ProseMirror{outline:none;min-height:260px}.note-content-wrap .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;color:var(--text-faint);pointer-events:none}.note-content-wrap h1,.note-content-wrap h2,.note-content-wrap h3{margin:22px 0 10px;line-height:1.3}.note-content-wrap h1{font-size:26px}.note-content-wrap h2{font-size:21px}.note-content-wrap h3{font-size:17px}.note-content-wrap p{margin:0 0 12px;line-height:1.6}.note-content-wrap ol,.note-content-wrap ul{margin:0 0 12px;padding-left:26px}.note-content-wrap li{margin-bottom:4px}.note-content-wrap ul[data-type=taskList]{list-style:none;padding-left:6px}.note-content-wrap ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:8px}.note-content-wrap ul[data-type=taskList] li>label{margin-top:3px}.note-content-wrap ul[data-type=taskList] li>div{flex:1 1}.note-content-wrap blockquote{margin:0 0 12px;padding:4px 16px;border-left:3px solid var(--accent);color:var(--text-muted)}.note-content-wrap pre{margin:0 0 12px;padding:12px 14px;background:var(--bg);border:1px solid var(--border-soft);border-radius:var(--radius-sm);overflow-x:auto;font-family:var(--font-mono);font-size:12.5px}.note-content-wrap code{font-family:var(--font-mono);font-size:.9em;background:var(--panel-raised);padding:1px 5px;border-radius:3px}.note-content-wrap pre code{background:none;padding:0}.note-content-wrap hr{border:none;border-top:1px solid var(--border);margin:20px 0}.note-content-wrap a{color:var(--accent-text)}.note-content-wrap img{max-width:100%;border-radius:var(--radius-sm);margin:8px 0}.note-content-wrap table{border-collapse:collapse;width:100%;margin:0 0 12px}.note-content-wrap table td,.note-content-wrap table th{border:1px solid var(--border);padding:6px 10px;position:relative;vertical-align:top}.note-content-wrap table th{background:var(--panel-raised);font-weight:600;text-align:left}.note-save-status{color:var(--text-faint);font-size:12px}.note-export-menu{position:relative}.note-export-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:var(--panel-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 8px 24px rgba(0,0,0,.25);padding:6px;z-index:40;display:flex;flex-direction:column}.note-export-dropdown button{display:block;width:100%;text-align:left;background:none;border:none;padding:8px 10px;font-size:13px;color:var(--text);border-radius:var(--radius-sm);cursor:pointer}.note-export-dropdown button:hover{background:var(--panel)}.note-color-input{height:38px;padding:4px;cursor:pointer}@media print{body *{visibility:hidden}.note-print-area,.note-print-area *{visibility:visible}.note-print-area{position:absolute;top:0;left:0;width:100%}.note-toolbar{display:none!important}}.subtrack-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.subtrack-toolbar .dashboard-search-input{margin-bottom:0;flex:1 1 220px}.subtrack-toolbar .tabs{display:flex;gap:4px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px}.subtrack-list{list-style:none;margin:0;padding:0;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.subtrack-list li+li{border-top:1px solid var(--border-soft)}.subtrack-list-row{display:flex;align-items:center;gap:12px;padding:10px 14px;color:var(--text);text-decoration:none}.subtrack-list-row:hover{background:var(--panel-raised)}.subtrack-list-main{display:flex;flex-direction:column;min-width:0;flex:1 1}.subtrack-list-name{font-size:14px;font-weight:600}.subtrack-list-desc{font-size:12.5px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subtrack-list-meta{font-size:11.5px;color:var(--text-faint);white-space:nowrap}.subtrack-table tbody tr{cursor:pointer}.subtrack-table tbody tr:hover{background:var(--panel-raised)}.subtrack-table td{padding:10px 14px;border-bottom:1px solid var(--border-soft);font-size:13px}.subtrack-table .num{text-align:right}.subtrack-table-name{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-weight:600;white-space:nowrap}.subtrack-table-desc{color:var(--text-muted);max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subtrack-chips{display:flex;flex-wrap:wrap;gap:8px}.subtrack-chip{display:inline-flex;align-items:center;gap:8px;padding:5px 10px 5px 5px;background:var(--panel);border:1px solid var(--border);border-radius:999px;color:var(--text);text-decoration:none;font-size:13px}.subtrack-chip:hover{border-color:var(--accent)}.subtrack-chip .track-card-icon{width:22px;height:22px;border-radius:50%;font-size:11px}.subtrack-chip-count{font-size:11px;color:var(--text-faint);background:var(--panel-raised);border-radius:999px;padding:1px 7px}@media (max-width:640px){.subtrack-list-meta{display:none}.subtrack-toolbar .tabs{width:100%}.subtrack-toolbar .tab-btn{flex:1 1}}.subtrack-table-wrap{border:1px solid var(--border);border-radius:var(--radius-md);overflow-x:auto;background:var(--panel)}.tabs.track-type-tabs{display:inline-flex;gap:4px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px;flex-wrap:wrap}.track-type-tabs .tab-btn{display:inline-flex;align-items:center;gap:6px}.track-type-tabs .tab-btn i{font-size:11.5px}.entry-layout-wrap{padding:14px}.entry-layout-actions{display:flex;flex-wrap:wrap;gap:4px}.entry-layout-action{border:1px solid transparent;background:none;color:var(--text-muted);font-size:12px;padding:3px 8px;border-radius:var(--radius-sm);cursor:pointer}.entry-layout-action:hover{background:var(--panel-raised);border-color:var(--border);color:var(--text)}.entry-layout-action.danger:hover{color:var(--danger)}.entry-layout-locked{display:flex;align-items:center;gap:10px;padding:6px 0 12px}.entry-plain{display:flex;flex-direction:column}.entry-plain-item{padding:12px 4px;border-bottom:1px dashed var(--border)}.entry-plain-item:last-child{border-bottom:none}.entry-plain-lines{margin:0 0 6px;font-family:var(--font-mono);font-size:13px;line-height:1.7}.entry-plain-line{display:flex;gap:8px}.entry-plain-line dt{color:var(--text-muted);flex-shrink:0}.entry-plain-line dd{margin:0;color:var(--text);word-break:break-word;min-width:0}.entry-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:12px;gap:12px}.entry-grid-card{display:flex;flex-direction:column}.entry-grid-card .entry-card-fields{flex:1 1}.entry-grid-title{font-weight:600;font-size:14.5px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border-soft);word-break:break-word}.entry-grid-card .entry-card-actions{flex-wrap:wrap}.entry-grid-card .entry-card-btn{padding:6px 8px;font-size:12px}.entry-doc{max-width:780px;margin:0 auto}.entry-doc-section{padding:18px 4px 20px;border-bottom:1px solid var(--border-soft)}.entry-doc-section:last-child{border-bottom:none}.entry-doc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}.entry-doc-head h3{margin:0;font-size:18px;font-weight:600;line-height:1.35;word-break:break-word}.entry-doc-num{color:var(--text-faint);margin-right:8px;font-weight:500}.entry-doc-field{margin-top:12px}.entry-doc-field h4{margin:0 0 3px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.entry-doc-value{font-size:14px;line-height:1.6;color:var(--text);word-break:break-word}.modal.modal-lg{max-width:880px}.new-track-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.new-track-head h2{margin:0 0 4px}.new-track-steps{margin:0;font-size:12px;color:var(--text-faint);display:flex;gap:8px}.new-track-steps .active{color:var(--accent-text);font-weight:600}.new-track-close,.new-track-steps .done{color:var(--text-muted)}.new-track-close{background:none;border:none;font-size:22px;line-height:1;cursor:pointer;padding:2px 6px;border-radius:var(--radius-sm)}.new-track-close:hover{background:var(--panel-raised);color:var(--text)}.new-track-lead{margin:0 0 14px;color:var(--text-muted);font-size:13px}.new-track-types{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px}.new-track-type{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;padding:16px 14px;background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius-md);color:var(--text);cursor:pointer;font:inherit}.new-track-type:hover{border-color:var(--text-faint)}.new-track-type.selected{border-color:var(--accent);background:var(--accent-dim)}.new-track-type strong{font-size:14px}.new-track-type small{font-size:12px;color:var(--text-muted);line-height:1.45}.new-track-type-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--panel-raised);color:var(--accent-text);font-size:16px;margin-bottom:4px}.new-track-type-badge{position:absolute;top:10px;right:10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint)}.new-track-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-bottom:18px}.new-track-picker-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.new-track-count{color:var(--text-faint);font-weight:400}.new-track-search{flex:0 1 300px}.new-track-groups{display:flex;gap:6px;overflow-x:auto;padding-bottom:8px;margin-bottom:8px;scrollbar-width:thin}.new-track-group{flex-shrink:0;border:1px solid var(--border);background:var(--panel);color:var(--text-muted);font-size:12px;padding:4px 10px;border-radius:999px;cursor:pointer;white-space:nowrap}.new-track-group.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent-text)}.new-track-templates{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:8px;gap:8px;max-height:300px;overflow-y:auto;padding:2px;scrollbar-width:thin}.new-track-template{display:flex;align-items:center;gap:10px;text-align:left;padding:9px 10px;background:var(--bg);border:1.5px solid var(--border);border-radius:var(--radius-md);color:var(--text);cursor:pointer;font:inherit;min-width:0}.new-track-template:hover{border-color:var(--text-faint)}.new-track-template.selected{border-color:var(--accent);background:var(--accent-dim)}.new-track-template-custom{border-style:dashed}.new-track-template-icon{width:30px;height:30px;border-radius:6px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--panel-raised);color:var(--accent-text);font-size:13px}.new-track-template-text{display:flex;flex-direction:column;min-width:0}.new-track-template-text strong{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.new-track-template-text small{font-size:11.5px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.new-track-empty{grid-column:1/-1;color:var(--text-muted);font-size:13px;margin:8px 0}.new-track-preview{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;padding:10px 12px;background:var(--bg);border:1px solid var(--border-soft);border-radius:var(--radius-md);min-height:44px}.new-track-preview-label{font-size:12px;color:var(--text-muted);margin-right:4px}.new-track-field-chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:2px 8px;border-radius:999px;background:var(--panel-raised);color:var(--text)}.new-track-field-chip-icon{font-family:var(--font-mono);font-size:10.5px;color:var(--text-faint)}@media (max-width:800px){.new-track-types{grid-template-columns:1fr 1fr}.new-track-fields,.new-track-templates{grid-template-columns:1fr}.new-track-templates{max-height:260px}.new-track-search{flex:1 1 100%}.track-type-tab-label{display:none}.entry-layout-wrap{padding:12px 10px}.entry-doc-head{flex-direction:column}}@media (max-width:420px){.new-track-types{grid-template-columns:1fr}}.entry-card-value,.entry-doc-value,.entry-plain-line dd{flex:1 1}.entry-doc-value .cell-inner,.entry-grid-card .cell-inner,.entry-plain-line .cell-inner{padding:2px 6px;margin:-2px -6px;border-radius:var(--radius-sm)}.entry-grid-card .entry-card-value .cell-inner{justify-content:flex-end;margin-right:-6px}.tasks-menu-trigger{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 12px;border-radius:999px;background:var(--panel-raised);border:1px solid var(--border);color:var(--text);font-size:12.5px;font-weight:600;text-decoration:none}.tasks-menu-trigger i{color:var(--accent-text)}.tasks-menu-trigger:hover{border-color:var(--accent)}.sidebar-tasks-link{display:flex;align-items:center;gap:9px;padding:8px 10px;margin:4px 0 10px;border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text);text-decoration:none;font-size:13px;font-weight:500}.sidebar-tasks-link i{color:var(--accent-text);width:14px}.sidebar-tasks-link.active,.sidebar-tasks-link:hover{background:var(--panel-raised);border-color:var(--accent)}.task-section-title{font-size:13px;font-weight:600;margin:22px 0 10px}.task-muted,.task-section-title{color:var(--text-muted)}.task-notice{background:var(--accent-dim);color:var(--accent-text);border-radius:var(--radius-sm);padding:8px 12px;font-size:13px;margin-bottom:12px}.task-board-title{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.task-role-badge{font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--panel-raised);border:1px solid var(--border);color:var(--text-muted);white-space:nowrap}.task-role-badge.admin{background:var(--accent-dim);border-color:var(--accent);color:var(--accent-text)}.task-avatar{overflow:hidden}.task-avatar img{width:100%;height:100%;object-fit:cover}.task-pill{--pill:#8b93a5;display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:500;white-space:nowrap;background:color-mix(in srgb,var(--pill) 16%,transparent);color:var(--text)}.task-pill-dot{width:7px;height:7px;border-radius:50%;background:var(--pill,#8b93a5);flex-shrink:0}.task-status-strip{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.task-status-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;border-radius:999px;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:12.5px;cursor:pointer}.task-status-chip>span:last-child{color:var(--text-faint);font-family:var(--font-mono);font-size:11.5px}.task-status-chip.active{border-color:var(--accent);background:var(--accent-dim)}.task-table-wrap{overflow-x:auto}.task-table td{padding:10px 14px;border-bottom:1px solid var(--border-soft);font-size:13px;vertical-align:middle}.task-table tbody tr:hover td{background:var(--panel-raised)}.task-title-cell{min-width:200px;max-width:360px}.task-title-btn{background:none;border:none;padding:0;font:inherit;font-weight:600;color:var(--text);cursor:pointer;text-align:left}.task-title-btn:hover{color:var(--accent-text)}.task-desc{font-size:12px;color:var(--text-muted);margin-top:2px}.task-cell-text,.task-desc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-cell-text{display:inline-block;max-width:220px;vertical-align:bottom}.task-status-select{--pill:#8b93a5;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;border:1px solid color-mix(in srgb,var(--pill) 55%,transparent);background:color-mix(in srgb,var(--pill) 16%,var(--panel));color:var(--text);border-radius:999px;padding:3px 8px;font-size:12px;font-weight:500;cursor:pointer}.task-assignee{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.task-overdue{color:var(--danger);font-weight:500;white-space:nowrap}.task-file-link{color:var(--accent-text);text-decoration:none;font-size:12.5px;word-break:break-all}.task-file-link:hover{text-decoration:underline}.task-file-input{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.task-form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 14px;gap:0 14px}.task-form-wide{grid-column:1/-1}.task-view-list{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px 18px;gap:14px 18px;margin:0 0 16px}.task-view-list dt{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:4px}.task-view-list dd{margin:0;font-size:13.5px}.task-view-wide{grid-column:1/-1}.task-visibility-options{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.task-visibility{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1.5px solid var(--border);border-radius:var(--radius-md);cursor:pointer;background:var(--bg)}.task-visibility.selected{border-color:var(--accent);background:var(--accent-dim)}.task-visibility input{margin-top:3px;accent-color:var(--accent)}.task-visibility span{display:flex;flex-direction:column;gap:2px}.task-visibility strong{font-size:13px}.task-visibility small{font-size:12px;color:var(--text-muted);line-height:1.4}.task-add-column,.task-add-member{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}.task-add-column>input,.task-add-member>input{flex:1 1 200px}.task-add-column>select{flex:0 0 140px}.task-perm-row{display:flex;flex-wrap:wrap;gap:12px;font-size:12.5px}.task-member-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-md);max-height:340px;overflow-y:auto}.task-member{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:10px 12px}.task-member+.task-member{border-top:1px solid var(--border-soft)}.task-member-list>.task-muted{padding:10px 12px;margin:0}.task-member-name{display:flex;flex-direction:column;flex:1 1 160px;min-width:0}.task-member-name strong{font-size:13.5px}.task-member-name small{font-size:11.5px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis}.task-status-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.task-status-row{display:flex;align-items:center;gap:8px}.task-status-row input[type=color]{width:34px;height:34px;padding:2px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);flex-shrink:0}.task-status-row .input{flex:1 1}.task-col-type{flex:0 0 80px;font-size:11.5px;color:var(--text-muted);font-family:var(--font-mono)}.task-activity-modal{max-width:820px}.task-activity-filters{display:flex;gap:8px;margin-bottom:12px}.task-activity-filters input{flex:1 1}.task-activity-filters select{flex:0 0 170px}.task-activity-list{max-height:62vh;overflow-y:auto;display:flex;flex-direction:column}.task-log{display:flex;gap:12px;padding:14px 4px;border-bottom:1px solid var(--border-soft)}.task-log:last-child{border-bottom:none}.task-log-reverted{opacity:.7}.task-log-body{flex:1 1;min-width:0}.task-log-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px}.task-log-badge{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:4px;background:var(--panel-raised);color:var(--text-muted)}.task-log-badge.good{background:var(--accent-dim);color:var(--accent-text)}.task-log-badge.bad{background:var(--danger-dim);color:var(--danger)}.task-log-time{color:var(--text-faint);font-size:12px;margin-left:auto}.task-log-summary{font-size:13px;margin-top:3px}.task-log-changes{margin-top:8px;border-collapse:collapse;width:100%;font-size:12.5px;background:var(--bg);border:1px solid var(--border-soft);border-radius:var(--radius-sm)}.task-log-changes th{text-align:left;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);padding:6px 10px;border-bottom:1px solid var(--border-soft)}.task-log-changes td{padding:6px 10px;vertical-align:top;word-break:break-word}.task-log-field{color:var(--text-muted);white-space:nowrap;width:1%}.task-log-old{color:var(--danger);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb,var(--danger) 50%,transparent);text-decoration-color:color-mix(in srgb,var(--danger) 50%,transparent)}.task-log-new{color:var(--accent-text)}.task-log-changes em{color:var(--text-faint);text-decoration:none;font-style:italic}.task-log-arrow{color:var(--text-faint);width:1%}.task-log-reverted-note{font-size:12px;color:var(--warn);margin-top:6px}.task-log-actions{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:12.5px}@media (max-width:800px){.task-form-grid,.task-view-list,.task-visibility-options{grid-template-columns:1fr}.task-activity-filters{flex-direction:column}.task-activity-filters select{flex:none}.task-log-time{margin-left:0;width:100%}}.create-user-form{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);padding:12px;margin-bottom:12px}.create-user-grid{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:8px;gap:8px}.create-user-password{display:flex;gap:4px;align-items:center}.create-user-password .input{flex:1 1;min-width:0}.create-user-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px}.create-user-creds{display:inline-flex;align-items:center;gap:6px;margin:4px 6px;font-family:var(--font-mono)}.create-user-creds code{background:var(--panel);padding:1px 6px;border-radius:3px}.create-user-inline .create-user-form{margin-bottom:0}@media (max-width:800px){.create-user-grid{grid-template-columns:1fr}}.task-table th.task-th{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.task-table th.task-th[draggable=true]{cursor:-webkit-grab;cursor:grab}.task-table th.task-th:hover{color:var(--text)}.task-th-inner{display:inline-flex;align-items:center;gap:6px}.task-sort-ind{font-size:9px;color:var(--text-faint);opacity:0;transition:opacity .12s ease}.task-sort-ind.active,.task-th:hover .task-sort-ind{opacity:1}.task-sort-ind.active{color:var(--accent)}.task-table th.task-th-actions{cursor:default}.task-table tr.task-draft-row td{background:var(--accent-dim);padding:6px 8px;vertical-align:top}.task-table tr.task-draft-row:hover td{background:var(--accent-dim)}.task-draft-row .input{min-width:110px}.task-draft-row td:first-child .input{min-width:200px}.task-draft-field textarea.input{min-height:34px}.task-draft-actions{align-items:center;gap:4px;opacity:1}.task-column-builder-row>select.input{flex:0 0 140px}.task-import-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:160px;margin-bottom:12px;cursor:pointer;text-align:center}.task-import-drop small{color:var(--text-faint)}.task-import-heading{font-size:13px;margin:16px 0 8px}.task-import-mapping{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:8px;gap:8px}.task-import-map-row{display:flex;align-items:center;gap:8px;min-width:0}.task-import-src{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:600}.task-import-map-row select{flex:0 0 140px}.task-import-people{display:flex;flex-wrap:wrap;gap:6px}.task-import-person{font-size:12px;padding:3px 9px;border-radius:999px;border:1px solid var(--border)}.task-import-person.matched{border-color:var(--accent);background:var(--accent-dim)}.task-import-person.unmatched{border-color:var(--danger);color:var(--danger)}.task-import-preview{max-height:320px;overflow:auto;border:1px solid var(--border-soft);border-radius:var(--radius-md)}.task-import-preview table.data-table{min-width:0}.task-import-skip td{opacity:.5}.task-import-notes{font-size:12px;color:var(--text-muted);min-width:180px}.link-btn{background:none;border:none;padding:0;color:var(--accent);font:inherit;cursor:pointer;text-decoration:underline}.task-visibility-options.three{grid-template-columns:repeat(3,1fr)}@media (max-width:720px){.task-visibility-options.three{grid-template-columns:1fr}}.task-import-page{padding:20px;margin-bottom:12px}.task-import-page .task-import-drop{min-height:240px}.task-import-map-row select.task-import-type{flex:0 0 110px}.note-toolbar .note-tb-btn:disabled{opacity:.35;cursor:default}.note-tb-size{width:62px}.note-tb-color{display:inline-block;font-weight:700;border-bottom:3px solid;line-height:1.1;padding:0 2px}.note-tb-hl{display:inline-block;color:#1f2937;font-weight:600;padding:0 3px;border-radius:2px;font-size:12px}.note-dd{position:relative}.note-dd-trigger{gap:3px}.note-dd-caret{font-size:9px;opacity:.6}.note-dd-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:50;min-width:200px;max-height:70vh;overflow:auto;background:var(--panel-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 10px 28px rgba(0,0,0,.3);padding:6px}.note-dd-panel.wide{min-width:460px}.note-dd-cols{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.note-dd-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:none;border:none;text-align:left;padding:6px 8px;border-radius:var(--radius-sm);font-size:13px;color:var(--text);cursor:pointer}.note-dd-item:hover:not(:disabled){background:var(--panel)}.note-dd-item.active{color:var(--accent-text);background:var(--accent-dim)}.note-dd-item:disabled{opacity:.4;cursor:default}.note-dd-item kbd,.note-shortcuts kbd{font-family:var(--font-mono);font-size:10.5px;color:var(--text-faint)}.note-dd-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);padding:8px 8px 4px}.note-dd-sep{height:1px;background:var(--border-soft);margin:4px 0}.note-color-pop{padding:4px}.note-color-grid{display:grid;grid-template-columns:repeat(6,24px);grid-gap:5px;gap:5px}.note-swatch{width:24px;height:24px;border-radius:4px;border:1px solid hsla(0,0%,50%,.35);cursor:pointer}.note-swatch.active{outline:2px solid var(--accent);outline-offset:1px}.note-color-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.note-color-custom{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.note-color-custom input{width:28px;height:22px;border:none;padding:0;background:none;cursor:pointer}.note-table-grid{display:grid;grid-template-columns:repeat(10,18px);grid-gap:3px;gap:3px;padding:4px}.note-table-cell{width:18px;height:18px;border:1px solid var(--border);border-radius:2px;background:var(--bg);cursor:pointer;padding:0}.note-table-cell.on{background:var(--accent-dim);border-color:var(--accent)}.note-table-picker-foot{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:6px 4px 2px;color:var(--text-muted)}.note-char-picker .input{width:100%;margin-bottom:6px}.note-char-tabs{display:flex;flex-wrap:wrap;gap:2px;margin-bottom:4px}.note-char-tabs button{background:none;border:none;font-size:11px;padding:3px 6px;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer}.note-char-tabs button.active{background:var(--accent-dim);color:var(--accent-text)}.note-char-grid{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:2px;gap:2px;max-height:150px;overflow:auto}.note-char-grid button{background:none;border:none;font-size:17px;height:28px;border-radius:var(--radius-sm);cursor:pointer;color:var(--text)}.note-char-grid button:hover{background:var(--panel)}.note-editor-body{display:flex;align-items:stretch}.note-outline{flex:0 0 220px;border-right:1px solid var(--border-soft);padding:14px 10px;max-height:75vh;overflow:auto;position:-webkit-sticky;position:sticky;top:110px;align-self:flex-start}.note-outline-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);margin-bottom:8px}.note-outline-empty{font-size:12px;color:var(--text-faint)}.note-outline-item{display:block;width:100%;text-align:left;background:none;border:none;color:var(--text-muted);font-size:12.5px;padding:4px 6px;border-radius:var(--radius-sm);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-outline-item:hover{background:var(--panel-raised);color:var(--text)}.note-outline-item.l1{font-weight:600;color:var(--text)}.note-outline-item.l2{padding-left:16px}.note-outline-item.l3{padding-left:26px}.note-outline-item.l4,.note-outline-item.l5,.note-outline-item.l6{padding-left:36px;font-size:12px}.note-page-scroll{flex:1 1;min-width:0;overflow-x:auto}.note-page{margin:0 auto}.note-content-wrap h4{font-size:15px;margin:18px 0 8px}.note-content-wrap h5{font-size:13.5px;margin:16px 0 6px}.note-content-wrap h6{font-size:12.5px;margin:14px 0 6px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.note-content-wrap ul[data-type=taskList] li[data-checked=true]>div{text-decoration:line-through;color:var(--text-faint)}.note-content-wrap mark{border-radius:2px;padding:0 1px;color:#1f2937}.note-content-wrap img.ProseMirror-selectednode{outline:3px solid var(--accent)}.note-content-wrap .selectedCell:after{content:"";position:absolute;inset:0;background:var(--accent-dim);pointer-events:none}.note-content-wrap .column-resize-handle{position:absolute;right:-2px;top:0;bottom:0;width:4px;background:var(--accent);pointer-events:none}.note-content-wrap .resize-cursor,.note-content-wrap.resize-cursor{cursor:col-resize}.note-content-wrap .tableWrapper{overflow-x:auto}.note-content-wrap pre code[class*=language-]:before,.note-content-wrap pre[data-language]:before{content:none}.note-callout{display:block;position:relative;margin:0 0 12px;padding:12px 14px 2px 44px;border-radius:var(--radius-md);border:1px solid}.note-callout:before{position:absolute;left:14px;top:11px;font-size:16px}.note-callout[data-callout=info]{background:rgba(79,166,232,.12);border-color:rgba(79,166,232,.45)}.note-callout[data-callout=info]:before{content:"ℹ️"}.note-callout[data-callout=tip]{background:rgba(242,212,92,.14);border-color:rgba(242,212,92,.5)}.note-callout[data-callout=tip]:before{content:"💡"}.note-callout[data-callout=success]{background:rgba(53,194,166,.12);border-color:rgba(53,194,166,.45)}.note-callout[data-callout=success]:before{content:"✅"}.note-callout[data-callout=warning]{background:rgba(232,163,61,.13);border-color:rgba(232,163,61,.5)}.note-callout[data-callout=warning]:before{content:"⚠️"}.note-callout[data-callout=danger]{background:rgba(229,100,107,.12);border-color:rgba(229,100,107,.5)}.note-callout[data-callout=danger]:before{content:"⛔"}.note-callout[data-callout=note]{background:var(--panel-raised);border-color:var(--border)}.note-callout[data-callout=note]:before{content:"📝"}.note-page-break{position:relative;height:24px;margin:16px 0;border-top:2px dashed var(--border)}.note-page-break:after{content:"Page break";position:absolute;top:-9px;left:50%;transform:translateX(-50%);background:var(--panel);color:var(--text-faint);font-size:10.5px;padding:0 8px;text-transform:uppercase;letter-spacing:.06em}.note-page-break.ProseMirror-selectednode{border-top-color:var(--accent)}.note-toc{margin:0 0 16px;padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel-raised)}.note-toc.ProseMirror-selectednode{outline:2px solid var(--accent)}.note-toc-title{font-weight:700;margin-bottom:6px}.note-toc-empty{font-size:12.5px;color:var(--text-faint)}.note-toc-item{display:block;color:var(--accent-text);text-decoration:none;font-size:13.5px;padding:2px 0}.note-toc-item:hover{text-decoration:underline}.note-toc-l2{padding-left:16px!important}.note-toc-l3{padding-left:32px!important}.note-toc-l4,.note-toc-l5,.note-toc-l6{padding-left:48px!important;font-size:12.5px}.note-find-hit{background:rgba(242,212,92,.45);border-radius:2px}.note-find-hit.current{background:#f59e0b;color:#111}.note-find{padding:8px 10px;background:var(--panel-raised);border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.note-find-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.note-find-row .input{flex:1 1 200px;max-width:340px}.note-find-count{font-size:12px;color:var(--text-muted);min-width:70px}.note-locked-bar{padding:6px 12px;font-size:12.5px;background:var(--accent-dim);border-bottom:1px solid var(--border)}.note-statusbar{display:flex;flex-wrap:wrap;gap:14px;padding:6px 12px;border-top:1px solid var(--border);background:var(--panel-raised);font-size:11.5px;color:var(--text-faint)}.note-status-sel{color:var(--accent-text)}.note-status-right{margin-left:auto}.note-bubble{display:flex;gap:2px;box-shadow:0 8px 22px rgba(0,0,0,.3)}.note-bubble,.note-slash{padding:4px;background:var(--panel-raised);border:1px solid var(--border);border-radius:var(--radius-md)}.note-slash{position:fixed;z-index:60;width:260px;max-height:320px;overflow:auto;box-shadow:0 10px 28px rgba(0,0,0,.3)}.note-slash-item{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;text-align:left;padding:6px 8px;border-radius:var(--radius-sm);color:var(--text);cursor:pointer;font-size:13px}.note-slash-item.active{background:var(--accent-dim)}.note-slash-item small{display:block;color:var(--text-faint);font-size:11px}.note-slash-icon{flex:0 0 28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;font-weight:700;background:var(--bg)}.note-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:80;background:var(--panel-raised);border:1px solid var(--border);border-radius:999px;padding:8px 16px;font-size:13px;box-shadow:0 8px 22px rgba(0,0,0,.3)}.note-shortcuts{width:100%;border-collapse:collapse;font-size:13px}.note-shortcuts td{padding:6px 4px;border-bottom:1px solid var(--border-soft)}.note-shortcuts td:last-child{text-align:right}.note-editor-fullscreen{position:fixed;inset:0;z-index:70;border-radius:0;display:flex;flex-direction:column}.note-editor-fullscreen .note-sticky{top:0}.note-editor-fullscreen .note-editor-body{flex:1 1;overflow:auto}.note-editor.is-readonly .note-content-wrap .ProseMirror{cursor:default}@media (max-width:720px){.note-dd-panel.wide{min-width:0;width:calc(100vw - 32px);position:fixed;left:16px!important;right:16px;top:auto}.note-dd-cols{grid-template-columns:1fr}.note-outline{display:none}}@media print{.note-page-break{border:none;height:0;margin:0;break-after:page;page-break-after:always}.note-find,.note-locked-bar,.note-outline,.note-page-break:after,.note-statusbar{display:none!important}.note-find-hit{background:none}}button.sidebar-tasks-link,button.tasks-menu-trigger{font:inherit;cursor:pointer}button.tasks-menu-trigger{font-size:12.5px;font-weight:600}.tasks-menu-trigger.active{border-color:var(--accent)}.topbar-code-group{display:inline-flex;gap:4px}.tasks-menu-trigger.topbar-code-list{padding:0 10px}.sidebar-tools{display:flex;flex-direction:column;gap:4px;margin:-4px 0 12px}.sidebar-tools .sidebar-tasks-link{margin:0;width:100%;background:none;text-align:left}.sidebar-tools .topbar-code-group{display:flex;flex-direction:column;gap:4px}@media (min-width:801px){.sidebar-tools{display:none}}@media (max-width:1180px){.topbar .tasks-menu-trigger span{display:none}.topbar .tasks-menu-trigger{padding:0 10px}}.export-menu{position:relative;display:inline-block}.export-dropdown{position:absolute;right:0;top:calc(100% + 6px);z-index:40;min-width:230px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 12px 30px -12px rgba(0,0,0,.5);padding:6px;display:flex;flex-direction:column}.export-dropdown button{display:flex;align-items:center;gap:10px;border:none;background:none;color:var(--text);font:inherit;font-size:13px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;text-align:left}.export-dropdown button:hover:not(:disabled){background:var(--panel-raised)}.export-dropdown button i{width:16px;color:var(--accent-text)}.export-dropdown button span{flex:1 1}.export-dropdown button small{color:var(--text-faint);font-family:var(--font-mono);font-size:11px}.export-note{margin:4px 10px;font-size:11.5px;color:var(--text-muted);line-height:1.4}.export-error{color:var(--danger)}.export-columns-toolbar{display:flex;align-items:center;gap:6px;margin:12px 0 8px;font-size:12.5px;color:var(--text-muted)}.export-columns-toolbar span{flex:1 1}.export-columns{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));grid-gap:2px 12px;gap:2px 12px;max-height:50vh;overflow-y:auto;border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:8px}.export-column-option{display:flex;align-items:center;gap:8px;padding:5px 4px;font-size:13px;color:var(--text);cursor:pointer}.export-column-option span{overflow-wrap:anywhere}.user-boards{display:flex;flex-wrap:wrap;gap:4px}.user-boards a{text-decoration:none}.code-page{display:flex;flex-direction:column;min-height:calc(100vh - 150px)}.code-head{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:12px}.code-name-input{flex:1 1 240px;font-size:15px;font-weight:600}.code-head select{flex:0 0 150px}.code-status{font-size:12px;color:var(--text-muted);white-space:nowrap}.code-status-saved{color:var(--accent-text)}.code-status-dirty{color:var(--warn)}.code-status-error{color:var(--danger)}.code-actions{display:flex;align-items:center;gap:6px;margin-left:auto;flex-wrap:wrap}.code-wrap-toggle{font-size:12.5px;color:var(--text-muted);margin-right:4px}.code-editor{--code-font:13px;--code-line:1.6;flex:1 1;display:flex;min-height:420px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);overflow:hidden;font-family:var(--font-mono);font-size:var(--code-font);line-height:var(--code-line)}.code-gutter{flex-shrink:0;padding:14px 10px 14px 14px;text-align:right;color:var(--text-faint);background:var(--panel);border-right:1px solid var(--border-soft);-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden;min-width:48px}.code-area{position:relative;flex:1 1;min-width:0}.code-highlight,.code-input{position:absolute;inset:0;margin:0;padding:14px 16px;border:none;font:inherit;line-height:inherit;-moz-tab-size:2;tab-size:2;white-space:pre;overflow:auto;box-sizing:border-box}.code-highlight{pointer-events:none;color:var(--text);overflow:hidden}.code-highlight code{font:inherit}.code-input{resize:none;background:transparent;color:transparent;caret-color:var(--text);outline:none}.code-input::selection{background:color-mix(in srgb,var(--accent) 35%,transparent);color:transparent}.code-input::placeholder{color:var(--text-faint)}.code-editor.wrap .code-highlight,.code-editor.wrap .code-input{word-break:break-word}.tk-c{color:#7d8799;font-style:italic}.tk-s{color:#e8a33d}.tk-n{color:#b47fe8}.tk-k{color:#4fa6e8;font-weight:600}:root[data-theme=light] .tk-s{color:#a3660a}:root[data-theme=light] .tk-n{color:#7a3fc0}:root[data-theme=light] .tk-k{color:#1b6fb8}.code-foot{font-size:11.5px;color:var(--text-faint);margin-top:8px}@media (max-width:800px){.code-actions{margin-left:0}.code-editor{min-height:60vh}}.code-highlight,.code-input{scrollbar-gutter:stable}.photo-drop{border:2px dashed var(--border);border-radius:var(--radius-md);padding:70px 24px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;cursor:pointer;background:var(--panel);color:var(--text-muted)}.photo-drop i{font-size:40px;color:var(--accent-text)}.photo-drop strong{color:var(--text);font-size:15px}.photo-drop.dragging,.photo-drop:hover{border-color:var(--accent);background:var(--accent-dim)}.photo-editor{display:flex;flex-direction:column;gap:10px}.photo-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.photo-name{flex:0 1 220px}.photo-dims{font-size:12px;font-family:var(--font-mono)}.photo-toolbar-actions{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto}.photo-main{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-gap:12px;gap:12px;min-height:calc(100vh - 190px)}.photo-stage{position:relative;display:flex;align-items:center;justify-content:center;padding:16px;border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--bg);background-image:linear-gradient(45deg,color-mix(in srgb,var(--border) 45%,transparent) 25%,transparent 25%),linear-gradient(-45deg,color-mix(in srgb,var(--border) 45%,transparent) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,color-mix(in srgb,var(--border) 45%,transparent) 75%),linear-gradient(-45deg,transparent 75%,color-mix(in srgb,var(--border) 45%,transparent) 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;overflow:hidden;min-height:360px}.photo-canvas-wrap{position:relative;display:inline-block;line-height:0;max-width:100%;max-height:100%}.photo-canvas{display:block;max-width:100%;max-height:calc(100vh - 230px);box-shadow:0 8px 30px -10px rgba(0,0,0,.5)}.photo-badge{top:12px;left:12px;background:rgba(0,0,0,.7);font-size:12px;padding:3px 10px;border-radius:999px}.photo-badge,.photo-busy{position:absolute;color:#fff}.photo-busy{inset:0;display:flex;align-items:center;justify-content:center;gap:10px;background:rgba(0,0,0,.45);font-weight:600;font-size:14px}.photo-spinner{width:18px;height:18px;border:2px solid hsla(0,0%,100%,.35);border-top-color:#fff;border-radius:50%;animation:photo-spin .8s linear infinite}@keyframes photo-spin{to{transform:rotate(1turn)}}.photo-crop-layer{inset:0}.photo-crop-layer,.photo-crop-rect{position:absolute;touch-action:none}.photo-crop-rect{border:2px solid #fff;box-shadow:0 0 0 9999px rgba(0,0,0,.55);cursor:move}.photo-crop-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(90deg,hsla(0,0%,100%,.35) 1px,transparent 0),linear-gradient(180deg,hsla(0,0%,100%,.35) 1px,transparent 0);background-size:33.333% 33.333%;background-position:-1px -1px}.photo-crop-handle{position:absolute;width:16px;height:16px;background:#fff;border-radius:3px;box-shadow:0 1px 4px rgba(0,0,0,.5)}.photo-crop-handle.nw{left:-8px;top:-8px;cursor:nwse-resize}.photo-crop-handle.ne{right:-8px;top:-8px;cursor:nesw-resize}.photo-crop-handle.sw{left:-8px;bottom:-8px;cursor:nesw-resize}.photo-crop-handle.se{right:-8px;bottom:-8px;cursor:nwse-resize}.photo-crop-size{position:absolute;bottom:6px;right:8px;font-size:11px;line-height:1.4;font-family:var(--font-mono);color:#fff;background:rgba(0,0,0,.6);padding:1px 6px;border-radius:3px}.photo-panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);display:flex;flex-direction:column;min-height:0;max-height:calc(100vh - 190px)}.photo-tabs{display:grid;border-bottom:1px solid var(--border)}.photo-tab{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 2px 8px;background:none;color:var(--text-muted);font:inherit;font-size:10.5px;cursor:pointer;border:none;border-bottom:2px solid transparent}.photo-tab i{font-size:14px}.photo-tab.active{color:var(--accent-text);border-bottom-color:var(--accent)}.photo-panel-body{padding:14px;overflow-y:auto;flex:1 1}.photo-section-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);margin:16px 0 8px}.photo-panel-body>.photo-section-label:first-child,.photo-panel-body>div:first-child>.photo-section-label:first-child{margin-top:2px}.photo-slider{display:block;margin-bottom:10px}.photo-slider-head{display:flex;justify-content:space-between;font-size:12.5px;margin-bottom:3px}.photo-slider-value{font-family:var(--font-mono);font-size:11.5px;color:var(--text-muted);background:none;border:none;padding:0;cursor:pointer}.photo-slider input[type=range]{width:100%;accent-color:var(--accent)}.photo-btn-row{display:flex;gap:6px}.photo-btn-row.wrap{flex-wrap:wrap}.photo-btn-row>.btn{flex:1 1}.photo-btn-row.wrap>.btn{flex:0 1 auto}.photo-big-btn{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;padding:12px;margin-bottom:8px;border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--text);font:inherit;cursor:pointer}.photo-big-btn i{font-size:18px;color:var(--accent-text);margin-top:2px}.photo-big-btn span{display:flex;flex-direction:column;gap:2px}.photo-big-btn strong{font-size:13.5px}.photo-big-btn small{font-size:12px;color:var(--text-muted);line-height:1.4}.photo-big-btn.primary{background:var(--accent-dim)}.photo-big-btn.primary,.photo-big-btn:hover:not(:disabled){border-color:var(--accent)}.photo-big-btn:disabled{opacity:.6;cursor:wait}.photo-filters{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.photo-filter{display:flex;flex-direction:column;align-items:center;gap:5px;padding:6px 4px;border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--text);font:inherit;font-size:11.5px;cursor:pointer}.photo-filter.active{border-color:var(--accent);background:var(--accent-dim)}.photo-filter-swatch{width:100%;height:34px;border-radius:4px}.f-vivid{filter:saturate(1.6) contrast(1.15)}.f-warm{filter:sepia(.25) saturate(1.2)}.f-cool{filter:hue-rotate(25deg) saturate(.9)}.f-portrait{filter:brightness(1.08) saturate(1.05) blur(.3px)}.f-landscape{filter:saturate(1.5) contrast(1.1)}.f-hdr{filter:contrast(1.25) saturate(1.4)}.f-vintage{filter:sepia(.5) contrast(.85) saturate(.8)}.f-film{filter:sepia(.2) contrast(1.1)}.f-matte{filter:contrast(.75) brightness(1.1) saturate(.85)}.f-bw{filter:grayscale(1) contrast(1.15)}.f-noir{filter:grayscale(1) contrast(1.6) brightness(.85)}.f-sepia{filter:sepia(1)}.f-dramatic{filter:contrast(1.4) saturate(.8) brightness(.9)}.photo-resize{display:flex;align-items:center;gap:6px}.photo-resize .input{width:84px;flex:1 1}.photo-history{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:200px;overflow-y:auto}.photo-history button{width:100%;text-align:left;border:none;background:none;color:var(--text-muted);font:inherit;font-size:12.5px;padding:4px 8px;border-radius:var(--radius-sm);cursor:pointer}.photo-history button.active{background:var(--accent-dim);color:var(--accent-text);font-weight:600}@media (max-width:1000px){.photo-main{grid-template-columns:1fr}.photo-panel{max-height:none}.photo-canvas{max-height:60vh}.photo-toolbar-actions{margin-left:0}}.code-choice{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-bottom:12px}.code-choice-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;padding:16px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--text);cursor:pointer}.code-choice-card:focus-visible,.code-choice-card:hover{border-color:var(--accent);background:var(--accent-dim);outline:none}.code-choice-icon{font-size:22px}.code-choice-card small{color:var(--text-muted);line-height:1.45}.cmp-pick-list{gap:6px;max-height:50vh;overflow:auto}.cmp-pick,.cmp-pick-list{display:flex;flex-direction:column}.cmp-pick{align-items:flex-start;gap:2px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);text-align:left;cursor:pointer}.cmp-pick:hover{border-color:var(--accent)}.cmp-pick small{color:var(--text-muted);font-size:12px}.cmp-paste{width:100%;min-height:260px;font-size:12.5px;line-height:1.5;white-space:pre;resize:vertical}.cmp-quick-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.cmp-quick-label{display:flex;justify-content:space-between;align-items:center}.cmp-overlay{--cmp-add:rgba(53,194,166,.16);--cmp-add-strong:rgba(53,194,166,.42);--cmp-del:rgba(229,100,107,.16);--cmp-del-strong:rgba(229,100,107,.45);--cmp-mod:rgba(232,163,61,.14);position:fixed;inset:0;z-index:90;display:flex;flex-direction:column;background:var(--bg)}.cmp-head{flex-wrap:wrap;gap:10px 16px;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--panel)}.cmp-head,.cmp-titles{display:flex;align-items:center}.cmp-titles{gap:6px;min-width:0;flex:1 1 360px}.cmp-side-label{font-family:var(--font-mono);font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:45%}.cmp-side-label.left{color:var(--danger)}.cmp-side-label.right{color:var(--accent-text)}.cmp-stats,.cmp-tools{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px}.cmp-tools .checkbox-row{font-size:12.5px}.cmp-count{min-width:64px;text-align:center;color:var(--text-muted)}.cmp-chip{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:12px;border:1px solid transparent;background:none;color:var(--text)}.cmp-chip.add{background:var(--cmp-add)}.cmp-chip.del{background:var(--cmp-del)}.cmp-chip.mod{background:var(--cmp-mod)}.cmp-chip.same{background:var(--cmp-add)}.cmp-chip.problems{border-color:var(--border);cursor:pointer}.cmp-chip.problems.has-errors{border-color:var(--danger);color:var(--danger)}.cmp-chip.problems.off{opacity:.5}.cmp-body{position:relative;flex:1 1;min-height:0;display:flex}.cmp-scroll{flex:1 1;overflow:auto;padding-right:4px}.cmp-banner{margin:12px;padding:10px 14px;border-radius:var(--radius-sm);background:var(--cmp-add);font-size:13px}.cmp-table{width:100%;border-collapse:collapse;table-layout:fixed;font-family:var(--font-mono);font-size:12.5px;line-height:1.55}.cmp-col-no{width:52px}.cmp-col-sign{width:22px}.cmp-col-mark{width:46px}.cmp-no{color:var(--text-faint);text-align:right;padding:0 8px;vertical-align:top;background:var(--panel)}.cmp-no,.cmp-sign{-webkit-user-select:none;-moz-user-select:none;user-select:none}.cmp-sign{text-align:center;color:var(--text-muted)}.cmp-code{padding:0 10px;white-space:pre-wrap;word-break:break-all;vertical-align:top;-moz-tab-size:4;tab-size:4}.cmp-table.split .cmp-code.left{border-right:1px solid var(--border)}.cmp-code.del{background:var(--cmp-del)}.cmp-code.add{background:var(--cmp-add)}.cmp-code.mod{background:var(--cmp-mod)}.cmp-table.split .cmp-row.add .cmp-code.left,.cmp-table.split .cmp-row.del .cmp-code.right{background:repeating-linear-gradient(135deg,transparent 0 6px,hsla(0,0%,50%,.08) 6px 12px)}.cmp-table.split .cmp-row.mod .cmp-code.left{background:var(--cmp-del)}.cmp-table.split .cmp-row.mod .cmp-code.right{background:var(--cmp-add)}.cmp-char{color:inherit;border-radius:2px}.cmp-char.del{background:var(--cmp-del-strong);text-decoration:line-through;-webkit-text-decoration-color:rgba(229,100,107,.8);text-decoration-color:rgba(229,100,107,.8)}.cmp-char.add{background:var(--cmp-add-strong)}.cmp-row.current .cmp-no{box-shadow:inset 3px 0 0 var(--accent)}.cmp-code.has-error{-webkit-text-decoration:underline wavy var(--danger);text-decoration:underline wavy var(--danger);text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}.cmp-code.has-warning{-webkit-text-decoration:underline wavy var(--warn,#e8a33d);text-decoration:underline wavy var(--warn,#e8a33d);text-underline-offset:3px}.cmp-code.has-info{-webkit-text-decoration:underline dotted var(--text-faint);text-decoration:underline dotted var(--text-faint);text-underline-offset:3px}.cmp-mark{white-space:nowrap;text-align:left;padding-left:4px;vertical-align:top}.cmp-problem{cursor:help;font-size:12px}.cmp-revert{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-size:11px;line-height:1;padding:2px 4px;margin-left:2px;cursor:pointer}.cmp-revert:hover{color:var(--text);border-color:var(--accent)}.cmp-fold td{padding:2px 0;background:var(--panel);text-align:center}.cmp-fold button{background:none;border:none;color:var(--accent-text);font-family:var(--font-mono);font-size:12px;cursor:pointer;padding:3px 10px}.cmp-ruler{position:relative;flex:0 0 16px;border-left:1px solid var(--border);background:var(--panel)}.cmp-ruler-mark,.cmp-ruler-problem{position:absolute;border:none;padding:0;cursor:pointer}.cmp-ruler-mark{left:2px;width:7px;min-height:3px}.cmp-ruler-mark.add{background:#35c2a6}.cmp-ruler-mark.del{background:#e5646b}.cmp-ruler-mark.mod{background:#e8a33d}.cmp-ruler-problem{right:1px;width:5px;height:5px;border-radius:50%}.cmp-ruler-problem.error{background:#e5646b}.cmp-ruler-problem.warning{background:#e8a33d}.cmp-ruler-problem.info{background:#8b93a5}.cmp-problems{border-top:1px solid var(--border);background:var(--panel);padding:8px 14px;max-height:22vh;overflow:auto;font-size:12.5px}.cmp-problem-list{display:flex;flex-direction:column;margin-top:4px}.cmp-problem-item{display:flex;gap:8px;align-items:baseline;background:none;border:none;text-align:left;color:var(--text);padding:3px 4px;border-radius:var(--radius-sm);cursor:pointer;font-size:12.5px}.cmp-problem-item:hover{background:var(--panel-raised)}.cmp-problem-item.error .cmp-problem-line{color:var(--danger)}.cmp-problem-line{font-family:var(--font-mono);min-width:64px;color:var(--text-muted)}.cmp-legend{display:flex;flex-wrap:wrap;gap:14px;padding:6px 14px;border-top:1px solid var(--border);font-size:11.5px;color:var(--text-faint);background:var(--panel)}.cmp-legend .sw{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:-1px;margin-right:4px}.cmp-legend .sw.add{background:#35c2a6}.cmp-legend .sw.del{background:#e5646b}.cmp-legend .sw.mod{background:#e8a33d}@media (max-width:720px){.cmp-quick-grid,.code-choice{grid-template-columns:1fr}.cmp-table.split .cmp-col-no{width:34px}.cmp-head{padding:8px 10px}}.code-viewbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin-bottom:8px;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);font-size:12.5px}.code-viewbar-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint)}.code-wrap-tabs{margin-left:-6px}.code-wrap-tabs .tab-btn{padding:4px 10px;font-size:12px}.code-view-check{color:var(--text-muted)}.code-font-size{display:inline-flex;align-items:center;gap:2px;color:var(--text-muted)}.code-font-size,.code-viewbar-info{font-family:var(--font-mono);font-size:11.5px}.code-viewbar-info{margin-left:auto;color:var(--text-faint)}.code-editor .code-area,.code-editor .code-gutter{font-size:var(--code-font)}.code-highlight .cl{min-height:calc(var(--code-font) * var(--code-line))}.code-editor.wrap .code-highlight,.code-editor.wrap .code-input{white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal}.code-area.numbered .code-highlight,.code-area.numbered .code-input{padding-left:calc((var(--gutter-chars) + 1) * 1ch + 30px)}.code-area.numbered .code-highlight code{counter-reset:ln}.code-area.numbered .cl{position:relative;counter-increment:ln}.code-area.numbered .cl:before{content:counter(ln);position:absolute;right:100%;width:calc((var(--gutter-chars) + 1) * 1ch);margin-right:18px;text-align:right;color:var(--text-faint)}.code-area.numbered:before{content:"";position:absolute;top:0;bottom:0;left:calc((var(--gutter-chars) + 1) * 1ch + 22px);border-left:1px solid var(--border-soft);pointer-events:none;z-index:1}.code-editor.wrap .code-highlight .cl:nth-child(2n){background:color-mix(in srgb,var(--panel-raised) 45%,transparent)}.code-editor.wrap-120 .code-highlight,.code-editor.wrap-120 .code-input,.code-editor.wrap-80 .code-highlight,.code-editor.wrap-80 .code-input{right:auto;width:calc(var(--wrap-cols) * 1ch + 48px);max-width:100%}.code-area.numbered .code-highlight,.code-area.numbered .code-input{--num-pad:calc((var(--gutter-chars) + 1) * 1ch + 30px)}.code-editor.wrap-120 .code-area.numbered .code-highlight,.code-editor.wrap-120 .code-area.numbered .code-input,.code-editor.wrap-80 .code-area.numbered .code-highlight,.code-editor.wrap-80 .code-area.numbered .code-input{width:calc(var(--wrap-cols) * 1ch + 32px + var(--num-pad))}.show-ws .ws-tab{background-image:linear-gradient(to right,transparent calc(50% - .5px),color-mix(in srgb,var(--text-faint) 60%,transparent) 50%,transparent calc(50% + .5px));background-size:100% 1px;background-repeat:no-repeat;background-position:0 55%}.show-ws .ws-tab:before{content:"→";position:absolute;color:var(--text-faint);opacity:.8}.show-ws .ws-trail{background:color-mix(in srgb,var(--danger) 28%,transparent);border-radius:2px}@media (max-width:800px){.code-viewbar-info{margin-left:0;width:100%}}.show-ws .ws-tab{position:relative}.cmp-tools select.input{width:auto;flex:0 0 auto}.photo-modes{margin-bottom:14px}.photo-modes .tab-btn{display:inline-flex;align-items:center;gap:6px;text-decoration:none}.combine{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-gap:16px;gap:16px;align-items:start}.combine-main{min-width:0}.combine-strip{display:flex;gap:10px;overflow-x:auto;padding:10px;margin-bottom:12px;border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--panel)}.combine-strip.dragging{border-color:var(--accent);background:var(--accent-dim)}.combine-thumb{position:relative;flex:0 0 112px;height:112px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);overflow:hidden;cursor:-webkit-grab;cursor:grab;display:flex;align-items:center;justify-content:center}.combine-thumb img{max-width:100%;max-height:84px;object-fit:contain;pointer-events:none}.combine-thumb.dragging{opacity:.4}.combine-thumb.over{box-shadow:inset 3px 0 0 var(--accent);border-color:var(--accent)}.combine-num{position:absolute;top:4px;left:4px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:rgba(0,0,0,.6);color:#fff;font-size:11px;line-height:18px;text-align:center;z-index:1}.combine-thumb-actions{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;background:rgba(0,0,0,.55)}.combine-thumb-actions button{flex:1 1;background:none;border:none;color:#fff;font-size:12px;padding:3px 0;cursor:pointer}.combine-thumb-actions button:disabled{opacity:.3;cursor:default}.combine-thumb-actions button:hover:not(:disabled){background:hsla(0,0%,100%,.15)}.combine-thumb-actions button.danger:hover{background:rgba(229,100,107,.6)}.combine-add{flex:0 0 90px;height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px dashed var(--border);border-radius:var(--radius-sm);background:none;color:var(--text-muted);cursor:pointer}.combine-add:hover{border-color:var(--accent);color:var(--accent-text)}.combine-preview-wrap{position:relative;display:flex;justify-content:center;align-items:flex-start;min-height:300px;max-height:72vh;overflow:auto;padding:16px;border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--panel);background-image:linear-gradient(45deg,hsla(0,0%,50%,.12) 25%,transparent 0,transparent 75%,hsla(0,0%,50%,.12) 0),linear-gradient(45deg,hsla(0,0%,50%,.12) 25%,transparent 0,transparent 75%,hsla(0,0%,50%,.12) 0);background-size:20px 20px;background-position:0 0,10px 10px}.combine-preview canvas.combine-canvas{display:block;max-width:100%;height:auto;box-shadow:0 6px 24px rgba(0,0,0,.25)}.combine-size{margin:8px 2px 0;font-size:12px;color:var(--text-muted)}.combine-panel{position:-webkit-sticky;position:sticky;top:74px;max-height:calc(100vh - 90px);overflow-y:auto}.combine-layouts{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px}.combine-layout{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 4px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-muted);font-size:12px;cursor:pointer}.combine-layout i{font-size:16px}.combine-layout.active{border-color:var(--accent);background:var(--accent-dim);color:var(--accent-text)}.combine-bg{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;color:var(--text-muted);margin:6px 0 4px}.combine-bg>span{width:100%}.combine-swatch{width:24px;height:24px;border-radius:5px;border:1px solid hsla(0,0%,50%,.45);cursor:pointer;padding:0}.combine-swatch.clear{background-color:#fff;background-image:linear-gradient(45deg,#ccc 25%,transparent 0,transparent 75%,#ccc 0),linear-gradient(45deg,#ccc 25%,transparent 0,transparent 75%,#ccc 0);background-size:8px 8px;background-position:0 0,4px 4px}.combine-swatch.active{outline:2px solid var(--accent);outline-offset:1px}.combine-bg input[type=color]{width:30px;height:26px;border:none;padding:0;background:none;cursor:pointer}.combine-row{display:flex;gap:6px;margin:6px 0}.combine-row select{flex:1 1}.combine-download{width:100%;margin-top:10px;justify-content:center}.combine-panel .input-sm{width:100%;margin-bottom:6px}@media (max-width:900px){.combine{grid-template-columns:1fr}.combine-panel{position:static}}.studio-head{align-items:center}.studio-tabs .tab-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 14px}.photo-drop-alt{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin-top:14px}.photo-credit{font-size:11.5px;color:var(--text-muted)}.photo-tabs{grid-template-columns:repeat(5,1fr)}.photo-tab{padding:8px 2px 7px}.photo-draw-layer,.photo-place-layer{position:absolute;inset:0;touch-action:none}.photo-draw-layer{cursor:crosshair}.photo-draw-layer.tool-picker{cursor:copy}.photo-place-layer{cursor:cell}.photo-chip-row{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}.photo-chip-row .new-track-group span{font-size:10.5px;margin-left:2px}.photo-filter-swatch{background:linear-gradient(135deg,#f7b267,#f27059 45%,#4fa6e8)}.photo-hsl{border:1px solid var(--border-soft);border-radius:var(--radius-sm);margin-bottom:6px;padding:0 10px}.photo-hsl[open]{padding-bottom:4px}.photo-hsl summary{display:flex;align-items:center;gap:8px;padding:7px 0;font-size:12.5px;cursor:pointer;list-style:none}.photo-hsl summary::-webkit-details-marker{display:none}.photo-hsl-dot{width:12px;height:12px;border-radius:50%}.photo-hsl-on{margin-left:auto;font-size:10.5px;color:var(--accent-text)}.photo-color-row{display:flex;align-items:center;gap:10px}.photo-color-row input[type=color]{width:36px;height:32px;padding:2px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);flex-shrink:0}.photo-color-row .photo-slider{flex:1 1;margin-bottom:0}.photo-swatches{display:flex;flex-wrap:wrap;gap:5px}.photo-swatches button{width:22px;height:22px;border-radius:50%;border:1px solid var(--border);cursor:pointer;padding:0}.photo-effect-live{border:1px solid var(--accent);background:var(--accent-dim);border-radius:var(--radius-md);padding:10px;margin-bottom:6px;position:-webkit-sticky;position:sticky;top:-14px;z-index:2}.photo-tool-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:6px;gap:6px}.photo-tool{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--text);font:inherit;font-size:11px;cursor:pointer}.photo-tool i{font-size:14px;color:var(--accent-text)}.photo-tool.active{border-color:var(--accent);background:var(--accent-dim)}.photo-text-grid{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0}.photo-text-grid select{flex:1 1 120px}.photo-text-grid input[type=color]{width:32px;height:30px;padding:2px;border:1px solid var(--border);border-radius:var(--radius-sm)}.photo-stickers{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:3px;gap:3px}.photo-stickers button{font-size:20px;line-height:1;padding:5px 0;border:1.5px solid transparent;border-radius:var(--radius-sm);background:none;cursor:pointer}.photo-stickers button:hover{background:var(--panel-raised)}.photo-stickers button.active{border-color:var(--accent);background:var(--accent-dim)}.photo-frame-swatch{width:100%;height:34px;border-radius:4px;background:linear-gradient(135deg,#f7b267,#4fa6e8);box-sizing:border-box}.fr-border{border:5px solid #fff}.fr-border,.fr-mat{outline:1px solid var(--border)}.fr-mat{border:8px solid #f4efe6}.fr-polaroid{border:solid #fff;border-width:4px 4px 12px;outline:1px solid var(--border)}.fr-double{box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 5px transparent,inset 0 0 0 7px #fff}.fr-inset{box-shadow:inset 0 0 0 6px transparent,inset 0 0 0 8px #fff}.fr-rounded{border-radius:12px}.fr-circle{border-radius:50%;width:34px;margin:0 auto}.fr-shadow{box-shadow:0 4px 10px rgba(0,0,0,.5);width:80%;margin:0 auto}.fr-film{border-top:6px dashed #111;border-bottom:6px dashed #111}.fr-fade{box-shadow:inset 0 0 12px 8px #fff}.collage-canvas{cursor:-webkit-grab;cursor:grab;touch-action:none}.collage-canvas:active{cursor:-webkit-grabbing;cursor:grabbing}.photo-stage.drag-over{outline:2px dashed var(--accent);outline-offset:-8px}.collage-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:none;background:color-mix(in srgb,var(--bg) 70%,transparent);color:var(--text-muted);font:inherit;cursor:pointer}.collage-empty i{font-size:38px;color:var(--accent-text)}.collage-empty strong{color:var(--text);font-size:15px}.collage-tray{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:6px;gap:6px}.collage-thumb{position:relative;aspect-ratio:1;border-radius:var(--radius-sm);overflow:hidden;border:2px solid transparent;background:var(--panel-raised)}.collage-thumb.active{border-color:var(--accent)}.collage-thumb>button:first-child{width:100%;height:100%;padding:0;border:none;background:none;cursor:pointer}.collage-thumb img{width:100%;height:100%;object-fit:cover;display:block}.collage-thumb-num{left:3px;bottom:3px;font-size:10px;border-radius:3px;padding:0 4px}.collage-thumb-num,.collage-thumb-x{position:absolute;background:rgba(0,0,0,.65);color:#fff}.collage-thumb-x{top:2px;right:2px;width:18px;height:18px;border-radius:50%;border:none;font-size:12px;line-height:1;cursor:pointer;padding:0}.collage-thumb.add{display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--text-muted);border:2px dashed var(--border);cursor:pointer}.collage-layouts{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:6px;gap:6px;max-height:210px;overflow-y:auto;padding:2px}.collage-layout{position:relative;aspect-ratio:1;border:1.5px solid var(--border);border-radius:4px;background:var(--bg);cursor:pointer;padding:0}.collage-layout.active{border-color:var(--accent);background:var(--accent-dim)}.collage-layout span{position:absolute;box-sizing:border-box;border:1.5px solid var(--bg);background:color-mix(in srgb,var(--text-faint) 55%,transparent);border-radius:2px}.collage-layout.active span{background:var(--accent);border-color:var(--accent-dim)}.collage-cell-filters{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:4px;gap:4px;max-height:150px;overflow-y:auto}.collage-cell-filters button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:3px;border:1.5px solid transparent;border-radius:4px;background:none;color:var(--text-muted);cursor:pointer}.collage-cell-filters button.active{border-color:var(--accent)}.collage-cell-filters .photo-filter-swatch{height:24px}.collage-cell-filters small{font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.collage-bgs{display:flex;flex-wrap:wrap;gap:6px}.collage-bg-custom,.collage-bgs>button{width:28px;height:28px;border-radius:6px;border:2px solid var(--border);cursor:pointer;padding:0}.collage-bg-custom.active,.collage-bgs>button.active{border-color:var(--accent)}.collage-bg-custom{position:relative;overflow:hidden;background:conic-gradient(red,#ff0,lime,aqua,blue,#f0f,red)}.collage-bg-custom input{position:absolute;inset:0;opacity:0;cursor:pointer}.pexels-modal{max-width:960px}.pexels-search{display:flex;gap:8px;margin-bottom:12px}.pexels-search .input:first-child{flex:1 1}.pexels-search select{flex:0 0 130px}.pexels-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:8px;gap:8px;max-height:58vh;overflow-y:auto;padding:2px}.pexels-item{position:relative;aspect-ratio:4/3;border:2px solid transparent;border-radius:var(--radius-sm);overflow:hidden;padding:0;cursor:pointer}.pexels-item.selected{border-color:var(--accent)}.pexels-item img{width:100%;height:100%;object-fit:cover;display:block}.pexels-credit{position:absolute;left:0;right:0;bottom:0;padding:10px 6px 4px;font-size:10.5px;color:#fff;text-align:left;background:linear-gradient(transparent,rgba(0,0,0,.7));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pexels-check{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;border:2px solid #fff;background:rgba(0,0,0,.35);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.pexels-item.selected .pexels-check{background:var(--accent)}.pexels-setup{margin-top:8px;font-size:12.5px;line-height:1.7;color:var(--text)}.pdf-editor{display:flex;flex-direction:column;gap:10px}.pdf-main{display:grid;grid-template-columns:170px minmax(0,1fr);grid-gap:12px;gap:12px;min-height:calc(100vh - 210px)}.pdf-thumbs{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);padding:8px;overflow-y:auto;max-height:calc(100vh - 210px);display:flex;flex-direction:column;gap:8px}.pdf-thumbs-head{font-size:12px;color:var(--text-muted)}.pdf-thumb{position:relative;border:2px solid var(--border);border-radius:var(--radius-sm);background:#fff;cursor:pointer;min-height:60px}.pdf-thumb.active{border-color:var(--accent)}.pdf-thumb.dragging{opacity:.4}.pdf-thumb img{display:block;width:100%}.pdf-thumb input{position:absolute;top:4px;left:4px;z-index:1;accent-color:var(--accent)}.pdf-thumb-num{position:absolute;right:4px;bottom:4px;font-size:10.5px;background:rgba(0,0,0,.65);color:#fff;border-radius:3px;padding:0 5px}.pdf-thumb-loading{display:block;height:180px;background:var(--panel-raised)}.pdf-thumb.add{min-height:0;padding:8px;border-style:dashed;background:none;color:var(--text-muted);font:inherit;font-size:12px}.pdf-center{display:flex;flex-direction:column;gap:8px;min-width:0}.pdf-page-actions,.pdf-tools{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.pdf-tools .photo-tool{flex:0 0 64px;padding:6px 2px}.pdf-tools input[type=color]{width:34px;height:32px;padding:2px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel)}.pdf-tools-sep{width:1px;height:30px;background:var(--border);margin:0 4px}.pdf-page-actions{font-size:12.5px}.pdf-zoom{margin-left:auto;display:inline-flex;align-items:center;gap:2px;font-family:var(--font-mono);font-size:12px}.pdf-stage{position:relative;flex:1 1;min-height:420px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:20px}.pdf-page{position:relative;flex-shrink:0;background:#fff;box-shadow:0 6px 24px -8px rgba(0,0,0,.5)}.pdf-page-canvas{position:absolute;inset:0;width:100%;height:100%}.pdf-page-layer{position:absolute;inset:0;touch-action:none}.pdf-page-layer.tool-text{cursor:text}.pdf-page-layer.tool-highlight,.pdf-page-layer.tool-ink,.pdf-page-layer.tool-place,.pdf-page-layer.tool-rect,.pdf-page-layer.tool-whiteout{cursor:crosshair}.pdf-ink-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.pdf-ink-layer polyline.selected{filter:drop-shadow(0 0 2px #35c2a6)}.pdf-ann{position:absolute;box-sizing:border-box}.pdf-ann.selected{outline:2px dashed #35c2a6;outline-offset:2px}.pdf-ann-whiteout{background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.08)}.pdf-ann-image img{width:100%;height:100%;display:block;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pdf-ann-text{font-family:Helvetica,Arial,sans-serif;line-height:1.25;cursor:move;min-width:10px;white-space:pre}.pdf-ann.draft{pointer-events:none}.pdf-ann-resize{position:absolute;right:-7px;bottom:-7px;width:14px;height:14px;background:#35c2a6;border:2px solid #fff;border-radius:3px;cursor:nwse-resize}.pdf-text-edit{font-family:Helvetica,Arial,sans-serif;line-height:1.25;border:1px dashed #35c2a6;background:hsla(0,0%,100%,.9);padding:0;margin:0;resize:both;min-width:160px;outline:none}.pdf-foot{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:12.5px}.pdf-sign-pad{width:100%;aspect-ratio:3/1;border:1px dashed var(--border);border-radius:var(--radius-md);background:#fff;touch-action:none;cursor:crosshair}@media (max-width:900px){.pdf-main{grid-template-columns:1fr}.pdf-thumbs{flex-direction:row;max-height:none;overflow-x:auto}.pdf-thumb{flex:0 0 90px}.pdf-thumbs-head{display:none}.collage-layouts{grid-template-columns:repeat(6,1fr)}}.collage-cell-filters{grid-template-columns:repeat(5,minmax(0,1fr));overflow-x:hidden}.sidebar-records{display:flex;align-items:center;gap:2px;margin:4px 0 6px;padding-right:4px;border:1px solid var(--border);border-radius:var(--radius-sm)}.sidebar-records.active,.sidebar-records:hover{background:var(--panel-raised);border-color:var(--accent)}.sidebar-records.drag-over{outline:1px dashed var(--accent);outline-offset:2px}.sidebar-records-toggle{flex:1 1;min-width:0;display:flex;align-items:center;gap:9px;padding:8px 10px;background:none;border:0;color:var(--text);font:inherit;font-size:13px;font-weight:500;text-align:left;cursor:pointer}.sidebar-records-toggle i{color:var(--accent-text);width:14px}.sidebar-records-count{font-size:11px;font-weight:600;color:inherit;opacity:.75;background:color-mix(in srgb,currentColor 12%,transparent);border-radius:9px;padding:0 7px;line-height:17px}.sidebar-records-caret{margin-left:auto;font-size:12px;opacity:.55}.sidebar-records-list{margin:0 0 8px 8px;padding-left:2px;border-left:1px solid var(--border-soft)}.sectest-cats{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px}.sectest-chip{border:1px solid var(--border);background:var(--panel);color:var(--text-muted);font-size:12px;padding:4px 10px;border-radius:999px;cursor:pointer}.sectest-chip.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent-text)}.sectest-summary{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);margin-bottom:16px}.sectest-score{display:flex;flex-direction:column;align-items:center;line-height:1.1}.sectest-score strong{font-size:26px}.sectest-score strong.ok{color:var(--accent-text)}.sectest-score strong.bad{color:var(--danger)}.sectest-score span{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.sectest-when{margin-left:auto;font-size:11.5px}.sectest-badge{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap}.sev-crit{background:#7a1020;color:#fff}.sev-high{background:var(--danger-dim);color:var(--danger)}.sev-med{background:#4a3410;color:var(--warn)}.sev-low{background:#123340;color:#7fd7e6}.sev-info{background:var(--panel-raised);color:var(--text-muted)}:root[data-theme=light] .sev-med{background:#fbefd2}:root[data-theme=light] .sev-low{background:#d9f1f6;color:#0e6b7d}.sectest-table td{padding:9px 12px;border-bottom:1px solid var(--border-soft);font-size:12.5px;vertical-align:top}.sectest-repro{font-size:11.5px;color:var(--text-muted);word-break:break-word}.sectest-group{margin-bottom:12px}.sectest-checks{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px 18px;gap:4px 18px}.sectest-check{display:flex;align-items:baseline;gap:8px;font-size:12.5px;padding:3px 0}.sectest-check.fail{color:var(--text)}.sectest-dot{font-weight:700;width:16px;flex-shrink:0}.sectest-dot.ok{color:var(--accent-text)}.sectest-dot.sev-crit,.sectest-dot.sev-high{color:var(--danger);background:none}.sectest-dot.sev-med{color:var(--warn);background:none}.sectest-dot.sev-info,.sectest-dot.sev-low{color:var(--text-muted);background:none}.sectest-name{flex-shrink:0}.sectest-detail{font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sectest-cheat{margin-top:22px;border-top:1px solid var(--border-soft);padding-top:14px}.sectest-cheat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:10px;gap:10px}.sectest-cheat-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);padding:10px 12px}.sectest-cheat-card strong{font-size:12.5px}.sectest-cheat-items{display:flex;flex-direction:column;gap:3px;margin:6px 0}.sectest-cheat-items code{font-size:11px;background:var(--bg);padding:2px 6px;border-radius:3px;word-break:break-all}@media (max-width:800px){.sectest-checks{grid-template-columns:1fr}.sectest-when{margin-left:0;width:100%}}.sectest-url-form{display:flex;gap:8px;margin-bottom:8px}.sectest-url-form .input{flex:1 1;font-family:var(--font-mono)}.sectest-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--text-muted);margin-bottom:8px}.sectest-legend span{display:inline-flex;align-items:center;gap:5px}.sectest-swatch{width:12px;height:12px;border-radius:3px;display:inline-block}.line-ok{background:var(--accent)}.line-low{background:#4fa6e8}.line-med{background:var(--warn)}.line-high{background:var(--danger)}.line-info{background:var(--text-faint)}.sectest-lines{display:flex;flex-direction:column;gap:4px}.sectest-line{border:1px solid var(--border-soft);border-left-width:4px;border-radius:var(--radius-sm);background:var(--panel);padding:8px 12px}.sectest-line.line-ok{border-left-color:var(--accent)}.sectest-line.line-low{border-left-color:#4fa6e8}.sectest-line.line-med{border-left-color:var(--warn);background:color-mix(in srgb,var(--warn) 7%,var(--panel))}.sectest-line.line-high{border-left-color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,var(--panel))}.sectest-line.line-info{border-left-color:var(--text-faint)}.sectest-line-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px}.sectest-line-mark{font-weight:700;width:14px;text-align:center}.line-ok .sectest-line-mark{color:var(--accent-text)}.line-high .sectest-line-mark,.line-med .sectest-line-mark{color:var(--danger)}.sectest-line-name{font-weight:600}.sectest-line-detail{color:var(--text-muted);font-size:12.5px}.sectest-line-body{margin:6px 0 0 22px;font-size:12.5px;line-height:1.5}.sectest-line-body p{margin:2px 0}.sectest-tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:3px;margin-right:6px}.sectest-tag.risk{background:var(--danger-dim);color:var(--danger)}.sectest-tag.fix{background:var(--accent-dim);color:var(--accent-text)}.sectest-phase{margin-bottom:14px}.sectest-phase-head{display:flex;align-items:baseline;gap:10px;margin:14px 0 6px}.sectest-phase-title{font-size:13px;font-weight:700;color:var(--text)}.sectest-phase-count{font-size:11.5px;color:var(--accent-text);font-family:var(--font-mono)}.sectest-phase-count.has-fail{color:var(--warn)}.access-list-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.access-list{display:flex;flex-direction:column;border:1px solid var(--border-soft);border-radius:var(--radius-sm);overflow:hidden}.access-item{display:flex;align-items:center;gap:10px;padding:9px 12px;font-size:13.5px;cursor:pointer}.access-item+.access-item{border-top:1px solid var(--border-soft)}.access-item:hover{background:var(--bg)}.access-item i{width:16px;text-align:center;color:var(--text-muted)}.access-item-label{flex:1 1}.access-item-where{font-size:11.5px;color:var(--text-faint)}.login-history{display:flex;flex-direction:column;gap:8px;max-width:640px}.login-row{gap:14px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel)}.login-photo,.login-row{display:flex;align-items:center}.login-photo{width:56px;height:56px;border-radius:var(--radius-sm);overflow:hidden;border:none;background:var(--panel-raised);cursor:pointer;padding:0;flex-shrink:0;justify-content:center}.login-photo.none{cursor:default;color:var(--text-faint);font-size:20px}.login-photo img{width:100%;height:100%;object-fit:cover}.login-info{display:flex;flex-direction:column;gap:2px;min-width:0}.login-info strong{font-size:13.5px}.login-info span{font-size:12px}.login-nophoto{margin-left:auto;font-size:11.5px;font-style:italic}.login-zoom{max-width:90vw;max-height:85vh;border-radius:var(--radius-md);box-shadow:0 10px 40px rgba(0,0,0,.5)}.password-field{position:relative}.password-field .input{padding-right:40px;width:100%}.password-toggle{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:none;background:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm)}.password-toggle:hover{color:var(--text);background:var(--panel-raised)}.login-capture-status{margin:10px 0 0;font-size:12.5px;color:var(--text-muted)}.auth-hint,.login-capture-status{text-align:center;line-height:1.5}.auth-hint{margin:14px 0 0;font-size:11.5px;color:var(--text-faint)}.sidebar-tools-list{flex:none;overflow:visible}.sidebar-tools-list .sidebar-link i{width:16px;text-align:center;font-size:12.5px;color:var(--accent-text)}.access-scroll{max-height:min(56vh,520px);overflow-y:auto;padding-right:2px}.access-group{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);margin:10px 0 6px}.access-scroll>div:first-child .access-group{margin-top:0}.auth-shell{position:relative;isolation:isolate;overflow:hidden;background:#070b10}.auth-shell:after,.auth-shell:before{content:"";position:absolute;inset:-25%;z-index:-1;filter:blur(70px);pointer-events:none}.auth-shell:before{background:radial-gradient(38% 42% at 22% 28%,rgba(53,194,166,.55),transparent 70%),radial-gradient(34% 40% at 78% 22%,rgba(91,141,239,.45),transparent 70%),radial-gradient(40% 44% at 62% 82%,rgba(176,124,232,.38),transparent 70%);animation:auth-drift 26s ease-in-out infinite alternate}.auth-shell:after{background:radial-gradient(30% 34% at 12% 78%,rgba(56,189,248,.32),transparent 70%),radial-gradient(26% 30% at 88% 64%,rgba(53,194,166,.3),transparent 70%);animation:auth-drift 34s ease-in-out infinite alternate-reverse}@keyframes auth-drift{0%{transform:translateZ(0) rotate(0deg) scale(1)}50%{transform:translate3d(3%,-2%,0) rotate(6deg) scale(1.06)}to{transform:translate3d(-3%,3%,0) rotate(-4deg) scale(1)}}@media (prefers-reduced-motion:reduce){.auth-shell:after,.auth-shell:before{animation:none}}.auth-card{max-width:400px;padding:36px 32px 30px;border-radius:18px;background:rgba(20,25,33,.62);border:1px solid hsla(0,0%,100%,.1);backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06),0 30px 80px -30px rgba(0,0,0,.8)}.auth-brand{align-items:center;margin-bottom:26px}.auth-brand .mark{width:30px;height:30px;border-radius:9px;font-size:13px;background:linear-gradient(135deg,#35c2a6,#5b8def);color:#fff;box-shadow:0 6px 18px -6px rgba(53,194,166,.7)}.auth-brand h1{font-size:16px;letter-spacing:.01em;color:var(--text-muted);font-weight:500}.auth-title{font-size:26px;line-height:1.2;font-weight:700;letter-spacing:-.02em;margin:0;color:var(--text)}.auth-sub{margin:8px 0 26px;font-size:13.5px}.auth-card .input{background:rgba(8,11,16,.55);border-color:hsla(0,0%,100%,.1);padding:11px 13px;border-radius:10px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.auth-card .input:focus{border-color:var(--accent);background:rgba(8,11,16,.75);box-shadow:0 0 0 4px rgba(53,194,166,.16)}.auth-card .btn-primary{margin-top:6px;padding:12px 14px;border:0;border-radius:10px;font-weight:600;color:#fff;background:linear-gradient(135deg,#2fb99d,#3f9fd8);box-shadow:0 10px 26px -10px rgba(53,194,166,.75);transition:transform .12s ease,box-shadow .15s ease,filter .15s ease}.auth-card .btn-primary:hover:not(:disabled){filter:brightness(1.07);box-shadow:0 14px 30px -10px rgba(53,194,166,.85);transform:translateY(-1px)}.auth-card .btn-primary:active:not(:disabled){transform:translateY(0)}.auth-foot{margin-top:20px}:root[data-theme=light] .auth-shell{background:#eef2f6}:root[data-theme=light] .auth-shell:before{background:radial-gradient(38% 42% at 22% 28%,rgba(53,194,166,.42),transparent 70%),radial-gradient(34% 40% at 78% 22%,rgba(91,141,239,.36),transparent 70%),radial-gradient(40% 44% at 62% 82%,rgba(176,124,232,.3),transparent 70%)}:root[data-theme=light] .auth-shell:after{background:radial-gradient(30% 34% at 12% 78%,rgba(56,189,248,.26),transparent 70%),radial-gradient(26% 30% at 88% 64%,rgba(53,194,166,.24),transparent 70%)}:root[data-theme=light] .auth-card{background:hsla(0,0%,100%,.68);border-color:hsla(0,0%,100%,.8);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.9),0 30px 70px -30px rgba(40,60,90,.35)}:root[data-theme=light] .auth-card .input{background:hsla(0,0%,100%,.75);border-color:rgba(26,29,36,.12)}:root[data-theme=light] .auth-card .input:focus{background:#fff;box-shadow:0 0 0 4px rgba(31,157,133,.16)}@media (max-width:640px){.auth-card{padding:28px 20px 24px;border-radius:16px}.auth-title{font-size:23px}}.task-title-text{cursor:pointer;font-weight:600}.task-title-text:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-underline-offset:2px}.task-th-tools{display:none;gap:2px;margin-left:4px}.task-th:hover .task-th-tools{display:inline-flex}.task-th-tool{border:none;background:none;color:var(--text-muted);cursor:pointer;font-size:12px;padding:1px 4px;border-radius:3px;line-height:1}.task-th-tool:hover{background:var(--panel-raised);color:var(--text)}.task-th-tool.danger:hover{color:var(--danger)}.task-th-rename{max-width:140px}.task-table tbody td:last-child:not([colspan]),.task-table th.task-th-actions{position:-webkit-sticky;position:sticky;right:0;z-index:2;background:var(--panel);box-shadow:-10px 0 12px -10px rgba(0,0,0,.45)}.task-table tbody tr:hover td:last-child:not([colspan]){background:var(--panel-raised)}.task-table tr.task-draft-row td:last-child:not([colspan]){background:var(--accent-dim)}:root[data-theme=light] .task-table tbody td:last-child:not([colspan]),:root[data-theme=light] .task-table th.task-th-actions{box-shadow:-10px 0 12px -10px rgba(26,29,36,.18)}.task-modal-left{display:flex;gap:4px;margin-right:auto}.task-modal-delete{color:var(--danger)}.board-card-wrap{position:relative}.board-del{position:absolute;top:10px;right:10px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--panel);color:var(--text-faint);border-radius:var(--radius-sm);cursor:pointer;opacity:0;transition:opacity .12s ease,color .12s ease,border-color .12s ease;font-size:12px}.board-card-wrap:hover .board-del,.board-del:focus-visible{opacity:1}.board-del:hover{color:var(--danger);border-color:var(--danger)}@media (hover:none){.board-del{opacity:1}}.task-td-serial,.task-th-serial{width:1%;white-space:nowrap;text-align:right;color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.task-td-serial{font-size:12.5px}.mobile-tabbar{display:none}@media (max-width:800px){html{text-size-adjust:100%}body{-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}canvas,iframe,img,pre,svg,video{max-width:100%}pre{overflow-x:auto}.mobile-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border:none;background:none;color:var(--text);border-radius:var(--radius-sm);font-size:17px;cursor:pointer}.mobile-icon-btn:active{background:var(--panel-raised)}.mobile-menu-btn{flex-shrink:0}.mobile-topbar-right{width:40px;display:flex;justify-content:flex-end;flex-shrink:0}.mobile-topbar .profile-menu-dropdown{position:fixed;top:calc(56px + env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));min-width:220px;max-width:calc(100vw - 20px)}.mobile-topbar .profile-menu-item{padding:11px 12px;font-size:14px}.mobile-tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;height:calc(58px + env(safe-area-inset-bottom));padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--panel);border-top:1px solid var(--border);box-shadow:0 -8px 24px -18px rgba(0,0,0,.6);z-index:100}.mobile-tab{flex:1 1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:none;background:none;color:var(--text-faint);text-decoration:none;font-size:10.5px;font-weight:500;cursor:pointer;-moz-user-select:none;user-select:none;-webkit-user-select:none;transition:color .12s ease}.mobile-tab i{font-size:18px}.mobile-tab span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-tab.active{color:var(--accent-text)}.mobile-tab:active i{transform:scale(.9)}.mobile-drawer{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.mobile-drawer .sidebar-link,.mobile-drawer .sidebar-tasks-link{min-height:40px}.mobile-drawer .sidebar{height:auto;min-height:100%;overflow:visible}.mobile-drawer .sidebar-list{flex:none;overflow:visible}.mobile-drawer-overlay{animation:mobileFadeIn .18s ease}@keyframes mobileFadeIn{0%{opacity:0}to{opacity:1}}.modal-overlay{padding-top:env(safe-area-inset-top);z-index:150}.modal,.modal.modal-lg{max-width:100%;max-height:92vh;max-height:92dvh;padding-bottom:calc(20px + env(safe-area-inset-bottom));border-left:none;border-right:none;border-bottom:none;animation:mobileSheetUp .22s ease;overscroll-behavior:contain}.modal:before{content:"";display:block;width:38px;height:4px;border-radius:2px;background:var(--border);margin:-8px auto 14px}@keyframes mobileSheetUp{0%{transform:translateY(40px);opacity:.6}to{transform:translateY(0);opacity:1}}.modal-actions{flex-wrap:wrap;position:-webkit-sticky;position:sticky;bottom:0;padding-bottom:4px;background:var(--panel);z-index:2}.modal-actions .btn{flex:1 1 auto;justify-content:center}.task-modal-left{flex-basis:100%;margin-right:0}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),select,textarea{font-size:16px}.page-head>div:first-child{min-width:0;max-width:100%}.page-head h1{word-break:break-word}.tabs{max-width:100%;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.table-panel,.task-table-wrap{max-width:100%}.task-table-wrap{-webkit-overflow-scrolling:touch}.task-status-strip{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.task-status-strip::-webkit-scrollbar{display:none}.row-action-btn{min-width:32px;min-height:32px}.export-dropdown{max-width:calc(100vw - 28px)}.note-sticky{top:0}.note-toolbar{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.note-toolbar::-webkit-scrollbar{display:none}.note-toolbar-group{flex-shrink:0}.note-tb-btn{min-width:34px;min-height:34px}.note-char-grid{grid-template-columns:repeat(6,1fr)}.builder-row{grid-template-columns:20px minmax(0,1fr) 110px 24px}.photo-tabs{display:flex;overflow-x:auto;scrollbar-width:none}.photo-tabs::-webkit-scrollbar{display:none}.photo-tabs>*{flex:1 0 auto}.collage-tray,.photo-tool-grid{grid-template-columns:repeat(3,1fr)}.photo-stickers{grid-template-columns:repeat(6,1fr)}.collage-cell-filters,.collage-layouts{grid-template-columns:repeat(4,minmax(0,1fr))}.cal-day,.qr-output{position:static;max-height:none}}@media (max-width:420px){.filter-bar{grid-template-columns:1fr}.builder-row{grid-template-columns:20px minmax(0,1fr) 90px 24px}.mobile-tab{font-size:10px}}@media (hover:none){.task-th-tools{display:inline-flex}}.note-mode-tabs{display:inline-flex;gap:4px;margin-top:8px;padding:3px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm)}.note-plain{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel);overflow:hidden}.note-plain-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:8px 10px;background:var(--panel-raised);border-bottom:1px solid var(--border)}.note-plain-badge{font-size:12px;color:var(--text-muted)}.note-plain-actions{display:flex;gap:6px;flex-wrap:wrap}.note-plain-actions .btn.active{border-color:var(--accent);color:var(--accent-text)}.note-plain-body{display:flex;height:65vh;min-height:280px;background:var(--bg)}.note-plain-gutter{flex-shrink:0;min-width:44px;padding:12px 8px 12px 0;overflow:hidden;text-align:right;color:var(--text-faint);border-right:1px solid var(--border-soft);background:var(--panel);-webkit-user-select:none;-moz-user-select:none;user-select:none}.note-plain-gutter,.note-plain-input{font-family:var(--font-mono);font-size:13px;line-height:1.6}.note-plain-input{flex:1 1;min-width:0;margin:0;padding:12px 14px;border:none;outline:none;resize:none;background:transparent;color:var(--text);-moz-tab-size:4;tab-size:4;white-space:pre;overflow:auto}.note-plain-body.wrap .note-plain-input{white-space:pre-wrap;word-break:break-word}.note-plain-foot{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:6px 10px;font-size:11.5px;color:var(--text-faint);border-top:1px solid var(--border)}.note-plain-flash{color:var(--accent-text)}.note-plain-hint{margin-left:auto}@media (max-width:800px){.note-plain-body{height:60vh;height:60dvh}.note-plain-gutter,.note-plain-input{font-size:16px}.note-plain-gutter{min-width:36px}.note-plain-hint{display:none}.note-mode-tabs{display:flex;width:100%}.note-mode-tabs .tab-btn{flex:1 1;white-space:nowrap}.note-print-area:has(>.note-plain){padding:0!important;margin:0!important}}.note-editor-choice{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.note-editor-option{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:12px;text-align:left;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);cursor:pointer;transition:border-color .12s ease,background .12s ease}.note-editor-option:hover{border-color:var(--text-faint)}.note-editor-option.active{border-color:var(--accent);background:var(--accent-dim)}.note-editor-option-icon{font-family:var(--font-mono);font-size:15px;font-weight:600;color:var(--accent-text)}.note-editor-option strong{font-size:13px}.note-editor-option small{font-size:11.5px;color:var(--text-muted)}.note-content-wrap .note-kbd,.note-kbd{display:inline-block;padding:0 6px;margin:0 1px;border:solid var(--border);border-width:1px 1px 2px;border-radius:4px;background:var(--panel-raised);font-family:var(--font-mono);font-size:.85em;line-height:1.5}.note-spoiler{filter:blur(5px);background:var(--panel-raised);border-radius:3px;transition:filter .15s}.ProseMirror-focused .note-spoiler:focus-within,.note-spoiler:hover{filter:none}.note-tag{display:inline-block;padding:0 8px;border-radius:999px;font-size:.82em;font-weight:600;line-height:1.6;border:1px solid transparent;--tag:#8b93a5;background:color-mix(in srgb,var(--tag) 18%,transparent);color:color-mix(in srgb,var(--tag) 75%,var(--text))}button.note-tag{cursor:pointer;font-family:inherit}.note-tag[data-tag=green]{--tag:#2fb380}.note-tag[data-tag=blue]{--tag:#4f86f0}.note-tag[data-tag=yellow]{--tag:#d9a21b}.note-tag[data-tag=red]{--tag:#e5646b}.note-tag[data-tag=purple]{--tag:#a26cf0}.note-tag-row{display:flex;flex-wrap:wrap;gap:6px;padding:4px 8px 8px}.note-content-wrap .note-dropcap:first-letter{float:left;font-size:3.2em;line-height:.85;font-weight:700;margin:.06em .12em 0 0;color:var(--accent-text)}.note-content-wrap .note-accentbar{border-left:4px solid var(--accent);padding-left:12px}.note-content-wrap .note-boxed{border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 14px}.note-content-wrap [data-shade]{padding:6px 10px;border-radius:var(--radius-sm);color:#1a1d24}.note-content-wrap blockquote[data-style=pull]{border-left:none;border-top:2px solid var(--accent);border-bottom:2px solid var(--accent);padding:14px 10%;text-align:center;font-size:1.25em;font-style:italic;color:var(--text)}.note-content-wrap blockquote[data-style=boxed]{border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius-md);background:var(--panel-raised);padding:10px 16px}.note-content-wrap hr[data-style=dashed]{border-top-style:dashed}.note-content-wrap hr[data-style=dotted]{border-top:3px dotted var(--border)}.note-content-wrap hr[data-style=double]{border-top:4px double var(--border)}.note-content-wrap hr[data-style=thick]{border-top:4px solid var(--text-faint);border-radius:2px}.note-content-wrap hr[data-style=fade]{border-top:none;height:1px;background:linear-gradient(90deg,transparent,var(--text-faint),transparent)}.note-hr-sample{display:inline-block;width:34px;vertical-align:middle;margin-right:6px;border-top:1px solid}.note-hr-sample[data-style=dashed]{border-top-style:dashed}.note-hr-sample[data-style=dotted]{border-top:3px dotted}.note-hr-sample[data-style=double]{border-top:4px double}.note-hr-sample[data-style=thick]{border-top-width:4px}.note-hr-sample[data-style=fade]{border-top:none;height:1px;background:linear-gradient(90deg,transparent,currentColor,transparent)}.note-content-wrap .note-details{display:flex;gap:6px;margin:0 0 12px;padding:6px 10px 6px 4px;border:1px solid var(--border-soft);border-radius:var(--radius-md)}.note-details-toggle{flex:none;width:24px;height:24px;border:none;border-radius:var(--radius-sm);background:none;color:var(--text-muted);cursor:pointer;font-size:13px}.note-details-toggle:hover{background:var(--panel-raised);color:var(--text)}.note-details-body{flex:1 1;min-width:0}.note-content-wrap .note-details-summary,.note-content-wrap summary{display:block;font-weight:600;padding:2px 0;list-style:none}.note-content-wrap .note-details:not(.is-open) .note-details-content{display:none}.note-content-wrap .note-details-content{margin-top:6px}.note-content-wrap .note-details-content>:last-child{margin-bottom:0}.note-content-wrap .note-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;margin:0 0 12px}.note-content-wrap .note-columns[data-columns="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.note-content-wrap .note-column{min-width:0}.note-editor:not(.is-readonly) .note-content-wrap .note-column{outline:1px dashed var(--border);outline-offset:4px;border-radius:2px}.note-content-wrap .note-column>:last-child{margin-bottom:0}.note-hashtag{color:var(--accent-text);background:color-mix(in srgb,var(--accent) 12%,transparent);border-radius:4px;padding:0 2px}.note-editor.focus-paragraph .note-content-wrap .ProseMirror>*{opacity:.28;transition:opacity .2s}.note-editor.focus-paragraph .note-content-wrap .ProseMirror>.is-current-block{opacity:1}.note-editor.show-marks .note-content-wrap h1:after,.note-editor.show-marks .note-content-wrap h2:after,.note-editor.show-marks .note-content-wrap h3:after,.note-editor.show-marks .note-content-wrap h4:after,.note-editor.show-marks .note-content-wrap h5:after,.note-editor.show-marks .note-content-wrap h6:after,.note-editor.show-marks .note-content-wrap p:after{content:"¶";margin-left:2px;color:var(--text-faint);font-weight:400;font-size:.85em}.note-editor.show-marks .note-content-wrap br:before{content:"↵";color:var(--text-faint)}.note-editor.line-numbers .note-content-wrap .ProseMirror{counter-reset:note-line;padding-left:34px}.note-editor.line-numbers .note-content-wrap .ProseMirror>*{counter-increment:note-line;position:relative}.note-editor.line-numbers .note-content-wrap .ProseMirror>:before{content:counter(note-line);position:absolute;left:-34px;width:24px;text-align:right;font:11px/1.9 var(--font-mono);color:var(--text-faint);float:none}.note-content-wrap pre{white-space:pre-wrap;word-break:break-word}.note-editor.nowrap-code .note-content-wrap pre{white-space:pre;word-break:normal}.note-goal{display:inline-flex;align-items:center;gap:6px;background:none;border:none;padding:0;color:inherit;font:inherit;cursor:pointer}.note-goal-bar{display:inline-block;width:60px;height:5px;border-radius:999px;background:var(--border);overflow:hidden}.note-goal-bar span{display:block;height:100%;background:var(--accent)}.note-status-btn{background:none;border:none;padding:0;font:inherit;cursor:pointer}.note-stats td:last-child{text-align:right}.note-stats-head{margin:16px 0 8px}.note-stats-chips{display:flex;flex-wrap:wrap;gap:6px}.note-stats-chips span{padding:3px 10px;border-radius:999px;background:var(--panel-raised);font-size:12.5px}.note-stats-chips small{color:var(--text-faint);margin-left:2px}.note-pick-list{display:flex;flex-direction:column;gap:2px;max-height:50vh;overflow:auto;margin-top:10px}.note-pick-item{display:flex;align-items:center;gap:8px;padding:9px 10px;border:none;border-radius:var(--radius-sm);background:none;color:var(--text);font:inherit;text-align:left;cursor:pointer}.note-pick-item:hover{background:var(--panel-raised)}.note-snap-row{display:flex;align-items:center;gap:8px;padding:8px 4px;border-bottom:1px solid var(--border-soft)}.note-snap-row>span{display:flex;flex-direction:column;flex:1 1;font-size:13px}.note-snap-row small{color:var(--text-muted)}.note-outline-title{display:flex;align-items:center;justify-content:space-between}.note-outline-close{display:none;border:none;background:none;color:var(--text-muted);font-size:20px;line-height:1;cursor:pointer}@media (max-width:800px){.note-print-area{padding:0!important;margin:0!important}.note-head .page-head-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px;width:100%}.note-head .page-head-actions .btn{width:100%;padding:8px 10px;font-size:13px}.note-editor{border-radius:var(--radius-sm)}.note-sticky{top:calc(52px + env(safe-area-inset-top))}.note-toolbar{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:6px;gap:2px}.note-toolbar::-webkit-scrollbar{display:none}.note-toolbar-group{flex:none;padding-right:4px;margin-right:4px}.note-toolbar-group:last-child{padding-right:24px}.note-tb-btn{min-width:36px;height:36px;font-size:14px}.note-tb-select{height:36px;max-width:120px;font-size:13px}.note-dd-panel,.note-dd-panel.wide{position:fixed;left:8px!important;right:8px;top:auto;bottom:calc(66px + env(safe-area-inset-bottom));width:auto;min-width:0;max-height:58vh;transform:none!important;z-index:120;border-radius:12px;padding:8px}.note-dd-cols{grid-template-columns:1fr}.note-dd-item{min-height:40px}.note-link-prompt{flex-wrap:wrap}.note-link-prompt .input{flex:1 1 100%}.note-content-wrap{padding:16px 14px}.note-content-wrap h1{font-size:23px}.note-content-wrap h2{font-size:19px}.note-content-wrap .note-columns,.note-content-wrap .note-columns[data-columns="3"]{grid-template-columns:minmax(0,1fr)}.note-content-wrap blockquote[data-style=pull]{padding:12px 4px}.note-content-wrap .tableWrapper{-webkit-overflow-scrolling:touch}.note-editor.line-numbers .note-content-wrap .ProseMirror{padding-left:26px}.note-statusbar{gap:10px;padding:6px 10px}.note-stat-extra{display:none}.note-editor.outline-open .note-outline{display:block;position:fixed;left:8px;right:8px;top:auto;bottom:calc(66px + env(safe-area-inset-bottom));max-height:50vh;z-index:110;background:var(--panel-raised);border:1px solid var(--border);border-radius:12px;box-shadow:0 -10px 30px rgba(0,0,0,.35)}.note-outline-close{display:block}.note-outline-item{padding:9px 8px;font-size:14px}.note-toast{bottom:calc(72px + env(safe-area-inset-bottom))}.note-slash{width:min(300px,calc(100vw - 24px))}}.top-loader{position:fixed;top:0;left:0;right:0;height:3px;z-index:10000;pointer-events:none;background:var(--accent);box-shadow:0 0 8px var(--accent),0 0 4px var(--accent);transform:scaleX(0);transform-origin:left center;opacity:0;transition:transform .2s ease,opacity .3s ease}.top-loader.is-active{opacity:1}@media (prefers-reduced-motion:reduce){.top-loader{transition:opacity .3s ease}}.note-view-mode .note-editor{border-color:transparent;background:transparent}.note-view-mode .note-statusbar{display:none}.note-view-mode .note-content-wrap .ProseMirror{outline:none;caret-color:transparent}.note-plain-view{margin:0;padding:12px 14px;font-family:var(--font-mono);font-size:13px;line-height:1.6;-moz-tab-size:4;tab-size:4;white-space:pre-wrap;word-break:break-word;color:inherit;background:var(--bg);border:1px solid var(--border-soft);border-radius:var(--radius-md)}.note-card-actions{display:flex;gap:6px;margin-top:10px}.note-card-actions .btn{flex:1 1;justify-content:center}.data-transfer-modal{max-width:520px}.data-module-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.data-module{display:flex;align-items:center;gap:10px;padding:9px 12px;cursor:pointer;border-bottom:1px solid var(--border-soft)}.data-module:last-child{border-bottom:none}.data-module:hover{background:var(--panel-raised)}.data-module.is-empty .data-module-count,.data-module.is-empty .data-module-label{color:var(--text-faint)}.data-module-label{flex:1 1}.data-module-count{font-size:12px;color:var(--text-muted)}.data-file-pick{display:flex;align-items:center;gap:10px;cursor:pointer}.data-file-pick input[type=file]{display:none}.data-file-name{font-size:13px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-results{display:flex;flex-direction:column;gap:6px;margin-top:14px}.data-update-toggle{display:flex;gap:10px;align-items:flex-start;margin-top:12px;cursor:pointer}.data-update-toggle input{margin-top:3px}.data-update-toggle small{display:block;margin-top:2px}