:root{--primary:#2c3e50;--primary-dark:#243444;--primary-soft:#e2ebf3;--primary-accent-1:#2c3e50;--primary-accent-2:#3f5d74;--focus-ring:0 0 0 3px #2c3e5059;--glow:0 4px 14px -2px #2c3e5040;--panel-1:var(--color-surface);--main-bg:var(--color-bg);--text-dark:var(--color-text);--accent:var(--color-accent);--sidebar-width:var(--sidebar-width);--page-pad:var(--page-pad);--radius:var(--radius-lg);--page-pad-mobile:var(--page-pad-mobile);--container-max:1200px;--control-height:36px;--control-height-sm:30px;--control-height-lg:44px;--control-pad-x:12px;--control-pad-y:8px;--scrollbar-size:10px;--scrollbar-radius:8px;--scrollbar-track:#0000;--scrollbar-thumb:var(--panel-2);--scrollbar-thumb-hover:var(--primary-soft)}#root,body,html{background-color:var(--color-bg);background-color:var(--main-bg);color:var(--text-dark);overflow-x:hidden;overflow-y:auto;width:100%}.window-container{display:flex;flex-direction:column}*{scrollbar-color:var(--color-surface-2) #0000;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);scrollbar-width:thin}::-webkit-scrollbar{height:10px;height:var(--scrollbar-size);width:10px;width:var(--scrollbar-size)}::-webkit-scrollbar-track{background:#0000;background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background-color:var(--color-surface-2);background-color:var(--scrollbar-thumb);border:2px solid #0000;border:2px solid var(--scrollbar-track);border-radius:8px;border-radius:var(--scrollbar-radius)}::-webkit-scrollbar-thumb:hover{background-color:#e2ebf3;background-color:var(--scrollbar-thumb-hover)}.app-layout{display:grid;flex-grow:1;height:90%;transition:grid-template-columns .3s ease-in-out}.main-content-area{flex:1 1;padding:2rem 2.5rem;width:100%}.header{grid-column:1/2;grid-row:1/2}.pane-grid{grid-gap:16px;display:grid;flex:1 1;gap:16px;grid-template-columns:var(--sidebar-width) 1fr;min-height:0}.pane-sidebar{display:flex;flex-direction:column;gap:8px;height:100%;overflow:hidden;padding:12px}.pane-main,.pane-sidebar{background:var(--color-surface);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);border-radius:var(--radius);color:var(--color-text);color:var(--text);min-width:0}.pane-main{padding:16px}.btn{align-items:center;background:var(--color-surface-2);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-md);border-radius:var(--control-radius);color:var(--color-text);color:var(--text);cursor:pointer;display:inline-flex;font-size:var(--font-size-dash-large);gap:8px;justify-content:center;line-height:1.1;min-height:36px;min-height:var(--control-height);padding:8px 12px;padding:var(--control-pad-y) var(--control-pad-x);text-decoration:none;transition:background .15s,color .15s,border-color .15s,box-shadow .15s;-webkit-user-select:none;user-select:none}.btn:hover{background:#e2ebf3;background:var(--primary-soft)}.btn:focus-visible{outline:2px solid #2c3e50;outline:2px solid var(--primary);outline-offset:2px}.btn:active{transform:translateY(1px)}.btn-sm{border-radius:calc(var(--radius-md) - 2px);border-radius:calc(var(--control-radius) - 2px);font-size:var(--font-size-dash-large);min-height:30px;min-height:var(--control-height-sm);padding:6px 10px}.btn-lg{font-size:var(--font-size-dash-small);min-height:44px;min-height:var(--control-height-lg);padding:10px 16px}.btn-icon{height:36px;height:var(--control-height);padding:0;width:36px;width:var(--control-height)}.btn-xxs{border-radius:calc(var(--radius-md) - 6px);border-radius:calc(var(--control-radius) - 6px);font-size:var(--font-size-dash-xs);line-height:1.1;min-height:22px;padding:2px 6px}.btn-primary{background:#2c3e50;background:var(--primary-accent-1);border-color:#2c3e50;border-color:var(--primary-accent-1);box-shadow:0 2px 4px #0000001f;color:#fff}.btn-primary:hover{background:#243444;background:var(--primary-dark);box-shadow:0 6px 14px -6px #00000040}.btn-primary:focus-visible{box-shadow:0 0 0 3px #2c3e5059;box-shadow:var(--focus-ring)}.btn-ghost{background:#fff;border-color:var(--border);color:#2c3e50;color:var(--primary)}.btn-ghost:hover{background:#e2ebf3;background:var(--primary-soft);color:var(--color-text);color:var(--text-dark)}.btn-danger{background:#fff;border-color:var(--danger);color:var(--color-danger);color:var(--danger)}.btn-danger:hover{background:#ffe5e5}.btn-subtle{background:#0000;border-color:#0000;color:var(--color-text);color:var(--text)}.btn-subtle:hover{background:var(--color-surface);background:var(--panel)}.btn-xs{border-radius:calc(var(--radius-md) - 4px);border-radius:calc(var(--control-radius) - 4px);font-size:var(--font-size-dash-xs);min-height:26px;padding:4px 6px}.nf-tree-row.is-selected .btn-ghost{background:#fff;color:#2c3e50;color:var(--primary)}.dropdown .menu-item:hover{background:var(--primary-soft,#eef4ff);color:var(--color-text);color:var(--text-dark,#102a43)}.nf-tree{display:flex;flex-direction:column;height:100%;position:relative}.nf-tree-root-droppable{flex:1 1 auto;min-height:40px;min-height:0;overflow-y:auto;padding:4px 0}.nf-tree-header{align-items:center;background:var(--color-surface);background:var(--panel);border-bottom:1px solid var(--border);box-shadow:0 6px 12px -10px #00000059;display:flex;justify-content:space-between;margin:0;padding:4px 8px;position:-webkit-sticky;position:sticky;top:0;z-index:120}.pane-sidebar .nf-tree-header{align-items:center;margin:0;padding:15px 8px;top:0}.pane-main .nf-tree-header{margin:0;padding:4px 8px}.nf-root-children{padding-top:10px}.nf-tree>.nf-tree-node.is-root{margin-top:10px}.nf-tree-header h4{color:var(--color-muted);color:var(--muted);font-size:var(--font-size-dash-xs);font-weight:700;letter-spacing:1px;line-height:1.1;margin:0;text-transform:uppercase}.nf-tree-root-droppable.nf-droppable-over{outline:2px dashed var(--color-accent);outline:2px dashed var(--accent)}.nf-tree.nf-tree-flat{padding:4px 0}.nf-tree-node{border-left:none;margin-left:0;padding-left:0;width:100%}.nf-tree-node+.nf-tree-node{margin-top:2px}.nf-tree-row{align-items:center;background:var(--color-surface)!important;background:var(--panel)!important;border:1px solid var(--border);border-radius:8px;display:flex;gap:6px;padding:4px 10px;position:relative;transition:background .15s,border-color .15s;width:100%;z-index:0}.nf-tree-row:hover{background:var(--color-surface-2);background:var(--panel-2)}.nf-tree-row.is-selected{background:#e2ebf3;background:var(--primary-soft);border:1px solid #e2ebf3;border:1px solid var(--primary-soft);box-shadow:none;color:#2c3e50;color:var(--primary)}.u-list-item{cursor:pointer}.u-list-item.is-active{outline:2px solid var(--color-accent);outline:2px solid var(--accent)}.u-list-item.is-danger{border-color:var(--danger)}.u-list.is-dense .nf-tree-row,.u-list.is-dense .u-list-item{padding-bottom:2px;padding-top:2px}.u-list.is-divided .u-list-item+.u-list-item{border-top:1px solid var(--border)}.u-list:not(.is-divided) .u-list-item+.u-list-item{margin-top:2px}.u-list.is-hover .u-list-item:hover:not(.is-selected){background:var(--color-surface-2);background:var(--panel-2)}.u-list{display:flex;flex-direction:column;gap:0;list-style:none;margin:0;padding:0}.nf-tree-row.is-selected:before{border:2px solid #2c3e50;border:2px solid var(--primary);border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute;z-index:3}.nf-tree-row.is-selected .nf-tree-title{color:#2c3e50;color:var(--primary)}.nf-tree-title{align-items:center;cursor:pointer;display:inline-flex;flex:1 1;font-weight:600;min-width:0}.nf-tree-title.is-selected{color:inherit!important}.nf-tree-toggle-btn{align-items:center;background:#0000;border:0;border-radius:4px;color:var(--color-muted);color:var(--muted);display:inline-flex;height:18px;justify-content:center;padding:0;width:18px}.nf-tree-toggle-btn:hover{background:var(--color-surface-2);background:var(--panel-2);color:var(--color-accent);color:var(--accent)}.nf-tree-toggle-btn:disabled{cursor:default;opacity:.25}.nf-tree-actions{display:inline-flex;gap:4px;margin-left:4px;position:relative;z-index:50}.nf-children{display:flex;flex-wrap:wrap;gap:4px;padding:4px 0;width:100%}.nf-children>.nf-tree-node{flex:1 1 260px}.nf-children>.nf-tree-node>.nf-tree-row{background:var(--color-surface-2);background:var(--panel-2)}.nf-inline-sets{display:flex;flex-wrap:wrap;gap:4px;list-style:none;margin:0;padding:4px 0 2px}.nf-inline-sets .nf-list-item{background:#fff;border:1px solid var(--border);border-radius:20px;font-size:var(--font-size-dash-xs);padding:4px 8px}.nf-inline-sets.is-vertical{flex-direction:column;flex-wrap:nowrap;gap:2px;padding:4px 2px}.nf-inline-sets.is-vertical .nf-list-item{align-items:center;background:var(--color-surface-2);background:var(--panel-2);border-radius:8px;display:flex}.nf-inline-sets.is-vertical .nf-list-item:hover{background:var(--color-surface);background:var(--panel)}.nf-tree-count-badge{background:var(--color-surface-2);background:var(--panel-2);border:1px solid var(--border);border-radius:999px;color:var(--color-muted);color:var(--muted);font-size:var(--font-size-dash-xs);line-height:1;margin-left:6px;padding:2px 6px}.nf-droppable-over{background:#ffbb9847!important;outline:2px dashed var(--color-accent);outline:2px dashed var(--accent)}.nf-list{list-style:none;margin:0;padding:0}.nf-list-item{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:8px;padding:10px 8px}.nf-list-item:hover{background:#0000000a}.nf-list-item .meta{color:var(--color-muted);color:var(--muted);font-size:var(--font-size-dash-xs);margin-left:6px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}.badge{align-items:center;border:1px solid var(--border);border-radius:999px;color:var(--color-muted);color:var(--muted);display:inline-flex;font-size:var(--font-size-dash-xs);gap:6px;padding:2px 6px}@media (max-width:900px){.window-container{flex-direction:column}.main-content-area{padding:1.5rem}}@media (max-width:700px){.pane-grid{gap:12px}}@media (max-width:500px){.main-content-area{padding:1rem}}.button-group-column{display:flex;flex-direction:column;gap:.75rem}.dropdown-menu{background:#0000;border:0;box-shadow:none;height:0;margin:0;min-width:0;opacity:0;overflow:hidden;padding:0;pointer-events:none;position:absolute;transform:translateY(4px);transform-origin:top right;transition:opacity .14s ease,transform .18s cubic-bezier(.33,.9,.25,1);width:0;z-index:10000}.dropdown-menu.is-open{background:#fff;border:1px solid var(--border,#dfe4e8);border-radius:12px;box-shadow:0 8px 24px -8px #0000002e,0 3px 8px -3px #00000014;color:var(--color-text);color:var(--text,#24323e);height:auto;min-width:280px;opacity:1;padding:6px;pointer-events:auto;transform:translateY(0);width:auto;z-index:10010}.dropdown-content{display:flex;flex-direction:column;gap:2px;max-height:300px;overflow-y:auto;padding:2px}.dropdown-content::-webkit-scrollbar{width:8px}.dropdown-content::-webkit-scrollbar-thumb{background:#0000002e;border-radius:10px}.dropdown-content:hover::-webkit-scrollbar-thumb{background:#00000047}.dropdown .menu-item,.dropdown-menu .menu-item{align-items:center;background:#0000;border:0;border-radius:8px;box-shadow:none;color:var(--color-text);color:var(--text,#253949);display:flex;font-size:var(--font-size-dash-small);font-weight:600;gap:8px;letter-spacing:.3px;line-height:1.15;padding:8px 10px;position:relative;text-align:left;transition:background .12s ease,color .12s ease,box-shadow .12s ease;width:100%}.dropdown .menu-item:hover,.dropdown-menu .menu-item:hover{background:#e2ebf3;background:var(--primary-soft,#eef4ff);color:var(--color-text);color:var(--text-dark,#102a43)}.dropdown .menu-item:active,.dropdown-menu .menu-item:active{background:#edf2f7}.dropdown .menu-item.danger,.dropdown-menu .menu-item.danger{color:#b3261e}.dropdown .menu-item.danger:hover,.dropdown-menu .menu-item.danger:hover{background:#fff2f1;color:#8e1c15}.dropdown .menu-item:focus-visible,.dropdown-menu .menu-item:focus-visible{outline:2px solid #2c3e50;outline:2px solid var(--primary,#3a6df0);outline-offset:1px}.dropdown .menu-divider,.dropdown-menu .menu-divider{background:var(--color-border);background:var(--border,#e1e6eb);border-radius:1px;height:1px;margin:4px}.dropdown .menu-item{border:0;box-shadow:none;text-align:left;width:100%}.dropdown .menu-item:hover{background:#e2ebf3;background:var(--primary-soft)}.dropdown>span>.btn-ghost,.nf-list-item .btn-ghost,.nf-tree-actions .btn-ghost{border:0!important;box-shadow:none!important}.u-panel{background:var(--color-surface);background:var(--panel);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;gap:12px;padding:16px}.u-panel-alt{background:var(--color-surface-2);background:var(--panel-2)}.u-card{background:var(--color-surface);background:var(--panel);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-2);display:flex;flex-direction:column;gap:12px;padding:20px}.u-fill{flex:1 1;min-height:0}.u-grid-2{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.u-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.u-toolbar.no-wrap{flex-wrap:nowrap}.u-stack{display:flex;flex-direction:column;gap:12px}@media (max-width:900px){.pane-grid{grid-template-columns:1fr}.pane-sidebar{order:2}.pane-main{order:1}}@media (max-width:600px){.pane-main,.pane-sidebar{border-radius:10px;padding:12px}.nf-list-item{padding:8px 6px}.btn{padding:6px 10px}.btn-xs{font-size:var(--font-size-dash-xs);padding:4px 6px}.u-toolbar{gap:8px}}.folder-toolbar{align-items:center;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:12px}.folder-toolbar-right{gap:8px;margin-left:auto}.folder-toolbar-left{align-items:center;gap:8px}.nf-label{color:var(--color-muted);color:var(--muted);font-size:var(--font-size-dash-xs);font-weight:600;letter-spacing:.5px;text-transform:uppercase}.nf-input{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);border-radius:var(--control-radius);box-shadow:0 1px 2px #0000000a;color:var(--color-text);color:var(--text);font-size:var(--font-size-dash-large);line-height:1.25;min-height:36px;min-height:var(--control-height);padding:10px 12px;transition:border-color .18s,box-shadow .18s,background .18s;width:100%}.nf-input:hover{border-color:#e2ebf3;border-color:var(--primary-soft)}.nf-input:focus{border-color:#2c3e50;border-color:var(--primary);box-shadow:0 0 0 3px #2c3e5040;outline:none}.nf-input:disabled{background:var(--color-surface-2);background:var(--panel-2);color:var(--color-muted);color:var(--muted);cursor:not-allowed}.nf-input.error{border-color:var(--danger);box-shadow:0 0 0 3px #d94a4a40}.nf-input::placeholder{color:#9aa7b3}textarea.nf-input{font-family:inherit;min-height:90px;resize:vertical}.nf-check{align-items:flex-start;cursor:pointer;display:flex;font-size:var(--font-size-dash-large);gap:8px;line-height:1.3;position:relative;-webkit-user-select:none;user-select:none}.nf-check input{opacity:0;pointer-events:none;position:absolute}.nf-check-box{align-items:center;background:#fff;border:1px solid var(--border);border-radius:4px;box-shadow:0 1px 2px #0000000d;display:inline-flex;height:18px;justify-content:center;transition:background .15s,border-color .15s,box-shadow .15s;width:18px}.nf-check input:focus-visible+.nf-check-box{box-shadow:0 0 0 3px #2c3e504d}.nf-check input:checked+.nf-check-box{background:#2c3e50;background:var(--primary-accent-1);border-color:#2c3e50;border-color:var(--primary-accent-1)}.nf-check input:checked+.nf-check-box:after{color:#fff;content:"\2713";font-size:12px}.nf-check.is-disabled{cursor:not-allowed;opacity:.55}.nf-check-label{font-weight:500}.nf-check-desc{color:var(--color-muted);color:var(--muted);display:block;font-size:var(--font-size-dash-xs);margin-top:2px}.nf-check.is-error .nf-check-box{border-color:var(--danger)}.nf-switch{align-items:center;cursor:pointer;display:inline-flex;font-size:var(--font-size-dash-large);gap:10px;-webkit-user-select:none;user-select:none}.nf-switch input{opacity:0;pointer-events:none;position:absolute}.nf-switch-track{background:var(--color-surface-2);background:var(--panel-2);border:1px solid var(--border);border-radius:20px;height:20px;position:relative;transition:background .2s,border-color .2s;width:38px}.nf-switch-thumb{background:#fff;border-radius:50%;box-shadow:0 1px 2px #00000040;height:16px;left:2px;position:absolute;top:2px;transition:transform .25s cubic-bezier(.4,0,.2,1);width:16px}.nf-switch input:checked+.nf-switch-track{background:#2c3e50;background:var(--primary-accent-1);border-color:#2c3e50;border-color:var(--primary-accent-1)}.nf-switch input:checked+.nf-switch-track .nf-switch-thumb{transform:translateX(18px)}.nf-switch input:focus-visible+.nf-switch-track{box-shadow:0 0 0 3px #2c3e504d}.nf-switch.is-disabled{cursor:not-allowed;opacity:.55}.nf-switch-label{font-weight:500}.nf-avatar{align-items:center;background:var(--color-surface-2);background:var(--panel-2);border:1px solid var(--border);border-radius:50%;box-shadow:0 1px 2px #0000000d;color:var(--color-text);color:var(--text);display:inline-flex;font-size:var(--font-size-dash-xs);font-weight:600;height:32px;justify-content:center;overflow:hidden;width:32px}.nf-avatar img{display:block;height:100%;object-fit:cover;width:100%}.nf-avatar-fallback{line-height:1}.nf-badge{align-items:center;background:var(--color-surface-2);background:var(--panel-2);border:1px solid var(--border);border-radius:999px;color:var(--color-muted);color:var(--muted);display:inline-flex;font-size:var(--font-size-dash-xs);font-weight:600;gap:4px;letter-spacing:.08em;padding:2px 8px;text-transform:uppercase}.nf-badge-primary{background:#e2ebf3;background:var(--primary-soft);border-color:#e2ebf3;border-color:var(--primary-soft);color:#2c3e50;color:var(--primary)}.nf-badge-danger{background:#fbe9e9;border-color:#f5c1c1;color:var(--color-danger);color:var(--danger)}.nf-divider{border:0;border-top:1px solid var(--border);margin:12px 0}.setform-card .nf-input{font-size:var(--font-size-dash-xs);padding:8px 10px}.setform-card textarea.nf-input{min-height:120px}.nf-input-compact{border-radius:calc(var(--radius-md) - 2px);border-radius:calc(var(--control-radius) - 2px);font-size:var(--font-size-dash-xs);min-height:30px;min-height:var(--control-height-sm);padding:6px 10px}.setform__topbar .nf-input{box-shadow:none}.nf-tree .nf-tree-row{background:var(--color-surface)!important;background:var(--panel)!important}.nf-tree .nf-tree-row:hover{background:var(--color-surface-2)!important;background:var(--panel-2)!important}.nf-tree .nf-tree-row.is-selected{background:#e2ebf3!important;background:var(--primary-soft)!important}.nf-tree .nf-tree-icon{background:none;border:0;box-shadow:none;color:#2c3e50;color:var(--primary);font-size:12px;height:16px;justify-content:center;line-height:1;margin:0 4px 0 0;padding:0;width:16px}.nf-tree .nf-tree-icon,.nf-tree .nf-tree-title{align-items:center;display:inline-flex}.nf-children .nf-tree-row{padding-left:20px}.nf-children .nf-children .nf-tree-row{padding-left:32px}.nf-children .nf-children .nf-children .nf-tree-row{padding-left:44px}.btn svg{height:16px;width:16px}.btn.btn-ghost.btn-xs:hover{color:var(--color-text);color:var(--text)}.navbar{background:var(--color-surface);background:var(--panel,var(--color-surface));border-bottom:1px solid var(--border);height:var(--navbar-height);inset:0 0 auto 0;position:fixed;z-index:1000}.navbar,.navbar__inner{align-items:center;display:flex}.navbar__inner{gap:8px;height:100%;margin:0 auto;max-width:1400px;padding:0 20px;width:100%}.navbar__brand{align-items:center;background:var(--primary);border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:var(--font-size-dash-large);font-weight:700;letter-spacing:1px;padding:6px 10px;-webkit-user-select:none;user-select:none}.navbar__nav{flex:1 1;min-width:0}.navlist{align-items:center;gap:10px;list-style:none;margin:0;padding:0}.navlist,.navlist__item{display:flex;height:100%}.navlist--left-group{justify-content:flex-start}.navbar__right-group{justify-content:flex-end}.navlink{--pad-x:10px;align-items:center;border-radius:10px;color:var(--text);display:inline-flex;font-size:var(--font-size-dash-xs);font-weight:600;gap:6px;height:36px;letter-spacing:.4px;line-height:1;padding:0 var(--pad-x);position:relative;text-decoration:none;transition:background .18s,color .18s}.navlink svg{height:18px;width:18px}.navlink__icon svg{stroke:currentColor;fill:none;stroke-width:1.6px;vector-effect:non-scaling-stroke}.navlink:hover,button.navlink[aria-expanded=true]:not(.is-active){background:var(--panel-2)}.navlink.is-active{background:var(--primary-soft);color:var(--primary)}.dropdown.is-open>span>.navlink:not(.is-active){background:var(--panel-2);color:var(--text)}.dropdown.is-open>span>.navlink:not(.is-active):hover{background:var(--panel-2)}.navlink.is-active:after{background:var(--primary);border-radius:2px;bottom:-6px;content:"";height:3px;left:12px;position:absolute;right:12px}.navlink--ghost{color:var(--muted)}.navlink--ghost:hover{background:var(--panel-2);color:var(--text)}.navlink--ghost.is-active{background:var(--primary-soft);color:var(--primary)}.navlink__icon{align-items:center;display:inline-flex;justify-content:center}.navlink__label{white-space:nowrap}.navbar__right{gap:10px;margin-left:auto;padding-right:8px}.account,.navbar__right{align-items:center;display:flex}.account{gap:8px}.account__avatar{align-items:center;background:var(--primary);border-radius:8px;box-shadow:0 1px 2px #0003;color:#fff;display:flex;font-weight:600;height:28px;justify-content:center;width:28px}.account__avatar,.account__email{font-size:var(--font-size-dash-xs)}.account__email{color:var(--muted);font-weight:500}.btn-logout{background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--primary);cursor:pointer;font-size:var(--font-size-dash-xs);font-weight:600;letter-spacing:.5px;padding:6px 10px;transition:background .18s,color .18s,border-color .18s}.btn-logout:hover{background:var(--primary-soft)}@media (max-width:880px){.navbar__nav{min-width:0}.navlist--left-group{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.navlist--left-group::-webkit-scrollbar{height:6px}.navlist--left-group::-webkit-scrollbar-thumb{background:var(--border);border-radius:6px}.navbar__inner{gap:8px}.navbar__right{flex:0 0 auto;margin-left:auto}.account__email,.navlink__label{display:none}.navlink{--pad-x:8px}.navbar__inner{gap:10px}.navbar__right,.navlist{gap:4px}.navlink{color:var(--primary);display:inline-flex;height:38px;justify-content:center;padding:0 6px;width:auto}.navlink svg{height:18px;width:18px}.navlink--ghost,.navlink--ghost.is-active{color:var(--primary)}.navbar__right{padding-left:8px;position:relative}.navbar__right:before{background:var(--border);content:"";height:20px;left:0;opacity:.5;position:absolute;top:50%;transform:translateY(-50%);width:1px}.account{gap:6px}.account__avatar{height:30px;width:30px}.btn-logout{font-size:var(--font-size-dash-xs);padding:4px 8px}}@media (max-width:560px){.navbar{height:var(--navbar-height)}.navlink{height:34px}.btn-logout{padding:4px 8px}.navbar__brand{padding:5px 8px}}@media (min-width:1100px){.navbar__inner{padding:0 32px}.navlist{gap:10px}.navlink{--pad-x:14px;font-size:var(--font-size-dash-xs);height:38px}}@media (min-width:1500px){.navbar__inner{max-width:1600px}.navlist{gap:12px}}.window-container{background:var(--main-bg);height:100vh;min-height:100vh;overflow-x:hidden;position:relative;width:100%}.main-content-area{flex-direction:column;height:calc(100vh - var(--navbar-height));margin-top:var(--navbar-height);padding:0}.content-box,.main-content-area{background:var(--main-bg);box-sizing:border-box;display:flex;min-height:0}.content-box{border:none;flex:1 1 auto;flex-direction:column;gap:16px;gap:var(--page-gap,16px);overflow:visible;padding:24px;padding:var(--page-pad,24px);padding-bottom:17px;padding-bottom:var(--page-pad-bottom,calc(var(--page-pad, 24px) - 7px));width:100%}.content-box>:first-child{margin-top:0!important}.content-box>:last-child{margin-bottom:0!important}.content-box:has(>.legal-page){flex:0 0 auto;overflow:visible}.legal-container .main-content-area{height:auto;min-height:0}.legal-container .content-box{flex:0 0 auto}.legal-container.window-container{height:auto;min-height:100vh}.legal-page{padding-bottom:56px}.session-container .main-content-area{height:auto;min-height:calc(100vh - var(--navbar-height))}.session-container.window-container{height:auto;min-height:100vh}.content-box:has(>.pane-grid.dashboard){height:100%;overflow:hidden;padding-top:0}@media (max-width:700px){.content-box:has(>.pane-grid.dashboard){height:auto;overflow:auto;padding-top:0}}.content-box:has(>.pane-grid.session-selection){height:100%;overflow:hidden}.content-box:has(>.perf-page){height:100%;overflow:hidden}.page-scroll{flex:1 1;min-height:0;overflow:auto}@media (max-width:700px){.content-box{padding:16px;padding:var(--page-pad-mobile,16px);padding-bottom:11px;padding-bottom:var(--page-pad-mobile-bottom,calc(var(--page-pad-mobile, 16px) - 5px))}}.window-container.electron .main-content-area{height:calc(100vh - var(--electron-titlebar-height) - var(--navbar-height));margin-top:calc(var(--electron-titlebar-height) + var(--navbar-height))}.window-container.electron .navbar{top:var(--electron-titlebar-height)}.window-container.no-nav .main-content-area{height:100vh;margin-top:0}.window-container.electron.no-nav .main-content-area{height:calc(100vh - var(--electron-titlebar-height));margin-top:var(--electron-titlebar-height)}.dashboard .pane-sidebar{display:none}.nf-tree.is-loading{animation:fadeIn .25s ease;margin:0;padding:var(--space-1) 0 0}.nf-tree.is-loading .nf-tree-header{margin:0;padding:var(--space-3-5) var(--space-2)}.nf-tree-skel{display:flex;flex-direction:column;gap:var(--space-1-5);list-style:none;margin:0;padding:var(--space-1) var(--space-2) var(--space-3)}.nf-tree-skel-row{animation:skelPulse 1.2s linear infinite;background:linear-gradient(90deg,#f2f5f8,var(--panel),#f2f5f8);background:linear-gradient(90deg,var(--panel-2),var(--panel),var(--panel-2));background-size:200% 100%;border-radius:var(--radius-lg);height:3rem}@keyframes skelPulse{0%{background-position:0 0}to{background-position:-200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.dash-skeleton{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--space-4);height:100%;min-height:0}.folder-panel-skel,.overview-skel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-xl);overflow:hidden;position:relative}.overview-skel{height:14rem}.folder-panel-skel{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--space-2-5);min-height:0;padding:var(--space-4) 0 var(--space-3)}.folder-panel-skel-row{animation:skelPulse 1.2s linear infinite;background:linear-gradient(90deg,#f2f5f8,var(--panel),#f2f5f8);background:linear-gradient(90deg,var(--panel-2),var(--panel),var(--panel-2));background-size:200% 100%;border-radius:var(--radius-lg-alt);height:6.8rem;margin:0 var(--space-4)}.dashboard-pane-main{display:flex;flex-direction:column;gap:var(--space-2)}.folder-toolbar--sticky{background:var(--panel);border-bottom:1px solid var(--border);box-shadow:0 .6rem 1.2rem -1rem rgba(var(--color-black-rgb),.12);padding-bottom:var(--space-2);padding-top:0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.folder-heading{align-items:center;display:flex;font-size:var(--font-size-dash-large);font-weight:600;gap:var(--space-2-5);letter-spacing:.03em;margin:0}.folder-heading-path{max-width:30rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-counts{font-weight:600;letter-spacing:.04em}.folder-counts,.small-muted{font-size:var(--font-size-dash-xs)}.small-muted{color:var(--muted)}.folder-toolbar{align-items:flex-start;display:flex;gap:var(--space-4)}.folder-toolbar-left{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--space-1);min-width:0;overflow:hidden}.folder-toolbar-right{align-items:center;display:flex;flex:0 0 auto;gap:var(--space-2)}.folder-toolbar-right.compact-buttons{gap:var(--space-1-5)}.folder-toolbar-right.compact-buttons .btn{padding:var(--space-1-2) var(--space-2)}.folder-toolbar-right .btn{flex:0 0 auto}.folder-toolbar-right.toolbar-icons-only .btn.btn-icon{align-items:center;background:#f2f5f8;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-lg);display:inline-flex;font-size:var(--font-size-dash-small);height:3rem;justify-content:center;min-width:0;padding:var(--space-1) var(--space-1-5);transition:background .2s,border-color .2s,transform .15s;width:3rem}.folder-toolbar-right.toolbar-icons-only .btn.btn-icon:hover{background:var(--primary-soft);border-color:var(--primary-soft)}.folder-toolbar-right.toolbar-icons-only .btn.btn-icon:active{transform:translateY(1px)}.folder-toolbar-right.toolbar-icons-only .btn.btn-icon svg{height:var(--space-4);width:var(--space-4)}.folder-meta-bar,.pdf-ai-progress{margin:0 0 var(--space-3)}.pdf-ai-progress{--pdf-progress:0%;animation:fadeIn .35s ease;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--space-1-5);overflow:hidden;padding:var(--space-3) var(--space-3-5);position:relative}.pdf-ai-progress:after{background:linear-gradient(120deg,#3f83f80f,#3f83f800);content:"";inset:0;pointer-events:none;position:absolute}.pdf-ai-progress.is-complete{border-color:#b9e5c9;border-color:var(--color-success-soft,#b9e5c9);box-shadow:0 8px 20px -12px #25a06761}.pdf-ai-progress.is-error{border-color:#f5b7ba;border-color:var(--color-danger-soft,#f5b7ba);box-shadow:0 8px 20px -12px #d8343a52}.pdf-ai-progress__meta{display:flex;flex-direction:column;gap:4px;position:relative;z-index:1}.pdf-ai-progress__label{color:var(--text);font-size:var(--font-size-dash-small);font-weight:600;letter-spacing:.02em;transition:color .25s ease}.pdf-ai-progress__status{color:var(--muted);font-size:var(--font-size-dash-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:color .25s ease}.pdf-ai-progress.is-complete .pdf-ai-progress__status{color:#1b7b4c;color:var(--color-success-strong,#1b7b4c)}.pdf-ai-progress.is-error .pdf-ai-progress__status{color:#7a1216;color:var(--color-danger-strong,#7a1216)}.pdf-ai-progress__bar{background:#f2f5f8;background:var(--panel-2,#f5f8fb);border-radius:999px;box-shadow:inset 0 1px 2px #00000014;height:6px;overflow:hidden;position:relative;width:100%}.pdf-ai-progress__bar-fill{background:linear-gradient(90deg,#3a6df0,color-mix(in srgb,#3a6df0 20%,#8cb8ff));background:linear-gradient(90deg,var(--primary,#3a6df0),color-mix(in srgb,var(--primary,#3a6df0) 20%,#8cb8ff));border-radius:inherit;height:100%;left:0;position:absolute;top:0;transition:width .65s ease-out;width:var(--pdf-progress)}.pdf-ai-progress.is-complete .pdf-ai-progress__bar-fill{background:linear-gradient(90deg,#25a067,color-mix(in srgb,#25a067 35%,#b8f0d0));background:linear-gradient(90deg,var(--color-success,#25a067),color-mix(in srgb,var(--color-success,#25a067) 35%,#b8f0d0))}.pdf-ai-progress.is-error .pdf-ai-progress__bar-fill{background:linear-gradient(90deg,#d8343a,color-mix(in srgb,#d8343a 35%,#f5b7ba));background:linear-gradient(90deg,var(--color-danger,#d8343a),color-mix(in srgb,var(--color-danger,#d8343a) 35%,#f5b7ba))}.pdf-ai-progress__details{color:var(--muted);font-size:var(--font-size-dash-xs);margin-top:var(--space-1);position:relative;z-index:1}.pdf-ai-history{animation:fadeIn .35s ease;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--space-2-5);margin:0 0 var(--space-4);padding:var(--space-3-5)}.pdf-ai-history__header{align-items:center;display:flex;gap:var(--space-2);justify-content:space-between}.pdf-ai-history__title{color:var(--muted);font-size:var(--font-size-dash-small);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.pdf-ai-history__list{display:flex;flex-direction:column;gap:var(--space-2);list-style:none;margin:0;padding:0}.pdf-ai-history__item{align-items:center;background:#f2f5f8;background:var(--panel-2,#f6f9fb);border:1px solid var(--border);border-radius:var(--radius-lg-alt);box-shadow:0 1px 2px #0000000a;display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2-5) var(--space-3);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.pdf-ai-history__item:hover{border-color:#c6d6f8;border-color:var(--primary-soft,#c6d6f8);box-shadow:0 6px 16px -12px #14222c3d;transform:translateY(-1px)}.pdf-ai-history__meta{display:flex;flex:1 1 220px;flex-direction:column;gap:4px;min-width:0}.pdf-ai-history__name{color:var(--text);font-size:var(--font-size-dash-small);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdf-ai-history__status{color:var(--muted);font-size:var(--font-size-dash-xs);font-weight:700;letter-spacing:.05em;text-transform:uppercase}.pdf-ai-history__actions{align-items:center;display:flex;flex:0 0 auto;gap:var(--space-1-5)}.pdf-ai-history__actions .btn.btn-link{font-size:var(--font-size-dash-xs);font-weight:700;letter-spacing:.05em;padding:0}.pdf-ai-history__progress{background:#dfe8fb;background:var(--primary-soft,#dfe8fb);border-radius:999px;color:#2f6df6;color:var(--primary,#2f6df6);font-size:var(--font-size-dash-xs);font-weight:700;letter-spacing:.08em;padding:4px 9px}.pdf-ai-history__item.status-completed .pdf-ai-history__status{color:#1b7b4c;color:var(--color-success-strong,#1b7b4c)}.pdf-ai-history__item.status-failed{border-color:#f5b7ba;border-color:var(--color-danger-soft,#f5b7ba)}.pdf-ai-history__item.status-failed .pdf-ai-history__status{color:#7a1216;color:var(--color-danger-strong,#7a1216)}.pdf-ai-history__item.status-processing .pdf-ai-history__status{color:#2f6df6;color:var(--primary,#2f6df6)}.pdf-ai-history__item.status-failed .pdf-ai-history__progress{background:#f5b7ba;background:var(--color-danger-soft,#f5b7ba);color:#7a1216;color:var(--color-danger-strong,#7a1216)}.pdf-ai-history__item.status-completed .pdf-ai-history__progress{background:#b9e5c9;background:var(--color-success-soft,#b9e5c9);color:#1b7b4c;color:var(--color-success-strong,#1b7b4c)}@media (max-width:680px){.pdf-ai-progress{padding:var(--space-2-5) var(--space-3)}.pdf-ai-history{padding:var(--space-3)}.pdf-ai-history__item{align-items:flex-start;flex-direction:column}.pdf-ai-history__actions{justify-content:flex-start;width:100%}}.pdf-ai-progress.compact{margin:0;padding:var(--space-2) var(--space-2-5)}.processing-panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--space-2-5);max-width:520px;min-width:260px;overflow:hidden;padding:var(--space-2-5) var(--space-3);transition:background .2s ease,border-color .2s ease}.processing-panel__header{align-items:center;display:flex;gap:var(--space-2);justify-content:space-between;min-width:0}.processing-panel__title{align-items:center;display:flex;flex:1 1;gap:var(--space-1-5);min-width:0}.processing-panel__eyebrow{color:var(--muted);font-size:var(--font-size-dash-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase}.processing-panel__title-row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-1-5)}.processing-panel__heading{color:var(--text);font-size:var(--font-size-dash-medium);font-weight:700;line-height:1.2;white-space:nowrap}.processing-panel__headline{align-items:center;background:var(--color-accent-soft);border-radius:var(--radius-pill);color:var(--color-accent-dark);display:inline-flex;font-size:var(--font-size-dash-xs);font-weight:700;letter-spacing:.06em;padding:var(--space-0-5) var(--space-1-5);text-transform:uppercase;white-space:nowrap}.processing-panel__headline.is-idle{background:#f2f5f8;background:var(--panel-2);color:var(--muted)}.processing-panel__header-actions{align-items:center;display:flex;flex:0 0 auto;gap:var(--space-1)}.processing-panel__stats{grid-gap:var(--space-1-5);background:#f2f5f8;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-lg);display:grid;gap:var(--space-1-5);grid-template-columns:repeat(4,minmax(0,1fr));padding:var(--space-2) var(--space-2-5)}.processing-panel__stat{border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--space-0-5);padding:var(--space-1);transition:background .2s ease,color .2s ease}.processing-panel__stat-label{color:var(--muted);font-size:var(--font-size-dash-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.processing-panel__stat-value{color:var(--text);font-size:var(--font-size-dash-medium);font-weight:700;line-height:1}.processing-panel__stat.is-alert{background:#d6395014;background:var(--color-danger-soft,#d6395014);color:#7a1216;color:var(--color-danger-strong,#7a1216)}.processing-panel__list{list-style:none;margin:0;max-height:320px;overflow-x:hidden;overflow-y:auto;padding:0;padding-right:var(--space-1)}.processing-panel__list,.processing-panel__row{display:flex;flex-direction:column;gap:var(--space-1-5)}.processing-panel__row{background:#f2f5f8;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card-inset);min-width:0;padding:var(--space-2) var(--space-2-5);transition:border-color .18s ease,transform .15s ease,opacity .22s ease,box-shadow .18s ease}.processing-panel__row:hover{border-color:var(--primary-soft);box-shadow:var(--shadow-2);transform:translateY(-1px)}.processing-panel__row.state-entering{animation:processing-row-enter .24s ease forwards;opacity:0;transform:translateY(6px)}.processing-panel__row.state-leaving{opacity:0;pointer-events:none}.processing-panel__row-body{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.processing-panel__row-heading{align-items:center;display:flex;font-weight:600;gap:var(--space-1-5);min-width:0}.processing-panel__filename{color:var(--text);flex:1 1;font-size:var(--font-size-dash-small);font-weight:600;line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.processing-panel__subtitle{color:var(--muted);font-size:var(--font-size-dash-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.processing-panel__details{word-wrap:break-word;color:var(--muted);font-size:var(--font-size-dash-xs);line-height:1.5;overflow-wrap:break-word}.processing-panel__row-actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-1)}.processing-panel__status-pill{align-items:center;background:var(--panel);border:1px solid #0000;border-radius:var(--radius-pill);display:inline-flex;flex-shrink:0;font-size:var(--font-size-dash-xs);font-weight:700;justify-content:center;letter-spacing:.08em;padding:var(--space-0-5) var(--space-1-5);text-transform:uppercase;transition:background .2s ease,color .2s ease,border-color .2s ease}.processing-panel__progress{align-items:center;color:var(--muted);display:flex;font-size:var(--font-size-dash-xs);gap:var(--space-1-5)}.processing-panel__progress-track{background:rgba(var(--color-black-rgb),.08);border-radius:var(--radius-pill);flex:1 1;height:6px;overflow:hidden}.processing-panel__progress-fill{background:var(--color-accent);border-radius:var(--radius-pill);height:100%;transition:width .28s ease;width:0}.processing-panel__progress-value{color:var(--text);font-size:var(--font-size-dash-xs);font-weight:700;min-width:36px;text-align:right}.processing-panel__empty{align-items:center;background:#f2f5f8;background:var(--panel-2);border:1px dashed var(--border);border-radius:var(--radius-lg);color:var(--muted);display:flex;gap:var(--space-3);justify-content:space-between;padding:var(--space-3)}.processing-panel__empty-text{display:flex;flex-direction:column;gap:var(--space-0-5)}.processing-panel__empty-text strong{color:var(--text);font-size:var(--font-size-dash-small);font-weight:600}.processing-panel__empty-text span,.processing-panel__footnote{color:var(--muted);font-size:var(--font-size-dash-xs)}.processing-panel__footnote{border-top:1px solid var(--border);padding-top:var(--space-1)}.processing-panel__hint{border-left:2px solid var(--color-accent);color:var(--muted);font-size:var(--font-size-dash-xs);padding-left:var(--space-2)}.processing-panel__row.tone-info .processing-panel__status-pill{background:var(--color-accent-soft);border-color:#2f6df638;color:var(--color-accent-dark)}.processing-panel__row.tone-success .processing-panel__status-pill{background:var(--color-success-tint);border-color:var(--color-success-border);color:var(--color-success)}.processing-panel__row.tone-danger .processing-panel__status-pill{background:var(--color-danger-soft);border-color:#d94a4a47;color:var(--color-danger)}.processing-panel__row.tone-warning .processing-panel__status-pill{background:var(--color-warning-soft);border-color:var(--color-warning-soft-border);color:var(--color-warning-strong)}.processing-panel__row.tone-muted .processing-panel__status-pill{background:var(--panel);border-color:var(--border);color:var(--muted)}@keyframes processing-row-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.processing-panel__row.state-entering{animation:none;opacity:1;transform:none}.processing-panel__progress-fill{transition:none}}@media (max-width:680px){.processing-panel{max-width:100%;min-width:220px;padding:var(--space-2-5) var(--space-3)}.processing-panel__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.processing-panel__header{align-items:flex-start;flex-direction:column;gap:var(--space-2)}.processing-panel__header-actions{flex-wrap:wrap;gap:var(--space-1-5);justify-content:flex-start;width:100%}.processing-panel__list{max-height:280px}.processing-panel__row{padding:var(--space-2) var(--space-2-5)}.processing-panel__row-actions{justify-content:flex-start}}.card-list{border:0}.card-list .item-row{background:#0000;border:1px solid var(--border);border-radius:var(--radius-lg-alt);padding:var(--space-2) var(--space-2-5);position:relative;transition:border-color .2s ease,transform .15s ease}.card-list .item-row:before{display:none}.card-list .item-row:hover{border-color:var(--primary-soft);transform:translateY(-1px)}.card-list .item-row:active{transform:translateY(0)}.item-icon{align-items:center;border-radius:var(--radius-lg-alt);box-shadow:0 0 0 .1rem var(--primary-soft);color:var(--primary);display:inline-flex;flex-shrink:0;font-size:var(--font-size-dash-small);height:3rem;justify-content:center;width:3rem}.item-icon,.pdf-icon{background:#f2f5f8;background:var(--panel-2)}.pdf-icon{box-shadow:0 0 0 .1rem var(--color-accent-purple-soft);color:var(--color-accent-purple)}.item-main{display:flex;flex:1 1;flex-direction:column;gap:var(--space-0-5);min-width:0}.item-title{font-size:var(--font-size-dash-small);font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis}.item-sub{font-size:var(--font-size-dash-xs);line-height:1}.item-actions{display:inline-flex;gap:var(--space-1-5)}.item-actions .btn{background:var(--panel);border:1px solid var(--border)}.item-actions .btn:hover{background:#f2f5f8;background:var(--panel-2)}.empty-state{background:var(--panel);border:.2rem dashed var(--border);border-radius:var(--radius);gap:var(--space-4-5);padding:var(--space-9-3) var(--space-4);text-align:center;width:100%}.empty-actions,.empty-state{align-items:center;display:flex;flex-direction:column}.empty-actions{gap:var(--space-2-5);justify-content:center}.item-row:focus-visible{outline:.3rem solid var(--primary);outline-offset:.2rem}.item-row.nf-droppable-over{background:#d05c2b2e;background:rgba(var(--color-warning-strong-rgb,208,92,43),.18)}.up-folder-btn{align-items:center;background:#fff;border:1px solid #d9e0e5;border:1px solid var(--border,#d9e0e5);border-radius:12px;box-shadow:0 1px 2px #0000000d;display:inline-flex;gap:8px;padding:6px 10px;transition:background .2s,border-color .2s,box-shadow .2s,transform .15s}.up-folder-btn:hover{background:#f2f5f8;background:var(--panel-2,#f5f7f9);border-color:#c3d2e1}.up-folder-btn:active{transform:translateY(1px)}.up-folder-btn:focus-visible{outline:.2rem solid #3a6df0;outline:.2rem solid var(--primary,#3a6df0);outline-offset:.2rem}.up-folder-btn .icon{align-items:center;background:#dfe8fb;background:var(--primary-soft,#dfe8fb);border-radius:999px;box-shadow:0 0 0 .1rem #dfe8fb;box-shadow:0 0 0 .1rem var(--primary-soft,#dfe8fb);color:#3a6df0;color:var(--primary,#3a6df0);display:inline-flex;font-size:var(--font-size-dash-xs);height:1.5rem;justify-content:center;width:1.5rem}.up-folder-btn .label{font-size:var(--font-size-dash-small);font-weight:600;letter-spacing:.02em}.up-folder-btn.is-disabled{opacity:.55;pointer-events:none}.up-folder-btn.nf-droppable-over{background:#6bbcff14!important;border-color:#6bbcff!important;border-color:var(--accent,#6bbcff)!important;outline:2px dashed #6bbcff;outline:2px dashed var(--accent,#6bbcff)}.item-row.is-reorder-over{outline:2px dashed var(--primary);outline-offset:2px}.item-row.is-reorder-over:before{background:var(--primary);opacity:.9}.nf-tree .nf-order-btns{opacity:0;transition:opacity .2s}.nf-tree-node:hover .nf-order-btns{opacity:1}.nf-tree .nf-order-btns .btn{font-size:var(--font-size-dash-xs);line-height:1;padding:var(--space-0-5) var(--space-1)}@media (max-width:700px){.item-icon{height:3rem;width:3rem}.item-icon,.item-title{font-size:var(--font-size-dash-small)}.item-sub{font-size:var(--font-size-dash-xs)}.card-list .item-row{padding:var(--space-2) var(--space-2-5)}.file-card{min-height:16.5rem;padding:5rem 2rem 2rem}.file-card .card-icon{font-size:2.2rem;height:4.8rem;margin-top:3.4rem;width:4.8rem}.file-card .title{font-size:1.6rem}.file-card .meta-line{font-size:1.3rem}.type-badge{font-size:1.15rem;left:1.8rem;padding:.5rem 1.05rem .55rem;top:1.6rem}}.perf-cards-row{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-auto-columns:minmax(14rem,1fr);grid-auto-flow:column;overflow-x:auto;padding:var(--space-0-5) var(--space-0-5) var(--space-1-5);scrollbar-width:thin}.perf-cards-row::-webkit-scrollbar{height:var(--scrollbar-size)}.perf-cards-row::-webkit-scrollbar-track{background:var(--scrollbar-track)}.perf-cards-row::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--scrollbar-radius)}.perf-cards-row:hover::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb-hover)}.perf-card-mini{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 1px 2px #0000000d;display:flex;flex-direction:column;gap:var(--space-1);min-height:9rem;padding:var(--space-2-5) var(--space-3);position:relative;transition:box-shadow .25s,transform .25s,border-color .25s}.perf-card-mini:hover{border-color:var(--primary-soft);box-shadow:0 6px 16px -6px #0000002e,0 2px 4px #00000014;transform:translateY(-2px)}.perf-card-mini.warning{background:var(--panel)}.perf-card-mini.is-empty{background:#f2f5f8;background:var(--panel-2)}.perf-card-mini.compact-btn{align-items:center;gap:var(--space-1-5);justify-content:center}.perf-card-mini.compact-btn .btn{width:100%}.mini-icon{align-items:center;background:var(--primary-soft);border-radius:var(--radius-lg);box-shadow:0 0 0 .1rem var(--primary-soft);color:var(--primary);display:inline-flex;font-size:var(--font-size-dash-medium);height:var(--space-5-5);justify-content:center;width:var(--space-5-5)}.perf-card-mini.warning .mini-icon{background:var(--color-warning-soft);box-shadow:0 0 0 .1rem var(--color-warning-soft-border);color:var(--color-warning-strong)}.mini-label{color:var(--muted);font-size:var(--font-size-dash-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.mini-value{color:var(--text);font-size:var(--font-size-dash-medium);font-weight:600;line-height:1.1}.mini-sub{color:var(--muted);font-size:var(--font-size-dash-xs);letter-spacing:.03em}@media (max-width:900px){.perf-cards-row{grid-auto-columns:16rem}}.dashboard.pane-grid{--dash-max:var(--layout-dashboard-max);--gap-lg:var(--space-5);--gap:var(--space-4-5);--gap-sm:var(--space-3);--radius-card:var(--radius-3xl);--radius-pill:var(--radius-pill);--ring-size:var(--space-9-4);--ring-size-sm:var(--space-8);--shadow-sm:var(--shadow-1);--shadow-card-hover:var(--shadow-card-hover-strong);height:100vh}.dashboard-right,.dashboard.pane-grid{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.dashboard-right{height:100%;overflow:hidden;width:100%}.pane-body{display:flex;flex:1 1;gap:0;height:100%;margin:0;max-width:none;min-height:0;width:100%}.dashboard-sidebar{align-self:stretch;background:var(--panel);border-right:1px solid var(--border);display:flex;flex:0 0 260px;flex-direction:column;overflow:hidden;padding:0;width:260px}.dashboard-sidebar .sidebar-section{flex:0 0 auto;margin-bottom:0;padding:12px}.dashboard-sidebar .sidebar-section.folders-section{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden;padding:16px 12px 12px}.dashboard-sidebar .section-title{color:#64748b;flex:0 0 auto;font-size:12px;font-weight:700;letter-spacing:.1em;margin:0;padding:0 12px 8px;text-transform:uppercase}.dashboard-sidebar .sidebar-search{background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 2px #0f172a08;font-size:14px;font-weight:500;padding:11px 14px;transition:all .25s cubic-bezier(.25,.46,.45,.94);width:100%}.dashboard-sidebar .sidebar-search:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f614,0 2px 6px -1px #3b82f61f;outline:none;transform:translateY(-1px)}.dashboard-sidebar .sidebar-search::placeholder{color:#cbd5e1;font-weight:400}.nf-tree{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:4px 0;scrollbar-color:#0003 #0000;scrollbar-width:thin}.nf-tree::-webkit-scrollbar{width:10px}.nf-tree::-webkit-scrollbar-track{background:#0000;margin:4px 0}.nf-tree::-webkit-scrollbar-thumb{background:#00000026;background-clip:padding-box;border:2px solid #0000;border-radius:5px}.nf-tree:hover::-webkit-scrollbar-thumb{background:#00000040;background-clip:padding-box}.nf-tree::-webkit-scrollbar-thumb:hover{background:#00000059;background-clip:padding-box}.nf-tree-node{align-items:center;border-radius:8px;display:flex;gap:8px;margin:2px 0;padding-bottom:8px;padding-right:12px;padding-top:8px;transition:all .15s ease}.nf-tree-node .tree-expander{align-items:center;background:#0000;border:0;color:#64748b;display:inline-flex;height:20px;justify-content:center;width:20px}.nf-tree-node .tree-label{background:#0000;border:0;color:#1e293b;flex:1 1 auto;font-size:14px;font-weight:500;min-width:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.nf-tree-node .folder-emoji{font-size:16px;margin-right:4px}.nf-tree-node .fav-btn{background:#0000;border:0;color:#94a3b8;opacity:0;transition:opacity .15s ease}.nf-tree-node:hover .fav-btn{opacity:1}.nf-tree-node .fav-btn.is-fav{color:#f59e0b;opacity:1}.nf-tree-node:hover{background:#f1f5f9}.nf-tree-node.is-active{color:#1e40af}.nf-tree-node.is-active .tree-label{color:#1e40af;font-weight:600}.nf-tree-node.is-drop-over{background:#dbeafe;outline:2px dashed #3b82f6}.nf-tree-node .tree-more{align-items:center;background:#0000;border:0;border-radius:6px;color:#94a3b8;display:inline-flex;height:24px;justify-content:center;opacity:0;transition:all .15s ease;width:24px}.nf-tree-node:hover .tree-more{opacity:1}.nf-tree-node .tree-more:hover{background:#e2e8f0;color:#1e293b}.nf-tree-node.is-active{background:#eff6ff}.fav-list,.recent-list{display:flex;flex-direction:column;gap:2px;list-style:none;margin:4px 0;padding:0 12px}.fav-link,.recent-link{align-items:center;background:#0000;border:0;border-radius:8px;color:#1e293b;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 12px;text-align:left;transition:all .15s ease;width:100%}.fav-link:hover,.recent-link:hover{background:#f1f5f9}.recent-link .badge{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;font-size:11px;font-weight:600;letter-spacing:.05em;padding:3px 8px;text-transform:uppercase}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumbs-bar{align-items:center;display:flex;gap:12px;justify-content:flex-start;margin:0;max-width:none;padding:0 12px 6px}.breadcrumbs-bar .crumbs{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-right:20px}.breadcrumbs-bar .crumb{background:#0000;border:0;color:var(--text);font-weight:600}.breadcrumbs-bar .crumb.is-current{color:var(--muted)}.breadcrumbs-bar .sep{opacity:.6}.breadcrumbs-bar .crumbs-right{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.breadcrumbs-bar .filter-trigger{margin-right:6px}.breadcrumbs-bar .filter-chips{display:flex;flex-wrap:wrap;gap:6px}.breadcrumbs-bar .filter-chips .chip{background:var(--color-accent-chip-bg);border:1px solid var(--color-accent-chip-border);border-radius:999px;color:var(--color-accent-chip-text);cursor:pointer;font-size:var(--font-size-dash-xs);font-weight:600;letter-spacing:.045em;padding:5px 10px;transition:background .18s,border-color .18s}.breadcrumbs-bar .filter-chips .chip:hover{background:var(--color-accent-chip-bg-hover);border-color:var(--color-accent-chip-border-hover)}.breadcrumbs-bar .view-toggle{border:1px solid var(--border);border-radius:10px;display:inline-flex;overflow:hidden}.breadcrumbs-bar .view-toggle>button{background:#fff;border:0;padding:6px 10px}.breadcrumbs-bar .view-toggle>button.is-active{background:var(--primary);color:#fff;font-weight:600}.breadcrumbs-bar .file-search{background:#fff;border:1px solid var(--border);border-radius:10px;padding:8px 10px}.breadcrumbs-bar{display:none}.dashboard-sidebar .breadcrumbs-bar.breadcrumbs-compact{display:flex;gap:6px;padding:0 8px 4px}.dashboard-sidebar .breadcrumbs-bar.breadcrumbs-compact .crumbs{gap:6px;margin-right:0}.dashboard-sidebar .breadcrumbs-bar.breadcrumbs-compact .crumb{color:var(--muted);font-size:var(--font-size-dash-xs);font-weight:600}.dashboard-sidebar .breadcrumbs-bar.breadcrumbs-compact .crumb.is-current{color:var(--text)}.dashboard-sidebar .breadcrumbs-bar.breadcrumbs-compact .sep{opacity:.5}.nf-header-bar{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 2px #0f172a08;display:flex;gap:16px;justify-content:space-between;margin:0;max-width:none;padding:10px 20px;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:100}.nf-header-left{flex:0 0 auto}.nf-header-center,.nf-header-left{align-items:center;display:flex;gap:10px}.nf-header-center{flex:1 1 auto;justify-content:center;margin:0 auto;max-width:600px}.nf-header-right{align-items:center;display:flex;flex:0 0 auto;gap:10px}.nf-header-bar .search-input,.search-input{align-items:center;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 2px #0f172a0a,0 2px 4px #0f172a05;display:flex;gap:8px;max-width:100%;padding:11px 16px 11px 44px;position:relative;transition:all .25s cubic-bezier(.25,.46,.45,.94);width:100%}.nf-header-bar .search-input .icon,.search-input .icon{color:#94a3b8;font-size:18px;left:16px;position:absolute;transition:color .25s ease}.nf-header-bar .search-input:focus-within,.search-input:focus-within{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f614,0 4px 12px -2px #3b82f626;transform:translateY(-1px)}.nf-header-bar .search-input:focus-within .icon,.search-input:focus-within .icon{color:#3b82f6}.nf-header-bar .search-input input,.search-input input{background:#0000;border:0;color:var(--text);font-size:15px;font-weight:500;outline:0;width:100%}.nf-header-bar .search-input input::placeholder{color:#cbd5e1;font-weight:400}.file-search,.nf-header-bar .file-search{background:#0000;border:0;border-radius:0;min-width:0;padding:0;width:100%}.search-clear-btn{align-items:center;background:#0000;border:0;border-radius:6px;color:#94a3b8;cursor:pointer;display:inline-flex;font-size:16px;height:24px;justify-content:center;padding:0;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:all .2s ease;width:24px}.search-clear-btn:hover{background:#f1f5f9;color:#475569}.search-clear-btn:active{background:#e2e8f0;transform:translateY(-50%) scale(.95)}.sidebar-search-clear{position:absolute;right:14px;top:50%;transform:translateY(-50%)}.dashboard-topbar{align-items:center;display:flex;flex-wrap:nowrap;gap:var(--space-2);justify-content:space-between;padding:var(--space-2) var(--space-4)}.dashboard-topbar .search-input{flex:0 0 auto;max-width:40rem;position:relative;width:40rem}.dashboard-topbar-actions{align-items:center;display:flex;flex:0 0 auto;gap:var(--space-1-5)}@media (max-width:740px){.dashboard-topbar{flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.dashboard-topbar .processing-trigger{flex:0 0 auto;order:1}.dashboard-topbar .search-input{flex:1 1 100%;max-width:100%;order:2;width:100%}.dashboard-topbar-actions{display:none}}@media (max-width:480px){.dashboard-topbar{padding:var(--space-2)}.dashboard-topbar .search-input{padding:var(--space-2) var(--space-3) var(--space-2) 3.8rem}.dashboard-topbar .search-input .icon{left:var(--space-2-5)}}.dashboard-topbar-btn{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:var(--color-text);cursor:pointer;display:inline-flex;font-size:var(--font-size-dash-small);font-weight:600;gap:var(--space-1-5);line-height:1.2;padding:var(--space-1-5) var(--space-3);transition:all .2s ease;white-space:nowrap}.dashboard-topbar-btn .icon{align-items:center;display:inline-flex;font-size:1.4rem;opacity:.75;transition:opacity .2s ease}.dashboard-topbar-btn .caret{font-size:1rem;margin-left:-.2rem;opacity:.6}.dashboard-topbar-btn:hover{background:var(--color-surface);border-color:var(--color-border);box-shadow:var(--shadow-md);color:var(--color-text);transform:translateY(-.5px)}.dashboard-topbar-btn:hover .icon{opacity:.9}.dashboard-topbar-btn:active{background:var(--color-surface-2);border-color:var(--color-border);box-shadow:var(--shadow-1);transform:translateY(0)}.dashboard-topbar-btn.is-active{background:var(--color-accent-soft);border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(var(--color-accent-focus-rgb),.12);color:var(--color-accent-dark)}.dashboard-topbar-btn.is-active .filter-dot{animation:pulse-dot 2s ease-in-out infinite;background:var(--color-accent);border-radius:50%;display:inline-block;height:.6rem;margin-left:-.2rem;width:.6rem}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.9)}}@media (max-width:1024px){.dashboard-topbar{gap:var(--space-1-5)}.dashboard-topbar .search-input{max-width:32rem;width:32rem}.dashboard-topbar-btn{font-size:var(--font-size-dash-xs);padding:var(--space-1-5) var(--space-2-5)}.dashboard-topbar-btn .label{display:none}}.nf-header-bar .view-toggle{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;box-shadow:none;display:inline-flex;gap:0;overflow:hidden;padding:2px}.nf-header-bar .view-toggle>button{background:#0000;border:0;border-radius:8px;color:#64748b;font-weight:600;line-height:1;min-width:44px;padding:8px 13px;transition:all .2s ease}.nf-header-bar .view-toggle>button:hover{background:#fff;color:#475569}.nf-header-bar .view-toggle>button.is-active{background:#3b82f6;box-shadow:0 1px 2px #3b82f633;color:#fff;font-weight:700}.nf-header-bar .view-toggle>button.is-active:hover{background:#2563eb}.nf-header-left .filter-chips{display:flex;flex-wrap:wrap;gap:6px}.nf-header-bar .action-btn,.nf-header-bar .btn.btn-ghost,.nf-header-bar .filter-trigger{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;box-shadow:none;color:#475569;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:7px;justify-content:center;line-height:1;min-height:38px;padding:9px 16px;transition:all .2s ease}.nf-header-bar .action-btn:hover,.nf-header-bar .btn.btn-ghost:hover,.nf-header-bar .filter-trigger:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 1px 3px #0f172a14;color:#1e293b}.nf-header-bar .action-btn:active,.nf-header-bar .btn.btn-ghost:active,.nf-header-bar .filter-trigger:active{background:#f1f5f9;border-color:#94a3b8;box-shadow:none}.nf-header-bar .filter-trigger.is-active .icon{color:#3b82f6}.nf-header-bar .action-btn .icon{font-size:var(--font-size-dash-small);line-height:1;margin-right:6px;opacity:.85}.nf-header-bar .action-btn .label{margin-right:6px}.nf-header-bar .action-btn .caret{opacity:.7}.nf-header-bar .action-btn .caret,.nf-header-bar .action-btn.import-export-trigger .label,.nf-header-bar .action-btn.new-trigger .label,.nf-header-bar .filter-trigger .label{font-size:var(--font-size-dash-xs)}.nf-header-bar .action-btn.is-muted{background:#f7fafc;background:var(--panel,#f7fafc);border-color:#b4c3d2cc;box-shadow:inset 0 0 0 1px #fff6;color:#6a7882;color:var(--muted,#6a7882)}.nf-header-bar .action-btn.is-muted:hover{background:#f2f5f8;background:var(--panel-2,#f1f6fa);border-color:#c9d6e2}.nf-header-bar .action-btn.new-trigger:not(.is-muted){background:#3b82f6;border-color:#3b82f6;box-shadow:0 1px 2px #3b82f640;color:#fff}.nf-header-bar .action-btn.new-trigger:not(.is-muted):hover{background:#2563eb;border-color:#2563eb;box-shadow:0 2px 4px #3b82f64d}.nf-header-bar .action-btn.new-trigger:not(.is-muted):active{background:#1d4ed8;box-shadow:none}.nf-header-bar .action-btn.import-export-trigger{background:#f8fafc;border-color:#cbd5e1;color:#475569}.nf-header-bar .action-btn.import-export-trigger:hover{background:#fff;border-color:#94a3b8;box-shadow:0 1px 3px #0f172a14;color:#1e293b}.nf-header-bar .action-btn.import-export-trigger:active{background:#f1f5f9;border-color:#64748b;box-shadow:none}.nf-header-bar .filter-trigger{background:#f8fafc;border-color:#e2e8f0;color:#475569}.nf-header-bar .filter-trigger:hover{background:#fff;border-color:#cbd5e1;color:#1e293b}.nf-header-bar .filter-trigger.is-active{background:#eff6ff;border-color:#3b82f6;box-shadow:inset 0 0 0 1px #3b82f6;color:#1e40af}.nf-header-bar .filter-trigger.is-active:hover{background:#dbeafe;border-color:#2563eb}@media (max-width:740px){.nf-header-bar{flex-wrap:wrap;gap:10px;padding:8px 16px}.nf-header-left{flex:1 1 auto;order:1}.nf-header-right{margin-left:auto;order:2}.nf-header-center{margin:0;max-width:100%;order:3;width:100%}.nf-header-bar .file-search{min-width:0;width:100%}}.files-list-panel{flex:1 1 auto;height:100%;min-height:0;overflow:auto;padding:var(--space-4) 22px 18px}.files-table{border-collapse:initial;border-spacing:0 8px;width:100%}.files-table th{color:var(--muted);font-size:var(--font-size-dash-xs);letter-spacing:.06em;padding:0 10px;text-align:left;text-transform:uppercase}.files-table td{background:#fff;border:1px solid var(--border);padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease}.files-table tbody tr td:first-child{border-radius:10px 0 0 10px}.files-table tbody tr td:last-child{border-radius:0 10px 10px 0;width:120px}.files-table .row-actions{text-align:right}.files-table tbody tr{cursor:pointer}.files-table tr.set-card td{border-top:3px solid #2f6df6;border-top:3px solid var(--accent,#2f6df6)}.files-table tr.note-card td{border-top:3px solid #e6b800;border-top:3px solid var(--accent,#e6b800)}.files-table tr.pdf-card td{border-top:3px solid #d83a3a;border-top:3px solid var(--accent,#d83a3a)}.files-table tr.test-card td{border-top:3px solid #22c55e;border-top:3px solid var(--accent,#22c55e)}.files-table tr.ppt-card td{border-top:3px solid #d26b2a;border-top:3px solid var(--accent,#d26b2a)}.files-table tbody tr:hover td{border-color:#c6d6f8;border-color:var(--primary-soft,#c6d6f8);box-shadow:0 6px 16px -6px #0000001f,0 2px 6px #0000000f;transform:translateY(-1px)}.files-table tbody tr:active td{transform:translateY(0)}.dashboard-header{background:#fff;border-bottom:1px solid var(--border);box-shadow:0 1px 3px #0000000a;margin-top:0;position:relative;top:0;z-index:var(--z-sticky)}.dash-topbar{background:#fff;border-bottom:none;margin:0;max-width:none;padding:12px 20px;width:100%}.dashboard-header .header-inner{align-items:flex-start;display:flex;gap:var(--space-4);justify-content:center;margin:0;max-width:none;min-height:0;padding:0 12px;position:relative;width:100%}.dashboard-header .header-left{align-items:flex-start;display:flex;flex-direction:column;gap:var(--space-1-5);left:var(--space-5-2);position:absolute;top:var(--space-2-5);transform:none}.dashboard-header .header-left .left-actions-row{display:flex;flex-direction:row;gap:var(--space-2)}.dashboard-header .header-left .left-actions-row .btn{min-width:6.4rem}.dashboard-header .header-left .left-actions-row .btn.passive-sync-pill{--pulse-c:var(--primary,#2f6df6);align-items:center;background:linear-gradient(135deg,#f2f5f8 0,var(--panel) 100%);background:linear-gradient(135deg,var(--panel-2) 0,var(--panel) 100%);border:1px solid var(--border);border-radius:999px;box-shadow:0 2px 4px #0000000f,inset 0 0 0 1px #fff6;color:#3a4a55;color:var(--muted-strong,#3a4a55);cursor:default;display:inline-flex;font-size:var(--font-size-dash-xs);font-weight:600;gap:.55rem;letter-spacing:.05em;line-height:1.1;padding:.55rem 1.1rem .55rem 1.05rem;position:relative;transition:background .35s,border-color .35s,color .35s,box-shadow .35s}.dashboard-header .header-left .left-actions-row .btn.passive-sync-pill:before{animation:syncPulse 3.8s ease-in-out infinite;background:var(--pulse-c);border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,var(--pulse-c) 40%,#0000);content:"";flex-shrink:0;height:.55rem;width:.55rem}.dashboard-header .header-left .left-actions-row .btn.passive-sync-pill.is-busy:before{animation:syncSpin .9s linear infinite;background:conic-gradient(from 0deg,var(--primary) 0 40%,#0000 40% 100%);box-shadow:none;-webkit-mask:radial-gradient(circle at center,#000 60%,#0000 61%);mask:radial-gradient(circle at center,#000 60%,#0000 61%)}.dashboard-header .header-left .left-actions-row .btn.passive-sync-pill.forceable{cursor:pointer}.dashboard-header .header-left .left-actions-row .btn.passive-sync-pill.forceable:hover{background:linear-gradient(135deg,var(--panel) 0,#f2f5f8 100%);background:linear-gradient(135deg,var(--panel) 0,var(--panel-2) 100%);border-color:#aac7ff;border-color:var(--primary-soft,#aac7ff);color:#1f2a33;color:var(--text,#1f2a33)}.dashboard-header .header-left .left-actions-row .btn.passive-sync-pill.forceable:active{transform:translateY(1px)}.dashboard-header .header-left .left-actions-row .btn.passive-sync-pill.error{--pulse-c:var(--color-danger,#d8343a);border-color:#f5b7ba;border-color:var(--color-danger-soft,#f5b7ba);color:#7a1216;color:var(--color-danger-strong,#7a1216)}@keyframes syncPulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--pulse-c) 48%,#0000)}70%{box-shadow:0 0 0 6px color-mix(in srgb,var(--pulse-c) 0,#0000)}to{box-shadow:0 0 0 0 color-mix(in srgb,var(--pulse-c) 0,#0000)}}@keyframes syncSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.dashboard-header .header-inner.header-center>.folder-select{left:50%;position:absolute;top:var(--space-2-5);transform:translateX(-50%)}.dashboard-header .dash-actions-bar{margin-left:0;position:absolute;right:var(--space-5-2);top:var(--space-2-5)}.dashboard-header .header-inner.header-center>.folder-select{z-index:25}.dashboard-header .dash-actions-bar{z-index:15}@media (max-width:1250px) and (min-width:741px){.dashboard-header .dash-actions-bar{flex-wrap:wrap;justify-content:center;max-width:calc(42% - 150px)}}@media (max-width:1050px) and (min-width:741px){.dashboard-header .dash-actions-bar{gap:var(--space-2);padding:var(--space-1-5) var(--space-2)}.dashboard-header .dash-actions-bar .btn{padding:var(--space-1-5) var(--space-2-5)}}@media (max-width:1150px) and (min-width:741px){.dashboard-header .dash-actions-bar{max-width:calc(36% - 13rem)}.dashboard-header .dash-actions-bar .btn{font-size:var(--font-size-dash-xs);padding:var(--space-1-5) var(--space-2)}.dashboard-header .dash-actions-bar .study-folder-btn{min-width:0}}.dashboard-header .header-meta{align-items:center;display:flex;gap:8px}.header-perf-loading{color:var(--muted);font-size:var(--font-size-dash-small);letter-spacing:.05em;text-transform:uppercase}.folder-select{--fs-bg:linear-gradient(180deg,var(--color-accent-gradient-start),var(--color-accent-gradient-end));--fs-border:var(--color-accent-mid);--fs-hover:var(--color-accent-gradient-hover);--fs-active:var(--color-accent-gradient-active);position:relative}.folder-select>.btn{background:var(--fs-bg);border:2px solid var(--fs-border);border-radius:var(--radius-pill);box-shadow:0 .6rem 1.8rem -.6rem #174aaa8c,0 .3rem 1rem -.3rem #00000047;color:#fff;font-size:var(--font-size-dash-large);font-weight:600;letter-spacing:.045em;padding:1.5rem 3.8rem;position:relative;text-shadow:0 1px 2px #00000047;transition:background .25s,border-color .25s,box-shadow .25s,transform .25s}.folder-select>.btn:hover{background:var(--fs-hover);border-color:#2561dd;box-shadow:0 10px 26px -10px #174aaa99,0 4px 14px -4px #00000047}.folder-select>.btn:active{background:var(--fs-active);box-shadow:0 6px 18px -8px #174aaa8c,0 3px 10px -4px #0000004d;transform:translateY(2px)}.folder-select>.btn:focus-visible{outline:.3rem solid var(--color-accent-gradient-focus-ring);outline-offset:.4rem}.folder-select>.btn:after{background:radial-gradient(ellipse at center,#508cff73,#508cff00);border-radius:inherit;content:"";filter:blur(8px);inset:-4px;opacity:.55;position:absolute;z-index:-1}.folder-select .menu-divider{background:var(--color-accent-menu-divider);border-radius:1px;height:1px;margin:6px 4px}.folder-select-menu{display:flex;flex-direction:column;gap:4px;min-width:200px;padding:6px 6px 10px}.folder-select-menu .menu-item{background:#0000;border:0;border-radius:8px;color:var(--color-accent-menu-text);display:block;font-size:var(--font-size-dash-small);letter-spacing:.025em;padding:7px 12px;text-align:left;transition:background .16s,color .16s;width:100%}.folder-select-menu .menu-item:hover{background:#f2f5f8;background:var(--panel-2,#eef4fa);color:var(--color-accent-menu-hover)}.folder-select-menu .menu-item.is-active{background:var(--primary);color:#fff;font-weight:600}.folder-select-menu .menu-item:disabled{cursor:not-allowed;opacity:.45}.folder-select-menu .menu-item:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.folder-select-menu .menu-divider{background:#e1e6eb;background:var(--border,#e1e6eb);border-radius:1px;height:1px;margin:4px 2px}.folder-select-menu .menu-item.tree-item{align-items:center;display:flex;gap:6px}.folder-select-menu .menu-item.tree-item .folder-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard .menu-item{font-size:var(--font-size-dash-small)}.folder-select{--folder-trigger-w:var(--layout-sidebar-secondary)}.folder-select .folder-select-trigger{align-items:center;background:var(--primary);border:1px solid var(--primary);border-radius:var(--radius-lg-alt);box-shadow:0 .4rem 1.4rem -.6rem #00000040;color:#fff;display:inline-flex;font-size:var(--font-size-dash-medium);font-weight:600;gap:var(--space-1-5);justify-content:center;letter-spacing:.035em;line-height:1;padding:var(--space-3) var(--space-4-5);text-shadow:0 1px 2px #00000040;transition:filter .18s,box-shadow .18s,transform .18s;width:var(--folder-trigger-w)}.folder-select .folder-select-trigger:hover{filter:brightness(1.07)}.folder-select .folder-select-trigger:active{filter:brightness(.95);transform:translateY(1px)}.folder-select .folder-select-trigger:focus-visible{outline:2px solid #99c0ff;outline:2px solid var(--primary-soft,#99c0ff);outline-offset:3px}.folder-select .folder-select-trigger .folder-select-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.files-grid-panel{animation:fadeIn .35s ease;display:flex;flex:1 1 auto;flex-direction:column;gap:calc(var(--gap) + var(--space-1));height:100%;margin:0;max-width:none;min-height:0;padding:var(--space-4) 16px 24px;width:100%}.files-grid-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;padding:2px 2px 6px}.files-grid-toolbar .toolbar-group{display:flex;flex-wrap:wrap;gap:6px}.files-grid-toolbar .toolbar-group.primary{gap:8px}.files-grid-toolbar .toolbar-spacer{flex:1 1 auto}.files-grid-toolbar .btn{border-radius:10px;font-size:var(--font-size-dash-small);font-weight:500;letter-spacing:.03em}.files-grid-toolbar .btn.btn-ghost{background:#fff;border:1px solid #d9e0e5;border:1px solid var(--border,#d9e0e5);box-shadow:0 1px 2px #0000000a}.files-grid-toolbar .btn.btn-ghost:hover{background:#f2f5f8;background:var(--panel-2,#f5f7f9)}.files-grid-toolbar .btn.btn-primary{box-shadow:0 2px 4px #00000014}.files-grid{--card-w:var(--layout-sidebar-secondary);grid-gap:calc(var(--gap-lg) + var(--space-2));align-content:start;display:grid;gap:calc(var(--gap-lg) + var(--space-2));grid-auto-rows:auto;grid-template-columns:repeat(auto-fill,minmax(var(--card-w),var(--card-w)));justify-content:center;overflow-y:auto;padding:6px 12px var(--space-6)}.file-card{background:#fff;border:1px solid #e2e8f099;border-radius:1.8rem;box-shadow:0 2px 8px -2px #0f172a14,0 4px 16px -4px #0f172a0a;cursor:pointer;display:flex;flex-direction:column;gap:1.4rem;min-height:17rem;overflow:hidden;padding:5.2rem 2.2rem 2.2rem;position:relative;transition:all .32s cubic-bezier(.25,.46,.45,.94);width:var(--card-w)}.file-card:before{background:linear-gradient(135deg,#3b82f6,color-mix(in srgb,#3b82f6 40%,#0000));background:linear-gradient(135deg,var(--accent,#3b82f6),color-mix(in srgb,var(--accent,#3b82f6) 40%,#0000));border-radius:inherit;content:"";inset:-1.5px;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;padding:1.5px;pointer-events:none;position:absolute;transition:opacity .32s ease}.file-card:hover{-webkit-font-smoothing:subpixel-antialiased;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 8px 32px -8px #0f172a29,0 12px 48px -12px #0f172a1f,inset 0 0 0 1px #e2e8f0cc;transform:translate3d(0,-4px,0)}.file-card:hover:before{opacity:1}.file-card:active{-webkit-font-smoothing:subpixel-antialiased;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 6px 24px -6px #0f172a24,0 8px 32px -8px #0f172a1a;transform:translate3d(0,-2px,0)}.file-card .card-icon{align-items:center;background:linear-gradient(135deg,#eff6ff,#dbeafe);background:linear-gradient(135deg,var(--accent-bg,#eff6ff),var(--accent-bg-end,#dbeafe));border-radius:1.4rem;box-shadow:0 2px 8px -2px color-mix(in srgb,#3b82f6 25%,#0000),inset 0 0 0 1px color-mix(in srgb,#3b82f6 15%,#0000);box-shadow:0 2px 8px -2px color-mix(in srgb,var(--accent,#3b82f6) 25%,#0000),inset 0 0 0 1px color-mix(in srgb,var(--accent,#3b82f6) 15%,#0000);color:#3b82f6;color:var(--accent,#3b82f6);display:inline-flex;flex-shrink:0;font-size:2.2rem;height:4.8rem;justify-content:center;margin-bottom:.4rem;margin-top:3.6rem;transition:transform .28s ease,box-shadow .28s ease;width:4.8rem}.file-card:hover .card-icon{-webkit-font-smoothing:subpixel-antialiased;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 4px 12px -3px color-mix(in srgb,#3b82f6 35%,#0000),inset 0 0 0 1px color-mix(in srgb,#3b82f6 20%,#0000);box-shadow:0 4px 12px -3px color-mix(in srgb,var(--accent,#3b82f6) 35%,#0000),inset 0 0 0 1px color-mix(in srgb,var(--accent,#3b82f6) 20%,#0000);transform:translate3d(0,-2px,0)}.file-card .title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:#0f172a;display:-webkit-box;flex:0 0 auto;font-size:1.6rem;font-weight:700;letter-spacing:-.01em;line-height:1.35;margin:0;overflow:hidden;overflow-wrap:anywhere;text-overflow:ellipsis;word-break:break-word}.file-card .meta-line{align-items:center;color:#64748b;display:flex;font-size:1.3rem;font-weight:600;gap:.6rem;letter-spacing:.01em;margin-top:auto}.file-card .meta-line.meta-secondary{color:#94a3b8;font-size:1.25rem;font-weight:500}.file-card .card-actions{opacity:0;position:absolute;right:1.2rem;top:1.2rem;transform:translateY(-4px);transition:opacity .24s ease,transform .24s ease;z-index:2}.file-card:focus-within .card-actions,.file-card:hover .card-actions{opacity:1;transform:translateY(0)}.file-card .card-actions .btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;border:1px solid #e2e8f0cc;box-shadow:0 2px 8px -2px #0f172a1f,0 4px 12px -4px #0f172a14}.file-card .card-actions .btn:hover{background:#fff;border-color:#cbd5e1e6;box-shadow:0 4px 12px -3px #0f172a29,0 6px 16px -6px #0f172a1f}.file-card .title-row{display:flex;flex:1 1 auto;flex-direction:column;gap:1.2rem;min-height:0}.type-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f1f5f9f2;border-radius:.8rem;box-shadow:0 1px 3px #0f172a14,inset 0 0 0 1px #e2e8f066;color:#475569;font-size:1.15rem;font-weight:700;left:2rem;letter-spacing:.06em;padding:.5rem 1.1rem .55rem;position:absolute;text-transform:uppercase;top:1.6rem;z-index:1}.flashcard-result-card{min-height:20rem;padding:2.2rem}.flashcard-result-content::-webkit-scrollbar{width:6px}.flashcard-result-content::-webkit-scrollbar-track{background:#e2e8f04d;border-radius:3px}.flashcard-result-content::-webkit-scrollbar-thumb{background:#94a3b880;border-radius:3px;-webkit-transition:background .2s ease;transition:background .2s ease}.flashcard-result-content::-webkit-scrollbar-thumb:hover{background:#64748bb3}.type-badge.set{background:linear-gradient(135deg,#eff6ff,#dbeafe);box-shadow:0 1px 3px #1e40af1f,inset 0 0 0 1px #3b82f626;color:#1e40af}.type-badge.note{background:linear-gradient(135deg,#fffbeb,#fef3c7);box-shadow:0 1px 3px #92400e1f,inset 0 0 0 1px #f59e0b26;color:#92400e}.type-badge.pdf{background:linear-gradient(135deg,#fef2f2,#fee2e2);box-shadow:0 1px 3px #991b1b1f,inset 0 0 0 1px #ef444426;color:#991b1b}.type-badge.ppt{background:linear-gradient(135deg,#fff7ed,#ffedd5);box-shadow:0 1px 3px #9a34121f,inset 0 0 0 1px #f9731626;color:#9a3412}.type-badge.test{background:linear-gradient(135deg,#f0fdf4,#dcfce7);box-shadow:0 1px 3px #1665341f,inset 0 0 0 1px #22c55e26;color:#166534}.set-card{--accent:#3b82f6;--accent-bg:#eff6ff;--accent-bg-end:#dbeafe}.note-card{--accent:#f59e0b;--accent-bg:#fffbeb;--accent-bg-end:#fef3c7}.pdf-card{--accent:#ef4444;--accent-bg:#fef2f2;--accent-bg-end:#fee2e2}.ppt-card{--accent:#f97316;--accent-bg:#fff7ed;--accent-bg-end:#ffedd5}.test-card{--accent:#22c55e;--accent-bg:#f0fdf4;--accent-bg-end:#dcfce7}.file-card.note-card:after,.file-card.pdf-card:after,.file-card.ppt-card:after,.file-card.set-card:after,.file-card.test-card:after{background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 50%,#0000));bottom:0;content:"";height:3px;left:0;opacity:.6;position:absolute;right:0;transition:opacity .28s ease}.file-card:hover:after{opacity:1}.file-card .perf-ring{margin:0}.file-card .select-checkbox{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;border:1.5px solid #e2e8f0cc;border-radius:.8rem;bottom:1.2rem;box-shadow:0 2px 6px -1px #0f172a14,0 3px 8px -2px #0f172a0a;cursor:pointer;display:flex;height:2.4rem;justify-content:center;position:absolute;right:1.2rem;transition:all .24s ease;width:2.4rem;z-index:3}.file-card .select-checkbox:after{color:#fff;content:"✓";font-size:1.4rem;font-weight:700;opacity:0;transform:scale(.7);transition:all .24s ease}.file-card .select-checkbox:hover{background:#fff;border-color:#3b82f680;box-shadow:0 3px 8px -2px #3b82f629,0 4px 12px -3px #3b82f61f}.file-card .select-checkbox.is-checked{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f6;box-shadow:0 3px 12px -2px #3b82f666,0 4px 16px -4px #3b82f64d}.file-card .select-checkbox.is-checked:after{opacity:1;transform:scale(1)}.file-card.is-selected{-webkit-font-smoothing:subpixel-antialiased;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-shadow:0 0 0 3px #3b82f640,0 8px 32px -8px #3b82f63d,0 12px 48px -12px #3b82f62e,inset 0 0 0 1.5px #3b82f64d;transform:translate3d(0,-2px,0)}.file-card.is-selected:before{opacity:1}.file-card.placeholder-card{align-items:center;background:#0000;border:1.5px dashed #e2e8f0;box-shadow:none;cursor:pointer;display:flex;justify-content:center;max-height:17rem;min-height:17rem;opacity:.5;overflow:hidden;padding:2rem;transition:all .28s ease}.file-card.placeholder-card:after,.file-card.placeholder-card:before{display:none}.file-card.placeholder-card:hover{background:#f8fafc99;border-color:#cbd5e0;box-shadow:0 4px 12px -6px #0f172a14;opacity:.85;transform:translateY(-2px)}.file-card.placeholder-card:active{opacity:.75;transform:translateY(0)}.file-card.placeholder-card.is-drag-over{background:#eff6ff66;border-color:#3b82f6;border-width:2px;box-shadow:0 0 0 3px #3b82f614,0 8px 20px -8px #3b82f629;opacity:1;transform:scale(1.02)}.placeholder-content{align-items:center;display:flex;flex-direction:column;gap:.85rem;padding:0;text-align:center}.placeholder-icon{color:#cbd5e0;font-size:2.8rem;font-weight:300;line-height:1;margin-bottom:.4rem;transition:all .24s ease}.file-card.placeholder-card:hover .placeholder-icon{color:#94a3b8;transform:scale(1.05)}.placeholder-title{color:#64748b;font-size:1.45rem;font-weight:600;letter-spacing:-.005em;margin-bottom:.1rem}.placeholder-text{color:#94a3b8;font-size:1.25rem;font-weight:400;line-height:1.4;max-width:22rem}.placeholder-text.secondary{color:#cbd5e0;font-size:1.15rem;line-height:1.35;max-width:20rem}.placeholder-divider{align-items:center;display:flex;gap:1rem;margin:.3rem 0;max-width:14rem;width:100%}.placeholder-divider:after,.placeholder-divider:before{background:linear-gradient(90deg,#0000,#f1f5f9,#0000);content:"";flex:1 1;height:1px}.placeholder-divider span{color:#e2e8f0;font-size:1.05rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.new-item-options{display:flex;flex-direction:column;gap:1.2rem;padding:.8rem 0}.new-item-option{align-items:flex-start;background:#fff;border:1.5px solid #0000;border-radius:1.4rem;box-shadow:0 2px 6px -1px #0f172a0f,0 3px 8px -2px #0f172a0a,inset 0 0 0 1px #e2e8f080;cursor:pointer;display:flex;gap:1.4rem;overflow:hidden;padding:1.6rem 1.8rem;position:relative;text-align:left;transition:all .28s cubic-bezier(.25,.46,.45,.94);width:100%}.new-item-option:before{background:linear-gradient(135deg,#3b82f6,color-mix(in srgb,#3b82f6 30%,#0000));background:linear-gradient(135deg,var(--opt-accent,#3b82f6),color-mix(in srgb,var(--opt-accent,#3b82f6) 30%,#0000));border-radius:inherit;content:"";inset:0;opacity:0;position:absolute;transition:opacity .28s ease}.new-item-option:hover{border-color:#dbeafe;border-color:var(--opt-accent-soft,#dbeafe);box-shadow:0 8px 24px -8px #0f172a24,0 12px 32px -12px #0f172a1a,inset 0 0 0 1.5px #dbeafe;box-shadow:0 8px 24px -8px #0f172a24,0 12px 32px -12px #0f172a1a,inset 0 0 0 1.5px var(--opt-accent-soft,#dbeafe);transform:translateY(-2px) scale(1.01)}.new-item-option:hover:before{opacity:.03}.new-item-option:active{transform:translateY(0) scale(1)}.new-item-option .opt-icon{background:linear-gradient(135deg,#eff6ff,#dbeafe);background:linear-gradient(135deg,var(--opt-bg,#eff6ff),var(--opt-bg-end,#dbeafe));border-radius:1.2rem;box-shadow:0 2px 8px -2px color-mix(in srgb,#3b82f6 20%,#0000),inset 0 0 0 1px color-mix(in srgb,#3b82f6 12%,#0000);box-shadow:0 2px 8px -2px color-mix(in srgb,var(--opt-accent,#3b82f6) 20%,#0000),inset 0 0 0 1px color-mix(in srgb,var(--opt-accent,#3b82f6) 12%,#0000);color:#3b82f6;color:var(--opt-accent,#3b82f6);display:grid;flex:0 0 auto;height:4.6rem;place-items:center;position:relative;transition:transform .28s ease,box-shadow .28s ease;width:4.6rem;z-index:1}.new-item-option:hover .opt-icon{box-shadow:0 4px 12px -3px color-mix(in srgb,#3b82f6 30%,#0000),inset 0 0 0 1px color-mix(in srgb,#3b82f6 18%,#0000);box-shadow:0 4px 12px -3px color-mix(in srgb,var(--opt-accent,#3b82f6) 30%,#0000),inset 0 0 0 1px color-mix(in srgb,var(--opt-accent,#3b82f6) 18%,#0000);transform:translateY(-2px) scale(1.05)}.new-item-option .opt-icon svg{height:2.4rem;width:2.4rem}.new-item-option .opt-body{display:flex;flex:1 1;flex-direction:column;gap:.6rem;min-width:0;position:relative;z-index:1}.new-item-option .opt-title{color:#0f172a;font-size:1.55rem;font-weight:700;letter-spacing:-.01em;line-height:1.3}.new-item-option .opt-desc{color:#64748b;font-size:1.35rem;font-weight:500;line-height:1.45}.new-item-option.set-option{--opt-accent:#3b82f6;--opt-accent-soft:#dbeafe;--opt-bg:#eff6ff;--opt-bg-end:#dbeafe}.new-item-option.note-option{--opt-accent:#f59e0b;--opt-accent-soft:#fef3c7;--opt-bg:#fffbeb;--opt-bg-end:#fef3c7}.new-item-option.folder-option{--opt-accent:#8b5cf6;--opt-accent-soft:#e9d5ff;--opt-bg:#f5f3ff;--opt-bg-end:#ede9fe}.files-list-panel .select-checkbox{background:#fff;border:2px solid #dfe4e8;border:2px solid var(--border,#dfe4e8);border-radius:5px;box-shadow:0 1px 2px #0000000d;cursor:pointer;height:18px;width:18px}.files-list-panel .select-checkbox.is-checked{background:#2f6df6;background:var(--primary,#2f6df6);border-color:#2f6df6;border-color:var(--primary,#2f6df6)}.files-table tr.is-selected td{background:color-mix(in srgb,#fff 88%,#e7f0ff 12%);background:color-mix(in srgb,#fff 88%,var(--primary-soft,#e7f0ff) 12%)}.perf-ring{--ring-bg:#e5e9ef;align-items:center;background:var(--ring-bg);border-radius:50%;box-shadow:inset 0 0 0 2px #ffffffe6;display:flex;font-size:var(--font-size-dash-small);font-weight:600;height:calc(var(--ring-size) + 8px);justify-content:center;position:relative;width:calc(var(--ring-size) + 8px)}.perf-ring span{position:relative;z-index:1}.perf-ring.is-empty{color:#9aa6b2;color:var(--muted,#9aa6b2)}.empty-cards{background:linear-gradient(135deg,#fafcfe,#f8fafc);border:2px dashed #cbd5e199;border-radius:2rem;padding:var(--space-11) var(--space-4);text-align:center;transition:all .32s ease}.empty-cards:hover{background:linear-gradient(135deg,#fff,#f8fafc);border-color:#94a3b8b3;box-shadow:0 8px 24px -8px #0f172a14,0 12px 32px -12px #0f172a0a}.empty-cards p{color:#475569;font-size:1.6rem;font-weight:600;letter-spacing:-.01em;margin:0 0 1.2rem}.empty-cards .actions{display:flex;flex-wrap:wrap;gap:1.2rem;justify-content:center;margin-top:2rem}.empty-cards .actions .btn{border-radius:1.2rem;box-shadow:0 2px 8px -2px #0f172a1f,0 4px 12px -4px #0f172a14;font-size:1.4rem;font-weight:600;padding:1.2rem 2rem;transition:all .28s ease}.empty-cards .actions .btn:hover{box-shadow:0 6px 16px -6px #0f172a29,0 8px 24px -8px #0f172a1f;transform:translateY(-2px)}@media (max-width:640px){.empty-cards{border-radius:1.6rem;padding:var(--space-8) var(--space-4)}.empty-cards p{font-size:1.5rem}.empty-cards .actions{flex-direction:column;gap:var(--space-2)}.empty-cards .actions .btn{font-size:1.35rem;padding:1.1rem 1.8rem;width:100%}}.files-grid::-webkit-scrollbar{width:10px}.files-grid::-webkit-scrollbar-track{background:#0000}.files-grid::-webkit-scrollbar-thumb{background:#0000001f;background-clip:content-box;border:3px solid #0000;border-radius:12px}.files-grid:hover::-webkit-scrollbar-thumb{background:#0003;border:3px solid #0000}@media (max-width:1050px){.files-grid-panel{padding:12px 3rem 3.2rem}}@media (max-width:820px){.folder-select>.btn{font-size:var(--font-size-dash-large);padding:13px 32px}}@media (max-width:680px){.files-grid-panel{padding:12px var(--space-5-2) 3rem}.folder-select>.btn{font-size:var(--font-size-dash-medium);padding:var(--space-3) var(--space-5-5)}.perf-ring{height:calc(var(--ring-size-sm) + 4px);width:calc(var(--ring-size-sm) + 4px)}.dash-actions-bar{flex-wrap:wrap}}@media (max-width:520px){.folder-select>.btn{font-size:var(--font-size-dash-medium);padding:var(--space-3) 2.6rem}}@media (max-width:430px){.folder-select>.btn{font-size:var(--font-size-dash-small);padding:1.1rem var(--space-5-2)}}.dash-actions-bar{--ab-bg:#fff9;--ab-border:#e6edf4e6;--ab-shadow:0 0.4rem 1.8rem -0.8rem #14222c2e,0 0.2rem 0.6rem -0.2rem #14222c14;--ab-shadow-focus:0 0.6rem 2.6rem -1rem #14222c47,0 0.4rem 1.4rem -0.4rem #14222c1f;--ab-radius:1.8rem;align-items:stretch;-webkit-backdrop-filter:blur(1.8rem) saturate(180%);backdrop-filter:blur(1.8rem) saturate(180%);border-radius:var(--ab-radius);display:flex;flex-direction:column;gap:var(--space-2-5);min-width:21rem;padding:2.8rem 1.4rem 1.6rem;position:absolute;right:var(--space-5-2);top:var(--space-2-5);transition:box-shadow .35s,background .35s,padding .3s,border-color .35s}.dash-actions-bar:hover{box-shadow:var(--ab-shadow-focus)}.dash-actions-bar .actions-heading{color:#5d6c75;color:var(--muted,#5d6c75);font-size:var(--font-size-dash-xs);font-weight:700;letter-spacing:.065em;margin-top:0;padding:2px 2px 0;text-transform:uppercase}.dash-actions-bar .btn,.dash-actions-bar .btn.btn-ghost,.dash-actions-bar .btn.btn-ghost:hover,.dash-actions-bar .btn.btn-link,.dash-actions-bar .btn.btn-link:hover,.dash-actions-bar .quick-action,.dash-actions-bar a.quick-action{color:var(--text)}.dash-actions-bar .action-divider{background:linear-gradient(90deg,#0000,#8ca0b459,#0000);border-radius:1px;height:1px;margin:4px 0 2px}.dash-actions-bar .collapse-hide{animation:fadeIn .4s ease;display:flex;flex-direction:column;gap:10px}.dash-actions-bar .inline-actions-group{display:flex;flex-direction:column;gap:8px}.dash-actions-bar .inline-actions-group .action-btn{justify-content:flex-start}.dash-actions-bar .action-btn{align-items:center;background:#fff;border:1px solid #d5dde3;border:1px solid var(--border,#d5dde3);border-radius:11px;box-shadow:0 1px 2px #0000000d;display:inline-flex;font-size:var(--font-size-dash-small);font-weight:600;gap:8px;justify-content:space-between;letter-spacing:.04em;line-height:1;padding:9px 12px;position:relative;transition:background .25s,border-color .25s,box-shadow .25s,transform .25s;width:100%}.dash-actions-bar .action-btn.is-muted{background:#f7fafc;background:var(--panel,#f7fafc);border-color:#b4c3d2cc;box-shadow:inset 0 0 0 1px #fff6;color:#6a7882;color:var(--muted,#6a7882)}.dash-actions-bar .action-btn.is-muted .icon{opacity:.6}.dash-actions-bar .action-btn.is-muted:hover{background:#f2f5f8;background:var(--panel-2,#f1f6fa);border-color:#c9d6e2}.dash-actions-bar .action-btn .icon{font-size:var(--font-size-dash-small);line-height:1;opacity:.85}.dash-actions-bar .action-btn .caret{font-size:var(--font-size-dash-xs);opacity:.7}.dash-actions-bar .action-btn:hover{background:#f2f5f8;background:var(--panel-2,#f5f8fb);border-color:#c3d2e1;box-shadow:0 4px 10px -4px #0000001f}.dash-actions-bar .action-btn:active{background:#f1f6fa;transform:translateY(1px)}.dash-actions-bar .collapse-hide .btn{width:100%}.dash-actions-bar{background:var(--ab-bg);border:1px solid var(--ab-border);box-shadow:var(--ab-shadow)}.dash-actions-bar.is-row{align-items:center;border-radius:1.2rem;flex-direction:row;gap:14px;min-width:0;padding:8px 14px;width:auto}.dash-actions-bar.is-row .actions-heading{align-items:center;display:flex;line-height:1;padding:0 4px 0 2px;white-space:nowrap}.dash-actions-bar.is-row .action-divider{align-self:center;background:linear-gradient(180deg,#0000,#8ca0b473,#0000);height:24px;margin:0 2px;width:1px}.dash-actions-bar.is-row .action-btn{font-size:var(--font-size-dash-xs);font-weight:600;padding:6px 10px;width:auto}.dash-actions-bar.is-row .action-btn .caret{margin-left:4px}.dash-actions-bar:not(.is-row){box-sizing:border-box;width:var(--layout-sidebar-secondary)}@media (prefers-reduced-motion:no-preference){.dash-actions-bar .collapse-hide[aria-hidden=true]{animation:none}}.filters-under-left{align-items:flex-start;display:flex;flex-direction:column;gap:4px;margin:0;padding:0}.filters-under-left .filter-chips{margin-top:2px}.filters-under-left .filter-trigger{font-size:var(--font-size-dash-medium);position:relative}.filter-trigger{color:var(--text);position:relative}.filters-under-left .filter-trigger.is-active{border-color:#c6d6f8;border-color:var(--primary-soft,#c6d6f8);box-shadow:inset 0 0 0 2px #c6d6f8;box-shadow:0 0 0 2px var(--primary-soft,#c6d6f8) inset}.filters-under-left .filter-dot{background:#3a6df0;background:var(--primary,#3a6df0);border-radius:50%;box-shadow:0 0 0 2px #fff,0 0 0 4px #dfe8fb;box-shadow:0 0 0 2px var(--color-accent-chip-ring-inner,#fff),0 0 0 4px var(--color-accent-chip-ring,var(--primary-soft,#dfe8fb));display:inline-block;height:8px;margin-left:6px;width:8px}.filters-under-left .filter-chips{display:flex;flex-wrap:wrap;gap:6px}.filters-under-left .chip{background:var(--color-accent-chip-bg);border:1px solid var(--color-accent-chip-border);border-radius:999px;color:var(--color-accent-chip-text);cursor:pointer;font-size:var(--font-size-dash-xs);font-weight:600;letter-spacing:.045em;padding:5px 10px;transition:background .18s,border-color .18s}.filters-under-left .chip:hover{background:var(--color-accent-chip-bg-hover);border-color:var(--color-accent-chip-border-hover)}.menu-section-label{color:var(--muted);font-size:var(--font-size-dash-xs);font-weight:700;letter-spacing:.06em;padding:2px 4px;text-transform:uppercase}.filter-dot{background:#3a6df0;background:var(--primary,#3a6df0);border-radius:50%;box-shadow:0 0 0 2px #fff,0 0 0 4px #dfe8fb;box-shadow:0 0 0 2px var(--color-accent-chip-ring-inner,#fff),0 0 0 4px var(--color-accent-chip-ring,var(--primary-soft,#dfe8fb));display:inline-block;height:8px;margin-left:6px;width:8px}.mobile-filter-chips .chip{background:var(--color-accent-chip-bg);border:1px solid var(--color-accent-chip-border);border-radius:999px;color:var(--color-accent-chip-text);cursor:pointer;font-size:var(--font-size-dash-xs);font-weight:600;letter-spacing:.045em;padding:5px 10px;transition:background .18s,border-color .18s}.mobile-filter-chips .chip:hover{background:var(--color-accent-chip-bg-hover);border-color:var(--color-accent-chip-border-hover)}.dash-topbar .action-btn{font-size:var(--font-size-dash-small)}.dash-topbar .action-btn.import-export-trigger,.dash-topbar .action-btn.new-trigger,.dash-topbar .action-btn.new-trigger .icon,.dash-topbar .filter-trigger{font-size:var(--font-size-dash-medium)}.dash-topbar .action-btn.new-trigger .caret{font-size:var(--font-size-dash-xs)}.dashboard-header .dash-actions-bar{margin-left:auto}@media (max-width:1350px){.folder-select{--folder-trigger-w:var(--layout-sidebar-secondary)}}@media (max-width:1180px){.dash-actions-bar{flex-direction:column;gap:8px}.dash-actions-bar .btn{width:150px}}@media (max-width:740px){.dash-actions-bar{display:none}.mobile-all-actions{display:flex;flex-direction:column;gap:6px;padding:4px 6px 10px}.mobile-actions-row{display:flex;flex-wrap:wrap;gap:8px}.mobile-actions-row .btn{flex:1 1 48%;min-width:120px}.mobile-actions-row .btn.is-muted{background:#f7fafc;background:var(--panel,#f7fafc);border:1px solid #b4c3d2cc;color:#6a7882;color:var(--muted,#6a7882)}.mobile-filter-chips{display:flex;flex-wrap:wrap;gap:6px}.dashboard-header .header-left{position:static;transform:none}}@media (max-width:900px){.header-filters-inline{align-items:center;flex-direction:row}.header-filters-inline .filter-chips{max-width:100%}}@media (max-width:740px){.dashboard-header .header-inner{flex-wrap:wrap;justify-content:space-between;padding:10px 16px 12px}.dashboard-header .header-left{left:auto;order:1;position:static;top:auto;transform:none}.dashboard-header .header-inner.header-center>.folder-select{display:flex;justify-content:center;margin-top:6px;order:2;position:static;transform:none}.folder-select{--folder-trigger-w:var(--layout-sidebar-secondary)}.folder-select .folder-select-trigger{max-width:var(--folder-trigger-w);width:var(--folder-trigger-w)}.dash-actions-bar{margin-left:auto;order:2}.mobile-all-actions.always-open{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0000;border:none;border-radius:0;box-shadow:none;padding:var(--space-2) var(--space-3)}.mobile-all-actions.always-open .mobile-actions-row{gap:var(--space-2)}.btn.btn-mobile-action{align-items:center;background:#fff;border:1.5px solid #e2e8f0;border-radius:1.2rem;box-shadow:0 2px 4px -1px #0f172a0f;color:#475569;display:inline-flex;flex:1 1 auto;font-size:var(--font-size-dash-small);font-weight:600;gap:var(--space-1-5);justify-content:center;letter-spacing:.02em;padding:var(--space-2) var(--space-3);transition:all .2s ease;white-space:nowrap}.btn.btn-mobile-action .icon{font-size:1.6rem;opacity:.85}.btn.btn-mobile-action .label{font-size:var(--font-size-dash-small)}.btn.btn-mobile-action.processing-trigger.is-active{background:#eff6ff;border-color:#3b82f6;color:#1e40af}.btn.btn-mobile-action.import-export-trigger{font-size:var(--font-size-dash-small)}.btn.btn-mobile-action.new-trigger:not(.is-muted){background:#3b82f6;border-color:#3b82f6;box-shadow:0 2px 6px -1px #3b82f659;color:#fff}.btn.btn-mobile-action.new-trigger:not(.is-muted):hover{background:#2563eb;border-color:#2563eb}.btn.btn-mobile-action.new-trigger.is-muted{background:#f8fafc;border-color:#e2e8f0;color:#94a3b8}.btn.btn-mobile-action:hover{background:#f8fafc;border-color:#cbd5e1;box-shadow:0 4px 8px -2px #0f172a1f;color:#1e293b;transform:translateY(-1px)}.btn.btn-mobile-action:active{background:#f1f5f9;border-color:#94a3b8;box-shadow:0 1px 2px #0f172a14;transform:translateY(0)}.btn.btn-mobile-action .label{display:inline-block}.btn.btn-mobile-action.filter-trigger.is-active{background:#eff6ff;border-color:#3b82f6;box-shadow:inset 0 0 0 1px #3b82f6;color:#1e40af}.btn.btn-mobile-action .caret{font-size:1.1rem;margin-left:-.2rem;opacity:.7}}@media (max-width:560px){.dashboard-header .header-inner{gap:var(--space-2)}.dashboard-header .header-left{justify-content:center;width:100%}.folder-select .folder-select-trigger{font-size:var(--font-size-dash-small);padding:var(--space-2-5) var(--space-4)}.mobile-actions-row{flex-wrap:wrap}.mobile-actions-row .btn{flex:1 1 45%;min-width:140px}.file-card .title{font-size:1.5rem}.file-card .card-icon{font-size:1.9rem;height:4.2rem;width:4.2rem}}@media (max-width:740px){.folder-select{--folder-trigger-w:100%;max-width:var(--layout-sidebar-secondary)}.folder-select .folder-select-trigger{justify-content:center;max-width:var(--layout-sidebar-secondary)!important;width:100%!important}.dashboard-header .header-inner.header-center>.folder-select{margin:0 auto!important}.mobile-all-actions{align-items:stretch;display:flex;flex-direction:column;gap:var(--space-2)}.mobile-actions-row{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:stretch}.mobile-actions-row .btn{flex:1 1 auto;min-width:0}.mobile-actions-collapse-btn{font-size:var(--font-size-dash-xs);letter-spacing:.04em}.dashboard-header .dash-actions-bar,.dashboard-header .header-left{display:none}}@media (max-width:640px){.pane-body{flex-direction:row}.dashboard-sidebar,.sidebar-resizer{display:none}.dashboard-right{flex:1 1;width:100%}.files-grid{gap:var(--space-4);grid-template-columns:1fr;justify-content:stretch;padding:var(--space-3) var(--space-3) var(--space-6)}.files-grid .file-card{max-width:none;min-height:16rem;padding:5.2rem 2rem 2rem;width:100%}.file-card .title{-webkit-line-clamp:2;line-clamp:2;font-size:1.55rem}.file-card .card-icon{font-size:2.1rem;height:4.6rem;margin-bottom:.4rem;margin-top:3.6rem;width:4.6rem}.type-badge{font-size:1.1rem;left:1.8rem;padding:.5rem 1rem .55rem;top:1.6rem}.dashboard-header .header-inner,.dashboard-topbar{padding:var(--space-2) var(--space-3)}.dashboard-topbar{flex-wrap:wrap}.dashboard-topbar .search-input{max-width:100%;order:2;width:100%}.dashboard-topbar .processing-trigger{order:1}.dashboard-topbar-actions{display:none}.file-card .meta-line{font-size:1.25rem}.folder-select .folder-select-trigger{font-size:var(--font-size-dash-small);padding:var(--space-2-5) var(--space-4)}.empty-cards{padding:var(--space-8) var(--space-4)}.empty-cards p{font-size:1.5rem}.empty-cards .actions .btn{font-size:1.3rem;padding:1rem 1.6rem}}.sidebar-resizer{background:#e2e8f0;cursor:col-resize;flex:0 0 auto;position:relative;transition:all .2s ease;width:1px}.sidebar-resizer:hover{background:#3b82f6;width:3px}.sidebar-resizer.is-dragging,.sidebar-resizer:active{background:#2563eb;width:3px}.sidebar-resizer{box-shadow:none}.sidebar-resize-overlay{background:#0000;cursor:col-resize;inset:0;position:fixed;touch-action:none;z-index:9999}@media (max-width:640px){.sidebar-resizer{display:none}}.file-card:focus-visible{outline:3px solid #3a6df0;outline:3px solid var(--primary,#3a6df0);outline-offset:3px}.file-card:focus-within{box-shadow:0 0 0 2px #c6d6f8,var(--shadow-sm);box-shadow:0 0 0 2px var(--primary-soft,#c6d6f8),var(--shadow-sm)}@media (prefers-reduced-motion:reduce){.file-card,.files-grid-panel{animation:none!important;transition:none!important}}.bulk-actions-fab{bottom:20px;display:flex;gap:12px;position:fixed;right:20px;z-index:1000}.bulk-action-btn{align-items:center;border:0;border-radius:50%;box-shadow:0 10px 24px -10px #0000004d,0 4px 12px #0003;color:#fff;cursor:pointer;display:inline-flex;font-size:24px;height:56px;justify-content:center;transition:filter .2s,transform .1s,box-shadow .2s;width:56px}.bulk-export-btn{background:#10b981;background:var(--color-success,#10b981);box-shadow:0 10px 24px -10px #10b98199,0 4px 12px #0003}.bulk-move-btn{background:#4a90e2;background:var(--primary,#4a90e2);box-shadow:0 10px 24px -10px #4a90e299,0 4px 12px #0003}.bulk-delete-btn{background:#d8343a;background:var(--color-danger,#d8343a);box-shadow:0 10px 24px -10px #d8343a99,0 4px 12px #0003}.bulk-action-btn:hover{box-shadow:0 12px 32px -12px #0006,0 6px 16px #00000040;filter:brightness(1.1)}.bulk-action-btn:active{box-shadow:0 6px 16px -8px #0000004d,0 2px 8px #0003;transform:translateY(2px)}@media (max-width:640px){.bulk-actions-fab{bottom:16px;gap:10px;right:16px}.bulk-action-btn{font-size:22px;height:52px;width:52px}}.bulk-delete-fab{align-items:center;background:#d8343a;background:var(--color-danger,#d8343a);border:0;border-radius:50%;bottom:20px;box-shadow:0 10px 24px -10px #d8343a99,0 4px 12px #0003;color:#fff;display:inline-flex;font-size:22px;height:52px;justify-content:center;position:fixed;right:20px;width:52px;z-index:1000}.bulk-delete-fab:hover{filter:brightness(1.05)}.bulk-delete-fab:active{transform:translateY(1px)}.dash-actions-bar .dash-actions-collapse-btn{min-width:0!important;width:auto!important}@media (max-width:1180px){.dash-actions-bar .dash-actions-collapse-btn{min-width:0!important;width:auto!important}}@media (max-width:560px){.dash-actions-bar .dash-actions-collapse-btn{min-width:0!important;width:auto!important}}:root{--app-bg:#f7f9fb;--panel-2:#f2f5f8}.study-options-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(1,minmax(0,1fr));margin-top:6px}@media (min-width:560px){.study-options-grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}}.study-option{align-items:flex-start;background:#fff;border:1px solid #dfe4e8;border:1px solid var(--border,#dfe4e8);border-radius:12px;cursor:pointer;display:flex;gap:12px;padding:12px 14px;text-align:left;transition:box-shadow .22s,border-color .22s,transform .2s}.study-option:hover{border-color:#c6d6f8;border-color:var(--primary-soft,#c6d6f8);box-shadow:0 8px 20px -10px #00000038,0 2px 6px #0000000f;transform:translateY(-1px)}.study-option:active{transform:translateY(0)}.study-option .opt-icon{background:#f2f5f8;background:var(--panel-2,#f5f7f9);border-radius:10px;box-shadow:inset 0 0 0 1px #dfe4e8;box-shadow:inset 0 0 0 1px var(--border,#dfe4e8);color:#2f6df6;color:var(--primary,#2f6df6);display:grid;flex:0 0 auto;height:36px;place-items:center;width:36px}.study-option .opt-icon svg{height:22px;width:22px}.study-option .opt-body{display:flex;flex-direction:column;gap:4px;min-width:0}.study-option .opt-title{font-size:var(--font-size-dash-small);font-weight:700;letter-spacing:.01em}.study-option .opt-desc{color:#6e7b88;color:var(--muted,#6e7b88);font-size:var(--font-size-dash-xs)}.study-option .opt-badge.ai{background:linear-gradient(135deg,#3d7dff,#1f56d8);background:linear-gradient(135deg,var(--color-accent-gradient-start,#3d7dff),var(--color-accent-gradient-end,#1f56d8));border-radius:999px;box-shadow:0 1px 2px #0000001f;color:#fff;display:inline-block;font-size:10px;font-weight:800;letter-spacing:.08em;margin-left:6px;padding:2px 6px;vertical-align:1px}.study-option.standard .opt-icon{background:#eef5ff;color:#2f6df6}.study-option.chat .opt-icon,.study-option.learn .opt-icon{background:#f1eaff;color:#6b3faf}.study-option.mc .opt-icon,.study-option.test .opt-icon{background:#fff2f0;color:#d83a3a}.study-option.written .opt-icon{background:#fff7e6;color:#d26b2a}.study-option.performance .opt-icon{background:#eff8f1;color:#2a8056}.study-option.edit .opt-icon{background:#f0f9ff;color:#0284c7}.study-options-note{color:#9fb2b0;color:var(--muted,#9fb2b0);font-size:var(--font-size-dash-xs);margin-top:10px}@media (max-width:560px){.study-option{padding:14px 16px}.study-option .opt-icon{height:40px;width:40px}.study-option .opt-icon svg{height:24px;width:24px}.study-option .opt-title{font-size:var(--font-size-dash-medium)}.study-option .opt-desc{font-size:var(--font-size-dash-small);line-height:1.4}}.modal-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a80;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px -12px #0f172a40;max-height:90vh;max-width:90vw;overflow:auto;padding:24px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.titlebar{-webkit-app-region:drag;align-items:center;background:var(--primary);border-bottom:1px solid #ffffff14;box-shadow:0 2px 8px #00000040;color:#fff;display:flex;height:var(--electron-titlebar-height);justify-content:space-between;left:0;padding:0 10px;position:fixed;right:0;top:0;width:100%;z-index:2000}.titlebar-btn,.titlebar-controls,.titlebar-left,.titlebar-logo,.titlebar-title{-webkit-app-region:no-drag}.titlebar-left{align-items:center;display:flex;gap:8px;min-width:0}.titlebar-logo{align-items:center;background:var(--primary-soft);border-radius:6px;color:var(--primary);display:inline-flex;height:20px;justify-content:center;width:20px}.titlebar-logo svg{display:block}.titlebar-title{color:#fff;font-size:.9rem;font-weight:600;letter-spacing:.4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.titlebar-controls{align-items:center;display:flex;gap:4px}.titlebar-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;height:28px;justify-content:center;transition:background .15s,border-color .15s,color .15s;width:28px}.titlebar-btn:hover{background:#ffffff1f;border-color:#ffffff2e}.titlebar-btn:active{transform:translateY(1px)}.titlebar-btn svg{display:block}.titlebar-btn-close:hover{background:#d94a4a;border-color:#d94a4a;color:#fff}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.popup-overlay{align-items:center;-webkit-backdrop-filter:saturate(120%) blur(2px);backdrop-filter:saturate(120%) blur(2px);background:#00000073;height:100vh;justify-content:center;left:0;width:100vw;z-index:5000}.popup-overlay,.popup-side{display:flex;position:fixed;top:0}.popup-side{bottom:0;pointer-events:none;z-index:4500}.popup-side.side-right{right:0}.popup-side.side-left{left:0}.popup-side .popup-container{border-left:1px solid #d8dde2;border-left:1px solid var(--border,#d8dde2);border-radius:0;height:100vh;max-width:none;pointer-events:auto;width:100%}.popup-resize-handle{bottom:0;cursor:col-resize;pointer-events:auto;position:absolute;top:0;width:8px;z-index:1}.popup-resize-handle.on-left{left:-4px}.popup-resize-handle.on-right{right:-4px}.popup-resize-handle:after{background:#d8dde2;background:var(--border,#d8dde2);bottom:0;content:"";left:3px;opacity:.7;position:absolute;top:0;width:2px}.popup-resize-handle:hover:after{background:#e2ebf3;background:var(--primary-soft,#e2ebf3)}.popup-container{animation:popupEnter .18s ease;background:#fff;background:var(--panel,#fff);border:1px solid #d8dde2;border:1px solid var(--border,#d8dde2);border-radius:var(--radius);box-shadow:0 14px 40px -8px #00000040,0 2px 8px #00000014;color:#2c3e50;color:var(--text,#2c3e50);display:flex;flex-direction:column;gap:12px;max-width:760px;padding:18px 18px 14px;width:92%}@keyframes popupEnter{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.popup-header{align-items:center;border-bottom:1px solid #d8dde2;border-bottom:1px solid var(--border,#d8dde2);display:flex;justify-content:space-between;padding-bottom:8px}.popup-header-actions{align-items:center;display:flex;gap:6px;margin-left:auto;margin-right:6px}.popup-title{color:#2c3e50;color:var(--text,#2c3e50);font-size:var(--font-size-dash-large);margin:0}.popup-close-btn{background:#0000;border:0;border-radius:8px;color:#6b7a89;color:var(--muted,#6b7a89);cursor:pointer;font-size:var(--font-size-dash-small);line-height:1;padding:2px 6px}.popup-close-btn:hover{background:#e2ebf3;background:var(--primary-soft,#e2ebf3)}.popup-close-btn:hover,.popup-content{color:#2c3e50;color:var(--text,#2c3e50)}.popup-content{flex:1 1 auto;min-height:0;overflow-y:auto}.popup-unsaved-warning{background:#ffe5d3;background:var(--warning-soft,#ffe5d3);border:1px solid #ffd4b6;border:1px solid var(--warning-soft-border,#ffd4b6);border-radius:8px;color:#d2a93b;color:var(--color-warning-alt,#d2a93b);font-size:var(--font-size-dash-xs);font-weight:600;margin-top:12px;padding:8px 10px}.popup-footer{border-top:1px solid #d8dde2;border-top:1px solid var(--border,#d8dde2);display:flex;gap:8px;justify-content:flex-end;padding-top:10px}@media (max-width:600px){.popup-container{border-radius:12px;padding:14px 12px 10px}.popup-title{font-size:var(--font-size-dash-xs)}}.popup-tabs{border-bottom:1px solid #d8dde2;border-bottom:1px solid var(--border,#d8dde2);display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px;padding-bottom:6px}.popup-tab{background:#fff;border:1px solid #d8dde2;border:1px solid var(--border,#d8dde2);border-radius:999px;color:#6b7a89;color:var(--muted,#6b7a89);cursor:pointer;font-size:var(--font-size-dash-xs);line-height:1;padding:6px 10px}.popup-tab.active,.popup-tab[aria-selected=true]{background:#e2ebf3;background:var(--primary-soft,#e2ebf3);border-color:#e2ebf3;border-color:var(--primary-soft,#e2ebf3);color:#2c3e50;color:var(--primary,#2c3e50);font-weight:700}.popup-tab:disabled{cursor:default;opacity:.45}.modal-resizable{max-width:none;position:relative;width:auto}.popup-resize-corner{border-bottom:2px solid #d8dde2;border-bottom:2px solid var(--border,#d8dde2);border-radius:2px;border-right:2px solid #d8dde2;border-right:2px solid var(--border,#d8dde2);bottom:4px;cursor:nwse-resize;height:14px;opacity:.85;position:absolute;right:4px;width:14px}.popup-resize-corner:hover{border-color:#e2ebf3;border-color:var(--primary-soft,#e2ebf3)}.quality-report{background:#f8f9fa;background:var(--surface-tertiary,#f8f9fa);border:1px solid #e1e4e8;border:1px solid var(--border-subtle,#e1e4e8);border-radius:8px;font-size:.9rem;margin:16px 0;padding:16px}.quality-report--success{background:#f0f9f4;background:var(--surface-success-subtle,#f0f9f4);border-color:#2d7d46;border-color:var(--border-success,#2d7d46)}.quality-report__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.quality-report__title{font-size:1rem;font-weight:600;margin:0}.quality-report__score{background:#fff;background:var(--surface-secondary,#fff);border:1px solid;border-radius:12px;font-size:.9rem;font-weight:600;padding:4px 12px}.quality-report__no-issues{color:#2d7d46;color:var(--success,#2d7d46);font-weight:500;padding:12px;text-align:center}.quality-report__summary{background:#fff8e6;background:var(--surface-warning-subtle,#fff8e6);border-left:3px solid #b17d00;border-left:3px solid var(--warning,#b17d00);border-radius:4px;font-size:.85rem;margin-bottom:12px;padding:8px 12px}.quality-report__section{background:#fff;background:var(--surface-primary,#fff);border:1px solid #e1e4e8;border:1px solid var(--border-subtle,#e1e4e8);border-radius:6px;margin:8px 0;overflow:hidden}.quality-report__section-header{align-items:center;background:#f8f9fa;background:var(--surface-secondary,#f8f9fa);cursor:pointer;display:flex;gap:8px;padding:12px 16px;transition:background-color .15s ease;-webkit-user-select:none;user-select:none}.quality-report__section-header:hover{background:#e9ecef;background:var(--surface-tertiary,#e9ecef)}.quality-report__section-header--high{border-left:3px solid #c93a3a;border-left:3px solid var(--error,#c93a3a)}.quality-report__section-header--medium{border-left:3px solid #b17d00;border-left:3px solid var(--warning,#b17d00)}.quality-report__section-icon{font-size:1.1rem}.quality-report__section-title{flex:1 1;font-size:.9rem;font-weight:500}.quality-report__section-badge{border-radius:10px;font-size:.7rem;font-weight:600;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.quality-report__section-badge--high{background:#fce8e8;background:var(--surface-error-subtle,#fce8e8);color:#c93a3a;color:var(--error,#c93a3a)}.quality-report__section-badge--medium{background:#fff8e6;background:var(--surface-warning-subtle,#fff8e6);color:#b17d00;color:var(--warning,#b17d00)}.quality-report__section-content{padding:12px 16px}.quality-report__list{display:flex;flex-direction:column;gap:12px}.quality-report__item{background:#f8f9fa;background:var(--surface-tertiary,#f8f9fa);border:1px solid #e1e4e8;border:1px solid var(--border-subtle,#e1e4e8);border-radius:6px;padding:12px}.quality-report__item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.quality-report__item-label{font-size:.85rem;font-weight:600}.quality-report__item-confidence{background:#fff;background:var(--surface-secondary,#fff);border-radius:8px;color:#6c757d;color:var(--text-secondary,#6c757d);font-size:.75rem;padding:2px 6px}.quality-report__item-details{display:flex;flex-direction:column;font-size:.8rem;gap:6px}.quality-report__item-row{line-height:1.4}.quality-report__item-row strong{color:#212529;color:var(--text-primary,#212529);margin-right:4px}.quality-report__item-question{background:#fff;background:var(--surface-primary,#fff);border-radius:4px;color:#495057;color:var(--text-secondary,#495057);font-style:italic;line-height:1.4;margin-top:6px;padding:8px}.quality-report__more{color:#6c757d;color:var(--text-tertiary,#6c757d);font-size:.8rem;font-style:italic;padding:8px;text-align:center}.quality-report__action-btn{margin-top:12px}.quality-report__recommendations{border-top:1px solid #e1e4e8;border-top:1px solid var(--border-subtle,#e1e4e8);margin-top:16px;padding-top:16px}.quality-report__recommendations-title{font-size:.9rem;font-weight:600;margin:0 0 12px}.quality-report__recommendation{border-left:3px solid;border-radius:6px;margin:8px 0;padding:12px}.quality-report__recommendation--high{background:#fce8e8;background:var(--surface-error-subtle,#fce8e8);border-color:#c93a3a;border-color:var(--error,#c93a3a)}.quality-report__recommendation--medium{background:#fff8e6;background:var(--surface-warning-subtle,#fff8e6);border-color:#b17d00;border-color:var(--warning,#b17d00)}.quality-report__recommendation--low{background:#e7f5ff;background:var(--surface-info-subtle,#e7f5ff);border-color:#1971c2;border-color:var(--info,#1971c2)}.quality-report__recommendation-severity{font-size:.7rem;font-weight:700;margin-bottom:4px;opacity:.7}.quality-report__recommendation-message{font-size:.85rem;line-height:1.4;margin-bottom:4px}.quality-report__recommendation-action{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:.75rem;font-style:italic;text-transform:capitalize}.quality-report__ai-section{border-top:1px solid #e1e4e8;border-top:1px solid var(--border-subtle,#e1e4e8);margin-top:16px;padding-top:16px}.quality-report__ai-title{font-size:.9rem;font-weight:600;margin:0 0 8px}.quality-report__ai-summary{background:#f8f9fa;background:var(--surface-tertiary,#f8f9fa);border-radius:4px;display:flex;flex-direction:column;font-size:.85rem;gap:4px;padding:8px 12px}@media (max-width:768px){.quality-report{margin:12px 0;padding:12px}.quality-report__section-header{font-size:.85rem;padding:10px 12px}.quality-report__item{padding:10px}}.sgsr{display:flex;flex-direction:column;gap:12px;height:100%;padding:4px}.sgsr-toolbar{background:#fff;background:var(--panel,#fff);border:1px solid #d8dde2;border:1px solid var(--border,#d8dde2);border-radius:10px;padding:12px;position:-webkit-sticky;position:sticky;top:0;z-index:2}.sgsr-toolbar,.sgsr-toolbar-left{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.sgsr-toolbar-right{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.sgsr-label{color:#6b7a89;color:var(--muted,#6b7a89);font-size:var(--font-size-dash-xs);font-weight:500;white-space:nowrap}.sgsr-divider{background:#d8dde2;background:var(--border,#d8dde2);height:20px;margin:0 4px;width:1px}.sgsr-counts{align-items:center;display:flex;gap:8px}.sgsr-badge{font-size:var(--font-size-dash-xs)}.sgsr-formatbar{align-items:center;background:#fff;background:var(--panel,#fff);border:1px solid #d8dde2;border:1px solid var(--border,#d8dde2);border-radius:10px;display:flex;gap:8px;padding:10px 12px}.sgsr-formatbar .btn{font-size:var(--font-size-dash-xs);padding:6px 10px}.sgsr-list{background:#fff;background:var(--panel,#fff);border:1px solid #d8dde2;border:1px solid var(--border,#d8dde2);border-radius:10px;flex:1 1 auto;min-height:180px;overflow:auto;padding:10px}.sgsr-empty{color:#6b7a89;color:var(--muted,#6b7a89);font-size:var(--font-size-dash-xs);padding:20px;text-align:center}.sgsr-set{background:#fff;background:var(--panel,#fff);border:1px solid #d8dde2;border:1px solid var(--border,#d8dde2);border-radius:10px;margin:8px 0;padding:12px}.sgsr-set-header{align-items:center;display:flex;gap:10px;min-height:36px}.sgsr-toggle{flex-shrink:0;width:24px}.sgsr-cards{opacity:.8;white-space:nowrap}.sgsr-set-body{display:flex;flex-direction:column;gap:10px;margin-top:12px;padding-left:34px}.sgsr-card-row{grid-gap:10px;align-items:start;display:grid;gap:10px;grid-template-columns:1fr 1fr auto}.sgsr-card-actions{align-items:center;display:flex;flex-shrink:0;gap:6px}.sgsr-note{color:#6b7a89;color:var(--muted,#6b7a89);font-size:var(--font-size-dash-xs);padding:4px 8px}.sgsr .textarea,.sgsr textarea{font-size:var(--font-size-dash-small);line-height:1.4;min-height:32px;padding:8px;resize:none}:root{--footer-bg:var(--panel);--footer-text:var(--muted);--footer-pad-top:9px}.site-footer{background:var(--panel);background:var(--footer-bg);border-top:1px solid var(--border);margin-top:0;overflow-x:hidden}.site-footer__inner{align-items:center;box-sizing:border-box;color:var(--muted);color:var(--footer-text);flex-direction:row;font-size:clamp(6px,1.2vw,14px);line-height:1.2;margin:0 auto;max-width:1200px;overflow:hidden;padding:9px 12px 12px;padding:var(--footer-pad-top) 12px 12px;text-align:center;white-space:nowrap;width:100%}.site-footer__inner,.site-footer__links{display:flex;flex-wrap:nowrap;gap:clamp(4px,.9vw,12px);justify-content:center}.site-footer__links{flex:0 1 auto;min-width:0}.site-footer__links a{color:var(--muted);color:var(--footer-text);text-decoration:none}.site-footer__links a:hover{color:var(--text);text-decoration:underline}.site-footer__copy{flex:1 1 auto;min-width:0;opacity:.85;overflow:hidden;text-overflow:ellipsis}@media (max-width:720px){.site-footer__inner{justify-content:center;text-align:center}}.hydration-loader{--hl-max-width:420px;--hl-pad:1.6rem;--hl-radius:var(--radius-xxl,1.4rem);background:var(--panel);border:1px solid var(--border);border-radius:var(--hl-radius);box-shadow:0 2px 10px -4px #00000026,0 0 0 1px #0000000a;box-shadow:0 2px 10px -4px rgba(var(--color-black-rgb,0,0,0),.15),0 0 0 1px rgba(var(--color-black-rgb,0,0,0),.04);display:flex;flex-direction:column;font-family:system-ui;font-family:var(--font-sans,system-ui);gap:var(--space-2);max-width:var(--hl-max-width);overflow:hidden;padding:var(--hl-pad);position:relative;width:100%}.hydration-loader:before{background:radial-gradient(circle at 78% 18%,#ffffff14,#0000 65%);background:radial-gradient(circle at 78% 18%,rgba(var(--color-white-rgb,255,255,255),.08),#0000 65%);content:"";inset:0;mix-blend-mode:overlay;opacity:.5;pointer-events:none;position:absolute}.hydration-head{display:flex;flex-direction:column;gap:var(--space-0-5)}.hydration-title{color:var(--text);font-size:var(--font-size-dash-medium);font-weight:600;letter-spacing:.04em;margin:0}.hydration-sub{align-items:center;color:var(--muted);display:flex;font-size:var(--font-size-dash-xs);gap:.6ch;letter-spacing:.04em;margin:0}.hydration-phase-chip{background:var(--primary-soft);border-radius:999px;color:var(--text);font-size:var(--font-size-dash-xs);font-weight:600;letter-spacing:.06em;padding:.2rem .8rem .3rem}.hydration-progress{background:var(--panel-2);border:1px solid var(--border);border-radius:99px;box-shadow:inset 0 0 0 1px #0000000f;box-shadow:0 0 0 1px rgba(var(--color-black-rgb,0,0,0),.06) inset;height:10px;overflow:hidden;position:relative}.hydration-progress-bar{animation:hl-stripe 2.2s linear infinite;background:linear-gradient(90deg,var(--primary) 0,var(--primary-dark) 100%);background-size:200% 100%;box-shadow:0 0 0 1px #ffffff1f,0 4px 10px -4px #00000080;box-shadow:0 0 0 1px rgba(var(--color-white-rgb,255,255,255),.12),0 4px 10px -4px rgba(var(--color-black-rgb,0,0,0),.5);inset:0;position:absolute;transition:width .5s cubic-bezier(.65,.05,.36,1);width:0;width:var(--pct,0)}@keyframes hl-stripe{0%{background-position:0 0}to{background-position:-200% 0}}.hydration-skeleton{grid-gap:var(--space-1);display:grid;gap:var(--space-1);margin-top:var(--space-1)}.hydration-skel-line{animation:hl-skel 1.6s ease-in-out infinite;background:linear-gradient(90deg,var(--panel-2),var(--panel),var(--panel-2));background-size:200% 100%;border-radius:4px;height:8px}.hydration-skel-line:nth-child(2){animation-delay:.25s;width:72%}.hydration-skel-line:nth-child(3){animation-delay:.5s;width:54%}@keyframes hl-skel{0%,to{background-position:0 0}50%{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.hydration-progress-bar{animation:none;background-size:100% 100%}.hydration-skel-line{animation:none}}.hydration-meta{align-items:center;color:var(--muted);display:flex;font-size:var(--font-size-dash-xs);justify-content:space-between;margin-top:var(--space-1)}.hydration-phase-label{font-weight:600;letter-spacing:.05em;text-transform:uppercase}.hydration-percent{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hydration-loader.compact{--hl-pad:1.2rem}blockquote,body,dd,dl,figure,h1,h2,h3,h4,h5,h6,p{margin:0}body{-moz-osx-font-smoothing:grayscale;min-height:100vh;text-rendering:optimizeLegibility}canvas,img,picture,video{height:auto}button,input,select,textarea{color:inherit}h1,h2,h3,h4,h5,h6,p{text-wrap:balance}ol[role=list],ul[role=list]{padding-left:0}a{-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}:focus-visible{outline:2px solid currentColor;outline-offset:2px}:root{--color-surface-2:#f3f6f9;--color-text:#2c3e50;--color-muted:#6b7a89;--color-border:#d8dde2;--color-accent:#2c3e50;--color-warning:#d4a93d;--shadow-2:0 4px 14px -2px #2c3e502e;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--page-pad:24px;--page-pad-mobile:14px;--sidebar-width:clamp(220px,30vw,280px);--navbar-height:52px;--electron-titlebar-height:40px}#root,body,html{background:#fff;background:var(--color-bg);color:#2c3e50;color:var(--color-text);height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5}@media (max-width:560px){:root{--navbar-height:50px}}a{color:#2c3e50;color:var(--color-text)}a:hover{filter:brightness(1.1)}.u-container{margin:0 auto;max-width:1200px;padding:0 24px;padding:0 var(--page-pad)}.u-sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.p-1{padding:4px}.p-2{padding:8px}.p-3{padding:12px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.stack-sm{gap:8px}.stack-md,.stack-sm{display:flex;flex-direction:column}.stack-md{gap:14px}.stack-lg{display:flex;flex-direction:column;gap:22px}.cluster-xs{gap:6px}.cluster-sm,.cluster-xs{align-items:center;display:flex;flex-wrap:wrap}.cluster-sm{gap:10px}.cluster-md{align-items:center;display:flex;flex-wrap:wrap;gap:14px}.container{max-width:var(--container-max)}.container,.container-narrow{margin-inline:auto;padding-inline:var(--page-pad);width:100%}.container-narrow{max-width:900px}.no-overflow{min-width:0;overflow:hidden}.no-x-overflow{overflow-x:hidden}.w-full{width:100%}.h-full{height:100%}.text-muted{color:var(--color-muted)}.text-danger{color:var(--color-danger)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-1)}:root{--color-bg:#fff;--color-surface:#fff;--color-surface-2:#f5f8fa;--color-text:#24323e;--color-muted:#687782;--color-border:#dfe4e8;--color-accent:#4585da;--color-accent-hover:#315bcc;--color-danger:#d94a4a;--color-warning:#ffb347;--color-success:#2e8540;--color-success-alt:#19b27d;--color-success-accent:#2dd6a0;--color-accent-soft:#e3f2ff;--color-accent-dark:#134472;--color-accent-alt:#2f6df6;--color-text-inverse:#fff;--color-surface-dark:#0f1e23;--color-surface-dark-alt:#13262c;--color-border-alt:#1f3a41;--color-text-strong:#2c3e50;--color-muted-strong:#5a6772;--color-accent-mid:#1d4fbf;--color-accent-tint:#b9cff9;--color-danger-accent:#d93025;--color-surface-1-5:#f5f7f9;--color-black:#000;--color-warning-alt:#d2a93b;--color-danger-mid:#e85b5b;--color-text-deeper:#0c2233;--color-accent-bright:#348fdc;--color-accent-gradient-start:#3d7dff;--color-accent-gradient-end:#1f56d8;--color-accent-gradient-hover:#4a86ff;--color-accent-gradient-active:#1d56c9;--color-accent-gradient-focus-ring:#99c0ff;--color-accent-purple:#6b3faf;--color-accent-purple-soft:#e0cff7;--color-warning-soft:#ffe5d3;--color-warning-soft-border:#ffd4b6;--color-warning-strong:#d05c2b;--color-badge-type-bg:#e2e8f0;--color-badge-type-text:#2a3d4f;--color-badge-set-bg:var(--color-accent-soft);--color-badge-set-text:var(--color-accent-dark);--color-badge-note-bg:#fff4cf;--color-badge-note-text:#6a5200;--color-badge-pdf-bg:#ffe5e5;--color-badge-pdf-text:#7a1d1d;--color-ring-bg:#e5e9ef;--color-ring-bg-alt:#e9edf2;--color-ring-empty-bg:#f0f3f6;--color-filter-dot:var(--primary);--color-filter-dot-border-inner:var(--color-accent-chip-ring-inner);--color-filter-dot-border-outer:var(--color-accent-chip-ring);--color-accent-menu-text:#1d314a;--color-accent-menu-hover:#123f8f;--color-accent-menu-divider:#e0e8f3;--color-accent-chip-bg:#f0f4f9;--color-accent-chip-bg-hover:#e6edf5;--color-accent-chip-border:#d5dde5;--color-accent-chip-border-hover:#c9d5e0;--color-accent-chip-text:#243744;--color-accent-chip-ring:#dfe8fb;--color-accent-chip-ring-inner:#fff;--color-warning-accent:#d97706;--color-accent-info:#2563eb;--color-success-tint:#eafaf2;--color-success-border:#c6efdf;--color-neutral-tint:#eef2f5;--color-danger-soft:#ff7a7a;--color-accent-deep:#3f5d74;--color-accent-focus:#7aa2ff;--color-white-rgb:255,255,255;--color-black-rgb:0,0,0;--color-accent-focus-rgb:122,162,255;--space-0:0;--space-0-5:0.2rem;--space-0-7:0.3rem;--space-1:0.4rem;--space-1-2:0.5rem;--space-2:0.8rem;--space-3:1.2rem;--space-4:1.6rem;--space-5:2.4rem;--space-6:3.2rem;--space-7:4.0rem;--space-8:4.8rem;--space-1-5:0.6rem;--space-2-5:1.0rem;--space-3-5:1.4rem;--space-4-5:1.8rem;--space-5-0:2.0rem;--space-5-2:2.2rem;--space-6-0:2.6rem;--space-5-5:2.8rem;--space-6-5:3.4rem;--space-7-0:3.0rem;--space-7-5:3.8rem;--space-8-2:4.2rem;--space-8-4:4.4rem;--space-8-5:4.6rem;--space-9-4:5.4rem;--space-10-0:6.0rem;--space-9:5.6rem;--space-10:6.4rem;--space-11:7.0rem;--space-12:7.2rem;--space-13:8.0rem;--font-size-dash-large:1.85rem;--font-size-dash-medium:1.65rem;--font-size-dash-small:1.15rem;--font-size-dash-xs:1.1rem;--font-size-xs:var(--font-size-dash-xs);--font-size-sm:var(--font-size-dash-small);--font-size-base:var(--font-size-dash-medium);--font-size-md:var(--font-size-dash-medium);--font-size-lg:var(--font-size-dash-medium);--font-size-xl:var(--font-size-dash-medium);--font-size-2xl:var(--font-size-dash-medium);--font-size-3xl:var(--font-size-dash-medium);--font-size-2xs:var(--font-size-dash-xs);--font-size-2xs-plus:var(--font-size-dash-xs);--font-size-xxs:var(--font-size-dash-xs);--font-size-xxs-plus:var(--font-size-dash-xs);--font-size-xs-alt:var(--font-size-dash-small);--font-size-xs-plus:var(--font-size-dash-small);--font-size-sm-alt:var(--font-size-dash-small);--font-size-sm-plus:var(--font-size-dash-small);--font-size-base-alt:var(--font-size-dash-medium);--font-size-base-plus:var(--font-size-dash-medium);--font-size-mini:var(--font-size-dash-medium);--font-size-kpi:var(--font-size-dash-large);--font-size-label-tight:var(--font-size-dash-xs);--font-size-title-sm:var(--font-size-dash-medium);--font-size-kpi-tight:var(--font-size-dash-large);--font-size-base-narrow:var(--font-size-dash-medium);--font-size-base-tight:var(--font-size-dash-small);--font-size-xs-tight:var(--font-size-dash-small);--font-size-xs-compact:var(--font-size-dash-small);--font-sans:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--radius-xs:0.4rem;--radius-sm:0.3rem;--radius-md:0.6rem;--radius-lg:0.8rem;--radius-lg-alt:1.0rem;--radius-xl:1.2rem;--radius-md-lg:0.9rem;--radius-xxl:1.4rem;--radius-3xl:1.6rem;--radius-4xl:1.8rem;--radius-card-classic:2.8rem;--radius-pill:99rem;--shadow-1:0 1px 2px #00000014;--shadow-2:0 4px 12px -4px #0000002e;--shadow-focus-ring:0 0 0 0.3rem #3a6df059;--shadow-card:0 0.8rem 2.8rem -1rem #0000002e,0 0 0 0.1rem var(--color-border);--shadow-card-flipped:0 1rem 3.4rem -1.2rem #00000040,0 0 0 0.1rem var(--color-border);--shadow-sm:0 1px 3px rgba(var(--color-black-rgb),0.04);--shadow-md:0 2px 6px rgba(var(--color-black-rgb),0.06);--shadow-btn:0 2px 4px rgba(var(--color-black-rgb),0.08);--shadow-focus-accent:0 0 0 0.2rem rgba(var(--color-accent-focus-rgb),0.25);--shadow-perf-left:0 0.2rem 0.6rem rgba(var(--color-black-rgb),0.04),0 0.6rem 1.8rem -1rem rgba(var(--color-black-rgb),0.15);--shadow-perf-left-collapsed:0 0.2rem 0.8rem -0.4rem rgba(var(--color-black-rgb),0.15);--shadow-perf-card:0 0.2rem 0.6rem rgba(var(--color-black-rgb),0.04),0 0.6rem 1.8rem -1rem rgba(var(--color-black-rgb),0.15);--shadow-perf-card-hover:0 0.8rem 2.2rem -0.8rem rgba(var(--color-black-rgb),0.25),0 0.4rem 1rem -0.4rem rgba(var(--color-black-rgb),0.15);--shadow-perf-kpi:0 1px 3px rgba(var(--color-black-rgb),0.05),0 3px 10px -5px rgba(var(--color-black-rgb),0.25);--shadow-perf-detail:0 4px 14px rgba(var(--color-black-rgb),0.08);--shadow-card-inset:0 0.2rem 0.4rem rgba(var(--color-black-rgb),0.04);--shadow-card-hover-strong:0 1rem 2.8rem -1rem rgba(var(--color-black-rgb),0.25),0 0.6rem 1.6rem -0.6rem rgba(var(--color-black-rgb),0.08);--shadow-folder-select:0 0.6rem 1.8rem -0.6rem #174aaa8c,0 0.3rem 1rem -0.3rem rgba(var(--color-black-rgb),0.28);--shadow-folder-select-hover:0 1rem 2.6rem -1rem #174aaa99,0 0.4rem 1.4rem -0.4rem rgba(var(--color-black-rgb),0.28);--shadow-folder-select-active:0 0.6rem 1.8rem -0.8rem #174aaa8c,0 0.3rem 1rem -0.4rem rgba(var(--color-black-rgb),0.30);--shadow-action-btn:0 1px 2px rgba(var(--color-black-rgb),0.05);--shadow-action-btn-hover:0 0.4rem 1rem -0.4rem rgba(var(--color-black-rgb),0.12);--shadow-actions-bar:0 0.4rem 1.8rem -0.8rem rgba(var(--color-black-rgb),0.18),0 0.2rem 0.6rem -0.2rem rgba(var(--color-black-rgb),0.08);--shadow-actions-bar-focus:0 0.6rem 2.6rem -1rem rgba(var(--color-black-rgb),0.28),0 0.4rem 1.4rem -0.4rem rgba(var(--color-black-rgb),0.12);--z-base:0;--z-sticky:100;--z-dropdown:1000;--z-modal:2000;--z-toast:4000;--sidebar-width:28rem;--page-pad:var(--space-5);--page-pad-mobile:var(--space-3);--layout-session-control-max:98rem;--layout-session-summary-max:118rem;--layout-flashcard-classic-max:100rem;--layout-settings-max:110rem;--layout-perf-charts-max:104rem;--layout-desktop-max:120rem;--layout-desktop-wide:140rem;--layout-sidebar-secondary:23rem;--layout-perf-card-height:40rem;--layout-perf-card-height-md:36rem;--layout-perf-card-height-sm:32rem;--layout-perf-card-height-xs:30rem;--layout-perf-card-height-wide:34rem;--layout-perf-table-scroll-max:42rem;--layout-perf-table-scroll-max-sm:34rem;--layout-perf-dist-chart-size-lg:28rem;--layout-perf-dist-chart-size-md:22rem;--layout-perf-dist-chart-size-sm:18rem;--layout-dashboard-max:138rem;--layout-dashboard-card-min:18rem;--layout-dashboard-card-min-tall:19.5rem;--layout-dashboard-skeleton-row:6.8rem;--layout-pdf-slider-width:10rem;--layout-pdf-slider-width-mobile:7rem;--layout-pdf-slider-width-popup:8rem;--layout-pdf-filename-max:28rem;--layout-notes-list-width:17rem;--layout-notes-list-width-float:14rem;--layout-pdf-rail-width-open:18rem;--layout-pdf-rail-width-open-sm:16rem;--layout-pdf-rail-width-collapsed:4.6rem;--layout-pdf-rail-slider-height:13rem;--control-pad-y:var(--space-1-5);--control-pad-x:var(--space-3);--control-height:3.2rem;--control-radius:var(--radius-md);--space-9-3:5.2rem;--session-grade-buttons-min:4.6rem;--session-grade-buttons-min-lg:5.2rem;--session-control-center-min:7.2rem;--session-control-center-min-expanded:9.4rem;--breakpoint-sm:48rem;--breakpoint-md:76.8rem;--breakpoint-lg:102.4rem;--breakpoint-xl:128rem;--color-primary:#2c3e50;--color-primary-dark:#243444;--color-primary-soft:#e2ebf3;--primary:var(--color-primary);--primary-dark:var(--color-primary-dark);--primary-soft:var(--color-primary-soft);--text:var(--color-text);--muted:var(--color-muted);--border:var(--color-border);--danger:var(--color-danger);--warning:var(--color-warning);--panel:var(--color-surface);--panel-2:var(--color-surface-2);--panel-3:var(--color-surface-dark);--border-alt:var(--color-border-alt)}*,:after,:before{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;font-size:62.5%;line-height:1.4}body{-webkit-font-smoothing:antialiased;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans)}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}ol[role=list],ul[role=list]{list-style:none}button{background:none;border:0;cursor:pointer}a{color:inherit;text-decoration:none}:focus-visible{outline:.2rem solid var(--color-accent);outline-offset:.2rem}body{font-size:var(--font-size-base)}h1,h2,h3,h4,h5,h6{font-weight:600;letter-spacing:.3px;line-height:1.15}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}h5{font-size:var(--font-size-md)}h6{font-size:var(--font-size-sm)}p{margin-bottom:var(--space-3)}small{font-size:var(--font-size-xs)}code,pre{font-family:var(--font-mono);font-size:var(--font-size-sm)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html{overflow-y:auto}