:root{--color-bg:#fffcf6;--color-surface:#fffcf6;--color-surface-2:#faf5ea;--color-ink:#10281c;--color-accent:#e2612a;--color-on-accent:#fffcf6;--color-ink-muted:color-mix(in srgb, var(--color-ink) 58%, var(--color-bg));--color-line:color-mix(in srgb, var(--color-ink) 12%, transparent);--color-line-strong:color-mix(in srgb, var(--color-ink) 22%, transparent);--color-hover:color-mix(in srgb, var(--color-ink) 6%, var(--color-surface));--color-accent-wash:color-mix(in srgb, var(--color-accent) 12%, transparent);--color-accent-hover:color-mix(in srgb, var(--color-accent) 85%, var(--color-ink));--color-danger:#c4372f;--color-success:#1d7a49;--font-sans:"Space Grotesk", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--text-meta:10px;--text-xs:11px;--text-sm:12px;--text-md:13px;--text-lg:15px;--text-xl:18px;--text-2xl:24px;--text-3xl:32px;--leading-tight:1.2;--leading-body:1.5;--track-meta:.12em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-pill:999px;--radius-circle:50%;--icon-size:15px;--icon-size-sm:14px;--icon-stroke:1.5;--shadow-sm:0 1px 2px color-mix(in srgb, var(--color-ink) 8%, transparent);--shadow-md:0 4px 16px color-mix(in srgb, var(--color-ink) 10%, transparent);--shadow-lg:0 12px 40px color-mix(in srgb, var(--color-ink) 18%, transparent);--sidebar-w:280px;--sidebar-rail-w:64px;--panel-w:320px;--bp-narrow:900px;--chrome-reserve-right:96px}html[data-theme=dark]{--color-bg:#0b1a13;--color-surface:#10281c;--color-surface-2:#163326;--color-ink:#fffcf6;--color-on-accent:#fffcf6;--color-ink-muted:color-mix(in srgb, var(--color-ink) 62%, var(--color-bg));--color-line:color-mix(in srgb, var(--color-ink) 14%, transparent);--color-hover:color-mix(in srgb, var(--color-ink) 8%, var(--color-surface))}:root{--bg-app:var(--color-bg);--bg-panel:var(--color-surface);--bg-sidebar:var(--color-surface);--bg-secondary:var(--color-surface-2);--text-main:var(--color-ink);--text-muted:var(--color-ink-muted);--border-light:var(--color-line);--border-color:var(--color-line);--primary-light:var(--color-accent-wash);--primary:var(--color-accent);--primary-hover:var(--color-accent-hover);--accent:var(--color-accent);--accent-color:var(--color-accent)}.u-meta{font-family:var(--font-mono);font-size:var(--text-meta);font-weight:700;line-height:var(--leading-tight);letter-spacing:var(--track-meta);text-transform:uppercase;color:var(--color-ink-muted)}.u-chip{align-items:center;gap:var(--space-1);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:.06em;text-transform:uppercase;padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);background:var(--color-hover);color:var(--color-ink-muted);font-weight:700;display:inline-flex}.u-chip[data-prefix]:before{content:attr(data-prefix);opacity:.55;font-weight:400}.u-chip.accent{background:var(--color-accent-wash);color:var(--color-accent)}.u-icon,svg[data-icon]{width:var(--icon-size);height:var(--icon-size);stroke:currentColor;stroke-width:var(--icon-stroke);fill:none;flex:none}@media (width<=900px){.sidebar{z-index:1500;width:min(var(--sidebar-w), 86vw);box-shadow:var(--shadow-lg);position:fixed;top:0;bottom:0;left:0}.sidebar.collapsed{top:var(--space-3);bottom:auto;left:var(--space-3);width:auto;height:auto;padding:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface)}.sidebar.collapsed .tree-list,.sidebar.collapsed .sidebar-bottom,.sidebar.collapsed .rail-item{display:none}.sidebar.collapsed .logo-area{gap:var(--space-1);flex-direction:row;margin:0}.sidebar:not(.collapsed):before{content:"";z-index:-1;background:color-mix(in srgb, var(--color-ink) 45%, transparent);position:fixed;inset:0}:root{--side-reserve-left:0px!important;--side-reserve-right:0px!important}}:root{--status-open-bg:#f1f5f9;--status-open-text:#64748b;--status-progress-bg:#e0f2fe;--status-progress-text:#0ea5e9;--status-ideal-bg:#fef9c3;--status-ideal-text:#ca8a04;--status-done-bg:#dcfce7;--status-done-text:#16a34a;--star-color:#facc15}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--text-md);background-color:var(--color-bg);color:var(--color-ink);overflow:hidden}button{color:inherit}.app-container{width:100vw;height:100vh;display:flex}.sidebar{background-color:var(--bg-sidebar);border-right:1px solid var(--border-light);z-index:10;flex-direction:column;width:280px;padding:24px 16px;transition:width .2s;display:flex;box-shadow:2px 0 10px #00000005}.sidebar.collapsed{align-items:center;width:64px;padding:16px 8px}.sidebar.collapsed .logo-area{flex-direction:column;gap:6px;margin-bottom:16px;padding-left:0}.sidebar.collapsed .tree-list,.sidebar.collapsed .sidebar-bottom{align-items:center;gap:6px;width:100%}.sidebar-collapse-btn{margin-left:auto}.rail-item{width:44px;height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex}.rail-item:hover{background-color:var(--bg-app);color:var(--primary)}.rail-item.active{background-color:var(--primary);color:#fff;box-shadow:0 4px 12px #5c42e54d}.rail-item.drag-over{border:1px dashed var(--primary);background-color:#5c42e51a}.logo-area{align-items:center;gap:12px;margin-bottom:32px;padding-left:8px;font-size:1.2rem;font-weight:700;display:flex}.logo-icon{background:var(--primary);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.section-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;padding-left:8px;font-size:.75rem;font-weight:600}.tree-list{flex-direction:column;flex-grow:1;gap:4px;display:flex;overflow-y:auto}.folder-item{cursor:pointer;color:var(--text-muted);border:1px solid #0000;border-radius:12px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.folder-item:hover{background-color:var(--bg-app)}.folder-item.active{background-color:var(--primary);color:#fff;box-shadow:0 4px 12px #5c42e54d}.folder-item.active .folder-count{color:#fff;background-color:#fff3}.folder-item.drag-over{border:1px dashed var(--primary);background-color:#5c42e51a}.folder-content-left{white-space:nowrap;text-overflow:ellipsis;flex:1;align-items:center;gap:10px;display:flex;overflow:hidden}.folder-content-left span{text-overflow:ellipsis;overflow:hidden}.folder-actions{opacity:0;gap:4px;transition:opacity .2s;display:flex}.folder-item:hover .folder-actions{opacity:1}.icon-btn-small{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px}.icon-btn-small:hover{background:var(--border-light);color:var(--text-main)}.folder-item.active .icon-btn-small{color:#ffffffb3}.folder-item.active .icon-btn-small:hover{color:#fff;background:#fff3}.folder-count{background-color:var(--border-light);border-radius:12px;margin-left:8px;padding:2px 8px;font-size:.75rem;font-weight:600}.add-folder-btn{border:1px dashed var(--border-light);width:100%;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:12px;padding:10px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.add-folder-btn:hover{border-color:var(--primary);color:var(--primary);background:#5c42e50d}.sidebar-bottom{border-top:1px solid var(--border-light);flex-direction:column;gap:4px;margin-top:auto;padding-top:16px;display:flex}.view-tab-vert{color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:12px;padding:10px 16px;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.view-tab-vert:hover{background:var(--bg-app);color:var(--primary)}.view-tab-vert.active{background:var(--primary-light);color:var(--primary);font-weight:600}.main-area{flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.header{height:80px;padding:0 var(--chrome-reserve-right) 0 32px;background-color:color-mix(in srgb, var(--primary) 6%, var(--bg-panel));border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;display:flex}.header-title-area{align-items:center;gap:16px;display:flex}.header-title{font-size:1.5rem;font-weight:700}.progress-badge{background-color:var(--status-done-bg);color:var(--status-done-text);border-radius:16px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:600;display:flex}.header-subtitle{color:var(--text-muted);align-items:center;gap:8px;margin-top:4px;font-size:.8rem;display:flex}.search-box{width:250px;position:relative}.search-box input{border:1px solid var(--border-light);-webkit-backdrop-filter:blur(10px);background-color:#ffffff80;border-radius:20px;outline:none;width:100%;padding:10px 16px 10px 40px;transition:all .2s}.search-box input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #5c42e51a}.search-box svg{color:var(--text-muted);width:16px;height:16px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.btn-primary{background-color:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:20px;align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 4px 10px #5c42e533}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px)}.filters-container{border-bottom:1px solid var(--border-light);background:var(--bg-panel);flex-direction:column;flex-shrink:0;padding:8px 32px;display:flex}.filters-toggle{border:1px solid var(--border-light);background:var(--bg-panel);color:var(--text-muted);cursor:pointer;border-radius:8px;align-self:flex-start;align-items:center;gap:6px;padding:6px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.filters-toggle:hover{background:var(--bg-app)}.filters-toggle-badge{background:var(--primary);border-radius:50%;width:6px;height:6px}.filters-body{gap:32px;padding-top:12px;display:flex}.categories-section{flex-direction:column;flex:1;gap:8px;display:flex;overflow:hidden}.sorts-section{flex-direction:column;flex-shrink:0;gap:8px;display:flex}.section-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.65rem;font-weight:700}.categories-scroll{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.categories-scroll::-webkit-scrollbar{height:4px}.categories-scroll::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:4px}.sorts-row{align-items:center;gap:8px;display:flex}.sort-chip{border:1px solid var(--border-light);background:var(--bg-panel);color:var(--text-muted);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:500;display:flex}.sort-chip.active{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.sort-chip:hover{background:var(--bg-app)}.colorize-btn{border:1px solid var(--primary);background:var(--bg-panel);color:var(--primary);cursor:pointer;border-radius:8px;align-items:center;gap:6px;margin-left:8px;padding:6px 12px;font-size:.75rem;font-weight:600;display:flex}.colorize-btn.active{background:var(--primary-light)}.content-wrapper{flex:1;gap:24px;padding:24px 32px;display:flex;overflow-y:auto}.content-panel{background-color:var(--bg-panel);border-radius:16px;flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden;box-shadow:0 4px 20px #00000008}.view-tabs{border-bottom:1px solid var(--border-light);padding:0 16px;display:flex}.view-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:16px 20px;font-weight:600;transition:color .2s;position:relative}.view-tab.active{color:var(--primary)}.view-tab.active:after{content:"";background-color:var(--primary);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:0;left:0;right:0}.task-table{border-collapse:separate;border-spacing:0;width:100%}.task-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-light);background:var(--bg-panel);z-index:10;padding:16px 24px;font-size:.75rem;font-weight:600;position:sticky;top:0}.task-row{border-bottom:1px solid var(--border-light);transition:background-color .2s}.task-row:hover{background-color:#f8fafc}.task-cell{border-bottom:1px solid var(--border-light);vertical-align:middle;padding:16px 24px;font-size:.85rem}.task-id{color:var(--text-muted);font-size:.85rem;font-weight:500}.urgency-dot{border-radius:50%;width:10px;height:10px;margin-right:8px;display:inline-block}.task-feature{flex-direction:column;gap:4px;display:flex}.task-title{color:var(--text-main);align-items:center;gap:8px;font-weight:600;display:flex}.category-badge{background:var(--bg-app);color:var(--text-muted);text-transform:uppercase;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-size:.65rem;font-weight:600;display:inline-flex}.category-dot{border-radius:50%;width:8px;height:8px}.task-desc{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:450px;font-size:.85rem;overflow:hidden}.task-importance{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.stars{color:var(--star-color);font-size:1rem;display:flex}.stars .inactive{color:#cbd5e1}.importance-text{color:var(--text-muted);font-size:.7rem;font-weight:600}.status-badge,.status-select{text-transform:uppercase;border:1px solid #0000000d;border-radius:12px;padding:4px 12px;font-size:.75rem;font-weight:600;display:inline-block}.status-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;outline:none;padding-right:28px}.status-open{background:var(--status-open-bg);color:var(--status-open-text)}.status-progress{background:var(--status-progress-bg);color:var(--status-progress-text)}.status-ideal{background:var(--status-ideal-bg);color:var(--status-ideal-text)}.status-done{background:var(--status-done-bg);color:var(--status-done-text)}.task-deadline{color:var(--text-main);font-size:.85rem}.inline-date{color:var(--text-main);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;outline:none;padding:2px 4px;font-family:inherit;font-size:.85rem}.inline-date:hover,.inline-date:focus{border-color:var(--border-light);background:var(--bg-panel)}.icon-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px;transition:all .2s}.icon-btn:hover{background:var(--bg-app);color:var(--primary)}.modal-overlay{-webkit-backdrop-filter:blur(var(--modal-blur,2px));backdrop-filter:blur(var(--modal-blur,2px));z-index:100;background:#0006;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-panel);border-radius:16px;flex-direction:column;width:100%;max-width:600px;animation:.3s ease-out slideUp;display:flex;box-shadow:0 10px 40px #0000001a}.modal-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:24px;display:flex}.modal-title{font-size:1.2rem;font-weight:700}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px}.modal-close:hover{background:var(--bg-app)}.modal-body{flex-direction:column;gap:20px;max-height:70vh;padding:24px;display:flex;overflow-y:auto}.home-create-modal{max-height:min(86vh,660px);transition:max-height .28s cubic-bezier(.4,0,.2,1);max-width:680px!important}.home-create-modal .modal-body{overflow:hidden auto}.home-type-grid.extras-grid{animation:.26s ease-out extrasReveal}@keyframes extrasReveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.home-create-modal .modal-body{flex:auto;min-height:0;max-height:none}.form-row{gap:16px;display:flex}.form-group{flex-direction:column;flex:1;gap:8px;display:flex}.form-label{color:var(--text-muted);text-transform:uppercase;font-size:.75rem;font-weight:700}.form-input,.form-select,.form-textarea{border:1px solid var(--border-light);border-radius:8px;outline:none;width:100%;padding:10px 12px;font-family:inherit;font-size:.9rem;transition:border-color .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary)}.form-textarea{resize:vertical;min-height:80px}.star-rating{cursor:pointer;color:var(--star-color);gap:4px;font-size:1.5rem;display:flex}.modal-footer{border-top:1px solid var(--border-light);justify-content:flex-end;gap:12px;padding:20px 24px;display:flex}.btn-secondary{background:var(--bg-panel);border:1px solid var(--border-light);color:var(--text-muted);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.btn-secondary:hover{background:var(--bg-app);color:var(--text-main);border-color:var(--text-muted)}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);color:#fff;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;z-index:20;background:#1f2937;border-radius:6px;padding:4px 8px;font-size:.7rem;font-weight:500;transition:opacity .15s;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}[data-tip]:hover:after,[data-tip]:focus-visible:after{opacity:1;visibility:visible}.color-palette-container{flex-direction:column;gap:12px;width:100%;display:flex}.color-palette-grid{flex-wrap:wrap;gap:8px;display:flex}.color-option{cursor:pointer;border:2px solid #0000;border-radius:50%;width:28px;height:28px;padding:0;transition:all .2s;box-shadow:0 2px 4px #0000001a}.color-option:hover{transform:scale(1.15);box-shadow:0 4px 8px #00000026}.color-option.active{outline:2px solid var(--primary);border-color:#fff;transform:scale(1.1)}.color-picker-wrapper{border:2px solid var(--border-light);cursor:pointer;border-radius:50%;width:28px;height:28px;transition:all .2s;position:relative;overflow:hidden}.color-picker-wrapper:hover{border-color:var(--primary);transform:scale(1.1)}.custom-color-input{cursor:pointer;background:0 0;border:none;width:200%;height:200%;padding:0;position:absolute;top:-50%;left:-50%}.color-picker-icon{color:var(--text-muted);pointer-events:none;background:var(--bg-panel);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.recommended-colors-section{border-top:1px solid var(--border-light);padding-top:8px}.color-palette-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.65rem;font-weight:700;display:block}.btn-save{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 24px;font-weight:600;transition:background .2s;display:flex}.btn-save:hover{background:var(--primary-hover)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes view-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes view-out{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.view-anim-in{animation:.28s cubic-bezier(.22,1,.36,1) view-in}.view-anim-out{animation:.28s cubic-bezier(.22,1,.36,1) view-out}@keyframes login-reveal-clear{0%{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:1}to{-webkit-backdrop-filter:blur();backdrop-filter:blur();opacity:0}}.login-reveal-overlay{z-index:4000;pointer-events:none;animation:.85s cubic-bezier(.16,1,.3,1) both login-reveal-clear;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.view-anim-in,.view-anim-out{animation:none}.login-reveal-overlay{display:none}}.kanban-board{align-items:flex-start;gap:20px;height:100%;padding:24px;display:flex;overflow-x:auto}.kanban-column{background:var(--bg-app);border-radius:12px;flex-direction:column;width:300px;min-width:300px;max-height:100%;display:flex}.kanban-header{border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;padding:16px;font-weight:600;display:flex}.kanban-count{background:#0000000d;border-radius:12px;padding:2px 8px;font-size:.75rem}.kanban-cards{flex-direction:column;flex:1;gap:12px;padding:12px;display:flex;overflow-y:auto}.kanban-card{background:var(--bg-panel);border:1px solid var(--border-light);cursor:grab;border-radius:8px;padding:16px;box-shadow:0 2px 4px #00000005}.kanban-card:active{cursor:grabbing}.kanban-card-title{margin-bottom:8px;font-size:.9rem;font-weight:600}.kanban-card-footer{justify-content:space-between;align-items:center;margin-top:12px;display:flex}.calendar-view{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.fc{background:var(--bg-panel);border:1px solid var(--border-light);border-radius:12px;width:100%;height:100%;padding:20px;font-family:inherit!important}.fc-button-primary{background-color:var(--primary)!important;border-color:var(--primary)!important}.fc-button-primary:hover{background-color:var(--primary-hover)!important;border-color:var(--primary-hover)!important}.deps-chips{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.dep-chip{background:var(--bg-app);border:1px solid var(--border-light);border-radius:16px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:600;display:flex}.dep-chip button{cursor:pointer;color:var(--text-muted);background:0 0;border:none;align-items:center;display:flex}.dep-chip button:hover{color:#ef4444}.deps-results{border:1px solid var(--border-light);border-radius:8px;flex-direction:column;max-height:150px;display:flex;overflow-y:auto}.dep-result-item{cursor:pointer;border-bottom:1px solid var(--border-light);align-items:center;gap:8px;padding:8px 12px;font-size:.8rem;display:flex}.dep-result-item:last-child{border-bottom:none}.dep-result-item:hover{background:var(--bg-app)}.task-row.selected{background-color:#5c42e514}.task-row.selected:hover{background-color:#5c42e51f}.context-menu{background:var(--bg-panel);border:1px solid var(--border-light);z-index:1000;border-radius:8px;min-width:180px;padding:8px 0;font-size:.85rem;position:fixed;box-shadow:0 4px 20px #00000026}.cm-title{color:var(--text-muted);text-transform:uppercase;margin-bottom:4px;padding:4px 16px;font-size:.7rem;font-weight:700}.cm-item{cursor:pointer;align-items:center;gap:8px;padding:8px 16px;font-weight:500;display:flex}.cm-item:hover{background:var(--bg-app);color:var(--primary)}.cm-separator{background:var(--border-light);height:1px;margin:4px 0}.color-rows-btn{background:var(--bg-panel);border:1px solid var(--border-light);cursor:pointer;color:var(--text-muted);border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;font-weight:600;display:flex}.color-rows-btn.active{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}.task-table.colored-rows .task-row[data-status=Offen]{background-color:#f1f5f999}.task-table.colored-rows .task-row[data-status=Am\ Laufen]{background-color:#e0f2fe80}.task-table.colored-rows .task-row[data-status=Ideal]{background-color:#fef9c380}.task-table.colored-rows .task-row[data-status=Fertig]{background-color:#dcfce780}.task-row.selected{box-shadow:inset 0 0 0 2px var(--primary);background-color:#eff6ff}.task-table.colored-rows .task-row.selected{box-shadow:inset 0 0 0 2px var(--primary);filter:brightness(.95)}.unscheduled-panel{background:var(--bg-panel);border-radius:16px;flex-direction:column;flex-shrink:0;width:280px;display:flex;overflow:hidden;box-shadow:0 4px 20px #00000008}.unscheduled-header{border-bottom:1px solid var(--border-light);background:#f8fafc;justify-content:space-between;align-items:center;padding:16px;font-weight:600;display:flex}.unscheduled-list{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.unscheduled-card{background:var(--bg-panel);border:1px solid var(--border-light);border-radius:8px;padding:12px;font-size:.85rem;box-shadow:0 1px 3px #0000000d}.unscheduled-card strong{margin-bottom:4px;display:block}.schedule-quick-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;display:grid}.quick-btn{border:1px solid var(--border-light);background:var(--bg-panel);cursor:pointer;color:var(--text-main);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px;font-weight:500;transition:all .2s;display:flex}.quick-btn:hover{border-color:var(--primary);background:var(--bg-app)}.quick-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;transform:scale(.98);box-shadow:inset 0 2px 4px #0000001a}.quick-btn.active svg{color:#fff!important}.agenda-day.drag-over,.task-row.drag-over{border:2px dashed var(--primary);background-color:#5c42e526!important}.sidebar-nav-btns{align-items:center;gap:4px;display:flex}.sidebar-home-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;transition:all .2s;display:flex}.sidebar-home-btn:hover{background:var(--bg-app);color:var(--primary)}.logo-name{text-overflow:ellipsis;white-space:nowrap;font-size:1.1rem;font-weight:700;overflow:hidden}.home-dashboard{background:var(--bg-app);flex-direction:column;width:100vw;height:100vh;display:flex;position:relative;overflow:auto}.home-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:32px 84px 24px 48px;display:flex}.home-logo{align-items:center;gap:16px;display:flex}.home-logo-icon{background:var(--primary);color:#fff;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;display:flex;box-shadow:0 4px 12px #5c42e54d}.home-title{color:var(--text-main);margin:0;font-size:1.8rem;font-weight:800}.home-subtitle{color:var(--text-muted);margin:2px 0 0;font-size:.9rem}.home-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px;padding:16px 84px 48px 48px;display:grid}.home-card{background:var(--bg-panel);border:1px solid var(--border-light);cursor:pointer;border-radius:16px;transition:all .25s;overflow:hidden;box-shadow:0 4px 20px #0000000a}.home-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0000001a}.home-card-banner{justify-content:center;align-items:center;height:100px;display:flex;position:relative}.home-card-icon{filter:drop-shadow(0 2px 4px #0003);font-size:2.5rem}.home-card-actions{opacity:0;gap:4px;transition:opacity .2s;display:flex;position:absolute;top:8px;right:8px}.home-card:hover .home-card-actions{opacity:1}.home-card-action{cursor:pointer;width:28px;height:28px;color:var(--text-muted);background:#ffffffe6;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.home-card-action:hover{background:var(--bg-panel);color:var(--primary);box-shadow:0 2px 8px #0000001a}.home-card-body{padding:16px 20px}.home-card-name{color:var(--text-main);margin-bottom:6px;font-size:1rem;font-weight:700}.home-card-type{color:var(--text-muted);align-items:center;gap:6px;font-size:.8rem;display:flex}.home-card-type svg{width:14px;height:14px}.home-card-add{border:2px dashed var(--border-light);min-height:170px;color:var(--text-muted);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.9rem;font-weight:600;display:flex}.home-card.home-card-link-preview{background:#0a0a0a}.home-card-link-banner{aspect-ratio:16/10;background:#0a0a0a;width:100%;display:block;position:relative;overflow:hidden}.home-card-link-banner img{object-fit:cover;width:100%;height:100%;transition:transform .4s cubic-bezier(.2,.8,.2,1);display:block}.home-card-link-preview:hover .home-card-link-banner img{transform:scale(1.04)}.home-card-link-domain{-webkit-backdrop-filter:blur(6px);color:#fff;letter-spacing:.01em;pointer-events:none;white-space:nowrap;text-overflow:ellipsis;background:#0000008c;border-radius:999px;max-width:calc(100% - 70px);padding:4px 10px;font-size:11px;font-weight:600;position:absolute;bottom:10px;left:10px;overflow:hidden}.home-card-link-badge{color:#fff;pointer-events:none;background:#000000a6;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;padding-left:4px;font-size:22px;transition:transform .2s,background .2s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 16px #0006}.home-card-link-preview:hover .home-card-link-badge{background:#dc2626f2;transform:translate(-50%,-50%)scale(1.1)}.home-card-add:hover{border-color:var(--primary);color:var(--primary);background:#5c42e508}.home-card-dragging{opacity:.4;transform:scale(.97)}.home-card-drop{outline:3px solid var(--primary);outline-offset:2px;transform:translateY(-4px)scale(1.02);box-shadow:0 16px 40px #5c42e540}.home-card-drop-left{position:relative}.home-card-drop-left:before{content:"";background-color:var(--primary);z-index:10;border-radius:6px;width:6px;animation:1s ease-in-out infinite drop-pulse;position:absolute;top:-4px;bottom:-4px;left:-10px;box-shadow:0 0 16px 2px #5c42e58c}.home-card-drop-right{position:relative}.home-card-drop-right:after{content:"";background-color:var(--primary);z-index:10;border-radius:6px;width:6px;animation:1s ease-in-out infinite drop-pulse;position:absolute;top:-4px;bottom:-4px;right:-10px;box-shadow:0 0 16px 2px #5c42e58c}@keyframes drop-pulse{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.65;transform:scaleY(.92)}}.home-grid-drop{box-shadow:inset 0 0 0 2px var(--primary);background:#5c42e50a;border-radius:16px}.home-card-folder .home-card-banner{padding:16px}.folder-preview{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr);gap:6px;width:68px;height:68px;display:grid}.folder-preview-slot{background:#ffffffd9;border-radius:8px;justify-content:center;align-items:center;min-height:0;font-size:1.1rem;display:flex;box-shadow:0 1px 2px #0000001a}.home-breadcrumb{flex-wrap:wrap;align-items:center;gap:6px;padding:0 48px 8px;display:flex}.crumb{background:var(--bg-panel);border:1px solid var(--border-light);color:var(--text-muted);cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:6px 12px;font-size:.85rem;font-weight:600;transition:all .15s;display:inline-flex}.crumb:hover{border-color:var(--primary);color:var(--primary)}.crumb-current{color:var(--primary);background:#5c42e514;border-color:#5c42e54d}.crumb-drop{outline:2px solid var(--primary);outline-offset:2px;background:#5c42e51f}.crumb-sep{color:var(--text-muted);opacity:.5}.home-type-picker{flex-wrap:wrap;gap:12px;display:flex}.home-type-option{border:2px solid var(--border-light);background:var(--bg-panel);cursor:pointer;text-align:left;border-radius:12px;flex:calc(50% - 12px);align-items:flex-start;gap:12px;padding:16px;transition:all .2s;display:flex}.home-type-option:hover{border-color:var(--primary);background:#5c42e508}.home-type-option.active{border-color:var(--primary);background:#5c42e514;box-shadow:0 0 0 3px #5c42e51a}.home-type-option strong{margin-bottom:2px;font-size:.9rem;display:block}.home-type-option span{color:var(--text-muted);font-size:.75rem}.home-type-grid{grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:8px;min-width:0;display:grid}.home-type-tile{aspect-ratio:1;border:2px solid var(--border-light);background:var(--bg-panel);cursor:pointer;min-width:0;color:var(--text-main);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:8px 6px;transition:border-color .15s,background .15s,transform .15s,box-shadow .15s;display:flex;position:relative}.feature-locked{filter:grayscale();opacity:.45!important;cursor:not-allowed!important}.feature-locked:hover{opacity:.55!important}.home-type-tile.locked{opacity:.5;cursor:not-allowed;filter:grayscale()}.home-type-tile.locked:hover{border-color:var(--border-light);background:var(--bg-panel)}.home-type-tile-badge{letter-spacing:.02em;background:var(--primary);color:#fff;border-radius:6px;padding:2px 5px;font-size:.55rem;font-weight:700;line-height:1;position:absolute;top:4px;right:4px}.home-type-tile-badge.locked{background:#94a3b8}.home-type-beta-note{color:var(--text-muted,#64748b);background:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:8px;margin-top:8px;padding:8px 10px;font-size:.72rem;line-height:1.35}.home-type-tile:hover{border-color:var(--primary);background:#5c42e50a}.home-type-tile.active{border-color:var(--primary);background:#5c42e51a;box-shadow:0 0 0 3px #5c42e51f}.home-type-tile-icon{color:var(--primary);justify-content:center;align-items:center;display:inline-flex}.home-type-tile-label{text-align:center;color:var(--text-main);font-size:.72rem;font-weight:600;line-height:1.15}@media (width<=520px){.home-type-grid{grid-template-columns:repeat(3,1fr)}}.home-tag-chips{border:1px solid var(--border-light);background:var(--bg-panel);border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;min-height:42px;padding:8px;display:flex}.tag-dropdown-item:hover{background:var(--primary-light)}.home-tag-chip{background:var(--bg-secondary,#f1f5f9);color:var(--text-main);cursor:default;border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:12px;display:inline-flex}.home-tag-chip-active{color:var(--primary);background:#5c42e51f;border-color:#5c42e54d;font-weight:600}.home-tag-chip-suggest{cursor:pointer;border-color:var(--border-light)}.home-tag-chip-suggest:hover{border-color:var(--primary);color:var(--primary);background:#5c42e514}.home-tag-chip-x{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;padding:0 0 0 2px;font-size:14px;line-height:1}.home-tag-chip-x:hover{opacity:1}.home-tag-input{min-width:120px;color:var(--text-main);background:0 0;border:none;outline:none;flex:1;padding:4px;font-size:13px}.home-tag-suggestions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.home-tag-suggestions-label{color:var(--text-muted);margin-right:4px;font-size:11px}.home-icon-picker,.home-color-picker{flex-wrap:wrap;gap:6px;display:flex}.home-icon-option{border:1px solid var(--border-light);background:var(--bg-panel);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.1rem;transition:all .15s;display:flex}.home-icon-option:hover{border-color:var(--primary)}.home-icon-option.active{border-color:var(--primary);background:#5c42e51a;box-shadow:0 0 0 2px #5c42e526}.home-color-option{cursor:pointer;border:2px solid #0000;border-radius:50%;width:28px;height:28px;transition:all .15s}.home-color-option:hover{transform:scale(1.15)}.home-color-option.active{box-shadow:0 0 0 3px var(--primary), 0 0 0 5px #5c42e533;border-color:#fff}.home-shape-picker{gap:12px;margin-top:4px;display:flex}.home-shape-option{border:2px solid var(--border-light);background:var(--bg-panel);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex}.home-shape-option:hover{border-color:var(--primary)}.home-shape-option.active{border-color:var(--primary);background:#5c42e514}.shape-preview{background:#cbd5e1;width:20px;height:20px;transition:all .2s}.home-shape-option.active .shape-preview{background:var(--primary)}.shape-circle{border-radius:50%}.shape-square{border-radius:4px}.shape-hexagon{clip-path:polygon(25% 0%,75% 0%,100% 50%,75% 100%,25% 100%,0% 50%)}.shape-pill{border-radius:12px;width:28px;height:14px}.neural-node-edit{opacity:0;cursor:pointer;pointer-events:auto;transition:opacity .2s,transform .2s}.neural-node.is-hover .neural-node-edit,.neural-node.is-active .neural-node-edit{opacity:1}.neural-node-edit circle{fill:#fff;stroke:var(--border-light);stroke-width:1px;transition:all .2s}.neural-node-edit:hover circle{fill:var(--primary);stroke:var(--primary)}.neural-node-edit:hover svg{color:#fff}.neural-node-edit svg{color:var(--text-muted);transition:color .2s}.mirar-app{background:0 0;width:100vw;height:100vh;position:relative;overflow:hidden}.mirar-back-btn{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;color:var(--text-main);background:#ffffffe6;border:1px solid #00000014;border-radius:10px;align-items:center;gap:8px;padding:8px 16px;font-family:Inter,sans-serif;font-size:.85rem;font-weight:600;transition:all .2s;display:flex;position:absolute;top:16px;left:16px;box-shadow:0 4px 12px #0000000f}.mirar-back-btn:hover{background:var(--bg-panel);box-shadow:0 6px 20px #0000001a}.mirar-toolbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#ffffffeb;border:1px solid #0000000d;border-radius:16px;align-items:center;gap:16px;padding:12px 24px;display:flex;position:absolute;bottom:32px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #0000001a}.mirar-tool-btn{cursor:pointer;color:#666;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:8px;transition:all .15s;display:flex}.mirar-tool-btn:hover{background:var(--bg-app);transform:scale(1.05)}.mirar-tool-sticky{background:#fff2cc;border:1px solid #d6b656}.mirar-tool-sep{background:#ccc;width:1px;height:24px}.mirar-zoom-label{color:#666;text-align:center;min-width:40px;font-family:monospace;font-size:14px}.ai-popup-backdrop{z-index:11000;background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.ai-popup{background:var(--bg-panel);border-radius:12px;flex-direction:column;width:min(820px,100%);max-height:85vh;font-family:Inter,sans-serif;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000059}.ai-popup-header{background:linear-gradient(90deg,#ede9fe 0%,#fff 100%);border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.ai-popup-title{color:#d94e1f;align-items:center;gap:8px;font-weight:600;display:flex}.ai-popup-header-actions{gap:4px;display:flex}.ai-popup-icon-btn{cursor:pointer;color:#475569;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.ai-popup-icon-btn:hover{color:#0f172a;background:#f1f5f9}.ai-popup-body{flex:1;grid-template-columns:1fr 1fr;gap:12px;padding:16px;display:grid;overflow:auto}.ai-popup-col{flex-direction:column;gap:6px;min-width:0;display:flex}.ai-popup-col-label{text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-size:.75rem;font-weight:600}.ai-popup-text{white-space:pre-wrap;word-break:break-word;color:#0f172a;border:1px solid #e5e7eb;border-radius:8px;min-height:100px;max-height:50vh;padding:10px 12px;font-size:.95rem;line-height:1.5;overflow:auto}.ai-popup-text-original{background:#f8fafc}.ai-popup-text-suggestion{cursor:text;background:#f0fdf4;border-color:#bbf7d0}.ai-popup-textarea{resize:vertical;background:#f0fdf4;border-color:#bbf7d0;outline:none;font-family:inherit}.ai-popup-loading{color:#64748b;align-items:center;gap:8px;display:flex}.ai-popup-error{color:#b91c1c;background:#fef2f2;border-color:#fecaca;align-items:center;gap:8px;display:flex}.ai-popup-hint{color:#16a34a;padding:4px 4px 0;font-size:.8rem}.ai-popup-footer{background:#fafafa;border-top:1px solid #e5e7eb;align-items:center;gap:8px;padding:12px 16px;display:flex}.ai-popup-btn{cursor:pointer;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:7px 14px;font-size:.85rem;font-weight:500;display:inline-flex}.ai-popup-btn:disabled{opacity:.5;cursor:not-allowed}.ai-popup-btn-primary{color:#fff;background:#d94e1f}.ai-popup-btn-primary:hover:not(:disabled){background:#b83e17}.ai-popup-btn-secondary{background:var(--bg-panel);color:#475569;border-color:#cbd5e1}.ai-popup-btn-secondary:hover{background:#f1f5f9}.ai-popup-btn-ghost{color:#64748b;background:0 0;border-color:#e5e7eb}.ai-popup-btn-ghost:hover:not(:disabled){color:#0f172a;background:#f1f5f9}.ai-spin{animation:1s linear infinite ai-spin}@keyframes ai-spin{to{transform:rotate(360deg)}}.ai-settings-body{flex-direction:column;padding:16px;display:flex}.ai-settings-label{color:#334155;margin-bottom:6px;font-size:.8rem;font-weight:600}.ai-settings-key-row{align-items:center;gap:6px;display:flex}.ai-settings-input{background:var(--bg-panel);color:#0f172a;border:1px solid #cbd5e1;border-radius:6px;outline:none;flex:1;padding:8px 10px;font-family:inherit;font-size:.9rem}.ai-settings-input:focus{border-color:#d94e1f}.ai-settings-hint{color:#64748b;margin-top:8px;font-size:.78rem;line-height:1.5}.ai-settings-hint a{color:#d94e1f}.ai-tool-btn{color:#d94e1f;background:linear-gradient(90deg,#ede9fe,#f3e8ff);border:1px solid #ddd6fe;align-items:center;gap:4px;font-weight:500;display:inline-flex}.ai-tool-btn:hover:not(:disabled){background:linear-gradient(90deg,#ddd6fe,#e9d5ff)}.ai-settings-modal{width:min(640px,100%)}.ai-provider-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:4px;display:grid}.ai-provider-card{text-align:left;background:var(--bg-panel);cursor:pointer;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:6px;padding:10px 12px;font-family:inherit;transition:border-color .12s,background .12s;display:flex}.ai-provider-card:hover{background:#f8fafc;border-color:#cbd5e1}.ai-provider-card.active{background:#f5f3ff;border-color:#d94e1f;box-shadow:inset 0 0 0 1px #d94e1f}.ai-provider-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.ai-provider-name{color:#0f172a;font-size:.85rem;font-weight:600}.ai-badge{letter-spacing:.03em;border-radius:999px;align-self:flex-start;padding:2px 7px;font-size:.68rem;font-weight:600;display:inline-block}.ai-badge-free{color:#166534;background:#dcfce7}html[data-theme=dark]{--status-open-bg:#334155;--status-open-text:#cbd5e1;--status-progress-bg:#0c4a6e;--status-progress-text:#7dd3fc;--status-ideal-bg:#713f12;--status-ideal-text:#fde68a;--status-done-bg:#14532d;--status-done-text:#86efac}html[data-theme=dark] body{background-color:var(--bg-app);color:var(--text-main)}html[data-theme=dark] .modal-content,html[data-theme=dark] .home-card,html[data-theme=dark] .form-input,html[data-theme=dark] .form-select,html[data-theme=dark] .form-textarea,html[data-theme=dark] .nb-mention-popup{background:var(--bg-panel);color:var(--text-main)}html[data-theme=dark] .form-input,html[data-theme=dark] .form-select,html[data-theme=dark] .form-textarea{border-color:var(--border-light)}html[data-theme=dark] .form-select option{background:var(--bg-panel);color:var(--text-main)}html[data-theme=dark] .task-table th,html[data-theme=dark] .filters-container{background:var(--bg-panel)}html[data-theme=dark] .task-row:hover{background-color:#ffffff0a}html[data-theme=dark] .sort-chip,html[data-theme=dark] .colorize-btn,html[data-theme=dark] .btn-secondary,html[data-theme=dark] .quick-btn,html[data-theme=dark] .hub-view-toggle,html[data-theme=dark] .kanban-card,html[data-theme=dark] .context-menu,html[data-theme=dark] .unscheduled-card,html[data-theme=dark] .crumb,html[data-theme=dark] .home-type-option,html[data-theme=dark] .home-type-tile,html[data-theme=dark] .home-tag-chips,html[data-theme=dark] .home-icon-option,html[data-theme=dark] .home-shape-option,html[data-theme=dark] .color-picker-icon,html[data-theme=dark] .ai-popup,html[data-theme=dark] .ai-settings-input,html[data-theme=dark] .ai-provider-card,html[data-theme=dark] .ai-popup-btn-secondary{background:var(--bg-panel);color:var(--text-main);border-color:var(--border-light)}html[data-theme=dark] .sort-chip:hover,html[data-theme=dark] .btn-secondary:hover,html[data-theme=dark] .quick-btn:hover,html[data-theme=dark] .crumb:hover,html[data-theme=dark] .home-card-action:hover,html[data-theme=dark] .inline-date:hover,html[data-theme=dark] .ai-popup-btn-secondary:hover{color:var(--text-main);background:#ffffff12}html[data-theme=dark] .search-box input{color:var(--text-main);border-color:var(--border-light);background-color:#ffffff0f}html[data-theme=dark] .hub-dock-btn{color:#cbd5e1;background:#1e293bd1;border-color:#ffffff14}html[data-theme=dark] .hub-dock-btn:hover{color:#f1f5f9;background:#1e293b}html[data-theme=dark] .hub-dock-btn.primary{color:#fff}html[data-theme=dark] .hub-dock-sep,html[data-theme=dark] .hub-dock-btn{border-color:#ffffff14}html[data-theme=dark] .home-folder-pill{color:#cbd5e1;background:#1e293bc7;border-color:#ffffff0f}html[data-theme=dark] .task-table.colored-rows .task-row[data-status=Offen]{background-color:#94a3b80f}html[data-theme=dark] .task-table.colored-rows .task-row[data-status=Am\ Laufen]{background-color:#38bdf814}html[data-theme=dark] .task-table.colored-rows .task-row[data-status=Ideal]{background-color:#facc1514}html[data-theme=dark] .task-table.colored-rows .task-row[data-status=Fertig]{background-color:#4ade8014}html[data-theme=dark] .nb-editor-col{background:var(--bg-panel)}html[data-theme=dark] .nb-toolbar button,html[data-theme=dark] .nb-tool-select,html[data-theme=dark] .nb-tool-color{background:var(--bg-panel);color:var(--text-main);border-color:var(--border-light)}html[data-theme=dark] .nb-mention-popup{border-color:var(--border-light)}html[data-theme=dark] .nb-mention-item{color:var(--text-main)}html[data-theme=dark] .nb-mention-item.active,html[data-theme=dark] .nb-mention-item:hover{background:#3b82f62e}html[data-theme=dark] .fc{background:var(--bg-panel);color:var(--text-main)}html[data-theme=dark] .fc .fc-col-header-cell-cushion,html[data-theme=dark] .fc .fc-daygrid-day-number,html[data-theme=dark] .fc .fc-toolbar-title{color:var(--text-main)}html[data-theme=dark] .fc .fc-day-today{background:#5c42e51f!important}html[data-theme=dark] .fc .fc-scrollgrid,html[data-theme=dark] .fc td,html[data-theme=dark] .fc th{border-color:var(--border-light)!important}::-webkit-scrollbar-button{width:0;height:0;display:none!important}.fc .fc-toolbar-chunk{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}.fc .fc-toolbar-title{white-space:nowrap;display:inline-block}.fc .fc-prev-button,.fc .fc-next-button{width:42px;height:42px;color:var(--text-main);border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .15s,opacity .15s;display:inline-flex;box-shadow:none!important;background:0 0!important;border:none!important}.fc .fc-prev-button:hover,.fc .fc-next-button:hover{background:#3c404314!important}.fc .fc-prev-button:active,.fc .fc-next-button:active{background:#3c404324!important}html[data-theme=dark] .fc .fc-prev-button:hover,html[data-theme=dark] .fc .fc-next-button:hover{background:#ffffff1a!important}.fc .fc-prev-button .fc-icon,.fc .fc-next-button .fc-icon{display:none}.fc .fc-prev-button:before,.fc .fc-next-button:before{content:"";border:1.5px solid;border-width:1.5px 1.5px 0 0;width:9px;height:9px}.fc .fc-prev-button:before{margin-left:3px;transform:rotate(-135deg)}.fc .fc-next-button:before{margin-right:3px;transform:rotate(45deg)}.fc .fc-col-header-cell-cushion{padding:6px 4px;text-decoration:none!important}.agenda-dh{flex-direction:column;align-items:center;gap:3px;line-height:1;display:flex}.agenda-dh-wd{letter-spacing:.5px;text-transform:uppercase;color:#70757a;font-size:11px;font-weight:600}.agenda-dh-num{color:#3c4043;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:22px;font-weight:400;display:flex}.agenda-dh-num.is-today{color:#fff;background:#1a73e8}html[data-theme=dark] .agenda-dh-wd{color:var(--text-muted,#9aa0a6)}html[data-theme=dark] .agenda-dh-num{color:var(--text-main)}.fc .fc-timegrid-now-indicator-line{border-color:#ea4335;border-top-width:2px}.fc .fc-timegrid-now-indicator-line:before{content:"";background:#ea4335;border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;position:absolute;top:50%;left:0}.fc .fc-timegrid-now-indicator-arrow{display:none}.fc .fc-scroller{scrollbar-width:thin;scrollbar-color:#3c40434d transparent}.fc .fc-scroller::-webkit-scrollbar{width:10px;height:10px}.fc .fc-scroller::-webkit-scrollbar-button{width:0;height:0;display:none}.fc .fc-scroller::-webkit-scrollbar-track{background:0 0}.fc .fc-scroller::-webkit-scrollbar-thumb{background:#3c404347 padding-box content-box;border:2px solid #0000;border-radius:999px}.fc .fc-scroller::-webkit-scrollbar-thumb:hover{background:#3c404380 padding-box content-box}html[data-theme=dark] .fc .fc-scroller{scrollbar-color:#ffffff47 transparent}html[data-theme=dark] .fc .fc-scroller::-webkit-scrollbar-thumb{background:#ffffff3d padding-box content-box}html[data-theme=dark] .fc .fc-scroller::-webkit-scrollbar-thumb:hover{background:#fff6 padding-box content-box}html[data-theme=dark] .ai-popup,html[data-theme=dark] .ai-popup-content,html[data-theme=dark] .ai-settings-input,html[data-theme=dark] .ai-settings-label,html[data-theme=dark] .ai-provider-name{color:var(--text-main)}html[data-theme=dark] .ai-popup-icon-btn,html[data-theme=dark] .ai-popup-btn-ghost{color:var(--text-muted)}html[data-theme=dark] .ai-popup-icon-btn:hover,html[data-theme=dark] .ai-popup-btn-ghost:hover:not(:disabled){color:var(--text-main);background:#ffffff12}html[data-density=compact] .home-card{transform-origin:0 0;transform:scale(.92)}.hub-view-toggle{border:1px solid var(--border-light);background:var(--bg-panel);border-radius:8px;display:inline-flex;overflow:hidden}.hub-view-toggle button{cursor:pointer;color:#64748b;background:0 0;border:none;align-items:center;padding:8px 12px;transition:background .15s,color .15s;display:inline-flex}.hub-view-toggle button:hover{background:#0f172a0d}.hub-view-toggle button.active{background:var(--accent,#d94e1f);color:#fff}.neural-view{-webkit-user-select:none;user-select:none;cursor:grab;touch-action:none;background:0 0;flex:1;height:calc(100vh - 96px);margin:0 -32px -32px;position:relative;overflow:hidden}.neural-view:active{cursor:grabbing}.neural-svg{width:100%;height:100%;display:block}.neural-bg{fill:#0000}.neural-edge{stroke:#1e293b2e;stroke-width:1.25px;fill:none;transition:stroke .2s}.neural-edge.is-active{stroke:#1e293b73;stroke-width:1.5px}.neural-node{cursor:pointer;transition:opacity .3s}.neural-node.is-dim{opacity:.55}.neural-node-glow{display:none}.neural-node-core{stroke:#ffffffeb;stroke-width:2px;filter:drop-shadow(0 2px 6px #0f172a1a);transition:filter .2s}.neural-node.is-hover .neural-node-core{filter:drop-shadow(0 4px 12px #0f172a2e)}.neural-node.is-active .neural-node-core{stroke:#0f172a66;stroke-width:2.5px}.neural-node-icon{pointer-events:none;color:#0f172ac7;justify-content:center;align-items:center;width:100%;height:100%;font-size:22px;display:flex}.neural-node-label{fill:#0f172ad9;pointer-events:none;letter-spacing:.1px;font-size:12px;font-weight:500}.neural-hud{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:5;background:#ffffffb8;border:1px solid #0f172a0f;border-radius:10px;flex-wrap:wrap;align-items:center;gap:4px;max-width:calc(100% - 28px);padding:5px 8px;display:flex;position:absolute;top:14px;left:14px}.neural-pill{color:#475569;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;transition:background .15s;display:inline-flex}.neural-pill:hover{background:#0f172a0f}.neural-pill.is-current{color:#fff;background:#0f172ad9}.neural-sep{color:#cbd5e1}.neural-hint{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#64748b;pointer-events:auto;background:#ffffffb8;border:1px solid #0f172a0f;border-radius:999px;align-items:center;gap:8px;padding:5px 12px;font-size:11px;display:inline-flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.neural-link{color:#1e293b;cursor:pointer;background:#0f172a14;border:none;border-radius:6px;padding:2px 8px;font-size:11px}.neural-link:hover{background:#0f172a29}.hub-dock{right:calc(14px + var(--side-reserve-right,0px));z-index:50;flex-direction:column;gap:8px;transition:right .22s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:50%;transform:translateY(-50%)}.hub-dock-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#475569;cursor:pointer;background:#ffffffd9;border:1px solid #0f172a14;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:transform .15s,box-shadow .15s,color .15s,background .15s;display:inline-flex;position:relative;box-shadow:0 2px 10px #0f172a0f}.hub-dock-btn:hover{color:#1e293b;background:var(--bg-panel);transform:scale(1.08);box-shadow:0 4px 14px #0f172a1f}.hub-dock-btn.primary{background:var(--primary,#d94e1f);color:#fff;border-color:#0000}.hub-dock-btn.primary:hover{background:var(--primary,#d94e1f);filter:brightness(1.08);color:#fff}.hub-dock-btn[disabled]{opacity:.5;cursor:not-allowed}.hub-dock-label{color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#0f172aeb;border-radius:6px;padding:5px 10px;font-size:12px;font-weight:500;transition:opacity .15s,transform .15s;position:absolute;top:50%;right:54px;transform:translateY(-50%)translate(6px)}.hub-dock-btn:hover .hub-dock-label{opacity:1;transform:translateY(-50%)translate(0)}.hub-dock-sep{background:#0f172a14;height:1px;margin:4px 6px}.hub-dock-btn{touch-action:none;transition:transform .16s,box-shadow .16s,opacity .16s}.hub-dock-btn.dock-dragging{opacity:.28;cursor:grabbing;transform:scale(.9)}.hub-dock-slot{border:2px dashed var(--primary,#d94e1f);background:#5c42e51a;border-radius:14px;width:44px;height:44px;animation:.16s dock-slot-in}@keyframes dock-slot-in{0%{opacity:0;height:0}to{opacity:1;height:44px}}.hub-float-widget{z-index:60;animation:.18s dock-float-pop;position:fixed}@keyframes dock-float-pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.hub-float-ghost{z-index:9999;pointer-events:none;filter:drop-shadow(0 8px 22px #0f172a47);animation:none}.hub-float-ghost .hub-dock-btn{cursor:grabbing;transform:scale(1.12)}.hub-float-ghost.over-dock .hub-dock-btn{box-shadow:0 0 0 2px var(--primary,#d94e1f), 0 6px 18px #5c42e559}.app-bg-canvas{z-index:-1;pointer-events:none;position:fixed;inset:0}.board-backdrop{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.board-backdrop-solid{background:var(--bg-app);position:absolute;inset:0}.app-bg-canvas--scoped{z-index:0;position:absolute;inset:0}.board-grid{background-image:radial-gradient(circle, var(--grid-dot,#64748b73) 1.4px, transparent 1.6px);background-repeat:repeat;position:absolute;inset:0}html[data-theme=dark] .board-grid{--grid-dot:#94a3b86b}.home-dashboard{background:0 0!important}.home-card-cover{object-fit:cover;will-change:transform;width:100%;height:100%;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cover-adjust-footer{flex-wrap:wrap;justify-content:space-between;gap:8px;padding:16px 18px}.cover-adjust-actions{gap:8px;margin-left:auto;display:flex}.cover-adjust-footer .btn-secondary,.cover-adjust-footer .btn-save{white-space:nowrap;padding:9px 16px;font-size:.88rem}.cover-adjust-footer .cover-remove-btn{color:#dc2626}.cover-edit-frame{cursor:grab;touch-action:none;background:#0f172a;border-radius:18px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}.cover-edit-frame:active{cursor:grabbing}.cover-edit-img{object-fit:cover;-webkit-user-select:none;user-select:none;pointer-events:none;will-change:transform;width:100%;height:100%;position:absolute;top:50%;left:50%}.cover-edit-hint{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none;background:#0f172a99;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.home-card-cover-actions{opacity:0;z-index:3;gap:6px;transition:opacity .18s,transform .18s;display:flex;position:absolute;bottom:8px;left:8px;transform:translateY(6px)}.home-card:hover .home-card-cover-actions{opacity:1;transform:translateY(0)}.home-card-cover-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;background:#0f172a9e;border:none;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;transition:background .15s,transform .12s;display:inline-flex}.home-card-cover-btn:hover{background:#0f172ad9;transform:scale(1.1)}.hub-canvas{z-index:1;background:0 0;position:fixed;inset:0}.hub-canvas-surface{width:100%;height:100%;display:block;position:absolute;inset:0}.hub-canvas-bar{z-index:2;-webkit-backdrop-filter:blur(8px);background:#ffffffb8;border-radius:10px;align-items:center;gap:4px;padding:6px 10px;display:flex;position:absolute;top:16px;left:16px;box-shadow:0 4px 16px #0f172a14}html[data-theme=dark] .hub-canvas-bar{background:#1e293bc7}.hub-canvas-crumb{cursor:pointer;color:#334155;background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:3px 7px;font-size:13px;font-weight:500;display:inline-flex}.hub-canvas-crumb:hover{background:#0f172a0f}html[data-theme=dark] .hub-canvas-crumb{color:#cbd5e1}html[data-theme=dark] .hub-canvas-crumb:hover{background:#ffffff14}.hub-canvas-crumb-sep{color:#94a3b8;flex:none}body.hub-canvas-dragging .hub-canvas-bar{outline:1px solid #3b82f659;box-shadow:0 6px 22px #3b82f647}body.hub-canvas-dragging .hub-canvas-crumb{transition:background .12s,box-shadow .12s,transform 80ms}body.hub-canvas-dragging .hub-canvas-crumb:hover{color:#2563eb;background:#3b82f629;transform:scale(1.04);box-shadow:inset 0 0 0 2px #3b82f68c}html[data-theme=dark] body.hub-canvas-dragging .hub-canvas-crumb:hover{color:#93c5fd}.hub-search-overlay{z-index:15;-webkit-backdrop-filter:blur(18px)saturate(1.1);background:#f8fafca8;animation:.22s fade-in;position:fixed;inset:0;overflow-y:auto}html[data-theme=dark] .hub-search-overlay{background:#0f172a9e}.hub-search-inner{max-width:1180px;margin:0 auto;padding:120px 48px 72px}.hub-search-head{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.hub-search-head-title{color:var(--text-muted);align-items:baseline;gap:10px;display:flex}.hub-search-head-title svg{align-self:center}.hub-search-head-count{color:var(--text-main);letter-spacing:-.01em;font-size:1.45rem;font-weight:800}.hub-search-head-query{font-size:.95rem}.hub-search-close{border:1px solid var(--border-light);background:var(--bg-panel);width:38px;height:38px;color:var(--text-muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.hub-search-close:hover{color:var(--primary);border-color:var(--primary);transform:rotate(90deg)}.hub-search-lanes{flex-direction:column;gap:30px;display:flex}.hub-search-lane-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:10px;margin-bottom:12px;font-size:.72rem;font-weight:700;display:flex}.hub-search-lane-count{background:var(--bg-secondary);min-width:20px;height:20px;color:var(--text-muted);letter-spacing:0;border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:.7rem;display:inline-flex}.hub-search-lane-track{scroll-snap-type:x proximity;scrollbar-width:thin;gap:18px;padding:4px 4px 14px;display:flex;overflow-x:auto}.hub-search-lane-track::-webkit-scrollbar{height:8px}.hub-search-lane-track::-webkit-scrollbar-thumb{background:#64748b59;border-radius:999px}.hub-search-lane-track::-webkit-scrollbar-track{background:0 0}.hub-search-card{scroll-snap-align:start;text-align:left;border:1px solid var(--border-light);background:var(--bg-panel);cursor:pointer;border-radius:16px;flex:none;width:196px;padding:0;transition:transform .2s,box-shadow .2s;overflow:hidden;box-shadow:0 4px 18px #0000000d}.hub-search-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px #0000001f}.hub-search-card-banner{justify-content:center;align-items:center;height:106px;display:flex;position:relative;overflow:hidden}.hub-search-card-icon{filter:drop-shadow(0 2px 4px #0003);font-size:2.1rem}.hub-search-card-preview{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hub-search-card-cover{object-fit:cover;min-width:100%;min-height:100%;position:absolute;top:50%;left:50%}.hub-search-card-body{padding:12px 14px 14px}.hub-search-card-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.92rem;font-weight:700;overflow:hidden}.hub-search-card-meta{color:var(--text-muted);margin-top:5px;font-size:.74rem}.hub-search-card-in{background:var(--bg-secondary);white-space:nowrap;text-overflow:ellipsis;vertical-align:bottom;border-radius:6px;max-width:100%;padding:2px 8px;display:inline-block;overflow:hidden}.hub-search-card-tags{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.hub-search-card-tag{background:var(--bg-secondary);color:var(--text-muted);border-radius:999px;padding:2px 8px;font-size:.68rem}.hub-search-empty{text-align:center;color:var(--text-muted);padding:64px 16px;font-size:1rem}.home-brand-slot{height:28px}.home-folder-pill{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#475569;background:#ffffffc7;border:1px solid #0f172a0f;border-radius:999px;align-items:center;gap:6px;width:fit-content;margin-bottom:14px;padding:5px 12px;font-size:13px;font-weight:500;display:inline-flex}.kanban-status-label{align-items:center;gap:8px;display:inline-flex}.kanban-status-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.status-manager-list{flex-direction:column;gap:8px;margin:12px 0;display:flex}.status-manager-row{border:1px solid var(--border-light);background:var(--bg-app);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.status-reorder{flex-direction:column;display:flex}.status-reorder .icon-btn{height:16px;padding:0;line-height:0}.status-color-input{cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;width:28px;height:28px;padding:0}.status-name-fixed{flex:1;font-size:.9rem;font-weight:600}.status-name-input{flex:1}.status-done-toggle{border:1px solid var(--border-light);background:var(--bg-app);color:var(--text-muted);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.status-done-toggle.active{color:#16a34a;background:#10a34a1f;border-color:#10a34a66}.status-task-count{text-align:center;min-width:22px;color:var(--text-muted);background:#0000000d;border-radius:999px;padding:2px 6px;font-size:.72rem}.status-manager-add{gap:8px;margin-top:14px;display:flex}.status-manager-add .form-input{flex:1}.task-custom-field{padding:4px 8px}.field-cell-input{width:100%;color:var(--text-main);background:0 0;border:1px solid #0000;border-radius:6px;padding:5px 7px;font-family:inherit;font-size:.82rem;transition:border-color .15s,background .15s}.field-cell-input:hover{border-color:var(--border-light)}.field-cell-input:focus{border-color:var(--primary);background:var(--bg-app);outline:none}.field-select{cursor:pointer}.field-number-wrap{align-items:center;gap:4px;width:100%;display:inline-flex}.field-unit{color:var(--text-muted);flex-shrink:0;font-size:.72rem}.field-checkbox{cursor:pointer;width:17px;height:17px;accent-color:var(--primary)}.add-field-th{text-align:center;width:40px}.add-field-btn{border:1px dashed var(--border-light);width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:7px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.add-field-btn:hover{border-color:var(--primary);color:var(--primary);background:#5c42e50f}.field-manager-block{flex-direction:column;display:flex}.field-type-badge{color:var(--text-muted);white-space:nowrap;background:#0000000d;border-radius:999px;padding:2px 8px;font-size:.68rem;font-weight:600}.field-manager-add{align-items:center;gap:8px;margin-top:14px;display:flex}.field-manager-add .form-input{flex:1}.field-options-editor{border-left:2px solid var(--border-light);flex-direction:column;gap:6px;margin:4px 0 8px 38px;padding:10px;display:flex}.field-option-row,.field-option-add{align-items:center;gap:6px;display:flex}.field-option-row .form-input,.field-option-add .form-input{flex:1}.col-drag-row{cursor:grab}.col-drag-row.dragging{opacity:.5}.col-drag-row.drag-over{border-color:var(--primary);box-shadow:0 -2px 0 0 var(--primary) inset}.col-drag-handle{color:var(--text-muted);cursor:grab;flex-shrink:0;align-items:center;display:inline-flex}.col-drag-handle:active{cursor:grabbing}.preset-bar{border:1px solid var(--border-light);background:var(--bg-app);border-radius:10px;align-items:center;gap:8px;margin-bottom:12px;padding:10px;display:flex}.preset-bar .form-select{flex:1}.readd-builtins{flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;display:flex}.readd-label{color:var(--text-muted);margin-right:2px;font-size:.78rem}.builtin-chip{border:1px dashed var(--border-light);color:var(--text-main);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:.78rem;transition:all .15s;display:inline-flex}.builtin-chip:hover{border-color:var(--primary);color:var(--primary);background:#5c42e50f}.col-header.draggable-col{cursor:grab;-webkit-user-select:none;user-select:none}.col-header.draggable-col:active{cursor:grabbing}.col-header.dragging{opacity:.5}.col-header.drag-over{box-shadow:2px 0 0 0 var(--primary) inset;background:#5c42e50d}.nb-app,.lang-app,.school-app{--primary:#007a4d;--primary-hover:#005c3a;--accent:#007a4d;--accent-color:#007a4d}.streaks-app{--primary:#ff7a3d;--primary-hover:#e85c24;--accent:#ff7a3d;--accent-color:#ff7a3d}.mirar-app{--primary:#5d6862;--primary-hover:#3a423e;--accent:#5d6862;--accent-color:#5d6862}.agenda-app,.today-app,.clock-app{--primary:#3f7cbf;--primary-hover:#2e6098;--accent:#3f7cbf;--accent-color:#3f7cbf}.hub-dock-badge{color:#fff;text-align:center;min-width:15px;height:15px;box-shadow:0 0 0 2px var(--bg-app,#fff);pointer-events:none;background:#e11d48;border-radius:999px;padding:0 4px;font-size:9px;font-weight:700;line-height:15px;position:absolute;top:2px;right:2px}.asg-cell{position:relative}.asg-chiprow{cursor:pointer;color:var(--text-main);background:0 0;border:none;border-radius:7px;align-items:center;gap:6px;padding:2px 4px;display:inline-flex}.asg-chiprow:hover{background:var(--bg-secondary,#0000000d)}.asg-empty{color:var(--text-muted);align-items:center;gap:4px;font-size:12px;display:inline-flex}.asg-everyone{color:var(--primary);align-items:center;gap:4px;font-size:12px;font-weight:600;display:inline-flex}.asg-avatars{align-items:center;display:inline-flex}.asg-avatars>span{margin-left:-7px}.asg-avatars>span:first-child{margin-left:0}.asg-more{color:var(--text-muted);margin-left:3px;font-size:11px;font-weight:700}.asg-avatar{object-fit:cover;color:#fff;border:2px solid var(--bg-panel,#fff);box-sizing:content-box;border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.asg-initials{line-height:1}.asg-former{opacity:.45;filter:grayscale()}.asg-avatar-wrap{display:inline-flex;position:relative}.asg-dot{background:var(--text-muted);opacity:.5;border:1.5px solid var(--bg-panel,#fff);border-radius:50%;width:8px;height:8px;position:absolute;bottom:-1px;right:-1px}.asg-dot.on{opacity:1;background:#22c55e}.asg-pop{z-index:60;background:var(--bg-panel,#fff);border:1px solid var(--border-light,#e2e8f0);border-radius:10px;flex-direction:column;width:250px;max-height:320px;margin-top:4px;display:flex;position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 10px 30px #0000002e}.asg-pop-head{border-bottom:1px solid var(--border-light,#e2e8f0);color:var(--text-muted);align-items:center;gap:7px;padding:8px 10px;display:flex}.asg-pop-head input{min-width:0;color:var(--text-main);background:0 0;border:none;outline:none;flex:1;font-size:13px}.asg-x{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:2px;display:flex}.asg-quick{border-bottom:1px solid var(--border-light,#e2e8f0);flex-wrap:wrap;gap:6px;padding:8px 10px;display:flex}.asg-quick-btn{border:1px solid var(--border-light,#e2e8f0);background:var(--bg-app,#fff);color:var(--text-main);cursor:pointer;border-radius:7px;align-items:center;gap:5px;padding:5px 9px;font-size:12px;font-weight:600;display:inline-flex}.asg-quick-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.asg-list{padding:4px;overflow-y:auto}.asg-row{text-align:left;cursor:pointer;width:100%;color:var(--text-main);background:0 0;border:none;border-radius:8px;align-items:center;gap:9px;padding:6px 7px;display:flex}.asg-row:hover{background:var(--bg-secondary,#0000000d)}.asg-row.on{background:color-mix(in srgb, var(--primary) 10%, transparent)}.asg-row-main{flex-direction:column;flex:1;min-width:0;display:flex}.asg-row-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.asg-row-handle{color:var(--text-muted);font-size:11px}.asg-check{color:var(--primary);flex-shrink:0}.asg-none,.asg-hint{color:var(--text-muted);text-align:center;padding:12px;font-size:12px}.asg-hint{border-top:1px solid var(--border-light,#e2e8f0)}.asg-clear{color:var(--text-muted);cursor:pointer;border:none;border-top:1px solid var(--border-light,#e2e8f0);background:0 0;padding:8px;font-size:12px}.asg-clear:hover{color:#e5484d}.asg-locked-title{min-width:0;color:var(--text-main);flex:1;font-size:12.5px}.asg-request{justify-content:center;width:calc(100% - 20px);margin:9px 10px 10px}.asg-request:disabled{opacity:.6;cursor:default}.agenda-visualizer-root{left:var(--x);top:var(--y);z-index:1000;-webkit-user-select:none;user-select:none;font-family:Outfit,Inter,sans-serif;position:fixed}.visualizer-trigger{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;cursor:grab;background:#1e1e23d9;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;padding:0;transition:transform .2s,box-shadow .2s;display:flex;position:relative;box-shadow:0 8px 32px #0006}.visualizer-trigger:hover{background:#28282df2;transform:scale(1.05)}.visualizer-trigger:active{cursor:grabbing}.trigger-badge{color:#fff;background:#3b82f6;border:2px solid #1a1a1e;border-radius:10px;padding:2px 6px;font-size:10px;font-weight:700;position:absolute;top:-4px;right:-4px}.visualizer-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transform-origin:0 100%;background:#141416fa;border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;width:300px;height:400px;animation:.3s cubic-bezier(.34,1.56,.64,1) panel-pop;display:flex;overflow:hidden;box-shadow:0 20px 60px #000c}@keyframes panel-pop{0%{opacity:0;transform:scale(.5)translate(-20px,20px)}to{opacity:1;transform:scale(1)translate(0)}}.visualizer-header{cursor:grab;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.header-title{align-items:center;gap:10px;font-size:.9rem;font-weight:600;display:flex}.close-btn{color:#fff6;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px;transition:all .2s}.close-btn:hover{color:#fff;background:#ffffff0d}.visualizer-controls{background:#0003;flex-direction:column;gap:10px;padding:12px;display:flex}.search-box{background:#ffffff0d;border:1px solid #ffffff0d;border-radius:10px;align-items:center;gap:8px;padding:6px 12px;display:flex}.search-box input{color:#fff;background:0 0;border:none;outline:none;width:100%;font-size:.85rem}.filter-tabs{background:#ffffff08;border-radius:8px;padding:3px;display:flex}.filter-tabs button{color:#fff6;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:4px;font-size:.75rem;transition:all .2s}.filter-tabs button.active{color:#fff;background:#ffffff1a;box-shadow:0 2px 8px #0003}.visualizer-list{flex:1;padding:8px;overflow-y:auto}.empty-state{text-align:center;color:#ffffff4d;padding:40px 20px;font-size:.8rem}.visualizer-item{cursor:grab;z-index:1001;background:#ffffff08;border:1px solid #ffffff05;border-radius:10px;align-items:center;gap:8px;margin-bottom:6px;padding:8px;transition:all .2s;display:flex}.visualizer-item:hover{border-color:var(--item-color,#3b82f6);background:#ffffff0f;transform:translate(2px)}.visualizer-item:active{cursor:grabbing}.item-drag-handle{color:#fff3}.item-content{flex:1;min-width:0}.item-title{color:#eee;white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.item-meta{color:#ffffff4d;align-items:center;font-size:.7rem;display:flex}.project-name{color:var(--item-color);font-weight:600}.item-link{color:#ffffff4d;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;transition:all .2s}.item-link:hover{color:#fff;background:#ffffff0d}.visualizer-item.is-overdue{background:#ef44440f;border-color:#ef444459}.visualizer-item.is-overdue:hover{background:#ef44441a;border-color:#ef444499}.overdue-date{color:#f87171;align-items:center;gap:2px;margin-left:4px;font-weight:600;display:inline-flex}.reschedule-btn{color:#fbbf24!important}.reschedule-btn:hover{color:#fde68a!important;background:#fbbf241f!important}.reschedule-all-btn{color:#fbbf24;cursor:pointer;background:#fbbf241a;border:1px solid #fbbf244d;border-radius:8px;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:8px;padding:6px 8px;font-size:.75rem;font-weight:600;transition:all .2s;display:flex}.reschedule-all-btn:hover{color:#fde68a;background:#fbbf242e;border-color:#fbbf248c}.visualizer-footer{text-align:center;color:#ffffff4d;text-transform:uppercase;letter-spacing:.05em;background:#0000001a;border-top:1px solid #ffffff08;padding:8px;font-size:.65rem}.mirar-nav-group{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #0000000d;border-radius:12px;align-items:center;gap:8px;padding:6px;display:flex;position:absolute;top:16px;left:16px;box-shadow:0 4px 15px #00000014}.mirar-nav-btn{width:36px;height:36px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.mirar-nav-btn:hover{color:var(--primary);background:#fff;box-shadow:0 2px 8px #0000001a}.mirar-nav-title{color:var(--text-main);border-left:1px solid var(--border-light);align-items:center;height:20px;margin-left:4px;padding:0 8px 0 4px;font-size:.95rem;font-weight:700;display:flex}.mirar-tool-btn.active{color:var(--primary);background:#5c42e51f;box-shadow:inset 0 0 0 2px #5c42e540}.mirar-tool-group{position:relative}.mirar-shape-dropdown{z-index:50;background:#fff;border:1px solid #00000014;border-radius:12px;min-width:200px;padding:6px;position:absolute;bottom:56px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #00000026}.mirar-shape-option{cursor:pointer;width:100%;color:var(--text-main);background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;font-family:Inter,sans-serif;font-size:.85rem;transition:all .15s;display:flex}.mirar-shape-option:hover{background:var(--bg-app)}.mirar-shape-option.active{color:var(--primary);background:#5c42e51a}.mirar-shape-icon{justify-content:center;align-items:center;width:24px;display:flex}.mirar-shortcut{color:var(--text-muted);background:var(--bg-app);border-radius:4px;margin-left:auto;padding:1px 6px;font-size:.7rem}.mirar-tool-btn--variants{position:relative}.mirar-tool-variant-marker{opacity:.55;pointer-events:none;border-bottom:5px solid;border-left:5px solid #0000;width:0;height:0;position:absolute;bottom:3px;right:3px}.mirar-variant-flyout{z-index:50;background:#fff;border:1px solid #00000014;border-radius:12px;min-width:190px;padding:6px;position:absolute;bottom:56px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #00000026}.mirar-variant-flyout.mirar-dropdown--left{top:0;bottom:auto;left:calc(100% + 12px);transform:none}.mirar-toolbar.mirar-toolbar--incanvas{z-index:4001}.mirar-connecting-dot{background:var(--primary);border-radius:50%;width:6px;height:6px;animation:1s infinite pulse-dot;position:absolute;top:4px;right:4px}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}.mirar-mode-badge{color:#fff;z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#5c42e5eb;border-radius:10px;padding:8px 20px;font-family:Inter,sans-serif;font-size:.82rem;font-weight:500;position:absolute;top:16px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #5c42e54d}.mirar-toolbar.mirar-toolbar--left{flex-direction:column;gap:10px;max-height:calc(100vh - 120px);padding:16px 10px;top:50%;bottom:auto;left:16px;overflow:visible auto;transform:translateY(-50%)}.mirar-toolbar--left .mirar-tool-sep{width:24px;height:1px}.mirar-toolbar--left .mirar-tool-group{justify-content:center;display:flex}.mirar-shape-dropdown.mirar-dropdown--left,.mirar-pen-dropdown.mirar-dropdown--left{top:0;bottom:auto;left:calc(100% + 12px);transform:none}.mirar-panel-settings{min-width:240px}.mirar-panel-settings-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:6px 12px 4px;font-size:.68rem;font-weight:700}.mirar-dock-toggle{gap:6px;padding:0 8px 6px;display:flex}.mirar-dock-btn{background:var(--bg-app);cursor:pointer;color:var(--text-main);border:1px solid #00000014;border-radius:8px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:8px 4px;font-family:Inter,sans-serif;font-size:.72rem;transition:all .15s;display:flex}.mirar-dock-btn:hover{background:#5c42e514}.mirar-dock-btn.active{border-color:var(--primary);color:var(--primary);background:#5c42e51f}.mirar-format-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:30;background:#fffffff2;border:1px solid #0000000f;border-radius:14px;width:260px;max-height:calc(100vh - 140px);font-family:Inter,sans-serif;position:absolute;top:60px;right:16px;overflow-y:auto;box-shadow:0 8px 40px #0000001a}.mfp-header{border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;padding:14px 16px 8px;display:flex}.mfp-title{color:var(--text-main);font-size:.9rem;font-weight:700}.mfp-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;padding:4px;display:flex}.mfp-close:hover{background:var(--bg-app);color:var(--text-main)}.mfp-section{border-bottom:1px solid #0000000a;padding:10px 16px}.mfp-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.4px;align-items:center;gap:4px;margin-bottom:6px;font-size:.72rem;font-weight:600;display:flex}.mfp-switch-row{justify-content:space-between;align-items:center;display:flex}.mfp-switch{cursor:pointer;background:#cbd5e1;border:none;border-radius:999px;flex-shrink:0;width:34px;height:18px;padding:0;transition:background .18s;position:relative}.mfp-switch.on{background:var(--primary)}.mfp-switch-knob{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .18s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000040}.mfp-switch.on .mfp-switch-knob{transform:translate(16px)}.mfp-row{align-items:center;gap:8px;display:flex}.mfp-input-group{flex:1;align-items:center;gap:4px;display:flex}.mfp-input-group span{color:var(--text-muted);font-size:.7rem;font-weight:600}.mfp-input-group input{border:1px solid var(--border-light);border-radius:6px;outline:none;width:100%;padding:5px 8px;font-family:Inter,sans-serif;font-size:.8rem}.mfp-input-group input:focus{border-color:var(--primary)}.mfp-color-grid{flex-wrap:wrap;gap:5px;display:flex}.mfp-color-swatch{cursor:pointer;border-radius:6px;width:24px;height:24px;transition:all .15s;border:2px solid #0000!important}.mfp-color-swatch:hover{transform:scale(1.15)}.mfp-color-swatch.active{box-shadow:0 0 0 2px #5c42e533;border-color:var(--primary)!important}.mfp-color-input{cursor:pointer;background:0 0;border:1px dashed #ccc;border-radius:6px;width:24px;height:24px;padding:0}.mfp-select{border:1px solid var(--border-light);border-radius:6px;outline:none;flex:1;padding:5px 8px;font-family:Inter,sans-serif;font-size:.8rem}.mbg-preview{background-size:200% 200%;border:1px solid #0000000f;border-radius:10px;height:74px;margin:8px 12px 4px;position:relative;overflow:hidden}.mbg-preview-tag{color:#fff;text-transform:capitalize;background:#00000052;border-radius:20px;padding:2px 8px;font-size:10px;font-weight:600;position:absolute;bottom:7px;left:8px}.mbg-sec{border-top:1px solid #0000000d}.mbg-head{cursor:pointer;letter-spacing:.4px;text-transform:uppercase;width:100%;color:var(--text-muted);background:0 0;border:none;justify-content:space-between;align-items:center;padding:11px 16px;font-family:Inter,sans-serif;font-size:.72rem;font-weight:700;display:flex}.mbg-head:hover{background:#00000005}.mbg-chev{transition:transform .15s}.mbg-chev.open{transform:rotate(90deg)}.mbg-body{padding:0 16px 14px}.mbg-sub{letter-spacing:.5px;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;font-size:.62rem;font-weight:700}.mbg-hint{color:var(--text-muted);font-size:.72rem;font-style:italic}.mbg-chips{flex-wrap:wrap;gap:6px;display:flex}.mbg-chip{border:1px solid var(--border-light);cursor:pointer;text-transform:capitalize;background:#fff;border-radius:20px;padding:5px 9px;font-family:Inter,sans-serif;font-size:.72rem;transition:all .15s}.mbg-chip:hover{background:var(--bg-app)}.mbg-chip.active{border-color:var(--primary);color:var(--primary);background:#d94e1f1a}.mbg-field{margin-top:11px}.mbg-field:first-child{margin-top:0}.mbg-field-head{color:var(--text-main);justify-content:space-between;margin-bottom:5px;font-size:.74rem;font-weight:600;display:flex}.mbg-val{color:var(--primary);font-family:monospace}.mbg-x{color:#fff;cursor:pointer;background:#ef4444;border:1.5px solid #fff;border-radius:50%;width:15px;height:15px;padding:0;font-size:9px;line-height:1;position:absolute;top:-6px;right:-6px}.mbg-saved{border:1px solid var(--border-light);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:6px 8px;display:flex}.mbg-saved:hover{background:var(--bg-app)}.mbg-saved.active{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.mbg-saved-sw{background-size:200% 200%;border-radius:6px;flex-shrink:0;width:26px;height:26px}.mbg-saved-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.76rem;font-weight:600;overflow:hidden}.mbg-saved-mode{color:var(--text-muted);text-transform:capitalize;font-size:.66rem}.mbg-saved-del{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:2px;display:flex}.mbg-saved-del:hover{color:#ef4444}.mfp-toggle{border:1px solid var(--border-light);cursor:pointer;background:#fff;border-radius:6px;align-items:center;gap:4px;padding:5px 10px;font-family:Inter,sans-serif;font-size:.78rem;transition:all .15s;display:flex}.mfp-toggle:hover{background:var(--bg-app)}.mfp-toggle.active{border-color:var(--primary);color:var(--primary);background:#5c42e51a}.mfp-text-input{border:1px solid var(--border-light);border-radius:8px;outline:none;width:100%;padding:7px 10px;font-family:Inter,sans-serif;font-size:.8rem}.mfp-text-input:focus{border-color:var(--primary)}.mfp-section input[type=range]{height:4px;accent-color:var(--primary);flex:1}.mfp-ref-list{flex-direction:column;gap:3px;margin-top:4px;display:flex}.mfp-ref-btn{border:1px solid var(--border-light);cursor:pointer;text-align:left;background:#fff;border-radius:8px;align-items:center;gap:8px;width:100%;padding:6px 10px;font-family:Inter,sans-serif;font-size:.78rem;transition:all .15s;display:flex}.mfp-ref-btn:hover{border-color:var(--primary);background:#5c42e50d}.mfp-ref-type{color:var(--text-muted);text-transform:uppercase;margin-left:auto;font-size:.65rem}.mirar-pen-dropdown{z-index:50;background:#fff;border:1px solid #00000014;border-radius:12px;min-width:220px;position:absolute;bottom:56px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 12px 40px #00000026}.mirar-layers-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:30;background:#fffffff2;border:1px solid #0000000f;border-radius:14px;flex-direction:column;width:250px;font-family:Inter,sans-serif;display:flex;position:absolute;box-shadow:0 8px 40px #0000001a}.mirar-layers-panel--bottom{max-height:calc(100vh - 200px);bottom:104px;left:16px}.mirar-layers-panel--left{max-height:calc(100vh - 120px);top:50%;left:92px;transform:translateY(-50%)}.mlp-header{border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;padding:12px 14px 8px;display:flex}.mlp-title{color:var(--text-main);font-size:.9rem;font-weight:700}.mlp-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;padding:4px;display:flex}.mlp-close:hover{background:var(--bg-app);color:var(--text-main)}.mlp-toolbar{border-bottom:1px solid #0000000d;gap:6px;padding:8px 10px;display:flex}.mlp-tool-btn{color:var(--text-main);cursor:pointer;background:#fff;border:1px solid #00000014;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:4px;padding:6px 8px;font-size:.74rem;font-weight:600;display:flex}.mlp-tool-btn:hover:not(:disabled){background:var(--bg-app);color:var(--primary)}.mlp-tool-btn:disabled{opacity:.4;cursor:not-allowed}.mlp-list{flex:1;padding:6px;overflow-y:auto}.mlp-empty{text-align:center;color:var(--text-muted);padding:18px 12px;font-size:.8rem}.mlp-row{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:9px;align-items:center;gap:5px;padding:6px;transition:background .12s,border-color .12s;display:flex;position:relative}.mlp-row+.mlp-row{margin-top:2px}.mlp-row:hover{background:#0000000a}.mlp-row.selected{background:#3b82f61f}.mlp-row.active{background:#3b82f612;border-color:#3b82f68c}.mlp-row.hidden .mlp-name,.mlp-row.dragging{opacity:.45}.mlp-row.drop-target:before{content:"";background:var(--primary);border-radius:2px;height:2px;position:absolute;top:-2px;left:6px;right:6px}.mlp-grip{color:#cbd5e1;cursor:grab;flex-shrink:0}.mlp-row:hover .mlp-grip{color:#94a3b8}.mlp-active-badge{text-transform:uppercase;letter-spacing:.4px;color:var(--primary);background:#3b82f624;border-radius:6px;padding:1px 5px;font-size:.6rem;font-weight:700}.mlp-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;flex:1;align-items:center;gap:6px;font-size:.82rem;display:flex;overflow:hidden}.mlp-count{color:var(--text-muted);text-align:center;background:#0000000f;border-radius:8px;min-width:16px;padding:0 6px;font-size:.66rem}.mlp-name-input{border:1px solid var(--primary);border-radius:6px;outline:none;flex:1;padding:2px 6px;font-size:.82rem}.mlp-actions{opacity:0;gap:1px;transition:opacity .15s;display:flex}.mlp-row:hover .mlp-actions,.mlp-row.selected .mlp-actions,.mlp-row.active .mlp-actions{opacity:1}.mlp-icon-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:3px;display:flex}.mlp-icon-btn:hover:not(:disabled){color:var(--primary);background:#fff}.mlp-icon-btn.accent{color:var(--primary)}.mlp-icon-btn.danger:hover:not(:disabled){color:#dc2626}.mlp-icon-btn:disabled{opacity:.3;cursor:not-allowed}.mlp-footer{color:var(--text-muted);border-top:1px solid #0000000d;padding:8px 12px;font-size:.72rem}.mirar-live-panel{z-index:50;background:var(--surface,#fff);border:1px solid #00000014;border-radius:14px;flex-direction:column;gap:10px;width:280px;padding:14px;display:flex;position:absolute;top:64px;left:12px;box-shadow:0 12px 36px #0000002e}.mirar-live-head{justify-content:space-between;align-items:center;font-size:.92rem;font-weight:600;display:flex}.mirar-live-head>span{align-items:center;gap:7px;display:inline-flex}.mirar-live-x{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;padding:2px}.mirar-live-x:hover{background:#0000000f}.mirar-live-hint{color:var(--text-muted);margin:0;font-size:.78rem;line-height:1.4}.mirar-live-primary{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;padding:9px;font-weight:600}.mirar-live-primary:hover{filter:brightness(1.05)}.mirar-live-or{text-align:center;color:var(--text-muted);font-size:.72rem}.mirar-live-join{gap:6px;display:flex}.mirar-live-join input{letter-spacing:2px;text-transform:uppercase;border:1px solid #0000001f;border-radius:8px;flex:1;min-width:0;padding:8px;font-family:monospace}.mirar-live-join button{cursor:pointer;background:#0000000f;border:none;border-radius:8px;padding:8px 12px;font-weight:600}.mirar-live-join button:hover{background:#0000001f}.mirar-live-status{align-items:center;gap:8px;font-size:.85rem;font-weight:600;display:flex}.mirar-live-dot{background:#f59e0b;border-radius:50%;width:9px;height:9px}.mirar-live-dot.on{background:#16a34a;box-shadow:0 0 0 3px #16a34a2e}.mirar-live-code{background:#0000000a;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;display:flex}.mirar-live-code code{letter-spacing:4px;flex:1;font-size:1.3rem;font-weight:700}.mirar-live-copy{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;padding:4px}.mirar-live-copy:hover{color:var(--primary);background:#00000014}.mirar-live-peers{color:var(--text-muted);align-items:center;gap:6px;font-size:.78rem;display:flex}.mirar-live-stop{color:#dc2626;cursor:pointer;background:#dc26260f;border:1px solid #dc26264d;border-radius:10px;width:100%;padding:8px;font-weight:600}.mirar-live-stop:hover{background:#dc26261f}.img-drop-backdrop{z-index:2400;background:0 0;position:fixed;inset:0}.img-drop-chooser{background:var(--surface,#fff);-webkit-user-select:none;user-select:none;border:1px solid #00000014;border-radius:14px;width:240px;padding:10px;animation:.12s ease-out imgDropIn;position:fixed;box-shadow:0 12px 40px #00000038}@keyframes imgDropIn{0%{opacity:0;transform:translateY(-4px)scale(.97)}to{opacity:1;transform:none}}.img-drop-title{color:var(--text-muted,#64748b);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;padding:2px 4px 8px;font-size:.78rem;font-weight:600;display:flex;overflow:hidden}.img-drop-close{width:22px;height:22px;color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;place-items:center;margin-left:auto;display:grid}.img-drop-close:hover{color:var(--text,#0f172a);background:#00000014}.img-drop-actions{gap:8px;display:flex}.img-drop-btn{color:var(--text,#0f172a);cursor:pointer;background:#00000005;border:1px solid #00000014;border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:6px;padding:14px 8px;font-size:.8rem;font-weight:600;transition:background .12s,border-color .12s,transform 80ms;display:flex}.img-drop-btn:hover{background:var(--primary-soft,#5c42e51a);border-color:var(--primary,#d94e1f);color:var(--primary,#d94e1f)}.img-drop-btn:active{transform:scale(.96)}.mfp-shortcuts-btn{cursor:pointer;width:100%;color:var(--text-main);background:#fff;border:1px solid #00000014;border-radius:9px;align-items:center;gap:8px;padding:9px 12px;font-size:.82rem;font-weight:600;transition:background .12s,border-color .12s;display:flex}.mfp-shortcuts-btn:hover{background:var(--primary-soft,#5c42e514);border-color:var(--primary,#d94e1f)}.mfp-shortcuts-btn span{text-align:left;flex:1}.mfp-kbd,.msc-kbd{color:#475569;background:#f1f5f9;border:1px solid #d8dee9;border-bottom-width:2px;border-radius:5px;justify-content:center;align-items:center;min-width:18px;height:20px;padding:0 5px;font-family:ui-monospace,monospace;font-size:.7rem;font-weight:700;display:inline-flex}.msc-kbd-empty{opacity:.5;font-weight:500}.mirar-shortcuts-panel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:60;background:#fffffff7;border:1px solid #00000012;border-radius:16px;flex-direction:column;width:380px;max-height:calc(100vh - 96px);font-family:Inter,sans-serif;display:flex;position:absolute;top:60px;right:16px;box-shadow:0 12px 50px #00000029}.msc-header{border-bottom:1px solid #0000000f;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.msc-title{color:var(--text-main);align-items:center;gap:8px;font-size:.95rem;font-weight:700;display:flex}.msc-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;padding:4px;display:flex}.msc-close:hover{background:var(--bg-app,#f1f5f9);color:var(--text-main)}.msc-search{color:#64748b;background:#f1f5f9;border-radius:9px;align-items:center;gap:8px;margin:10px 14px;padding:7px 10px;display:flex}.msc-search input{color:var(--text-main);background:0 0;border:none;outline:none;flex:1;font-size:.85rem}.msc-body{flex:1;padding:0 6px 6px;overflow-y:auto}.msc-group{padding:4px 8px 8px}.msc-group-label{text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;padding:8px 6px 4px;font-size:.66rem;font-weight:700}.msc-row{border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:7px 8px;display:flex}.msc-row:hover{background:#00000008}.msc-label{color:var(--text-main);flex:1;font-size:.82rem}.msc-keys{flex-shrink:0;align-items:center;gap:4px;display:flex}.msc-recording{color:var(--primary,#d94e1f);padding:0 4px;font-size:.72rem;font-weight:600}.msc-conflict{color:#f59e0b;display:flex}.msc-record{cursor:pointer;color:#475569;background:#fff;border:1px solid #d8dee9;border-radius:6px;padding:4px 8px;font-size:.7rem;font-weight:600}.msc-record:hover{border-color:var(--primary,#d94e1f);color:var(--primary,#d94e1f)}.msc-record.active{background:var(--primary,#d94e1f);color:#fff;border-color:var(--primary,#d94e1f)}.msc-reset{cursor:pointer;color:#94a3b8;background:0 0;border:none;border-radius:6px;padding:4px;display:flex}.msc-reset:hover{color:var(--text-main);background:#0000000f}.msc-footer{border-top:1px solid #0000000f;padding:10px 14px}.msc-reset-all{cursor:pointer;color:#475569;background:#fff;border:1px solid #00000014;border-radius:9px;justify-content:center;align-items:center;gap:7px;width:100%;padding:8px;font-size:.8rem;font-weight:600;display:flex}.msc-reset-all:hover{color:#dc2626;background:#fef2f2;border-color:#fca5a5}.mirar-design-dock{z-index:32;align-items:stretch;gap:8px;font-family:Inter,sans-serif;display:flex;position:absolute;top:68px;bottom:64px;left:10px}.mdd-rail{scrollbar-width:none;-ms-overflow-style:none;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffb8;border:1px solid #0000000f;border-radius:23px;flex-direction:column;align-self:center;align-items:center;gap:3px;width:46px;max-height:100%;padding:10px 4px;display:flex;overflow:visible auto;box-shadow:0 8px 32px #00000014}html[data-theme=dark] .mdd-rail{background:#1e293bc7;border-color:#ffffff14}.mdd-rail::-webkit-scrollbar{width:0;height:0;display:none}.mdd-rail-btn{cursor:pointer;color:#334155;background:0 0;border:none;border-radius:9px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;transition:background .12s,color .12s,transform .12s;animation:.32s cubic-bezier(.34,1.56,.64,1) both mdd-pop-in;display:flex}.mdd-rail-btn:active:not(:disabled){transform:scale(.92)}@keyframes mdd-pop-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.mdd-rail-btn{animation:none}}.mdd-rail-btn:hover:not(:disabled){color:var(--text-main);background:#0000000d}.mdd-rail-btn.active{background:var(--primary-soft,#5c42e51f);color:var(--primary,#d94e1f)}.mdd-rail-btn:disabled{cursor:default}html[data-theme=dark] .mdd-rail-btn{color:#cbd5e1}html[data-theme=dark] .mdd-rail-btn:hover:not(:disabled){background:#ffffff14}.mdd-rail-sep,.mdd-rail-spacer{background:0 0;border-top:1.5px dashed #00000024;flex:none;width:28px;height:0;margin:5px 0}html[data-theme=dark] .mdd-rail-sep,html[data-theme=dark] .mdd-rail-spacer{border-top-color:#ffffff29}.mdd-rail-group{justify-content:center;display:flex;position:relative}.mdd-variant-flyout{z-index:4002;background:#fff;border:1px solid #00000014;border-radius:12px;min-width:190px;padding:6px;position:absolute;top:-4px;left:calc(100% + 10px);box-shadow:0 12px 40px #0000002e}html[data-theme=dark] .mdd-variant-flyout{color:#cbd5e1;background:#1e293b;border-color:#ffffff1a}.mdd-flyout{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffffa;border:1px solid #0000000f;border-radius:14px;flex-direction:column;align-self:center;width:264px;min-height:0;max-height:100%;margin-left:8px;animation:.14s mdd-slide-in;display:flex;box-shadow:0 8px 40px #0000001f}html[data-theme=dark] .mdd-flyout{color:#cbd5e1;background:#1e293bf5;border-color:#ffffff14}html[data-theme=dark] .mdd-flyout-head{border-bottom-color:#ffffff14}@keyframes mdd-slide-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:none}}.mdd-flyout-head{border-bottom:1px solid #0000000d;flex:none;align-items:center;gap:4px;padding:12px 14px;display:flex}.mdd-flyout-title{color:var(--text-main);flex:auto;font-size:.9rem;font-weight:700}.mdd-lock.active{color:#fff;background:var(--primary)}.mdd-lock.active:hover{background:var(--primary);opacity:.9}.mdd-flyout-body{flex:auto;min-height:0;padding:10px 12px;overflow-y:auto}.mdd-flyout-body .mlp-list,.mdd-flyout-body .msc-body{max-height:none;overflow:visible}.mdd-flyout-body .mirar-shortcuts-panel,.mdd-flyout-body .mlp-list{background:0 0}.mdd-expand{cursor:pointer;color:#334155;background:#ffffffb8;border:1px solid #0000000f;border-radius:10px;justify-content:center;align-self:center;align-items:center;width:22px;height:44px;margin-top:12px;margin-left:8px;transition:all .15s;display:flex;box-shadow:0 4px 12px #00000014}.mdd-expand:hover{color:var(--primary,#d94e1f);background:#fff;transform:scale(1.05)}html[data-theme=dark] .mdd-expand{color:#cbd5e1;background:#1e293bc7;border-color:#ffffff14}html[data-theme=dark] .mdd-expand:hover{color:var(--primary,#d94e1f);background:#1e293bf2}.mdp-check-row{cursor:pointer;width:100%;color:var(--text-main);text-align:left;background:0 0;border:none;border-radius:7px;align-items:center;gap:8px;padding:7px 6px;font-size:.8rem;display:flex}.mdp-check-row:hover{background:#0000000a}.mdp-check-icon{width:16px;display:flex}body.mirar-left-dock .collab-fab{transition:left .16s,bottom .16s;bottom:12px;left:10px}body.mirar-left-dock--collapsed .collab-fab{bottom:12px;left:10px}.mirar-home-btn-left{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#475569;cursor:pointer;z-index:35;background:#fffffff7;border:1px solid #0000000f;border-radius:13px;justify-content:center;align-items:center;width:46px;height:46px;transition:all .15s;display:flex;position:absolute;top:12px;left:10px;box-shadow:0 8px 32px #00000014}.mirar-home-btn-left:hover{color:var(--text-main);background:#0000000a;transform:scale(1.03)}body.mirar-left-dock .mirar-nav-group{transition:left .16s,top .16s;top:12px;left:68px}.mdp-tile-grid{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.mdp-tile{cursor:pointer;color:#475569;background:#fff;border:1px solid #00000014;border-radius:9px;flex-direction:column;align-items:center;gap:3px;padding:8px 2px;display:flex}.mdp-tile:hover{border-color:var(--primary,#d94e1f);color:var(--primary,#d94e1f)}.mdp-tile.active{background:var(--primary,#d94e1f);border-color:var(--primary,#d94e1f);color:#fff}.mdp-tile-icon{display:flex}.mdp-tile-label{font-size:.6rem}.mdp-row-btn{cursor:pointer;width:100%;color:var(--text-main);background:#fff;border:1px solid #00000014;border-radius:8px;align-items:center;gap:8px;margin-bottom:5px;padding:8px 10px;font-size:.8rem;font-weight:600;display:flex}.mdp-row-btn:hover{background:var(--primary-soft,#5c42e514);border-color:var(--primary,#d94e1f)}.mdp-row-btn.active{background:var(--primary,#d94e1f);border-color:var(--primary,#d94e1f);color:#fff}.mdp-row{align-items:center;gap:8px;display:flex}.mdp-sublabel{text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;margin:8px 0 5px;font-size:.66rem;font-weight:700}.mdp-num{color:#475569;text-align:right;min-width:34px;font-family:ui-monospace,monospace;font-size:.75rem}.mdp-swatch-row{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.mdp-swatch{cursor:pointer;border:1.5px solid #e5e7eb;border-radius:50%;width:22px;height:22px;padding:0}.mdp-swatch.active{border:2px solid var(--primary,#d94e1f)}.mdp-divider{background:#0000000f;height:1px;margin:8px 0}.mdp-hint{color:#94a3b8;margin-top:7px;font-size:.68rem;line-height:1.35}html[data-theme=dark] .mdp-tile,html[data-theme=dark] .mdp-row-btn,html[data-theme=dark] .mfp-shortcuts-btn{color:#e2e8f0;background:#ffffff0f;border-color:#ffffff1f}html[data-theme=dark] .mdp-tile:hover,html[data-theme=dark] .mdp-row-btn:hover{border-color:var(--primary,#d94e1f)}html[data-theme=dark] .mdp-check-row:hover{background:#ffffff0f}html[data-theme=dark] .mdp-num{color:#cbd5e1}html[data-theme=dark] .mdp-swatch{border-color:#fff3}html[data-theme=dark] .mdp-divider{background:#ffffff1a}.mdl-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.mdl-thumb{aspect-ratio:1;cursor:grab;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:0;position:relative;overflow:hidden}.mdl-thumb:hover{border-color:var(--primary,#d94e1f)}.mdl-thumb:active{cursor:grabbing}.mdl-thumb img{object-fit:cover;width:100%;height:100%;display:block}.mdl-thumb-ph{background:linear-gradient(135deg,#eef2f7,#e2e8f0);width:100%;height:100%;display:block}.mdl-badge{color:#fff;letter-spacing:.03em;background:#0f172ac7;border-radius:4px;padding:1px 4px;font-size:.55rem;font-weight:700;position:absolute;bottom:3px;right:3px}.slide-strip{z-index:45;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffffff5;border:1px solid #0f172a0f;border-radius:14px;align-items:center;gap:10px;max-width:min(90vw,1100px);padding:8px 10px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0f172a29}.slide-strip-list{align-items:center;gap:8px;padding:2px;display:flex;overflow-x:auto}.slide-chip{cursor:pointer;touch-action:none;background:#fff;border:2px solid #e2e8f0;border-radius:8px;flex:none;justify-content:center;align-items:center;width:104px;height:60px;padding:0;transition:transform .15s,box-shadow .15s,opacity .15s;display:flex;position:relative;overflow:visible}.slide-chip:hover{border-color:#cbd5e1}.slide-chip.active{border-color:var(--primary,#d94e1f);box-shadow:0 0 0 3px #5c42e526}.slide-chip.dragging{opacity:.4;border-style:dashed;border-color:var(--primary,#d94e1f);cursor:grabbing;transform:scale(.92)}.slide-strip-list.dragging .slide-chip:not(.dragging):not(.slide-chip-add){cursor:grabbing}.slide-drop-line{background:var(--primary,#d94e1f);border-radius:3px;flex:none;align-self:stretch;width:4px;margin:-2px 2px;animation:.8s ease-in-out infinite slide-drop-pulse;box-shadow:0 0 0 2px #d94e1f33,0 0 10px #d94e1f8c}@keyframes slide-drop-pulse{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.55;transform:scaleY(.9)}}.slide-chip-num{color:#fff;background:#64748b;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.68rem;font-weight:700;display:flex;position:absolute;top:-8px;left:-6px}.slide-chip.active .slide-chip-num{background:var(--primary,#d94e1f)}.slide-chip-thumb{background:linear-gradient(135deg,#f8fafc,#eef2f7);border-radius:4px;width:86px;height:48px}.slide-chip-actions{gap:2px;display:none;position:absolute;top:2px;right:2px}.slide-chip:hover .slide-chip-actions{display:flex}.slide-chip-actions button{color:#fff;cursor:pointer;background:#0f172ab3;border:none;border-radius:4px;justify-content:center;align-items:center;width:18px;height:18px;padding:0;display:flex}.slide-chip-actions button:hover{background:#ef4444}.slide-chip-add{color:#64748b;border-style:dashed;width:48px}.slide-chip-add:hover{color:var(--primary,#d94e1f);border-color:var(--primary,#d94e1f)}.slide-strip-focus{cursor:pointer;background:var(--primary,#d94e1f);color:#fff;border:none;border-radius:10px;flex:none;align-items:center;gap:6px;padding:8px 12px;font-size:.82rem;font-weight:600;display:inline-flex}.slide-strip-focus:disabled{opacity:.4;cursor:default}.present-overlay{z-index:40;pointer-events:none;position:absolute;inset:0}.present-mask{pointer-events:none;background:#0f172ab8;position:absolute}.present-overlay--full{z-index:99990}.present-overlay--full .present-mask{background:#0b0e14}body.mirar-presenting .hub-canvas>:not(.mirar-board-canvas):not(.present-overlay),body.mirar-presenting .mirar-app>:not(.mirar-board-canvas):not(.present-overlay),body.hub-focus-mode .hub-dock,body.hub-focus-mode .hub-float-widget,body.hub-focus-mode .floating-panel,body.hub-focus-mode .ai-panel,body.hub-focus-mode .app-account-widget,body.hub-focus-mode .collab-fab,body.hub-focus-mode .hub-search-overlay,body.hub-focus-mode .hub-searchbar,body.hub-focus-mode .social-iconbtn{display:none!important}.present-controls{z-index:2;pointer-events:auto;background:#0f172aeb;border-radius:12px;align-items:center;gap:6px;padding:6px 8px;display:flex;position:absolute;top:16px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0000004d}.present-go{white-space:nowrap;align-items:center;gap:5px;height:34px;margin-left:6px;padding:0 12px;font-size:.82rem;font-weight:600;display:inline-flex;background:var(--primary,#d94e1f)!important;color:#fff!important;border-radius:8px!important;width:auto!important}.present-go:hover{filter:brightness(1.08)}.present-controls button{color:#e2e8f0;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.present-controls button:hover:not(:disabled){color:#fff;background:#ffffff1f}.present-controls button:disabled{opacity:.35;cursor:default}.present-counter{color:#fff;text-align:center;min-width:52px;padding:0 8px;font-size:.85rem;font-weight:600}.present-exit{margin-left:4px;color:#fca5a5!important;background:#ef444433!important}.present-exit:hover{color:#fff!important;background:#ef4444!important}.card-focus-bar{z-index:2400;pointer-events:auto;background:#0f172aeb;border-radius:12px;align-items:center;gap:6px;padding:6px 8px;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0000004d}.card-focus-bar button{color:#e2e8f0;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;height:34px;padding:0 12px;font-size:.82rem;font-weight:600;display:inline-flex}.card-focus-bar button:hover{color:#fff;background:#ffffff1f}.card-focus-bar .card-focus-exit{color:#fca5a5;background:#ef444433;justify-content:center;width:34px;margin-left:4px;padding:0}.card-focus-bar .card-focus-exit:hover{color:#fff;background:#ef4444}.export-backdrop{z-index:100000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.export-modal{background:#fff;border-radius:16px;width:380px;max-width:92vw;max-height:88vh;padding:18px 18px 16px;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.export-head{color:#0f172a;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:1rem;font-weight:700;display:flex}.export-head>span{align-items:center;gap:8px;display:inline-flex}.export-x{cursor:pointer;color:#64748b;background:#f1f5f9;border:none;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.export-x:hover{background:#e2e8f0}.export-section{margin-bottom:14px}.export-label{text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;margin-bottom:7px;font-size:.72rem;font-weight:700}.export-formats{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.export-fmt{text-align:center;cursor:pointer;color:#475569;background:#fff;border:2px solid #e2e8f0;border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:10px 6px;display:flex}.export-fmt b{color:#0f172a;font-size:.82rem}.export-fmt span{color:#94a3b8;font-size:.6rem;line-height:1.2}.export-fmt:hover{border-color:#cbd5e1}.export-fmt.active{border-color:var(--primary,#d94e1f);background:#5c42e50d}.export-fmt.active b,.export-fmt.active{color:var(--primary,#d94e1f)}.export-seg{gap:6px;display:flex}.export-seg button{cursor:pointer;color:#475569;background:#fff;border:2px solid #e2e8f0;border-radius:9px;flex-direction:column;flex:1;align-items:center;gap:1px;padding:8px 6px;font-size:.8rem;font-weight:600;display:flex}.export-seg button small{color:#94a3b8;font-size:.6rem;font-weight:500}.export-seg button:hover{border-color:#cbd5e1}.export-seg button.active{border-color:var(--primary,#d94e1f);color:var(--primary,#d94e1f);background:#5c42e50d}.export-range{width:100%;accent-color:var(--primary,#d94e1f)}.export-error{color:#dc2626;background:#fef2f2;border-radius:8px;margin-bottom:12px;padding:8px 10px;font-size:.78rem}.export-go{cursor:pointer;background:var(--primary,#d94e1f);color:#fff;border:none;border-radius:11px;justify-content:center;align-items:center;gap:8px;width:100%;height:44px;font-size:.9rem;font-weight:700;display:flex}.export-go:hover:not(:disabled){filter:brightness(1.07)}.export-go:disabled{opacity:.5;cursor:default}.export-spin{animation:.8s linear infinite export-spin}@keyframes export-spin{to{transform:rotate(360deg)}}.canvas-studio{z-index:4000;pointer-events:none;position:fixed;inset:0}.canvas-studio>*{pointer-events:auto}.canvas-size{color:#64748b;align-items:center;gap:6px;font-size:12px;display:flex}.canvas-size input[type=range]{width:100%}.canvas-size select{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;flex:1;height:26px;font-size:12px}.canvas-brush-presets{flex-wrap:wrap;gap:4px;display:flex}.canvas-brush-preset{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:4px 8px;font-size:11px}.canvas-brush-preset:hover{background:#eef2ff;border-color:#c7d2fe}.canvas-brush-sect{letter-spacing:.04em;text-transform:uppercase;color:#94a3b8;margin-top:4px;font-size:10px;font-weight:700}.canvas-exit{color:#fff;cursor:pointer;background:#315cff;border:none;border-radius:10px;align-items:center;gap:5px;height:36px;padding:0 14px;font-weight:600;display:inline-flex;position:fixed;top:14px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #0003}.canvas-clear-sel{cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:6px;font-size:12px}.canvas-desel-btn{color:#334155;cursor:pointer;pointer-events:auto;background:#fff;border:1px solid #cbd5e1;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:12px;line-height:1;display:flex;position:absolute;transform:translate(-25%,-75%);box-shadow:0 2px 8px #0000002e}.canvas-desel-btn:hover{color:#fff;background:#315cff;border-color:#315cff}.canvas-xform-panel{flex-direction:column;gap:8px;padding:4px 2px;display:flex}.canvas-xform-panel button{cursor:pointer;justify-content:center;align-items:center;gap:6px;display:inline-flex}.canvas-xform-act{color:#fff;background:#315cff;border:none;border-radius:8px;height:34px;font-size:12px;font-weight:600}.canvas-xform-act.active{background:#16a34a}.canvas-xform-flips{gap:6px;display:flex}.canvas-xform-flipbtn{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex:1;height:32px;font-size:11px}.canvas-xform-flipbtn:hover{background:#eef2ff;border-color:#c7d2fe}.canvas-xform-hint{color:#94a3b8;font-size:11px;line-height:1.35}.canvas-crop-overlay{z-index:4001;pointer-events:none;position:fixed;inset:0}.canvas-crop-frame{pointer-events:none;border:1.5px dashed #315cff;position:absolute;box-shadow:0 0 0 100vmax #0f172a47}.canvas-crop-handle{pointer-events:auto;background:#fff;border:1.5px solid #315cff;border-radius:2px;width:12px;height:12px;position:absolute;transform:translate(-50%,-50%)}.canvas-crop-bar{pointer-events:auto;white-space:nowrap;background:#fffffff7;border:1px solid #0000000f;border-radius:10px;align-items:center;gap:8px;padding:6px 8px;display:inline-flex;position:absolute;transform:translate(-50%);box-shadow:0 6px 20px #0000002e}.canvas-crop-dim{color:#64748b;font-variant-numeric:tabular-nums;font-size:12px}.canvas-crop-apply{cursor:pointer;color:#fff;background:#315cff;border:none;border-radius:8px;align-items:center;gap:5px;height:28px;padding:0 12px;font-size:12px;font-weight:600;display:inline-flex}.canvas-crop-cancel{cursor:pointer;color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;height:28px;padding:0 10px;font-size:12px}.cp-dock{pointer-events:none;z-index:5;flex-direction:column;gap:6px;width:216px;padding:4px;display:flex;position:fixed;top:60px;bottom:12px;overflow:visible}.cp-colhandle{cursor:grab;pointer-events:auto;-webkit-user-select:none;user-select:none;color:#fffc;background:#0f172a59;border-radius:8px;flex:none;justify-content:center;align-items:center;gap:6px;height:20px;font-size:10px;font-weight:700;display:flex}.cp-colhandle:active{cursor:grabbing}.cp-colscroll{pointer-events:none;scrollbar-width:thin;flex-direction:column;flex:1;gap:10px;min-height:0;display:flex;overflow:visible auto}.cp-collapse{color:#cbd5e1;cursor:pointer;background:0 0;border:none;padding:2px;display:flex}.cp-collapse:hover{color:#64748b}.cp-dock--right{right:12px}.cp-dock--left{left:12px}.cp-floating{z-index:6;position:fixed}.cp-dock .cp-panel,.cp-floating .cp-panel,.cp-colscroll .cp-panel{pointer-events:auto}.cp-dock .cp-panel{width:100%}.cp-panel--dragging{pointer-events:none}.cp-panel{background:#fff;border-radius:12px;flex-direction:column;width:200px;display:flex;position:relative;box-shadow:0 8px 26px #00000038}.cp-header{cursor:grab;-webkit-user-select:none;user-select:none;letter-spacing:.04em;text-transform:uppercase;color:#94a3b8;border-bottom:1px solid #f1f5f9;border-radius:12px 12px 0 0;align-items:center;gap:6px;padding:7px 10px 7px 12px;font-size:11px;font-weight:700;display:flex}.cp-header:active{cursor:grabbing}.cp-header--tabs{text-transform:none;gap:2px;padding:4px 6px}.cp-title{flex:1}.cp-tab{cursor:grab;color:#94a3b8;border-radius:7px;padding:4px 8px;font-size:11px;font-weight:700}.cp-tab.is-active{color:#475569;background:#f1f5f9}.cp-reset{color:#cbd5e1;cursor:pointer;background:0 0;border:none;padding:2px;display:flex}.cp-reset:hover{color:#64748b}.cp-body{flex-direction:column;gap:10px;padding:10px 12px 12px;display:flex;overflow:auto}.cp-resize-corner{cursor:nwse-resize;z-index:2;width:14px;height:14px;position:absolute;bottom:0;right:0}.cp-resize-corner:after{content:"";border-bottom:2px solid #cbd5e1;border-right:2px solid #cbd5e1;width:6px;height:6px;position:absolute;bottom:3px;right:3px}.cp-resize-h{cursor:ns-resize;z-index:2;height:6px;position:absolute;bottom:0;left:8px;right:8px}.cp-dock-resize{cursor:ew-resize;pointer-events:auto;z-index:7;width:8px;position:absolute;top:0;bottom:0}.cp-dock-resize--left{right:0}.cp-dock-resize--right{left:0}.cp-snap-hint{z-index:9998;pointer-events:none;background:#315cff2e;border:2px solid #315cff;border-radius:10px;position:fixed}.cps{flex-direction:column;gap:8px;display:flex}.cps-sv{cursor:crosshair;touch-action:none;border-radius:8px;width:100%;height:120px;position:relative}.cps-sv-knob{pointer-events:none;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0006}.cps-hue{cursor:pointer;touch-action:none;background:linear-gradient(90deg,red 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);border-radius:7px;width:100%;height:14px;position:relative}.cps-hue-knob{pointer-events:none;border:2px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0006}.cps-row{align-items:center;gap:8px;display:flex}.cps-preview{border:1px solid #e2e8f0;border-radius:6px;flex-shrink:0;width:28px;height:28px}.cps-hex{border:1px solid #e2e8f0;border-radius:6px;flex:1;min-width:0;padding:5px 8px;font-family:monospace;font-size:12px}.cps-swatches{grid-template-columns:repeat(10,1fr);gap:4px;display:grid}.cps-swatch{aspect-ratio:1;cursor:pointer;border:1px solid #0000001a;border-radius:4px;width:100%;padding:0}.canvas-sheet-wrap{position:fixed;box-shadow:0 0 0 1px #315cff80,0 12px 48px #00000059}.canvas-sheet-wrap.is-transparent{background:repeating-conic-gradient(#e5e5e5 0% 25%,#fff 0% 50%) 0 0/16px 16px}.canvas-sheet-clip{isolation:isolate;position:absolute;inset:0;overflow:hidden}.canvas-sheet-group,.canvas-sheet-adjust{pointer-events:none}.canvas-sheet-layer{image-rendering:pixelated}.canvas-capture{touch-action:none;position:absolute;inset:0}.canvas-lasso-svg{pointer-events:none;position:absolute;inset:0}.mlp-raster-controls{align-items:center;gap:8px;padding:2px 10px 8px 30px;display:flex}.mlp-raster-controls input[type=range]{min-width:0;accent-color:var(--primary,#5c42e5);flex:1}.mlp-raster-controls select{border:1px solid #e2e8f0;border-radius:6px;max-width:110px;padding:2px 4px;font-size:11px}.mirar-focus-hint{z-index:4000;pointer-events:none;color:#fff;white-space:nowrap;background:#0f172ae0;border-radius:999px;padding:4px 10px;font-size:12px;position:fixed;box-shadow:0 2px 8px #00000040}.canvas-brush-ring{pointer-events:none;border:1px solid #000000b3;border-radius:50%;outline:1px solid #ffffffb3;position:absolute;transform:translate(-50%,-50%)}.canvas-xform-layer{pointer-events:none;position:absolute;inset:0}.canvas-xform-bitmap{pointer-events:auto;cursor:move;position:absolute;top:0;left:0}.canvas-xform-box{fill:none;stroke:#315cff;stroke-width:1px;stroke-dasharray:4 3}.canvas-xform-h{box-sizing:border-box;pointer-events:auto;cursor:pointer;background:#fff;border:1px solid #315cff;width:10px;height:10px;margin:-5px 0 0 -5px;position:absolute}.canvas-xform-rot{pointer-events:auto;cursor:grab;border-radius:50%;width:22px;height:22px;margin:-11px 0 0 -11px;position:absolute}.canvas-xform-mesh{stroke:#315cff80;stroke-width:1px;fill:none}.canvas-xform-mesh-pt{pointer-events:auto;cursor:move;background:#315cff;border:1.5px solid #fff;border-radius:50%;width:9px;height:9px;margin:-5px 0 0 -5px;position:absolute}.image-focus-chooser{z-index:4200;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a8c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ifc-card{text-align:center;background:#fff;border-radius:18px;width:460px;max-width:92vw;padding:22px;position:relative;box-shadow:0 24px 70px #00000059}.ifc-close{cursor:pointer;color:#475569;background:#f1f5f9;border:none;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;position:absolute;top:12px;right:12px}.ifc-thumb{background-position:50%;background-size:cover;border-radius:12px;width:100%;height:150px;margin-bottom:16px}.ifc-title{color:#0f172a;font-size:18px;font-weight:700}.ifc-sub{color:#64748b;margin-top:4px;font-size:13px}.ifc-actions{gap:12px;margin-top:18px;display:flex}.ifc-btn{cursor:pointer;color:#315cff;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:6px;padding:18px 12px;transition:border-color .15s,background .15s;display:flex}.ifc-btn:hover{background:#eef2ff;border-color:#315cff}.ifc-btn-t{color:#0f172a;font-size:14px;font-weight:600}.ifc-btn-s{color:#64748b;font-size:11px;font-weight:400}.image-quickedit .iqe-stage{z-index:0;background:#0f172ac7;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.iqe-preview{background:#0b1220;border-radius:8px;max-width:min(78vw,100%);max-height:86vh;box-shadow:0 10px 40px #00000073}.iqe-quickbtns{gap:8px;margin-bottom:8px;display:flex}.iqe-quickbtns button{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:5px;height:30px;font-size:12px;display:inline-flex}.iqe-quickbtns button:hover{color:#315cff;border-color:#315cff}.iqe-presets,.iqe-aspects{flex-wrap:wrap;gap:6px;display:flex}.iqe-preset,.iqe-aspect{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:6px 10px;font-size:12px}.iqe-preset:hover,.iqe-aspect:hover{color:#315cff;border-color:#315cff}.iqe-aspects{margin-top:8px}.iqe-topbar{z-index:10;gap:10px;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%)}.iqe-btn{cursor:pointer;border:1px solid #0000;border-radius:10px;align-items:center;gap:6px;height:36px;padding:0 16px;font-weight:600;display:inline-flex;box-shadow:0 6px 20px #0003}.iqe-btn--primary{color:#fff;background:#315cff}.iqe-btn--primary:hover{background:#2348d8}.iqe-btn--ghost{color:#315cff;background:#fff;border-color:#315cff}.iqe-btn--ghost:hover{background:#eef2ff}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ai-canvas-panel textarea{font-family:inherit}.hub-task-pool{z-index:9000;background:#fff;border-radius:14px;flex-direction:column;width:300px;max-height:calc(100vh - 120px);animation:.16s hub-pool-in;display:flex;position:fixed;top:72px;right:16px;overflow:hidden;box-shadow:0 14px 40px #0000002e,0 0 0 1px #0000000d}@keyframes hub-pool-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.hub-task-pool-head{border-bottom:1px solid #f1f5f9;align-items:center;gap:8px;padding:12px 14px;display:flex}.hub-task-pool-title{color:#1e293b;font-size:.95rem;font-weight:700}.hub-task-pool-count{color:#64748b;margin-left:auto;font-size:.75rem}.hub-task-pool-close{cursor:pointer;color:#94a3b8;background:0 0;border:none;border-radius:6px;padding:2px;display:flex}.hub-task-pool-close:hover{color:#475569;background:#f1f5f9}.hub-task-pool-overdue-note{color:#b91c1c;background:#fef2f2;align-items:center;gap:5px;padding:6px 14px;font-size:.72rem;font-weight:600;display:flex}.hub-task-pool-list{padding:6px;overflow-y:auto}.hub-task-pool-empty{text-align:center;color:#94a3b8;padding:24px 12px;font-size:.85rem}.hub-task-pool-row{cursor:grab;border-radius:9px;align-items:center;gap:8px;padding:8px;transition:background .1s;display:flex}.hub-task-pool-row:hover{background:#f8fafc}.hub-task-pool-row:active{cursor:grabbing}.hub-task-pool-row.is-overdue{background:#fff7f7}.hub-task-pool-grip{color:#cbd5e1;flex-shrink:0}.hub-task-pool-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.hub-task-pool-main{flex:1;min-width:0}.hub-task-pool-name{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;font-size:.84rem;font-weight:600;overflow:hidden}.hub-task-pool-meta{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.hub-task-pool-date.over{color:#ef4444;font-weight:600}.connect-picker-backdrop{z-index:10001;background:#0f172a40;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.connect-picker{background:#fff;border-radius:14px;flex-direction:column;width:340px;max-height:70vh;display:flex;overflow:hidden;box-shadow:0 20px 50px #00000040}.connect-picker-head{color:#1e293b;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:12px 14px;font-size:.95rem;font-weight:700;display:flex}.connect-picker-close{cursor:pointer;color:#94a3b8;background:0 0;border:none;display:flex}.connect-picker-search{color:#64748b;background:#f1f5f9;border-radius:9px;align-items:center;gap:8px;margin:8px;padding:8px 12px;display:flex}.connect-picker-search input{color:#1e293b;background:0 0;border:none;outline:none;flex:1;font-size:.85rem}.connect-picker-list{padding:4px 8px 10px;overflow-y:auto}.connect-picker-section{text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;padding:8px 8px 4px;font-size:.68rem;font-weight:700}.connect-picker-empty{text-align:center;color:#94a3b8;padding:20px;font-size:.85rem}.connect-picker-row{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;width:100%;padding:8px;transition:background .1s;display:flex}.connect-picker-row:hover{background:#f1f5f9}.connect-picker-icon{justify-content:center;width:18px;display:flex}.connect-picker-label{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.85rem;font-weight:500;overflow:hidden}.connect-picker-hint{color:#f59e0b;flex-shrink:0}.loose-editor-backdrop{z-index:10002;background:#0f172a66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loose-editor{background:#fff;border-radius:16px;flex-direction:column;width:min(860px,94vw);height:min(720px,92vh);display:flex;overflow:hidden;box-shadow:0 24px 60px #00000052}.loose-editor-head{border-bottom:1px solid #f1f5f9;align-items:center;gap:10px;padding:10px 14px;display:flex}.loose-editor-icon{font-size:1.1rem}.loose-editor-title{color:#1e293b;background:0 0;border:none;outline:none;flex:1;font-size:.95rem;font-weight:700}.loose-editor-close{cursor:pointer;color:#94a3b8;background:0 0;border:none;border-radius:6px;padding:4px;display:flex}.loose-editor-close:hover{color:#475569;background:#f1f5f9}.loose-editor-body{flex:1;min-height:0;display:flex}.loose-editor-body>*{flex:1;min-height:0}.nb-note-item.is-ref{border-left:3px solid #6366f1}.nb-note-ref-badge{color:#6366f1;text-transform:uppercase;letter-spacing:.04em;font-size:.66rem;font-weight:700}.bp,.rlp,.tp{color:var(--text,#1e293b);flex-direction:column;gap:6px;font-size:12px;display:flex}.pc-row{align-items:center;gap:8px;min-height:22px;padding:2px 0;display:flex}.pc-row.is-disabled{opacity:.45;pointer-events:none}.pc-label{width:92px;color:var(--text-muted,#64748b);text-overflow:ellipsis;white-space:nowrap;flex:none;font-size:11px;line-height:1.25;overflow:hidden}.pc-label--wide{text-align:left;flex:1;width:auto}.pc-value{text-align:right;font-variant-numeric:tabular-nums;width:46px;color:var(--text,#334155);flex:none;font-size:10px}.pc-track{cursor:ew-resize;touch-action:none;flex:1;align-items:center;min-width:40px;height:18px;display:flex;position:relative}.pc-track-bg{background:#64748b38;border-radius:2px;width:100%;height:3px}.pc-track-fill{background:var(--accent,#d94e1f);border-radius:2px;height:3px;position:absolute;left:0}.pc-knob{border:1.5px solid var(--text,#334155);pointer-events:none;background:#fff;border-radius:50%;width:12px;height:12px;margin-left:-6px;position:absolute}.pc-toggle{cursor:pointer;background:0 0;border:none;width:100%}.pc-switch{background:#64748b4d;border-radius:8px;flex:none;width:26px;height:15px;transition:background .15s;position:relative}.pc-switch.is-on{background:var(--accent,#d94e1f)}.pc-switch i{background:#fff;border-radius:50%;width:11px;height:11px;transition:left .15s;position:absolute;top:2px;left:2px}.pc-switch.is-on i{left:13px}.pc-seg{flex-wrap:wrap;flex:1;gap:3px;display:flex}.pc-seg button{cursor:pointer;background:var(--surface-2,#f1f5f9);color:var(--text-muted,#64748b);border:none;border-radius:7px;padding:3px 7px;font-size:10px}.pc-seg button.is-active{background:var(--text,#1e293b);color:#fff}.pc-select{border:1px solid var(--border,#e2e8f0);background:var(--surface-2,#f8fafc);min-width:0;color:inherit;border-radius:8px;flex:1;padding:4px 6px;font-size:11px}.pc-sect{border-top:1px solid var(--border,#e9edf2);padding:5px 0 2px}.pc-sect.is-off .pc-sect-title{color:var(--text-muted,#94a3b8)}.pc-sect-head{align-items:center;gap:8px;display:flex}.pc-sect-spacer{flex:none;width:14px}.pc-check{cursor:pointer;color:#fff;background:0 0;border:1.5px solid #64748b80;border-radius:4px;flex:none;width:14px;height:14px;padding:0;font-size:9px;line-height:1}.pc-check.is-on{background:var(--accent,#d94e1f);border-color:var(--accent,#d94e1f)}.pc-sect-title{cursor:pointer;letter-spacing:.08em;text-transform:uppercase;color:var(--text,#334155);background:0 0;border:none;flex:1;justify-content:space-between;align-items:center;padding:2px 0;font-size:10px;font-weight:700;display:flex}.pc-caret{opacity:.5}.pc-sect-body{padding:4px 0 2px 22px}.bp-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.bp-head-txt{flex-direction:column;min-width:0;display:flex}.bp-head-txt strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.bp-head-txt span{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted,#94a3b8);font-size:9px}.bp-btn{border:1px solid var(--border,#e2e8f0);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;color:inherit;background:0 0;border-radius:8px;padding:5px 8px;font-size:9px}.bp-btn--solid{background:var(--text,#1e293b);color:#fff;border-color:#0000}.bp-btn:disabled{opacity:.4;cursor:not-allowed}.bp-preview{background:var(--surface-2,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:10px;width:100%;height:60px;display:block}.bp-preview-meta{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted,#94a3b8);justify-content:space-between;font-size:9px;display:flex}.bp-presets{grid-template-columns:repeat(6,1fr);gap:4px;display:grid}.bp-preset{aspect-ratio:1;cursor:pointer;border:1.5px solid var(--border,#e2e8f0);background:var(--surface-2,#f8fafc);color:var(--accent,#d94e1f);border-radius:10px;justify-content:center;align-items:center;padding:0;display:flex;overflow:hidden}.bp-preset.is-active{border-color:var(--accent,#d94e1f)}.bp-preset-dot{border-radius:50%;width:70%;height:70%}.bp-preset-dot--user{opacity:.8;background:currentColor}.bp-hint{letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted,#94a3b8);margin:0;font-size:9px}.bp-create{background:var(--surface-2,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:12px;flex-direction:column;gap:6px;margin-top:6px;padding:8px;display:flex}.bp-create-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted,#94a3b8);font-size:9px}.bp-input{border:1px solid var(--border,#e2e8f0);color:inherit;background:#fff;border-radius:8px;padding:5px 8px;font-size:11px}.bp-tiplist{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.bp-tiplist li{align-items:center;gap:6px;font-size:11px;display:flex}.bp-tiplist img{border:1px solid var(--border,#e2e8f0);background:#fff;border-radius:5px;width:20px;height:20px}.bp-tiplist span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.bp-tiplist button{cursor:pointer;color:#94a3b8;background:0 0;border:none;display:flex}.bp-tiplist button:hover{color:#ef4444}.rlp-top{align-items:center;gap:4px;display:flex}.rlp-op{font-variant-numeric:tabular-nums;background:var(--surface-2,#f1f5f9);color:var(--text-muted,#64748b);border-radius:8px;flex:none;padding:4px 8px;font-size:10px}.rlp-oprow{align-items:center;gap:8px;display:flex}.rlp-oprow .pc-row{flex:1}.rlp-oprow .pc-label{display:none}.rlp-locks{gap:3px;display:flex}.rlp-locks button{cursor:pointer;background:var(--surface-2,#f1f5f9);width:22px;height:22px;color:var(--text-muted,#64748b);border:none;border-radius:6px;font-size:11px;line-height:1}.rlp-locks button.is-on{background:var(--text,#1e293b);color:#fff}.rlp-filters{gap:3px;display:flex}.rlp-filters button{cursor:pointer;text-transform:uppercase;letter-spacing:.04em;background:var(--surface-2,#f1f5f9);color:var(--text-muted,#64748b);border:none;border-radius:7px;flex:1;padding:3px 0;font-size:9px}.rlp-filters button.is-active{background:var(--text,#1e293b);color:#fff}.rlp-list{border:1px solid var(--border,#e2e8f0);border-radius:10px;max-height:320px;overflow:hidden auto}.rlp-row{cursor:pointer;border-bottom:1px solid var(--border,#eef2f6);align-items:center;gap:6px;padding:4px 6px;display:flex}.rlp-row:last-child{border-bottom:none}.rlp-row.is-active{background:color-mix(in srgb, var(--accent,#d94e1f) 10%, transparent)}.rlp-row.is-hidden{opacity:.5}.rlp-vis,.rlp-caret{cursor:pointer;color:var(--text-muted,#64748b);background:0 0;border:none;flex:none;padding:0;display:flex}.rlp-thumb{border:1px solid var(--border,#e2e8f0);background:repeating-conic-gradient(#eee 0% 25%,#fff 0% 50%) 0 0/8px 8px;border-radius:6px;flex:none;width:26px;height:26px}.rlp-thumb--group{background:repeating-linear-gradient(135deg,#64748b2e 0 4px,#0000 4px 8px)}.rlp-thumb--adjust{background:linear-gradient(#fff,#1e293b)}.rlp-maskthumb{cursor:pointer;border:1.5px solid var(--border,#e2e8f0);color:#64748b;background:linear-gradient(135deg,#fff 45%,#1e293b 100%);border-radius:6px;flex:none;width:26px;height:26px;font-size:9px}.rlp-maskthumb.is-editing{border-color:var(--accent,#d94e1f);box-shadow:0 0 0 1px var(--accent,#d94e1f)}.rlp-meta{flex-direction:column;flex:1;min-width:0;display:flex}.rlp-name{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.rlp-row.is-active .rlp-name{font-weight:600}.rlp-sub{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted,#94a3b8);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.rlp-rename{border:1px solid var(--accent,#d94e1f);border-radius:5px;width:100%;padding:1px 4px;font-size:12px}.rlp-lockchips{color:var(--text-muted,#94a3b8);flex:none;font-size:9px}.rlp-adjust,.rlp-maskbar{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.rlp-maskbar button{cursor:pointer;text-transform:uppercase;border:1px solid var(--border,#e2e8f0);min-width:52px;color:inherit;background:0 0;border-radius:7px;flex:1;padding:4px 0;font-size:9px}.rlp-actions{gap:3px;display:flex;position:relative}.rlp-actions>button{cursor:pointer;border:1px solid var(--border,#e2e8f0);background:var(--surface-2,#f8fafc);color:var(--text-muted,#64748b);border-radius:9px;flex:1;justify-content:center;align-items:center;padding:6px 0;display:flex}.rlp-actions>button.is-primary{background:var(--text,#1e293b);color:#fff;border-color:#0000}.rlp-actions>button.is-on{background:var(--accent,#d94e1f);color:#fff;border-color:#0000}.rlp-actions>button.is-danger:hover{color:#ef4444}.rlp-actions>button:disabled{opacity:.4;cursor:not-allowed}.rlp-adjmenu{z-index:20;border:1px solid var(--border,#e2e8f0);background:#fff;border-radius:12px;width:180px;max-height:240px;padding:4px;position:absolute;bottom:36px;right:0;overflow:auto;box-shadow:0 14px 34px #0f172a38}.rlp-adjmenu button{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:none;border-radius:7px;padding:5px 8px;font-size:11px;display:block}.rlp-adjmenu button:hover{background:var(--surface-2,#f1f5f9)}.rlp-status{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted,#94a3b8);font-size:9px}.tp-start{cursor:pointer;background:var(--accent,#d94e1f);color:#fff;border:none;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px;font-weight:600;display:flex}.tp-modes{flex-wrap:wrap;gap:3px;display:flex}.tp-modes button{cursor:pointer;letter-spacing:.06em;text-transform:uppercase;background:var(--surface-2,#f1f5f9);color:var(--text-muted,#64748b);border:none;border-radius:9px;padding:5px 8px;font-size:9px}.tp-modes button.is-active{background:var(--accent,#d94e1f);color:#fff}.tp-geom{gap:9px;display:flex}.tp-anchor{flex:none;grid-template-rows:repeat(3,14px);grid-template-columns:repeat(3,14px);gap:3px;display:grid}.tp-anchor button{cursor:pointer;border:1px solid var(--border,#e2e8f0);background:var(--surface-2,#f1f5f9);border-radius:4px;width:14px;height:14px;padding:0}.tp-anchor button.is-active{background:var(--accent,#d94e1f);border-color:#0000}.tp-fields{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;min-width:0;display:grid}.tp-field{background:var(--surface-2,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:8px;align-items:center;gap:4px;min-width:0;padding:3px 6px;font-size:10px;display:flex}.tp-field>span{color:var(--text-muted,#94a3b8);flex:none}.tp-field input{font-variant-numeric:tabular-nums;width:100%;min-width:0;color:inherit;background:0 0;border:none;outline:none;flex:1;font-size:10px}.tp-field em{color:var(--text-muted,#cbd5e1);flex:none;font-style:normal}.tp-quickrow{gap:4px;display:flex}.tp-quickrow button,.tp-quickgrid button{cursor:pointer;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--border,#e2e8f0);background:var(--surface-2,#f8fafc);color:inherit;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:4px;padding:6px 0;font-size:10px;display:flex}.tp-quickrow button.is-on{background:var(--text,#1e293b);color:#fff;border-color:#0000}.tp-quickgrid{grid-template-columns:1fr 1fr;gap:4px;display:grid}.tp-warp{background:var(--surface-2,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:12px;padding:8px}.tp-warp-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted,#94a3b8);margin-bottom:6px;font-size:9px}.tp-warp .pc-label{width:74px}.tp-reset{cursor:pointer;text-transform:uppercase;border:1px solid var(--border,#e2e8f0);width:100%;color:inherit;background:#fff;border-radius:8px;margin-top:6px;padding:5px 0;font-size:9px}.tp-commit{gap:5px;display:flex}.tp-ok{cursor:pointer;background:var(--accent,#d94e1f);color:#fff;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 0;font-weight:600;display:flex}.tp-no{cursor:pointer;border:1px solid var(--border,#e2e8f0);color:inherit;background:0 0;border-radius:10px;flex:none;align-items:center;gap:4px;padding:8px 12px;display:flex}.tp-hint{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted,#94a3b8);margin:0;font-size:9px;line-height:1.5}.nb-app{--nb-canvas:var(--color-surface-2);--nb-sidebar:var(--color-surface-2);--nb-list:var(--color-surface);--nb-ink:var(--color-ink);--nb-ink-soft:color-mix(in srgb, var(--color-ink) 80%, var(--color-bg));--nb-orange:var(--color-accent);--nb-orange-dk:var(--color-accent-hover);--nb-blue:#8fb8e8;--nb-muted:var(--color-ink-muted);--nb-muted-2:color-mix(in srgb, var(--color-ink) 70%, var(--color-bg));--nb-line:var(--color-line);--nb-line-soft:color-mix(in srgb, var(--color-ink) 8%, transparent);--nb-sans:var(--font-sans);--nb-display:var(--font-sans);--nb-mono:var(--font-mono);background:var(--nb-canvas);width:100%;height:100vh;font-family:var(--nb-sans);color:var(--nb-ink);-webkit-font-smoothing:antialiased;background-image:radial-gradient(#14352a0d 1px,#0000 1px);background-size:22px 22px;display:flex;overflow:hidden}.nb-app *,.nb-app :before,.nb-app :after{box-sizing:border-box}.nb-app ::-webkit-scrollbar{width:10px;height:10px}.nb-app ::-webkit-scrollbar-thumb{background:#14352a2e padding-box padding-box;border:3px solid #0000;border-radius:20px}.nb-app ::-webkit-scrollbar-track{background:0 0}.nb-sidebar{background:var(--nb-sidebar);border-right:1px solid var(--nb-line);flex-direction:column;flex:0 0 264px;width:264px;display:flex}.nb-sidebar-brand{align-items:center;gap:11px;padding:16px 18px;display:flex}.nb-nav-btns{align-items:center;gap:4px;display:flex}.nb-home-btn{border:1px solid var(--nb-line);cursor:pointer;color:var(--nb-muted-2);background:0 0;border-radius:9px;justify-content:center;align-items:center;padding:6px;display:flex}.nb-home-btn:hover{color:var(--nb-orange);background:#fff}.nb-brand-mark{background:var(--nb-ink);border-radius:11px;flex:0 0 34px;width:34px;height:34px;position:relative}.nb-brand-dot{background:var(--nb-blue);border-radius:50%;width:14px;height:14px;position:absolute;top:6px;left:5px}.nb-brand-tri{border-left:7px solid #0000;border-right:7px solid #0000;border-bottom:12px solid var(--nb-orange);width:0;height:0;position:absolute;bottom:6px;right:5px}.nb-brand-title{font-family:var(--nb-display);letter-spacing:-.01em;font-size:16px;font-weight:700;line-height:1.1}.nb-brand-sub{font-family:var(--nb-mono);letter-spacing:.14em;color:var(--nb-muted);margin-top:3px;font-size:9px}.nb-sidebar-actions{padding:0 16px 14px}.nb-sidebar-actions button{cursor:pointer;background:var(--nb-ink);width:100%;color:var(--nb-sidebar);font-family:var(--nb-display);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:11px;font-size:13.5px;font-weight:600;display:flex}.nb-sidebar-actions button:hover{background:#1c4a34}.nb-tree{flex:1;min-height:80px;padding:2px 10px 16px;overflow-y:auto}.nb-section-label{font-family:var(--nb-mono);letter-spacing:.16em;color:var(--nb-muted);padding:6px 8px 8px;font-size:9px}.nb-tree-empty{color:var(--nb-muted-2);text-align:center;padding:18px 8px;font-size:12px}.nb-heft-row{cursor:pointer;border-radius:11px;align-items:center;gap:10px;margin-bottom:3px;padding:9px 8px;display:flex}.nb-heft-row:hover{background:#14352a0a}.nb-heft-row.active{background:#e8efe0}.nb-heft-dot{border-radius:8px;flex:0 0 26px;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.nb-heft-dot>span{border-radius:3px;width:11px;height:11px;display:block}.nb-heft-name{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13.5px;font-weight:600;overflow:hidden}.nb-heft-count{font-family:var(--nb-mono);color:var(--nb-muted);font-size:10px}.nb-row-actions{gap:2px;display:none}.nb-heft-row:hover .nb-row-actions{display:flex}.nb-heft-row:hover .nb-heft-count{display:none}.nb-row-actions button{cursor:pointer;color:var(--nb-muted-2);background:0 0;border:none;border-radius:5px;align-items:center;padding:3px;display:flex}.nb-row-actions button:hover{color:var(--nb-ink);background:#14352a1a}.nb-notes-col{background:var(--nb-list);border-right:1px solid var(--nb-line);flex-direction:column;flex:0 0 320px;width:320px;display:flex}.nb-notes-header{border-bottom:1px solid var(--nb-line-soft);padding:18px 18px 14px}.nb-notes-head-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.nb-notes-eyebrow{font-family:var(--nb-mono);letter-spacing:.14em;color:var(--nb-muted);margin-bottom:4px;font-size:9px}.nb-notes-title{font-family:var(--nb-display);letter-spacing:-.02em;font-size:19px;font-weight:700;line-height:1.1}.nb-notes-head-actions{gap:6px;display:flex}.nb-add-note-btn{cursor:pointer;background:var(--nb-orange);color:#fff;font-size:12.5px;font-family:var(--nb-display);border:none;border-radius:10px;align-items:center;gap:5px;padding:8px 12px;font-weight:600;display:flex}.nb-add-note-btn:hover{background:var(--nb-orange-dk)}.nb-add-note-btn.ghost{color:var(--nb-ink);border:1px solid var(--nb-line);background:#fff}.nb-add-note-btn.ghost:hover{background:#efe9da}.nb-notes-search{border:1px solid var(--nb-line-soft);color:var(--nb-muted);background:#efe9da;border-radius:10px;align-items:center;gap:9px;margin-top:13px;padding:8px 12px;display:flex}.nb-notes-search input{width:100%;font-family:var(--nb-sans);color:var(--nb-ink);background:0 0;border:none;outline:none;font-size:13px}.nb-notes-list{flex:1;padding:10px;overflow-y:auto}.nb-notes-empty{color:var(--nb-muted-2);text-align:center;padding:24px;font-size:12px}.nb-note-item{text-align:left;cursor:pointer;border:1px solid var(--nb-line-soft);background:#fdfbf5;border-radius:14px;width:100%;margin-bottom:8px;padding:13px 14px;display:block}.nb-note-item:hover{border-color:#14352a29}.nb-note-item.active{background:#fff;border-color:#c9d8bd;box-shadow:0 2px 10px #14352a0f}.nb-note-item-name{font-family:var(--nb-display);letter-spacing:-.01em;color:var(--nb-ink-soft);align-items:center;gap:8px;margin-bottom:6px;font-size:14px;font-weight:700;display:flex}.nb-doc-badge{font-family:var(--nb-mono);letter-spacing:.08em;color:#2b6cb8;background:#e3edfa;border:1px solid #c9ddf5;border-radius:20px;padding:2px 6px;font-size:8px}.nb-note-item-preview{color:var(--nb-muted-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.nb-note-item-foot{flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px;display:flex}.nb-note-tag{font-family:var(--nb-mono);letter-spacing:.04em;color:#5f7a52;background:#e8efe0;border-radius:20px;padding:2px 7px;font-size:9px}.nb-note-item-date{font-family:var(--nb-mono);color:#b0a68f;margin-left:auto;font-size:9.5px}.nb-note-ref-badge{font-family:var(--nb-mono);color:var(--nb-blue);font-size:9.5px}.nb-note-ref-missing{color:#b91c1c;font-style:italic}.nb-editor-col{background:0 0;flex-direction:column;flex:1;min-width:0;display:flex}.nb-editor{flex-direction:column;flex:1;min-height:0;display:flex}.nb-editor-empty{color:var(--nb-muted-2);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;font-size:14px;display:flex}.nb-editor-titlebar{padding:22px 34px 12px}.nb-titlebar-top{padding-right:max(0px, calc(var(--chrome-reserve-right) - 34px));justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.nb-title{font-family:var(--nb-display);letter-spacing:-.025em;cursor:text;word-break:break-word;font-size:30px;font-weight:700}.nb-title-input{width:60%;font-family:var(--nb-display);letter-spacing:-.025em;color:inherit;background:0 0;border:none;outline:none;padding:0;font-size:30px;font-weight:700}.nb-titlebar-right{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.nb-meta{font-family:var(--nb-mono);color:var(--nb-muted);font-size:10px}.nb-convert-btn{background:var(--nb-ink);color:var(--nb-sidebar);font-family:var(--nb-display);cursor:pointer;border:none;border-radius:11px;align-items:center;gap:8px;padding:9px 15px;font-size:12.5px;font-weight:600;display:flex;box-shadow:0 3px #0c2317}.nb-convert-btn:hover{background:#1c4a34}.nb-delete-note-btn{border:1px solid var(--nb-line);cursor:pointer;color:var(--nb-muted-2);background:0 0;border-radius:9px;align-items:center;gap:4px;padding:7px 11px;font-size:12px;font-weight:600;display:flex}.nb-delete-note-btn:hover{color:#ef4444;border-color:#ef4444}.nb-tagrow{max-width:620px;margin-top:12px}.nb-toolbar{background:var(--nb-sidebar);border:1px solid var(--nb-line);border-radius:13px;flex-wrap:wrap;align-items:center;gap:4px;margin:0 34px;padding:8px 10px;display:flex}.nb-toolbar button{border:1px solid var(--nb-line);cursor:pointer;color:var(--nb-ink);background:#fff;border-radius:8px;align-items:center;gap:4px;padding:6px 9px;font-size:12px;display:flex}.nb-toolbar button:hover,.nb-toolbar button.nb-tool-active{background:var(--nb-ink);color:#fff;border-color:var(--nb-ink)}.nb-toolbar button.nb-tool-rec{color:#fff;background:#ef4444;border-color:#ef4444}.nb-toolbar .ai-tool-btn{color:#0e2c4e;background:linear-gradient(135deg,#8fb8e8,#7aa8e0);border:none;margin-left:auto;font-weight:600}.nb-toolbar .ai-tool-btn:hover{filter:brightness(1.05);color:#0e2c4e}.nb-tool-divider{background:var(--nb-line);width:1px;height:20px;margin:0 4px}.nb-tool-select{border:1px solid var(--nb-line);cursor:pointer;color:var(--nb-ink);font-size:12px;font-family:var(--nb-sans);background:#fff;border-radius:8px;padding:6px 8px}.nb-tool-color{border:1px solid var(--nb-line);cursor:pointer;color:var(--nb-ink);background:#fff;border-radius:8px;align-items:center;gap:4px;padding:4px 8px;font-weight:700;display:flex}.nb-tool-color input[type=color]{cursor:pointer;background:0 0;border:none;width:16px;height:16px;padding:0}.nb-content{color:var(--nb-ink-soft);outline:none;flex:1;max-width:820px;min-height:0;padding:24px 34px 80px;font-size:16px;line-height:1.75;overflow-y:auto}.nb-content p,.nb-doc-content p{margin:0 0 .7em}.nb-content h1,.nb-doc-content h1{font-family:var(--nb-display);margin:.6em 0 .4em;font-size:1.8em;font-weight:700}.nb-content h2,.nb-doc-content h2{font-family:var(--nb-display);margin:.6em 0 .35em;font-size:1.45em;font-weight:700}.nb-content h3,.nb-doc-content h3{font-family:var(--nb-display);margin:.5em 0 .3em;font-size:1.2em;font-weight:600}.nb-content ul,.nb-content ol,.nb-doc-content ul,.nb-doc-content ol{margin:.4em 0 .7em;padding-left:1.6em}.nb-content a,.nb-doc-content a{color:var(--nb-orange)}.nb-quote,.nb-content blockquote,.nb-doc-content blockquote{border-left:3px solid var(--nb-orange);color:#5f5a4c;margin:10px 0;padding:4px 16px;font-style:italic}.nb-check{align-items:flex-start;gap:8px;margin:3px 0;display:flex}.nb-check input{flex:none;margin-top:5px}.nb-check.done span{color:var(--nb-muted-2);text-decoration:line-through}.nb-doc-table,.nb-content table{border-collapse:collapse;width:100%;margin:12px 0}.nb-td,.nb-doc-table td,.nb-doc-table th,.nb-content td{vertical-align:top;border:1px solid #c9c2ad;min-width:40px;padding:8px 10px}.nb-doc-img{border-radius:6px;max-width:100%;margin:8px 0;display:block}.nb-doc-img.nb-img-left{float:left;max-width:46%;margin:4px 16px 8px 0}.nb-doc-img.nb-img-right{float:right;max-width:46%;margin:4px 0 8px 16px}.nb-doc-img.nb-img-center{margin:10px auto}.nb-doc-img.nb-img-inline{vertical-align:middle;max-width:200px;margin:0 4px;display:inline}.nb-page-break{border-top:2px dashed #14352a4d;height:0;margin:20px -20px;position:relative}.nb-page-break:after{content:"Seitenumbruch";font-family:var(--nb-mono);color:var(--nb-muted);background:#fff;padding:0 6px;font-size:9px;position:absolute;top:-9px;right:8px}.nb-toc{border:1px solid var(--nb-line);background:#14352a05;border-radius:10px;margin:12px 0;padding:12px 16px}.nb-toc-title{font-family:var(--nb-display);margin-bottom:8px;font-size:.95em;font-weight:700}.nb-toc-link{color:var(--nb-ink-soft);cursor:pointer;padding:3px 0;font-size:.9em;display:block}.nb-toc-link:hover{color:var(--nb-orange)}[contenteditable].dr-empty:empty:before{content:attr(data-ph);color:var(--nb-muted);pointer-events:none}[contenteditable]:focus{outline:none}.nb-editor-doc{background:#e7e1d1}.nb-doc-topbar{background:var(--nb-sidebar);border-bottom:1px solid var(--nb-line);padding:12px 22px 0}.nb-doc-topline{padding-right:max(0px, calc(var(--chrome-reserve-right) - 22px));flex-wrap:wrap;align-items:center;gap:14px;display:flex}.nb-doc-back{border:1px solid var(--nb-line);font-family:var(--nb-display);color:var(--nb-ink);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:7px;padding:8px 13px;font-size:12.5px;font-weight:600;display:flex}.nb-doc-back:hover{background:#efe9da}.nb-doc-fileicon{color:#fff;background:#2b6cb8;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.nb-doc-title{font-family:var(--nb-display);color:var(--nb-ink);background:0 0;border:none;outline:none;flex:140px;min-width:0;font-size:16px;font-weight:600}.nb-doc-saved{font-family:var(--nb-mono);color:var(--nb-muted);font-size:10px}.nb-doc-export{background:var(--nb-ink);color:var(--nb-sidebar);font-family:var(--nb-display);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:6px;margin-left:auto;padding:8px 14px;font-size:12.5px;font-weight:600;display:flex}.nb-doc-menubar{gap:4px;padding:10px 0 0;display:flex}.nb-doc-menu{position:relative}.nb-doc-menu>button{color:#3a4a40;cursor:pointer;font-size:13px;font-family:var(--nb-sans);background:0 0;border:none;padding:6px 10px 10px}.nb-doc-menu>button:hover,.nb-doc-menu>button.active{color:var(--nb-orange)}.nb-doc-menu-pop{z-index:50;border:1px solid var(--nb-line);background:#fff;border-radius:10px;min-width:190px;margin-top:-2px;padding:6px;position:absolute;top:100%;left:0;box-shadow:0 12px 30px #14352a29}.nb-doc-menu-pop button{text-align:left;width:100%;color:var(--nb-ink);cursor:pointer;font-size:13px;font-family:var(--nb-sans);background:0 0;border:none;border-radius:7px;padding:8px 12px;display:block}.nb-doc-menu-pop button:hover{background:#efe9da}.nb-doc-toolbar{background:var(--nb-sidebar);border-bottom:1px solid var(--nb-line);flex-wrap:nowrap;align-items:center;gap:4px;padding:8px 22px;display:flex;overflow-x:auto}.nb-doc-toolbar::-webkit-scrollbar{height:6px}.nb-doc-toolbar>*{flex:none}.nb-doc-icon-btn,.nb-icon-btn{border:1px solid var(--nb-line);color:var(--nb-ink);cursor:pointer;background:#fff;border-radius:9px;justify-content:center;align-items:center;padding:8px;display:flex}.nb-doc-icon-btn:hover,.nb-icon-btn:hover{background:#efe9da}.nb-doc-icon-btn[aria-pressed=true]{background:var(--nb-ink);color:var(--nb-sidebar);border-color:var(--nb-ink)}.nb-app.focus .nb-sidebar,.nb-app.focus .nb-notes-col{display:none}.nb-doc-toolbar>button{color:#2a3830;cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;min-width:30px;height:30px;padding:0 7px;font-size:14px;display:inline-flex}.nb-doc-toolbar>button:hover{background:#efe9da}.nb-dsep{background:var(--nb-line);width:1px;height:20px;margin:0 4px}.nb-dsel{font-family:var(--nb-sans);border:1px solid var(--nb-line);color:var(--nb-ink);cursor:pointer;background:#fff;border-radius:7px;padding:5px 6px;font-size:12px}.nb-fontpt{text-align:center;min-width:26px;font-family:var(--nb-mono);background:#fff;border-radius:6px;padding:5px 4px;font-size:12px}.nb-doc-toolbar .nb-tool-color{height:30px;padding:4px 8px}.nb-doc-body{flex:1;min-height:0;display:flex;container-type:inline-size}.nb-doc-desk{flex:1;justify-content:safe center;align-items:flex-start;min-width:0;padding:34px 20px 80px;display:flex;overflow:auto}.nb-doc-page{background:#fff;border-radius:3px;flex-direction:column;flex:none;display:flex;box-shadow:0 6px 30px #14352a24}@container (width<=680px){.nb-doc-options{display:none}}.nb-doc-content{color:#1e2a22;outline:none;flex:1;min-height:400px;font-size:11pt;line-height:1.7}.nb-doc-hf{color:var(--nb-muted-2);outline:none;justify-content:space-between;align-items:center;font-size:9pt;display:flex}.nb-doc-head{border-bottom:1px solid var(--nb-line);min-height:1.4em;margin-bottom:16px;padding-bottom:8px}.nb-doc-foot{border-top:1px solid var(--nb-line);min-height:1.4em;margin-top:16px;padding-top:8px}.nb-doc-hf.empty{opacity:.45}.nb-doc-hf.empty:focus-within,.nb-doc-hf:focus{opacity:1}.nb-foot-text{outline:none;flex:1}.nb-doc-head:empty:before,.nb-foot-text:empty:before{content:attr(data-ph);color:var(--nb-muted);pointer-events:none}.nb-pageno{font-family:var(--nb-mono)}.nb-doc-options{background:var(--nb-sidebar);border-left:1px solid var(--nb-line);flex:0 0 250px;width:250px;padding:20px 18px;overflow-y:auto}.nb-opt-label{font-family:var(--nb-mono);letter-spacing:.14em;color:var(--nb-muted);margin-bottom:14px;font-size:9px}.nb-opt-group{margin-bottom:18px}.nb-opt-title{margin-bottom:7px;font-size:12px;font-weight:600}.nb-opt-seg{gap:6px;display:flex}.nb-opt-seg button{border:1px solid var(--nb-line);font-family:var(--nb-display);color:var(--nb-ink);cursor:pointer;background:#fff;border-radius:9px;flex:1;padding:9px;font-size:12.5px;font-weight:600}.nb-opt-seg button.active{border-color:var(--nb-orange);background:#fae6da}.nb-opt-select,.nb-opt-input{width:100%;font-family:var(--nb-sans);border:1px solid var(--nb-line);color:var(--nb-ink);cursor:pointer;background:#fff;border-radius:9px;padding:8px 10px;font-size:12.5px}.nb-opt-input{cursor:text;margin-bottom:7px}.nb-opt-check{cursor:pointer;align-items:center;gap:8px;font-size:12px;display:flex}.nb-opt-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.nb-opt-grid button{border:1px solid var(--nb-line);cursor:pointer;font-family:var(--nb-sans);color:var(--nb-ink);background:#fff;border-radius:11px;flex-direction:column;align-items:center;gap:5px;padding:12px 6px;font-size:11px;display:flex}.nb-opt-grid button span{align-items:center;font-size:17px;display:flex}.nb-opt-grid button:hover{border-color:var(--nb-orange)}.nb-opt-stats{background:#efe9da;border-radius:13px;margin-top:4px;padding:14px}.nb-opt-stats-head{align-items:center;gap:8px;margin-bottom:8px;font-size:12.5px;font-weight:600;display:flex}.nb-opt-stat{color:#5f7a52;justify-content:space-between;margin-bottom:4px;font-size:12px;display:flex}.nb-opt-stat span:last-child{font-family:var(--nb-mono);color:var(--nb-ink)}.nb-opt-export{background:var(--nb-orange);color:#fff;width:100%;font-family:var(--nb-display);cursor:pointer;border:none;border-radius:12px;margin-top:16px;padding:12px;font-size:13px;font-weight:600}.nb-opt-export:hover{background:var(--nb-orange-dk)}.nb-img-tool{border:1px solid var(--nb-line);background:#fff;border-radius:10px;gap:2px;padding:4px;display:flex;box-shadow:0 8px 24px #14352a2e}.nb-img-tool button{cursor:pointer;color:var(--nb-ink);background:0 0;border:none;border-radius:6px;padding:6px;display:flex}.nb-img-tool button:hover{background:#efe9da}.nb-img-tool button.danger:hover{color:#ef4444;background:#ef44441f}.nb-ctx-menu{background:#fff;border-radius:9px;min-width:160px;padding:6px;box-shadow:0 10px 25px #14352a29}.nb-ctx-menu button{cursor:pointer;text-align:left;width:100%;color:var(--nb-ink);background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:500;display:flex}.nb-ctx-menu button:hover{background:#efe9da}.nb-audio-block{background:var(--nb-sidebar);border:1px solid var(--nb-line);border-radius:10px;flex-direction:column;gap:4px;margin:8px 0;padding:10px 12px;display:inline-flex}.nb-audio-block audio{display:block}.nb-audio-meta{color:var(--nb-muted-2);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.nb-audio-actions{gap:4px;display:inline-flex}.nb-audio-block button[data-audio-delete],.nb-audio-block button[data-audio-download]{cursor:pointer;color:var(--nb-muted-2);background:0 0;border:1px solid #0000;border-radius:5px;padding:2px 8px;font-size:11px;font-weight:600}.nb-audio-block button[data-audio-download]:hover{color:var(--nb-orange);border-color:var(--nb-orange);background:#e85d2514}.nb-audio-block button[data-audio-delete]:hover{color:#ef4444;background:#ef44441a;border-color:#ef4444}.nb-trash-btn{border:1px solid var(--nb-line);cursor:pointer;color:var(--nb-muted-2);background:0 0;border-radius:10px;align-items:center;gap:8px;margin:8px;padding:9px 12px;font-size:.85rem;font-weight:600;display:flex}.nb-trash-btn:hover{color:var(--nb-ink);border-color:var(--nb-muted-2)}.nb-trash-btn.active{color:#ef4444;background:#ef444414;border-color:#ef44444d}.nb-trash-count{color:#fff;background:#ef4444;border-radius:10px;margin-left:auto;padding:1px 7px;font-size:.7rem;font-weight:700}.nb-trash-total{color:var(--nb-muted);font-size:.85em;font-weight:400}.nb-trash-item{border-bottom:1px solid var(--nb-line-soft);align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.nb-trash-icon{color:var(--nb-muted-2);flex-shrink:0;margin-top:2px}.nb-trash-info{flex:1;min-width:0}.nb-trash-actions{flex-shrink:0;gap:4px;display:flex}.nb-trash-actions button{border:1px solid var(--nb-line);cursor:pointer;color:var(--nb-muted-2);background:0 0;border-radius:7px;justify-content:center;align-items:center;padding:6px;display:flex}.nb-trash-actions button:hover{color:var(--nb-ink);border-color:var(--nb-muted-2)}.nb-trash-actions button.nb-trash-danger:hover{color:#ef4444;border-color:#ef4444}.nb-storage-warning{color:#b91c1c;background:#ef444414;border-bottom:1px solid #ef444433;align-items:center;gap:8px;padding:10px 16px;font-size:.85rem;display:flex}.nb-recover-banner{color:#92400e;background:#f59e0b1a;border-bottom:1px solid #f59e0b40;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 16px;font-size:.85rem;display:flex}.nb-recover-btn{color:#fff;cursor:pointer;background:#f59e0b;border:none;border-radius:6px;padding:5px 12px;font-size:.8rem;font-weight:600}.nb-recover-btn:hover{background:#d97706}.nb-recover-btn-secondary{color:#92400e;background:0 0;border:1px solid #92400e}.nb-mention{color:#2b6cb8;cursor:pointer;background:#8fb8e82e;border-radius:5px;margin:0 1px;padding:1px 6px;font-size:.95em;font-weight:600;text-decoration:none;display:inline-block}.nb-mention:hover{background:#8fb8e852}.nb-mention-popup{border:1px solid var(--nb-line);background:#fff;border-radius:10px;width:320px;max-height:280px;padding:4px 0;overflow-y:auto;box-shadow:0 10px 30px #14352a29}.nb-mention-item{cursor:pointer;color:var(--nb-ink);align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.nb-mention-item.active,.nb-mention-item:hover{background:#eef4fb}.nb-mention-icon{width:16px}.nb-mention-title{white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:600;overflow:hidden}.nb-mention-ws{color:var(--nb-muted-2);font-size:11px}@media print{.nb-sidebar,.nb-notes-col,.nb-doc-topbar,.nb-doc-toolbar,.nb-doc-options,.nb-toolbar,.nb-editor-titlebar{display:none!important}.nb-app,.nb-editor-col,.nb-editor,.nb-editor-doc,.nb-doc-body,.nb-doc-desk{background:#fff!important;height:auto!important;display:block!important;overflow:visible!important}.nb-app{background-image:none!important}.nb-doc-page{box-shadow:none!important;zoom:1!important;width:auto!important;margin:0!important}.nb-page-break{break-after:page;border:none}.nb-page-break:after{display:none}}.auth-screen{flex:1;justify-content:center;align-items:center;padding:30px;display:flex;overflow-y:auto}.auth-card{background:var(--s-surface);border:1px solid rgba(var(--s-tint), .12);border-radius:18px;width:min(400px,100%);padding:26px;box-shadow:0 18px 50px #0000002e}.auth-brand{text-align:center;color:var(--s-accent-text);margin-bottom:20px}.auth-brand h1{color:var(--s-text-strong);margin:10px 0 4px;font-size:20px;font-weight:700}.auth-brand p{color:rgba(var(--s-tint), .5);margin:0;font-size:13px}.auth-tabs{gap:6px;margin-bottom:18px;display:flex}.auth-tabs button{border:1px solid rgba(var(--s-tint), .1);background:rgba(var(--s-tint), .03);color:rgba(var(--s-tint), .6);cursor:pointer;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px;font-size:13px;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.auth-tabs button.active{color:var(--s-on-accent);background:#6366f1;border-color:#6366f1}.auth-form{flex-direction:column;gap:12px;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-field>span{color:rgba(var(--s-tint), .6);font-size:12px;font-weight:600}.auth-field input,.auth-field select,.auth-manager-create input,.auth-manager-create select,.auth-manager-row select{background:rgba(var(--s-tint), .05);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:9px;padding:9px 11px;font-size:13px}.auth-field input:focus,.auth-field select:focus{border-color:#6366f1;outline:none}.auth-error{color:#fca5a5;background:#ef44441a;border-radius:8px;padding:8px 10px;font-size:12px}.auth-btn-primary{color:var(--s-on-accent);cursor:pointer;background:#6366f1;border:none;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:10px 14px;font-size:13px;font-weight:600;display:inline-flex}.auth-btn-primary:hover{filter:brightness(1.1)}.auth-btn-secondary{border:1px solid rgba(var(--s-tint), .12);background:rgba(var(--s-tint), .05);color:var(--s-text-muted);cursor:pointer;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:600}.auth-btn-secondary:hover{background:rgba(var(--s-tint), .1)}.auth-role-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:700}.auth-role-badge.teacher{color:var(--s-accent-text);background:#6366f133}.auth-role-badge.student{color:#6ee7b7;background:#10b9812e}.auth-role-badge.admin{color:#fcd34d;background:#f59e0b33}.auth-role-badge.parent{color:#f9a8d4;background:#ec489933}.auth-dev{border-top:1px solid rgba(var(--s-tint), .08);margin-top:18px;padding-top:12px}.auth-dev-toggle{width:100%;color:rgba(var(--s-tint), .45);text-transform:uppercase;letter-spacing:.03em;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.auth-dev-body{flex-direction:column;gap:10px;margin-top:10px;display:flex}.auth-dev-hint{color:rgba(var(--s-tint), .4);font-size:12px}.auth-dev-list{flex-direction:column;gap:6px;display:flex}.auth-dev-account{border:1px solid rgba(var(--s-tint), .08);background:rgba(var(--s-tint), .03);cursor:pointer;text-align:left;border-radius:9px;align-items:center;gap:10px;padding:8px 10px;display:flex}.auth-dev-account:hover{background:rgba(var(--s-tint), .07)}.auth-dev-avatar{width:30px;height:30px;color:var(--s-on-accent);background:#6366f1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.auth-dev-meta{flex-direction:column;gap:2px;display:flex}.auth-dev-name{color:var(--s-text);font-size:13px}.school-account,.school-account-info{align-items:center;gap:8px;display:flex}.school-account-name{color:var(--s-text);text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:13px;overflow:hidden}.auth-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-manager{background:var(--s-surface);border:1px solid rgba(var(--s-tint), .1);border-radius:16px;width:min(640px,94vw);max-height:88vh;padding:20px;overflow-y:auto}.auth-manager-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.auth-manager-head h3{margin:0;font-size:17px;font-weight:700}.auth-manager-create{grid-template-columns:1fr 1fr 1fr auto auto;gap:8px;margin-bottom:14px;display:grid}.auth-manager-list{flex-direction:column;gap:6px;display:flex}.auth-manager-row{border-radius:9px;align-items:center;gap:10px;padding:8px 10px;display:flex}.auth-manager-row:hover{background:rgba(var(--s-tint), .04)}.auth-manager-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.auth-manager-email{color:rgba(var(--s-tint), .45);font-size:12px}.auth-iconbtn{border:1px solid rgba(var(--s-tint), .1);background:rgba(var(--s-tint), .04);width:32px;height:32px;color:var(--s-text-muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.auth-iconbtn:hover{background:rgba(var(--s-tint), .1)}.auth-iconbtn.danger:hover{color:#fca5a5;background:#ef44442e}.auth-iconbtn:disabled{opacity:.4;cursor:default}@media (width<=600px){.auth-manager-create{grid-template-columns:1fr 1fr}}.lang-app{background:var(--bg,#f8fafc);height:100vh;color:var(--text,#0f172a);flex-direction:column;font-family:inherit;display:flex}.lang-topbar{border-bottom:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);align-items:center;gap:12px;padding:12px 20px;display:flex}.lang-icon-btn{cursor:pointer;color:var(--text-muted,#64748b);background:0 0;border:none;border-radius:6px;padding:6px}.lang-icon-btn:hover{background:var(--hover,#f1f5f9);color:var(--text,#0f172a)}.lang-title{flex:1;margin:0;font-size:1.1rem;font-weight:600}.lang-topbar-stats{color:var(--text-muted,#64748b);gap:16px;font-size:.9rem;display:flex}.lang-topbar-stats span{align-items:center;gap:4px;display:inline-flex}.lang-dashboard{flex-direction:column;flex:1;gap:20px;width:100%;max-width:720px;margin:0 auto;padding:24px;display:flex;overflow:auto}.lang-card{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:12px;padding:16px 20px}.lang-card h2{margin:0 0 12px;font-size:1rem;font-weight:600}.lang-skill-list{flex-direction:column;gap:8px;display:flex}.lang-skill-row{grid-template-columns:1fr 1.5fr auto;align-items:center;gap:12px;font-size:.85rem;display:grid}.lang-skill-bar{background:var(--bg,#f1f5f9);border-radius:999px;height:8px;overflow:hidden}.lang-skill-fill{height:100%;transition:width .3s}.lang-skill-meta{font-variant-numeric:tabular-nums;text-align:right;min-width:60px}.lang-skill-attempts{color:var(--text-muted,#64748b);margin-left:4px;font-size:.75rem}.lang-fillers{flex-wrap:wrap;gap:6px;display:flex}.lang-filler-chip{color:#92400e;background:#fef3c7;border-radius:999px;padding:4px 10px;font-size:.8rem}.lang-error-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.lang-error-list code{background:#fee2e2;border-radius:4px;padding:1px 6px}.lang-error-list strong{color:#059669}.lang-cta{color:#fff;cursor:pointer;background:linear-gradient(135deg,#007a4d 0%,#005c3a 100%);border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:1rem;font-weight:600;transition:transform .1s,opacity .2s;display:inline-flex}.lang-cta:hover:not(:disabled){transform:translateY(-1px)}.lang-cta:disabled{opacity:.4;cursor:not-allowed}.lang-start-btn{padding:16px 24px;font-size:1.1rem}.lang-cta-mini{background:var(--accent,#007a4d);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:4px;margin-left:12px;padding:6px 12px;font-weight:500;display:inline-flex}.lang-link-btn{color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:6px 10px;font-size:.85rem;display:inline-flex}.lang-link-btn:hover{color:var(--text,#0f172a)}.lang-reset{align-self:flex-start}.lang-session{flex:1;width:100%;max-width:720px;margin:0 auto;padding:24px;overflow:auto}.lang-session-header{align-items:center;gap:12px;margin-bottom:24px;display:flex}.lang-progress-bar{background:var(--border,#e2e8f0);border-radius:999px;flex:1;height:8px;overflow:hidden}.lang-progress-fill{background:linear-gradient(90deg,#007a4d,#005c3a);height:100%;transition:width .3s}.lang-progress-text{color:var(--text-muted,#64748b);font-size:.85rem}.lang-exercise{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:16px;flex-direction:column;gap:16px;padding:24px;display:flex}.lang-exercise-prompt{font-size:1.2rem;font-weight:600}.lang-exercise-hint{color:var(--text-muted,#64748b);font-size:.9rem;font-style:italic}.lang-placeholder{color:var(--text-muted,#94a3b8);font-style:italic}.lang-answer-row{border:2px dashed var(--border,#cbd5e1);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;min-height:56px;padding:12px;display:flex}.lang-bank-row{flex-wrap:wrap;gap:8px;display:flex}.lang-token{color:#3730a3;cursor:pointer;background:#eef2ff;border:1px solid #c7d2fe;border-radius:8px;padding:8px 14px;font-size:.95rem;transition:transform .1s}.lang-token:hover{transform:translateY(-1px)}.lang-token.picked{background:#ddd6fe}.lang-choice-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.lang-choice{border:2px solid var(--border,#e2e8f0);cursor:pointer;background:#f8fafc;border-radius:10px;padding:14px 16px;font-family:inherit;font-size:1rem;transition:all .15s}.lang-choice:hover:not(:disabled){background:#eef2ff;border-color:#a5b4fc}.lang-choice.right{color:#065f46;background:#d1fae5;border-color:#10b981}.lang-choice.wrong{color:#991b1b;background:#fee2e2;border-color:#ef4444}.lang-choice:disabled{cursor:default}.lang-feedback{border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;font-weight:500;display:flex}.lang-feedback.right{color:#065f46;background:#d1fae5}.lang-feedback.wrong{color:#991b1b;background:#fee2e2}.lang-explanation{width:100%;margin-top:4px;font-size:.9rem;font-weight:400}.lang-speak{align-items:stretch}.lang-topic{background:#f1f5f9;border-radius:10px;padding:16px;font-size:1.05rem}.lang-mic-btn{background:linear-gradient(135deg,#ef4444,#dc2626)}.lang-stop-btn{background:linear-gradient(135deg,#6b7280,#4b5563)}.lang-timer{text-align:center;color:#ef4444;font-variant-numeric:tabular-nums;font-size:2.5rem;font-weight:700}.lang-transcript{background:#f8fafc;border-radius:10px;min-height:80px;padding:16px;font-size:1rem;line-height:1.5}.lang-transcript.final{border:1px solid var(--border,#e2e8f0)}.lang-interim{color:var(--text-muted,#94a3b8);font-style:italic}.lang-stats{background:#f1f5f9;border-radius:10px;gap:24px;padding:12px;font-size:.95rem;display:flex}.lang-stats strong{color:#007a4d;font-size:1.3rem}.lang-error{color:#991b1b;background:#fee2e2;border-radius:8px;padding:10px;font-size:.85rem}.lang-toggle-speak{border:1px dashed var(--border,#cbd5e1);cursor:pointer;width:100%;color:var(--text-muted,#64748b);background:0 0;border-radius:8px;margin-top:16px;padding:10px 16px}.lang-toggle-speak:hover{color:var(--text,#0f172a);background:#f8fafc}.lang-mode-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.lang-mode-card{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);cursor:pointer;text-align:left;border-radius:14px;align-items:center;gap:14px;padding:18px 20px;font-family:inherit;transition:transform .1s,box-shadow .15s;display:flex}.lang-mode-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000000f}.lang-mode-card strong{color:var(--text,#0f172a);font-size:1rem;display:block}.lang-mode-card span{color:var(--text-muted,#64748b);margin-top:2px;font-size:.8rem;display:block}.lang-mode-card.standard svg{color:#007a4d}.lang-mode-card.tutor svg{color:#ec4899}.lang-mode-card.tutor{background:linear-gradient(135deg,#fdf4ff 0%,#f2faf6 100%);border-color:#f5d0fe}.lang-tutor-badge{color:#a21caf;background:#fdf4ff;border:1px solid #f5d0fe;border-radius:999px;align-items:center;gap:5px;margin:0 auto;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.lang-diagnosis{border:1px solid;border-radius:12px;flex-direction:column;gap:8px;margin-bottom:16px;padding:14px 16px;font-size:.85rem;display:flex}.lang-diagnosis.good{color:#065f46;background:#ecfdf5;border-color:#6ee7b7}.lang-diagnosis.review{color:#7f1d1d;background:#fef3f2;border-color:#fecaca}.lang-diagnosis-row{align-items:center;gap:8px;font-weight:600;display:flex}.lang-diagnosis-title{flex:1}.lang-diagnosis-mode{text-transform:uppercase;letter-spacing:.05em;background:#0000000f;border-radius:999px;padding:1px 7px;font-size:.65rem;font-weight:600}.lang-diagnosis-mode.ai{color:#6d28d9;background:#dcefe6}.lang-diagnosis-mode.heuristic{color:#92400e;background:#fef3c7}.lang-diagnosis-mode.trivial{color:#166534;background:#dcfce7}.lang-diagnosis-detail{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.lang-diag-label{color:var(--text-muted,#64748b);font-size:.8rem}.lang-diag-bad{color:#991b1b;background:#fee2e2;border-radius:4px;padding:2px 8px}.lang-diag-good{color:#065f46;background:#d1fae5;border-radius:4px;padding:2px 8px}.lang-diag-arrow{color:var(--text-muted,#64748b)}.lang-diagnosis-rule{align-items:flex-start;gap:6px;display:flex}.lang-diagnosis-pattern{color:var(--text-muted,#64748b);font-size:.75rem}.lang-diagnosis-pattern code{background:#0000000d;border-radius:4px;padding:1px 6px;font-family:ui-monospace,monospace}.lang-diagnosis-next{border-top:1px dashed;flex-wrap:wrap;align-items:center;gap:6px;padding-top:8px;font-size:.8rem;display:flex}.lang-diagnosis-next strong{color:inherit}.lang-diag-meta{color:var(--text-muted,#64748b);margin-left:auto;font-size:.75rem}.lang-tabs{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:10px;align-self:flex-start;gap:4px;padding:4px;display:flex}.lang-tabs button{cursor:pointer;color:var(--text-muted,#64748b);background:0 0;border:none;border-radius:7px;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:.9rem;display:inline-flex}.lang-tabs button:hover{color:var(--text,#0f172a)}.lang-tabs button.active{color:#fff;background:linear-gradient(135deg,#007a4d 0%,#005c3a 100%)}.lang-tab-badge{background:#ffffff40;border-radius:999px;padding:1px 8px;font-size:.7rem;font-weight:600}.lang-library{flex-direction:column;gap:12px;display:flex}.lang-library-empty{text-align:center;color:var(--text-muted,#64748b);padding:40px 20px}.lang-library-stats{color:var(--text-muted,#64748b);background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:10px;flex-wrap:wrap;gap:18px;padding:12px 16px;font-size:.85rem;display:flex}.lang-library-stats strong{color:var(--text,#0f172a);font-size:1.05rem}.lang-library-stats svg{vertical-align:-2px;margin:0 2px}.lang-library-filters{gap:6px;display:flex}.lang-library-filters button{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);color:var(--text,#0f172a);cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:6px 12px;font-family:inherit;font-size:.8rem;display:inline-flex}.lang-library-filters button.active{color:#5b21b6;background:#dcefe6;border-color:#c4b5fd;font-weight:600}.lang-library-skill{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:10px;overflow:hidden}.lang-library-skill-header{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:12px 16px;font-family:inherit;display:flex}.lang-library-skill-header:hover{background:#f8fafc}.lang-library-skill-name{flex:1;font-size:.95rem;font-weight:600}.lang-library-skill-meta{color:var(--text-muted,#64748b);align-items:center;gap:14px;font-size:.8rem;display:flex}.lang-library-acc{border-radius:999px;padding:2px 8px;font-weight:600}.lang-library-acc.good{color:#065f46;background:#d1fae5}.lang-library-acc.mid{color:#92400e;background:#fef3c7}.lang-library-acc.bad{color:#991b1b;background:#fee2e2}.lang-library-items{border-top:1px solid var(--border,#e2e8f0);flex-direction:column;gap:8px;margin:0;padding:0 16px 12px;list-style:none;display:flex}.lang-library-item{border-bottom:1px dashed var(--border,#f1f5f9);padding:8px 0;font-size:.85rem}.lang-library-item:last-child{border-bottom:none}.lang-library-item-row{align-items:center;gap:8px;display:flex}.lang-library-source{color:#6d28d9;background:#dcefe6;border-radius:4px;padding:3px;display:inline-flex}.lang-library-source.bank{color:#475569;background:#f1f5f9}.lang-library-item-text{flex:1}.lang-library-item-acc{font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 8px;font-size:.7rem}.lang-library-item-acc.good{color:#065f46;background:#d1fae5}.lang-library-item-acc.mid{color:#92400e;background:#fef3c7}.lang-library-item-acc.bad{color:#991b1b;background:#fee2e2}.lang-library-item-meta{color:var(--text-muted,#64748b);flex-wrap:wrap;gap:14px;margin-top:4px;font-size:.75rem;display:flex}.lang-library-item-meta strong{color:var(--text,#0f172a)}.lang-translation-en{color:#1e3a8a;background:#eff6ff;border-left:4px solid #3b82f6;border-radius:10px;padding:14px 16px;font-size:1.05rem;font-style:italic}.lang-translation-input{resize:vertical;border:2px solid var(--border,#e2e8f0);background:var(--surface,#fff);width:100%;color:inherit;border-radius:10px;outline:none;padding:12px 14px;font-family:inherit;font-size:1rem;transition:border-color .15s}.lang-translation-input:focus{border-color:#007a4d}.lang-translation-input.right{background:#f0fdf4;border-color:#10b981}.lang-translation-input.partial{background:#fffbeb;border-color:#f59e0b}.lang-translation-input.wrong{background:#fef2f2;border-color:#ef4444}.lang-feedback.partial{color:#92400e;background:#fef3c7}.lang-translation-score{font-variant-numeric:tabular-nums;background:#00000014;border-radius:999px;margin-left:auto;padding:2px 10px;font-weight:600}.lang-translation-errors{flex-direction:column;gap:6px;width:100%;margin:6px 0 0;padding:0;list-style:none;display:flex}.lang-translation-errors li{background:#fff9;border-radius:6px;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 10px;font-size:.85rem;display:flex}.lang-translation-errors code{border-radius:4px;padding:1px 6px}.lang-translation-skills{flex-wrap:wrap;gap:6px;width:100%;margin-top:4px;display:flex}.lang-skill-hit{cursor:help;border-radius:999px;padding:3px 10px;font-family:ui-monospace,monospace;font-size:.7rem}.lang-skill-hit.ok{color:#065f46;background:#d1fae5}.lang-skill-hit.bad{color:#991b1b;background:#fee2e2}.lang-cloze-hint{color:#92400e;background:#fef3c7;border-radius:8px;align-self:flex-start;padding:6px 12px;font-size:.85rem;font-weight:500}.lang-recheck-btn{color:#6d28d9;background:#dcefe6;border:1px solid #c4b5fd;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:.8rem;font-weight:500;display:inline-flex}.lang-recheck-btn:hover:not(:disabled){background:#ddd6fe}.lang-ai-note{width:100%;color:var(--text,#0f172a);background:#f1f5f9;border-radius:6px;padding:8px 10px;font-size:.85rem}.lang-cloze-line{flex-wrap:wrap;align-items:center;gap:6px;font-size:1.15rem;font-weight:500;line-height:1.6;display:flex}.lang-cloze-input{min-width:120px;color:inherit;background:0 0;border:none;border-bottom:2px solid #007a4d;outline:none;padding:4px 6px;font-family:inherit;font-size:1.2rem}.lang-cloze-input:focus{border-bottom-color:#005c3a}.lang-cloze-input.right{color:#065f46;border-bottom-color:#10b981}.lang-cloze-input.wrong{color:#991b1b;border-bottom-color:#ef4444}.lang-loading{color:var(--text-muted,#64748b);justify-content:center;align-items:center;gap:12px;padding:60px 20px;font-size:.95rem;display:flex}.lang-spin{animation:1s linear infinite lang-spin}@keyframes lang-spin{to{transform:rotate(360deg)}}.lang-source-tag{color:#6d28d9;text-transform:uppercase;letter-spacing:.05em;background:#dcefe6;border-radius:999px;align-self:flex-end;align-items:center;gap:4px;margin-bottom:-8px;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-flex}.lang-summary{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:40px;display:flex}.lang-summary h2{margin:0;font-size:2rem}.lang-xp-line{color:var(--text-muted,#64748b);font-size:1.1rem}.lang-daily-stats{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.lang-daily-stat{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);text-align:center;border-radius:12px;padding:14px}.lang-daily-value{background:linear-gradient(135deg,#005c3a,#007a4d);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.4rem;font-weight:700}.lang-daily-label{color:var(--text-muted,#64748b);margin-top:2px;font-size:.75rem}.lang-mode-grid-v2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.lang-mode-card-v2{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);cursor:pointer;text-align:left;border-radius:12px;align-items:flex-start;gap:12px;padding:16px;font-family:inherit;transition:all .15s;display:flex}.lang-mode-card-v2:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.lang-mode-card-v2 strong{margin-bottom:2px;display:block}.lang-mode-card-v2 span{color:var(--text-muted,#64748b);font-size:.8rem;line-height:1.3}.lang-mode-card-v2 svg{flex-shrink:0;margin-top:2px}.lang-mode-card-v2.speak svg{color:#ef4444}.lang-mode-card-v2.tutor svg{color:#005c3a}.lang-mode-card-v2.standard svg{color:#007a4d}.lang-mode-card-v2.vocab svg{color:#10b981}.lang-topbar-cefr{color:#fff;letter-spacing:.05em;background:linear-gradient(135deg,#005c3a,#007a4d);border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:700}.lang-speak-results{flex-direction:column;gap:16px;display:flex}.lang-speak-stats-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.lang-speak-stat{text-align:center;background:#f8fafc;border-radius:10px;padding:12px}.lang-speak-stat-value{color:var(--text,#0f172a);font-size:1.3rem;font-weight:700;display:block}.lang-speak-stat-label{color:var(--text-muted,#64748b);font-size:.75rem}.lang-speak-cefr-badge{color:#005c3a;background:#dcefe6;border-radius:999px;margin-bottom:12px;padding:4px 12px;font-size:.85rem;display:inline-block}.lang-speak-errors{flex-direction:column;gap:10px;margin-top:8px;display:flex}.lang-speak-error-item{background:#fef3f2;border:1px solid #fecaca;border-radius:10px;padding:10px 14px}.lang-speak-error-orig,.lang-speak-error-fix{align-items:center;gap:6px;font-size:.9rem;display:flex}.lang-speak-error-orig{color:#991b1b;text-decoration:line-through}.lang-speak-error-fix{color:#065f46;margin-top:4px;font-weight:500}.lang-speak-error-explain{color:var(--text-muted,#64748b);margin-top:6px;padding-left:20px;font-size:.8rem}.lang-speak-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.lang-speak-compare-list{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.lang-speak-compare-list li{align-items:center;gap:6px;font-size:.9rem;display:flex}.lang-speak-compare-list.improve li{color:#065f46}.lang-speak-compare-list.regress li{color:#92400e}.lang-spinner{color:#005c3a;animation:1s linear infinite lang-spin}.lang-vocab-panel-toggle{border:1px solid var(--border,#e2e8f0);border-radius:10px;gap:0;margin-bottom:12px;display:flex;overflow:hidden}.lang-vocab-panel-toggle button{background:var(--surface,#fff);cursor:pointer;border:none;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;font-family:inherit;font-size:.85rem;transition:all .15s;display:flex}.lang-vocab-panel-toggle button.active{color:#fff;background:linear-gradient(135deg,#007a4d,#005c3a)}.lang-vocab-filters{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.lang-vocab-filters button{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);cursor:pointer;border-radius:999px;padding:5px 12px;font-family:inherit;font-size:.8rem;transition:all .15s}.lang-vocab-filters button.active{color:#fff;background:#007a4d;border-color:#007a4d}.lang-vocab-card{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);text-align:center;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:200px;padding:28px 24px;display:flex;position:relative}.lang-vocab-level-badge{color:#005c3a;background:#dcefe6;border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:700;position:absolute;top:12px;left:14px}.lang-vocab-theme-badge{color:#92400e;background:#fef3c7;border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:600;position:absolute;top:12px;right:14px}.lang-vocab-word{font-size:1.6rem;font-weight:700}.lang-vocab-word-base{color:var(--text,#0f172a);font-size:1.6rem;font-weight:700}.lang-vocab-translation{color:var(--text-muted,#64748b);flex-wrap:wrap;justify-content:center;gap:16px;font-size:.95rem;display:flex}.lang-vocab-article-choices{gap:10px;display:flex}.lang-vocab-article-btn{border:2px solid var(--border,#e2e8f0);background:var(--surface,#fff);cursor:pointer;border-radius:10px;padding:12px 24px;font-family:inherit;font-size:1.1rem;font-weight:600;transition:all .15s}.lang-vocab-article-btn:hover:not(:disabled){background:#eef2ff;border-color:#a5b4fc}.lang-vocab-article-btn.right{color:#065f46;background:#d1fae5;border-color:#10b981}.lang-vocab-article-btn.wrong{color:#991b1b;background:#fee2e2;border-color:#ef4444}.lang-vocab-article-btn:disabled{cursor:default}.lang-vocab-knowledge{flex-direction:column;gap:6px;width:100%;max-width:280px;display:flex}.lang-vocab-knowledge-row{align-items:center;gap:8px;font-size:.8rem;display:flex}.lang-vocab-knowledge-row span{text-align:right;min-width:60px}.lang-vocab-user-mark{text-align:center;color:var(--text-muted);font-size:.8rem}.lang-vocab-nav{justify-content:center;align-items:center;gap:12px;margin-top:8px;display:flex}.lang-vocab-mark-btn{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:6px;padding:10px 18px;font-family:inherit;font-size:.9rem;font-weight:600;transition:all .15s;display:flex}.lang-vocab-mark-btn.known{color:#065f46;background:#d1fae5}.lang-vocab-mark-btn.known:hover{background:#a7f3d0}.lang-vocab-mark-btn.unknown{color:#991b1b;background:#fee2e2}.lang-vocab-mark-btn.unknown:hover{background:#fecaca}.lang-vocab-system-panel{flex-direction:column;gap:16px;display:flex}.lang-vocab-word-grid{flex-wrap:wrap;gap:6px;display:flex}.lang-vocab-word-chip{border-radius:8px;align-items:center;gap:4px;padding:4px 10px;font-size:.8rem;display:flex}.lang-vocab-word-chip.known{color:#065f46;background:#d1fae5}.lang-vocab-word-chip.unknown{color:#991b1b;background:#fee2e2}.lang-vocab-chip-level{color:var(--text-muted);background:#0000000f;border-radius:4px;padding:1px 5px;font-size:.65rem}.lang-vocab-dashboard{flex-direction:column;gap:16px;display:flex}.lang-vocab-top-stats{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.lang-vocab-hero-stat{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:16px;display:flex}.lang-vocab-hero-value{background:linear-gradient(135deg,#005c3a,#007a4d);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:800}.lang-vocab-hero-label{color:var(--text-muted,#64748b);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem}.lang-vocab-level-bars{flex-direction:column;gap:8px;display:flex}.lang-vocab-level-row{align-items:center;gap:10px;display:flex}.lang-vocab-level-name{min-width:30px;font-size:.85rem;font-weight:700}.lang-vocab-level-count{text-align:right;min-width:90px;color:var(--text-muted,#64748b);font-variant-numeric:tabular-nums;font-size:.8rem}.lang-vocab-categories{flex-wrap:wrap;gap:8px;display:flex}.lang-vocab-cat-chip{text-align:center;background:#f1f5f9;border-radius:10px;flex-direction:column;gap:2px;padding:8px 14px;font-size:.85rem;display:flex}.lang-vocab-cat-chip span{color:var(--text-muted);font-size:.75rem}.lang-report-btn{border:1px solid var(--border,#e2e8f0);color:var(--text-muted,#94a3b8);cursor:pointer;background:0 0;border-radius:6px;align-self:flex-end;align-items:center;gap:4px;margin-left:auto;padding:4px 10px;font-family:inherit;font-size:.75rem;transition:all .15s;display:inline-flex}.lang-report-btn:hover{color:#ef4444;background:#fef2f2;border-color:#fca5a5}.lang-report-panel{background:#fefce8;border:1px solid #fef08a;border-radius:10px;flex-direction:column;gap:8px;width:100%;margin-top:4px;padding:12px;display:flex}.lang-report-header{justify-content:space-between;align-items:center;font-size:.85rem;font-weight:600;display:flex}.lang-report-header span{align-items:center;gap:6px;display:flex}.lang-report-categories{flex-wrap:wrap;gap:6px;display:flex}.lang-report-cat{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:6px 12px;font-family:inherit;font-size:.8rem;transition:all .15s}.lang-report-cat:hover{border-color:#fbbf24}.lang-report-cat.active{background:#fef3c7;border-color:#f59e0b;font-weight:600}.lang-report-note{resize:vertical;border:1px solid #e5e7eb;border-radius:8px;width:100%;padding:8px;font-family:inherit;font-size:.8rem}.lang-report-done{color:#10b981;align-items:center;gap:4px;margin-left:auto;font-size:.8rem;font-weight:500;display:flex}.lang-system-actions{border-top:1px dashed var(--border,#e2e8f0);justify-content:center;margin-top:40px;padding-top:20px;display:flex}.lang-reset{color:var(--text-muted,#94a3b8);opacity:.7;font-size:.8rem;transition:all .2s}.lang-reset:hover{color:#ef4444;opacity:1;background:#fef2f2;border-color:#fecaca}.lang-settings-btn{color:var(--text-muted,#94a3b8);transition:color .15s}.lang-settings-btn:hover{color:#005c3a;background:#dcefe6}.lang-workshop{flex-direction:column;gap:16px;display:flex}.lang-workshop-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.lang-workshop-title{align-items:center;gap:10px;display:flex}.lang-workshop-title h2{margin:0;font-size:1.1rem}.lang-workshop-title svg{color:#005c3a}.lang-workshop-actions{align-items:center;gap:8px;display:flex}.lang-workshop-empty{text-align:center;color:var(--text-muted,#94a3b8);padding:20px;font-size:.9rem}.lang-workshop-empty-state{text-align:center;color:var(--text-muted,#64748b);flex-direction:column;align-items:center;gap:12px;padding:48px 24px;display:flex}.lang-workshop-empty-state h3{color:var(--text);margin:0;font-size:1.1rem}.lang-workshop-empty-state p{max-width:380px;font-size:.9rem;line-height:1.5}.lang-workshop-empty-state svg{opacity:.3}.lang-workshop-create{background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:12px;flex-direction:column;gap:10px;padding:16px;display:flex}.lang-workshop-create-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lang-workshop-input{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);color:inherit;border-radius:8px;outline:none;width:100%;padding:8px 12px;font-family:inherit;font-size:.9rem;transition:border-color .15s}.lang-workshop-input:focus{border-color:#005c3a}.lang-module-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.lang-module-card{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);cursor:pointer;text-align:left;border-radius:14px;flex-direction:column;gap:8px;padding:16px;font-family:inherit;transition:all .15s;display:flex}.lang-module-card:hover{border-color:#c4b5fd;transform:translateY(-2px);box-shadow:0 6px 16px #00000014}.lang-module-card h3{margin:0;font-size:1rem}.lang-module-card-top{justify-content:space-between;align-items:center;display:flex}.lang-module-level{color:#fff;letter-spacing:.05em;border-radius:999px;padding:2px 10px;font-size:.7rem;font-weight:700}.lang-module-desc{color:var(--text-muted,#64748b);margin:0;font-size:.8rem;line-height:1.4}.lang-module-stats{color:var(--text-muted,#94a3b8);flex-wrap:wrap;gap:12px;font-size:.75rem;display:flex}.lang-module-types{flex-wrap:wrap;gap:6px;display:flex}.lang-module-editor{flex-direction:column;gap:16px;display:flex}.lang-editor-header{align-items:center;gap:12px;display:flex}.lang-editor-header-info{flex:1}.lang-editor-header-info h2{margin:0;font-size:1.1rem}.lang-editor-meta{color:var(--text-muted);align-items:center;gap:10px;margin-top:4px;font-size:.85rem;display:flex}.lang-editor-edit-row{align-items:center;gap:8px;display:flex}.lang-editor-name-input{border:1px solid var(--border);background:var(--surface,#fff);color:inherit;border-radius:6px;outline:none;padding:6px 10px;font-family:inherit;font-size:1rem;font-weight:600}.lang-editor-name-input:focus{border-color:#005c3a}.lang-editor-desc{color:var(--text-muted);margin:0;font-size:.85rem;line-height:1.5}.lang-editor-desc-input{border:1px solid var(--border);resize:vertical;background:var(--surface,#fff);color:inherit;border-radius:8px;outline:none;width:100%;padding:8px 10px;font-family:inherit;font-size:.85rem}.lang-add-category-row{border:1px dashed var(--border,#cbd5e1);background:var(--surface,#fff);border-radius:10px;align-items:center;gap:10px;padding:10px 14px;display:flex}.lang-add-category-row svg{color:var(--text-muted,#94a3b8);flex-shrink:0}.lang-add-category-row input{color:inherit;background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:.9rem}.lang-categories-list{flex-direction:column;gap:8px;display:flex}.lang-category-card{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);border-radius:10px;overflow:hidden}.lang-category-header{cursor:pointer;align-items:center;gap:10px;padding:10px 14px;transition:background .15s;display:flex}.lang-category-header:hover{background:#f8fafc}.lang-category-name{flex:1;font-size:.95rem;font-weight:600}.lang-category-count{color:var(--text-muted);font-size:.8rem}.lang-category-content{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding:4px 14px 14px;display:flex}.lang-category-actions{gap:8px;margin-top:4px;display:flex}.lang-exercise-item{background:#f8fafc;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:.85rem;transition:background .1s;display:flex}.lang-exercise-item:hover{background:#f1f5f9}.lang-exercise-item-text{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.lang-exercise-type-chip{color:#005c3a;text-transform:uppercase;letter-spacing:.03em;background:#dcefe6;border-radius:6px;flex-shrink:0;padding:2px 8px;font-size:.7rem;font-weight:600}.lang-exercise-source-chip{flex-shrink:0;font-size:.75rem}.lang-exercise-source-chip.manual{opacity:.6}.lang-manual-form{background:#fafbfc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:10px;padding:14px;display:flex}.lang-manual-form-header{align-items:center;gap:8px;font-size:.9rem;font-weight:600;display:flex}.lang-generator{background:linear-gradient(135deg,#f2faf6 0%,#eef8f2 100%);border:1px solid #c4b5fd;border-radius:12px;flex-direction:column;gap:14px;padding:16px;display:flex}.lang-generator-header{color:#005c3a;align-items:center;gap:8px;font-size:.95rem;font-weight:600;display:flex}.lang-generator-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.lang-generator-field{flex-direction:column;gap:4px;display:flex}.lang-generator-field.full{grid-column:1/-1}.lang-generator-field label{color:var(--text-muted,#64748b);font-size:.8rem;font-weight:600}.lang-field-hint{opacity:.7;font-weight:400}.lang-generator-field input,.lang-generator-field select,.lang-generator-field textarea{border:1px solid var(--border,#e2e8f0);color:inherit;background:#fff;border-radius:8px;outline:none;padding:8px 10px;font-family:inherit;font-size:.9rem;transition:border-color .15s}.lang-generator-field input:focus,.lang-generator-field select:focus,.lang-generator-field textarea:focus{border-color:#005c3a}.lang-generator-levels{border:1px solid var(--border,#e2e8f0);border-radius:8px;gap:0;display:flex;overflow:hidden}.lang-generator-levels button{cursor:pointer;color:var(--text-muted);border:none;border-right:1px solid var(--border,#e2e8f0);background:#fff;padding:6px 12px;font-family:inherit;font-size:.8rem;font-weight:600;transition:all .15s}.lang-generator-levels button:last-child{border-right:none}.lang-generator-levels button:hover{color:#005c3a;background:#eef8f2}.lang-generator-levels button.active{color:#fff;background:linear-gradient(135deg,#005c3a,#007a4d)}.lang-generator-result{background:#fff;border:1px solid #a5b4fc;border-radius:10px;flex-direction:column;gap:12px;padding:14px;display:flex}.lang-generator-result-header{color:#007a4d;align-items:center;gap:8px;font-size:.85rem;font-weight:600;display:flex}.lang-generator-type-badge{color:#005c3a;text-transform:uppercase;background:#dcefe6;border-radius:6px;padding:2px 8px;font-size:.7rem;font-weight:600}.lang-generator-level-badge{color:#1e40af;background:#dbeafe;border-radius:6px;padding:2px 8px;font-size:.7rem;font-weight:700}.lang-generator-preview{flex-direction:column;gap:8px;display:flex}.lang-generator-sentence{background:#f8fafc;border-radius:8px;padding:10px 14px;font-size:1.05rem;font-weight:500;line-height:1.5}.lang-generator-meta{color:var(--text-muted);flex-wrap:wrap;gap:16px;font-size:.85rem;display:flex}.lang-generator-meta strong{color:var(--text)}.lang-generator-options{flex-wrap:wrap;gap:8px;display:flex}.lang-generator-options span{border:1px solid var(--border);background:#f1f5f9;border-radius:8px;padding:6px 14px;font-size:.9rem}.lang-generator-options span.correct{color:#065f46;background:#d1fae5;border-color:#10b981;font-weight:600}.lang-generator-tokens{flex-wrap:wrap;gap:6px;display:flex}.lang-generator-explanation{color:var(--text-muted);background:#fef3c7;border-left:3px solid #f59e0b;border-radius:8px;padding:8px 12px;font-size:.85rem}.lang-generator-actions{gap:10px;display:flex}.lang-custom-modules-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.lang-mode-card-v2.custom-module svg{color:#005c3a}.lang-mode-card-v2.custom-module{background:linear-gradient(135deg,#f2faf6 0%,#eef8f2 100%);border-color:#e9d5ff}.lang-mode-card-v2.custom-module:hover{border-color:#c4b5fd;box-shadow:0 4px 12px #7c3aed1f}.lang-mode-card-v2.custom-module:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.lang-module-player-badge{color:#005c3a;background:#f2faf6;border:1px solid #e9d5ff;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.lang-module-player-name{color:var(--text-muted,#64748b);margin:0;font-size:1.05rem}.lang-module-player-score{align-items:center;gap:20px;font-size:1.1rem;display:flex}.lang-module-player-score strong{background:linear-gradient(135deg,#005c3a,#007a4d);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.4rem}.lang-module-player-score-ring{border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;display:flex;position:relative}.lang-module-player-score-ring span{background:var(--surface,#fff);width:60px;height:60px;color:var(--text);border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;font-weight:800;display:flex}.lang-bulk-form{background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border:1px solid #7dd3fc;border-radius:10px;flex-direction:column;gap:10px;padding:14px;display:flex}.lang-bulk-templates{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.lang-bulk-tpl-btn{cursor:pointer;color:#0284c7;background:#fff;border:1px solid #bae6fd;border-radius:6px;padding:4px 10px;font-family:inherit;font-size:.75rem;font-weight:600;transition:all .15s}.lang-bulk-tpl-btn:hover{background:#e0f2fe}.lang-bulk-tpl-btn.active{color:#fff;background:#0ea5e9;border-color:#0ea5e9}.lang-bulk-textarea{resize:vertical;width:100%;color:inherit;tab-size:2;background:#fff;border:1px solid #bae6fd;border-radius:8px;outline:none;padding:10px 12px;font-family:Fira Code,Consolas,monospace;font-size:.82rem;line-height:1.5}.lang-bulk-textarea:focus{border-color:#0ea5e9}.lang-bulk-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;align-items:flex-start;gap:8px;padding:8px 12px;font-size:.8rem;display:flex}.lang-bulk-error pre{white-space:pre-wrap;margin:0;font-family:inherit;font-size:.78rem}.lang-bulk-success{color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:8px 12px;font-size:.85rem;font-weight:600}.lang-edit-exercise-btn{cursor:pointer;color:#005c3a;background:#fff;border:1px solid #e9d5ff;border-radius:6px;align-items:center;gap:4px;margin-left:auto;padding:3px 10px;font-family:inherit;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.lang-edit-exercise-btn:hover{background:#eef8f2;border-color:#c4b5fd}.lang-inline-editor{background:linear-gradient(135deg,#f2faf6 0%,#eef8f2 100%);border:2px solid #c4b5fd;border-radius:14px;flex-direction:column;gap:12px;padding:18px;animation:.2s ease-out lang-editor-in;display:flex}@keyframes lang-editor-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.lang-inline-editor-header{color:#005c3a;align-items:center;gap:8px;font-size:.95rem;font-weight:600;display:flex}.lang-inline-editor-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.lang-inline-editor-actions{gap:10px;margin-top:4px;display:flex}.lang-game{gap:14px}.lang-game-status{color:var(--text-secondary,#6b7280);align-items:center;gap:8px;font-size:.85rem;display:flex}.lang-memory-grid{grid-template-columns:repeat(var(--cols,4), minmax(80px, 1fr));perspective:800px;gap:10px;display:grid}.lang-memory-card{aspect-ratio:3/4;cursor:pointer;min-height:80px;transform-style:preserve-3d;background:0 0;border:none;padding:0;transition:transform .45s;position:relative}.lang-memory-card.up,.lang-memory-card.matched{transform:rotateY(180deg)}.lang-memory-card-front,.lang-memory-card-back{text-align:center;backface-visibility:hidden;border-radius:10px;justify-content:center;align-items:center;padding:8px;font-size:.92rem;font-weight:600;line-height:1.2;display:flex;position:absolute;inset:0}.lang-memory-card-front{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);font-size:1.6rem}.lang-memory-card-back{background:var(--surface,#fff);color:var(--text,#111);border:2px solid #6366f1;transform:rotateY(180deg)}.lang-memory-card.matched .lang-memory-card-back{color:#065f46;background:#ecfdf5;border-color:#10b981}.lang-sort-pool{background:var(--surface-2,#f9fafb);border:1px dashed var(--border,#e5e7eb);border-radius:10px;flex-wrap:wrap;gap:8px;min-height:56px;padding:12px;display:flex}.lang-sort-token{background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);cursor:pointer;border-radius:8px;padding:8px 12px;font-size:.95rem;font-weight:500;position:relative}.lang-sort-token:hover .lang-sort-actions{display:flex}.lang-sort-actions{z-index:5;border:1px solid var(--border,#e5e7eb);white-space:nowrap;background:#fff;border-radius:6px;gap:4px;padding:4px;display:none;position:absolute;top:100%;left:0;box-shadow:0 4px 12px #00000014}.lang-sort-quick{cursor:pointer;border-radius:4px;padding:4px 8px;font-size:.8rem}.lang-sort-quick:hover{background:#dcefe6}.lang-sort-token.placed{background:#dcefe6;border-color:#8b5cf6}.lang-sort-token.placed.right{color:#065f46;background:#ecfdf5;border-color:#10b981}.lang-sort-token.placed.wrong{color:#991b1b;background:#fef2f2;border-color:#ef4444}.lang-sort-buckets{grid-template-columns:repeat(var(--cols,2), 1fr);gap:10px;display:grid}.lang-sort-bucket{background:var(--surface,#fff);border:2px dashed var(--border,#e5e7eb);border-radius:10px;flex-direction:column;min-height:100px;display:flex}.lang-sort-bucket-label{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:8px 8px 0 0;padding:8px 12px;font-size:.9rem;font-weight:600}.lang-sort-bucket-body{flex-wrap:wrap;flex:1;gap:6px;padding:10px;display:flex}.lang-detective-text{background:var(--surface-2,#f9fafb);border-radius:10px;padding:14px;font-size:1.15rem;line-height:1.7}.lang-detective-word{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none;border-radius:4px;padding:2px 4px;transition:background .15s}.lang-detective-word:hover{background:#fef3c7}.lang-detective-word.picked{background:#fef08a;outline:2px dashed #ca8a04}.lang-detective-word.right{background:#d1fae5;outline:2px solid #10b981}.lang-detective-word.wrong{background:#fee2e2;outline:2px solid #ef4444}.lang-detective-replacement{color:#059669;font-weight:600}.lang-detective-options{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lang-detective-option{background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:.9rem}.lang-detective-option.active{color:#fff;background:#6366f1;border-color:#6366f1}.lang-synonym-target{text-align:center;color:#5b21b6;background:linear-gradient(135deg,#dcefe6,#ddd6fe);border-radius:10px;padding:16px;font-size:1.5rem;font-weight:700}.lang-synonym-cloud{flex-wrap:wrap;justify-content:center;gap:8px;padding:10px 0;display:flex}.lang-synonym-chip{background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:.95rem;transition:all .15s}.lang-synonym-chip:hover{border-color:#6366f1}.lang-synonym-chip.sel{color:#5b21b6;background:#dcefe6;border-color:#8b5cf6}.lang-synonym-chip.right{color:#065f46;background:#d1fae5;border-color:#10b981}.lang-synonym-chip.wrong{color:#991b1b;background:#fee2e2;border-color:#ef4444;text-decoration:line-through}.lang-synonym-chip.miss{color:#92400e;background:#fef3c7;border-color:#ca8a04}.lang-debug-fab{color:#fff;cursor:pointer;z-index:9998;border:none;border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;transition:transform .15s;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 6px 20px #00000040}.lang-debug-fab:hover{transform:scale(1.08)}.lang-debug-panel{color:#e6e6f0;z-index:9997;background:#1e1e2e;border:1px solid #2c2c44;border-radius:14px;flex-direction:column;width:520px;max-width:calc(100vw - 36px);height:min(70vh,720px);font-size:12px;display:flex;position:fixed;bottom:74px;right:18px;overflow:hidden;box-shadow:0 12px 40px #00000073}.lang-debug-panel.minimized{height:42px}.lang-debug-header{background:#26263a;border-bottom:1px solid #2c2c44;flex-shrink:0;align-items:center;gap:8px;padding:8px 10px;display:flex}.lang-debug-header strong{color:#fff;font-size:12px}.lang-debug-count{color:#888;background:#1a1a28;border-radius:4px;padding:1px 6px;font-size:10px}.lang-debug-tabs{gap:2px;margin-left:8px;display:flex}.lang-debug-tabs button{color:#bbb;cursor:pointer;background:#2c2c44;border:none;border-radius:5px;align-items:center;gap:3px;padding:4px 8px;font-size:11px;display:flex}.lang-debug-tabs button.active{color:#fff;background:#0d6efd}.lang-debug-actions{gap:3px;margin-left:auto;display:flex}.lang-debug-actions button{color:#bbb;cursor:pointer;background:#2c2c44;border:none;border-radius:5px;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.lang-debug-actions button:hover{color:#fff;background:#3a3a55}.lang-debug-toolbar{background:#22223a;border-bottom:1px solid #2c2c44;flex-shrink:0;padding:6px 10px}.lang-debug-toolbar input{color:#fff;background:#1a1a28;border:1px solid #2c2c44;border-radius:5px;width:100%;padding:5px 8px;font-size:11px}.lang-debug-body{flex:1;padding:6px 8px;font-family:Consolas,Courier New,monospace;overflow-y:auto}.lang-debug-empty{color:#777;text-align:center;padding:30px 20px;font-style:italic;line-height:1.5}.lang-debug-entry{background:#27273b;border-left:3px solid #555;border-radius:0 4px 4px 0;margin:3px 0;padding:4px 6px 4px 8px}.lang-debug-entry.lang-debug-level-warn{background:#3a2e1a;border-left-color:#ffc107}.lang-debug-entry.lang-debug-level-error{background:#3a1f1f;border-left-color:#dc3545}.lang-debug-row{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.lang-debug-tag{color:#fff;letter-spacing:.3px;text-transform:uppercase;border-radius:3px;padding:1px 6px;font-size:9px;font-weight:700}.lang-debug-ts{color:#888;font-size:9px}.lang-debug-step{color:#fff;flex:1}.lang-debug-reason{color:#9cf;margin-top:2px;padding-left:6px;font-size:11px;font-style:italic}.lang-debug-data{color:#aab;white-space:pre-wrap;word-break:break-word;background:#15151f;border-radius:3px;max-height:280px;margin-top:4px;padding:5px 7px;font-size:10px;line-height:1.4;overflow:auto}.lang-debug-meta{color:#9ad;background:#1a1a28;border-radius:3px;margin:3px 0 0;padding:3px 6px;font-size:10px}.lang-debug-session-start{color:#9cf;background:#1d2c44;border-radius:5px;flex-wrap:wrap;align-items:center;gap:5px;margin:6px 0 3px;padding:5px 8px;display:flex}.lang-debug-session-end{color:#7a9a7a;margin:3px 0 6px;padding:3px 8px 3px 24px;font-size:10px;font-style:italic}.lang-debug-settings{background:#1e1e2e;flex:1;padding:12px 14px;overflow-y:auto}.lang-debug-settings-inner h4{color:#9cf;text-transform:uppercase;letter-spacing:.5px;margin:14px 0 6px;font-size:11px}.lang-debug-settings-inner h4:first-child{margin-top:0}.lang-debug-settings-inner label{color:#ddd;cursor:pointer;align-items:center;gap:7px;margin:5px 0;font-size:11px;display:flex}.lang-debug-settings-inner input[type=number]{color:#fff;background:#1a1a28;border:1px solid #2c2c44;border-radius:4px;width:80px;padding:2px 5px}.lang-debug-help{color:#889;margin:6px 0;font-size:10px;line-height:1.5}.lang-debug-help li{margin:3px 0}.lang-debug-cat-grid{flex-direction:column;gap:3px;display:flex}.lang-debug-cat-row{border-radius:4px;align-items:center;gap:7px;padding:4px;display:flex}.lang-debug-cat-row:hover{background:#26263a}.lang-debug-cat-desc{color:#889;font-size:10px}.lang-und{padding:8px 4px}.lang-und-header{background:#26263a;border-radius:8px;align-items:center;gap:14px;margin-bottom:10px;padding:10px 14px;display:flex}.lang-und-cefr{text-align:center}.lang-und-cefr-val{color:#0d6efd;font-size:26px;font-weight:700;line-height:1}.lang-und-cefr-lbl{color:#889;text-transform:uppercase;letter-spacing:.5px;margin-top:3px;font-size:9px}.lang-und-meta{color:#ccc;flex:1;font-size:11px;line-height:1.7}.lang-und-card{background:#22223a;border:1px solid #2c2c44;border-radius:8px;margin-bottom:10px;padding:10px 12px}.lang-und-card-title{color:#9cf;text-transform:uppercase;letter-spacing:.4px;align-items:center;gap:5px;margin-bottom:6px;font-size:11px;font-weight:700;display:flex}.lang-und-help-mini{color:#778;margin-bottom:8px;font-size:10px;font-style:italic;line-height:1.4}.lang-und-decision{color:#ddd;font-size:12px}.lang-und-decision code{color:#9cf;background:#1a1a28;border-radius:3px;padding:1px 5px;font-size:11px}.lang-und-decision-why{color:#889;margin-top:4px;font-size:11px}.lang-und-diag{color:#ddd;font-size:11px;line-height:1.6}.lang-und-diag code{color:#fff;background:#1a1a28;border-radius:3px;padding:1px 5px}.lang-und-diag-pattern{margin-top:4px}.lang-und-diag-rule{color:#9ad;margin-top:4px;font-size:10px;font-style:italic}.lang-und-pill{color:#fff;background:#0d6efd;border-radius:10px;padding:1px 7px;font-size:10px;font-weight:700;display:inline-block}.lang-und-skills{flex-direction:column;gap:5px;display:flex}.lang-und-skill{align-items:center;gap:8px;font-size:11px;display:flex}.lang-und-skill-label{color:#ccc;text-overflow:ellipsis;white-space:nowrap;flex:0 0 130px;font-size:10px;overflow:hidden}.lang-und-bar-wrap{background:#1a1a28;border-radius:7px;flex:1;height:14px;position:relative;overflow:visible}.lang-und-bar-fill{border-radius:7px;height:100%;transition:width .55s cubic-bezier(.4,1.6,.6,1),background .3s;box-shadow:inset 0 0 6px #ffffff0d}.lang-und-delta{align-items:center;gap:1px;font-size:9px;font-weight:700;animation:.9s ease-out lang-und-pop;display:flex;position:absolute;top:-2px;right:-44px}.lang-und-delta.up{color:#10b981}.lang-und-delta.down{color:#ef4444}@keyframes lang-und-pop{0%{opacity:0;transform:translate(-8px)}30%{opacity:1;transform:translate(0)}to{opacity:1}}.lang-und-skill-meta{text-align:right;color:#aab;flex:0 0 60px;font-size:10px}.lang-und-attempts{color:#666;margin-left:3px;font-size:9px}.lang-und-streaks{flex-wrap:wrap;gap:4px;display:flex}.lang-und-streak{border-radius:5px;align-items:center;gap:4px;padding:3px 7px;font-size:10px;display:flex}.lang-und-streak.pos{color:#10b981;background:#0e3d2a}.lang-und-streak.neg{color:#ef4444;background:#3d1e1e}.lang-und-streak code{color:inherit;font-family:Consolas,monospace;font-size:9px}.lang-und-twin{grid-template-columns:1fr 1fr;gap:14px;display:grid}.lang-und-twin>div{min-width:0}.lang-und-skill-mini{color:#ccc;justify-content:space-between;padding:2px 0;font-size:10px;display:flex}.lang-und-empty-mini{color:#666;font-size:10px;font-style:italic}.lang-und-errors{color:#ddd;margin:0;padding:0;font-size:10px;list-style:none}.lang-und-errors li{border-bottom:1px solid #2c2c44;padding:3px 0}.lang-und-errors code{color:#ef9999;background:#3d1e1e;border-radius:2px;padding:0 4px}.lang-und-errors strong{color:#10b981}.lang-und-err-skill{color:#666;margin-left:4px;font-size:9px}.lang-und-help{color:#778;background:#1a1a28;border-left:2px solid #0d6efd;border-radius:6px;padding:8px 10px;font-size:10px;line-height:1.5}.lang-und-plan{background:linear-gradient(135deg,#1d2c44 0%,#22223a 100%);border-color:#0d6efd}.lang-und-plan-body{color:#ddd;font-size:11px}.lang-und-plan-headline{background:#0d6efd22;border-radius:6px;align-items:center;gap:10px;margin:4px 0 10px;padding:8px 10px;display:flex}.lang-und-plan-icon{font-size:22px}.lang-und-plan-target{color:#fff;font-size:13px}.lang-und-plan-target b{color:#9cf}.lang-und-plan-type{color:#aab;margin-top:2px;font-size:10px}.lang-und-plan-list{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.lang-und-plan-list li{background:#1a1a28;border-radius:5px;padding:4px 8px;line-height:1.5}.lang-und-plan-list li code{color:#ef9999;background:#3d1e1e;border-radius:2px;padding:0 4px;font-size:10px}.lang-und-plan-key{color:#9cf;text-transform:uppercase;letter-spacing:.3px;font-size:10px;font-weight:700}.lang-und-plan-alts{border-top:1px dashed #2c2c44;margin-top:10px;padding-top:8px}.lang-und-plan-alts-title{color:#778;margin-bottom:4px;font-size:10px;font-style:italic}.lang-und-plan-alts-list{flex-wrap:wrap;gap:4px;display:flex}.lang-und-alt-pill{color:#aab;background:#26263a;border:1px solid #2c2c44;border-radius:10px;padding:2px 8px;font-size:10px;display:inline-block}.lang-speak-studio{flex-direction:column;gap:14px;padding:4px;display:flex}.lang-speak-studio-hint{color:var(--text-muted,#64748b);margin:0;font-size:.88rem}.lang-mode-card-v2.speak-module svg{color:#ef4444}.lang-mode-card-v2.speak-module-add{border-style:dashed}.lang-mode-card-v2.speak-module-add svg{color:var(--text-muted,#64748b)}.lang-mode-card-v2.speak-module-add-form{cursor:default;flex-direction:column;align-items:stretch;gap:8px}.lang-mode-card-v2.speak-module-add-form input[type=text],.lang-mode-card-v2.speak-module-add-form input:not([type]){border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);color:inherit;font:inherit;border-radius:8px;padding:8px 10px;font-size:.88rem}.lang-speak-432-toggle{color:var(--text-muted,#64748b);cursor:pointer;align-items:center;gap:6px;font-size:.8rem;display:flex}.lang-speak-attempt-count{color:var(--text-muted,#64748b);margin-left:auto;font-size:.8rem}.lang-speak-reminder,.lang-speak-starters{text-align:left;color:#78350f;background:#fef3c7;border:1px solid #fcd34d;border-radius:10px;flex-direction:column;gap:6px;padding:12px 14px;font-size:.88rem;display:flex}.lang-speak-starters{color:#065f46;background:#ecfdf5;border-color:#6ee7b7}.lang-speak-reminder-title{align-items:center;gap:6px;font-size:.82rem;font-weight:700;display:flex}.lang-speak-reminder-item s{opacity:.7;margin-right:2px}.lang-speak-starter-item{font-style:italic}.lang-speak-fixed{background:#ecfdf5;border:1px solid #6ee7b7}.lang-speak-fixed-item{align-items:center;gap:6px;padding:3px 0;font-size:.9rem;display:flex}.lang-speak-attempt{border-top:1px solid var(--border,#e2e8f0)}.lang-speak-attempt-head{cursor:pointer;width:100%;font:inherit;color:inherit;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:10px 2px;display:flex}.lang-speak-attempt-meta{color:var(--text-muted,#64748b);font-size:.8rem}.lang-speak-attempt-body{padding:0 2px 12px 24px}.lang-tab-badge.mistakes{color:#fff;background:#ef4444}.lang-mistakes-empty p{color:var(--text-muted,#64748b);margin:8px 0 0;font-size:.9rem}.lang-mistake-group-head{cursor:pointer;width:100%;font:inherit;color:inherit;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:0;display:flex}.lang-mistake-card{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);border-radius:10px;justify-content:space-between;align-items:flex-start;gap:12px;margin-top:10px;padding:10px 12px;display:flex}.lang-mistake-card.open{border-left:3px solid #ef4444}.lang-mistake-card.practicing{border-left:3px solid #f59e0b}.lang-mistake-card.resolved{opacity:.7;border-left:3px solid #10b981}.lang-mistake-text{font-size:.9rem}.lang-mistake-text s{opacity:.7;margin-right:2px}.lang-mistake-meta{color:var(--text-muted,#64748b);white-space:nowrap;flex-direction:column;align-items:flex-end;gap:4px;font-size:.75rem;display:flex}.lang-mistake-chip{border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.lang-mistake-chip.open{color:#b91c1c;background:#fee2e2}.lang-mistake-chip.practicing{color:#b45309;background:#fef3c7}.lang-mistake-chip.resolved{color:#047857;background:#d1fae5}.lang-mistake-sparkline{margin:0 auto;display:block}.lang-speak-improvement{border-top:1px dashed var(--border,#e2e8f0);padding:8px 0;font-size:.9rem}.lang-speak-improvement:first-of-type{border-top:none}.lang-speak-improvement-orig{color:var(--text-muted,#64748b)}.lang-speak-improvement-better{color:#047857;margin-top:2px;font-weight:600}.lang-drill-summary{text-align:left;flex-direction:column;gap:6px;margin:12px 0 18px;display:flex}.lang-drill-summary-row{align-items:center;gap:8px;font-size:.9rem;display:flex}.lang-drill-summary-row.ok svg{color:#10b981}.lang-drill-summary-row.miss svg{color:#ef4444}.vocab-board{z-index:600;background:#f4efe3;position:fixed;inset:0;overflow:hidden}.vocab-board-top{z-index:10;pointer-events:none;align-items:center;gap:12px;display:flex;position:absolute;top:12px;left:12px;right:12px}.vocab-board-title{color:#1e293b;background:#ffffffe6;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:.9rem;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #0000000f}.vocab-board-title svg{color:#d94e1f}.vocab-board-stats{color:#475569;background:#ffffffe6;border:1px solid #e2e8f0;border-radius:999px;padding:6px 12px;font-size:.82rem}.vocab-board-close{pointer-events:auto;color:#475569;cursor:pointer;background:#ffffffe6;border:1px solid #e2e8f0;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;margin-left:auto;display:inline-flex;box-shadow:0 2px 8px #0000000f}.vocab-board-close:hover{color:#1e293b;background:#fff}.vocab-board-back{pointer-events:auto;cursor:pointer;color:#1e293b;background:#ffffffe6;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:.85rem;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #0000000f}.vocab-board-back:hover{background:#fff}.vocab-postit{z-index:10;background:#fff2cc;border-radius:4px;flex-wrap:wrap;gap:8px;width:260px;padding:14px 14px 12px;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%)rotate(-1deg);box-shadow:0 6px 18px #0000002e,0 1px 3px #0000001a}.vocab-postit input{min-width:0;font:inherit;color:#78350f;background:0 0;border:none;outline:none;flex:1;font-size:1rem;font-weight:600}.vocab-postit input::placeholder{color:#b4915a;font-weight:400}.vocab-postit-add{cursor:pointer;color:#fff;background:#d94e1f;border:none;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.05rem;line-height:1;display:inline-flex}.vocab-postit-add:disabled{opacity:.45;cursor:default}.vocab-postit.shake{animation:.45s vocab-shake}@keyframes vocab-shake{0%,to{transform:translate(-50%)rotate(-1deg)}20%{transform:translate(calc(-50% - 9px))rotate(-2deg)}40%{transform:translate(calc(8px - 50%))rotate(0)}60%{transform:translate(calc(-50% - 6px))rotate(-2deg)}80%{transform:translate(calc(4px - 50%))rotate(-1deg)}}.vocab-spin{animation:.9s linear infinite vocab-spin}@keyframes vocab-spin{to{transform:rotate(360deg)}}.vocab-feedback{flex-direction:column;gap:6px;width:100%;font-size:.82rem;display:flex}.vocab-feedback.ok{color:#047857;font-weight:600}.vocab-feedback.err{color:#b91c1c}.vocab-feedback.info{color:#92400e}.vocab-suggestions{flex-wrap:wrap;gap:6px;display:flex}.vocab-suggestions button{cursor:pointer;color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:600}.vocab-suggestions button:hover{background:#fef3c7}.vocab-riddle-btn{pointer-events:auto;cursor:pointer;color:#0369a1;background:#e0f2fe;border:1px solid #7dd3fc;border-radius:999px;align-items:center;gap:5px;padding:6px 14px;font-size:.82rem;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #0000000f}.vocab-riddle-btn:hover:not(:disabled){background:#bae6fd}.vocab-riddle-btn:disabled{opacity:.45;cursor:default}.vocab-riddle{z-index:11;color:#0c4a6e;background:#e0f2fe;border:1px solid #7dd3fc;border-radius:14px 14px 4px;flex-direction:column;gap:10px;width:300px;padding:14px;font-size:.88rem;display:flex;position:absolute;bottom:24px;right:24px;box-shadow:0 8px 24px #0284c740}.vocab-riddle p{margin:0}.vocab-riddle.shake{animation:.45s vocab-riddle-shake}@keyframes vocab-riddle-shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(7px)}60%{transform:translate(-5px)}80%{transform:translate(3px)}}.vocab-riddle-head{text-transform:uppercase;letter-spacing:.3px;color:#0369a1;align-items:center;gap:6px;font-size:.8rem;font-weight:700;display:flex}.vocab-riddle-x{cursor:pointer;color:#0369a1;background:0 0;border:none;border-radius:6px;margin-left:auto;padding:2px;display:inline-flex}.vocab-riddle-x:hover{background:#0369a11f}.vocab-riddle-text{font-size:.95rem;font-style:italic}.vocab-riddle-loading{color:#0369a1;align-items:center;gap:6px;display:flex}.vocab-riddle-answer{gap:8px;display:flex}.vocab-riddle-answer input{min-width:0;font:inherit;color:#0c4a6e;background:#fff;border:1px solid #7dd3fc;border-radius:8px;outline:none;flex:1;padding:8px 10px;font-size:.9rem}.vocab-riddle-go{cursor:pointer;color:#fff;background:#0284c7;border:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:.85rem;font-weight:700;display:inline-flex}.vocab-riddle-go:hover:not(:disabled){background:#0369a1}.vocab-riddle-go:disabled{opacity:.5;cursor:default}.vocab-riddle-tries{color:#b45309;font-size:.78rem;font-weight:600}.vocab-riddle-reveal{cursor:pointer;color:#0369a1;background:0 0;border:1px dashed #0369a1;border-radius:999px;align-self:flex-start;padding:5px 12px;font-size:.8rem;font-weight:600}.vocab-riddle-reveal:hover{background:#0369a114}.vocab-mastery-layer{z-index:2;pointer-events:none;transform-origin:0 0;position:absolute;inset:0}.vocab-mastery-pips{align-items:center;gap:3px;display:flex;position:absolute}.vocab-pip{background:#0000001f;border:1px solid #0000002e;border-radius:999px;width:7px;height:7px}.vocab-pip.on{background:#f59e0b;border-color:#d97706}.vocab-mastery-star{color:#d97706;text-shadow:0 1px 2px #00000026;font-size:13px;line-height:1}.vocab-practice-btn{pointer-events:auto;cursor:pointer;color:#92400e;background:#fef3c7;border:1px solid #fcd34d;border-radius:999px;align-items:center;gap:5px;padding:6px 14px;font-size:.82rem;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #0000000f}.vocab-practice-btn:hover:not(:disabled){background:#fde68a}.vocab-practice-btn:disabled{opacity:.45;cursor:default}.vocab-practice{z-index:20;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a59;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.vocab-practice-card{color:#1e293b;background:#fff;border-radius:16px;flex-direction:column;gap:12px;width:min(440px,100vw - 48px);padding:18px;display:flex;box-shadow:0 16px 48px #00000040}.vocab-practice-head{text-transform:uppercase;letter-spacing:.3px;color:#92400e;align-items:center;gap:6px;font-size:.82rem;font-weight:700;display:flex}.vocab-practice-head .vocab-riddle-x{color:#64748b}.vocab-practice-kind{color:#475569;text-transform:uppercase;background:#f1f5f9;border-radius:999px;align-self:flex-start;padding:2px 10px;font-size:.72rem;font-weight:700}.vocab-practice-prompt{font-size:1.05rem;font-weight:600}.vocab-practice-opts{grid-template-columns:1fr 1fr;gap:8px;display:grid}.vocab-practice-opts button{cursor:pointer;color:#1e293b;font:inherit;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-size:.92rem}.vocab-practice-opts button:hover:not(:disabled){background:#f1f5f9;border-color:#cbd5e1}.vocab-practice-opts button.right{color:#065f46;background:#d1fae5;border-color:#10b981;font-weight:700}.vocab-practice-opts button.wrong{color:#991b1b;background:#fee2e2;border-color:#ef4444}.vocab-practice-expl{color:#475569;background:#f8fafc;border-radius:8px;padding:8px 10px;font-size:.85rem}.vocab-practice-result{color:#047857;align-items:center;gap:8px;font-weight:700;display:flex}.vocab-due-badge{pointer-events:auto;cursor:pointer;background:#fffbeb;border:2px solid #f59e0b;border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;padding:0;font-size:13px;line-height:1;animation:1.6s ease-in-out infinite vocab-due-pulse;display:flex;position:absolute;box-shadow:0 2px 8px #f59e0b66}@keyframes vocab-due-pulse{0%,to{transform:scale(1);box-shadow:0 2px 8px #f59e0b66}50%{transform:scale(1.15);box-shadow:0 2px 14px #f59e0bb3}}.vocab-review-answer{color:#0369a1;text-align:center;padding:6px 0;font-size:1.15rem;font-weight:700}.vocab-review-grades{gap:8px;display:flex}.vocab-review-grades button{cursor:pointer;font:inherit;border:1px solid;border-radius:10px;flex:1;padding:10px 8px;font-size:.88rem;font-weight:700}.vocab-review-grades .ok{color:#065f46;background:#d1fae5;border-color:#10b981}.vocab-review-grades .mid{color:#92400e;background:#fef3c7;border-color:#f59e0b}.vocab-review-grades .bad{color:#991b1b;background:#fee2e2;border-color:#ef4444}.vocab-inbox-btn{pointer-events:auto;cursor:pointer;color:#5b21b6;background:#ede9fe;border:1px solid #c4b5fd;border-radius:999px;align-items:center;gap:5px;padding:6px 14px;font-size:.82rem;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #0000000f}.vocab-inbox-btn:hover{background:#ddd6fe}.vocab-inbox{z-index:12;background:#fffffff5;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:8px;width:240px;padding:12px;display:flex;position:absolute;top:64px;bottom:90px;left:12px;box-shadow:0 8px 24px #0000001f}.vocab-inbox-head{text-transform:uppercase;letter-spacing:.3px;color:#5b21b6;align-items:center;gap:6px;font-size:.8rem;font-weight:700;display:flex}.vocab-inbox-head .vocab-riddle-x{color:#64748b}.vocab-inbox-hint{color:#64748b;font-size:.78rem}.vocab-inbox-list{flex-direction:column;gap:6px;display:flex;overflow-y:auto}.vocab-inbox-item{cursor:pointer;color:#1e293b;font:inherit;text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:.88rem;display:flex}.vocab-inbox-item:hover{background:#ede9fe;border-color:#c4b5fd}.vocab-inbox-count{color:#64748b;white-space:nowrap;font-size:.72rem}.vocab-bridge-btn{pointer-events:auto;cursor:pointer;color:#b45309;background:#fffbeb;border:1px solid #fbbf24;border-radius:999px;align-items:center;gap:5px;padding:6px 14px;font-size:.82rem;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #0000000f}.vocab-bridge-btn:hover:not(:disabled){background:#fef3c7}.vocab-bridge-btn:disabled{opacity:.45;cursor:default}.vocab-bridge-words{flex-wrap:wrap;gap:6px;display:flex}.vocab-bridge-chip{color:#92400e;background:#fef3c7;border:1px solid #fbbf24;border-radius:999px;padding:4px 12px;font-size:.9rem;font-weight:600}.vocab-bridge-input{color:#1e293b;font:inherit;resize:vertical;background:#fff;border:1px solid #e2e8f0;border-radius:10px;outline:none;padding:10px 12px;font-size:.95rem}.vocab-bridge-input:focus{border-color:#fbbf24}.vocab-bridge-verdict{align-items:center;gap:8px;font-weight:700;display:flex}.vocab-bridge-verdict.ok{color:#b45309}.vocab-bridge-verdict.bad{color:#991b1b}.vocab-bridge-corrected{color:#065f46;background:#ecfdf5;border:1px solid #6ee7b7;border-radius:8px;padding:8px 10px;font-size:.9rem}.vocab-streak-btn{pointer-events:auto;cursor:pointer;color:#c2410c;background:#fff7ed;border:1px solid #fdba74;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:.82rem;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #0000000f}.vocab-streak-btn:hover{background:#ffedd5}.vocab-streak-btn.done{color:#fff;background:#fb923c;border-color:#ea580c}.vocab-challenge{z-index:12;background:#fffffff7;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:10px;width:250px;max-height:calc(100vh - 160px);padding:14px;display:flex;position:absolute;top:64px;right:12px;overflow-y:auto;box-shadow:0 8px 24px #0000001f}.vocab-challenge-head{text-transform:uppercase;letter-spacing:.3px;color:#c2410c;align-items:center;gap:6px;font-size:.78rem;font-weight:700;display:flex}.vocab-challenge-head .vocab-riddle-x{color:#64748b}.vocab-streak-line{align-items:baseline;gap:8px;display:flex}.vocab-streak-flame{color:#ea580c;font-size:1.4rem;font-weight:800}.vocab-streak-sub{color:#64748b;font-size:.76rem}.vocab-challenge-done{color:#047857;text-align:center;background:#ecfdf5;border-radius:8px;padding:6px 10px;font-size:.82rem;font-weight:700}.vocab-challenge-goals{flex-direction:column;gap:6px;display:flex}.vocab-goal{color:#475569;align-items:center;gap:8px;font-size:.86rem;display:flex}.vocab-goal.done{color:#047857;font-weight:600}.vocab-goal-check{text-align:center;width:16px}.vocab-goal-label{flex:1}.vocab-goal-count{color:#94a3b8;font-size:.78rem}.vocab-goal.done .vocab-goal-count{color:#10b981}.vocab-fields{flex-direction:column;gap:8px;display:flex}.vocab-field-top{color:#475569;justify-content:space-between;margin-bottom:3px;font-size:.8rem;display:flex}.vocab-field-count{color:#94a3b8}.vocab-field-bar{background:#e2e8f0;border-radius:999px;height:6px;overflow:hidden}.vocab-field-bar>div{background:linear-gradient(90deg,#34d399,#10b981);border-radius:999px;height:100%}.vocab-biome-layer{z-index:1;pointer-events:none;transform-origin:0 0;position:absolute;inset:0}.vocab-biome-banner{white-space:nowrap;background:#ffffffd1;border:1px solid #0000000f;border-radius:999px;align-items:center;gap:7px;padding:5px 12px 5px 8px;display:inline-flex;position:absolute;transform:translate(-50%);box-shadow:0 3px 10px #00000014}.vocab-biome-banner.stage-0{background:#f0fdf4d9;border-color:#bbf7d0}.vocab-biome-banner.stage-1{background:#dcfce7e6;border-color:#86efac}.vocab-biome-banner.stage-2{background:#d1fae5f2;border-color:#34d399}.vocab-biome-banner.stage-3{background:#fef9c3f2;border-color:#facc15}.vocab-biome-emoji{font-size:18px;line-height:1}.vocab-biome-name{color:#334155;font-size:.82rem;font-weight:700}.vocab-biome-stage{color:#64748b;font-size:.72rem}.vocab-milestone{z-index:30;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #6ee7b7;border-radius:14px;align-items:center;gap:12px;padding:12px 18px;animation:.4s ease-out vocab-milestone-in;display:flex;position:absolute;top:64px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #10b98140}@keyframes vocab-milestone-in{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}.vocab-milestone-emoji{font-size:28px;line-height:1}.vocab-milestone-title{color:#065f46;font-weight:700}.vocab-milestone-sub{color:#047857;font-size:.82rem}.school-app{--s-bg:var(--color-bg);--s-tint:16, 40, 28;--s-text:var(--color-ink);--s-text-muted:var(--color-ink-muted);--s-text-strong:var(--color-ink);--s-on-accent:var(--color-on-accent);--s-accent-text:var(--color-accent);--s-surface:var(--color-surface);--s-surface-accent:var(--color-surface-2);--s-input-bg:var(--color-surface-2);background:var(--s-bg);height:100vh;color:var(--s-text);flex-direction:column;display:flex;overflow:hidden}html[data-theme=dark] .school-app{--s-tint:255, 252, 246}.school-header{padding:12px var(--chrome-reserve-right) 12px 18px;border-bottom:1px solid rgba(var(--s-tint), .08);background:rgba(var(--s-tint), .02);flex-shrink:0;align-items:center;gap:16px;display:flex}.school-nav-group{gap:6px;display:flex}.school-title{flex:1;align-items:center;gap:8px;min-width:0;font-size:15px;font-weight:600;display:flex}.school-title span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.school-role-switch{background:rgba(var(--s-tint), .05);border:1px solid rgba(var(--s-tint), .1);border-radius:999px;padding:2px;display:inline-flex}.role-btn{color:rgba(var(--s-tint), .6);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:5px 14px;font-size:12px;font-weight:600;transition:background .15s,color .15s}.role-btn.active{color:var(--s-on-accent);background:#6366f1}.school-iconbtn{border:1px solid rgba(var(--s-tint), .1);background:rgba(var(--s-tint), .04);width:34px;height:34px;color:var(--s-text-muted);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.school-iconbtn:hover{background:rgba(var(--s-tint), .1)}.school-iconbtn.sm{border-radius:7px;width:28px;height:28px}.school-iconbtn.danger:hover{color:#fca5a5;background:#ef44442e;border-color:#ef444466}.school-btn-primary,.school-btn-secondary{cursor:pointer;border:1px solid #0000;border-radius:9px;align-items:center;gap:7px;padding:8px 14px;font-size:13px;font-weight:600;transition:filter .15s,background .15s;display:inline-flex}.school-btn-primary{color:var(--s-on-accent);background:#6366f1}.school-btn-primary:hover:not(:disabled){filter:brightness(1.1)}.school-btn-primary:disabled{opacity:.45;cursor:default}.school-btn-secondary{background:rgba(var(--s-tint), .06);color:var(--s-text-muted);border-color:rgba(var(--s-tint), .1)}.school-btn-secondary:hover{background:rgba(var(--s-tint), .12)}.school-body{flex:1;padding:22px;overflow-y:auto}.school-section-head{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.school-section-head h2{margin:0;font-size:18px;font-weight:700}.school-home-nav{gap:8px;margin-bottom:18px;display:flex}.home-nav-btn{cursor:pointer;border:1px solid rgba(var(--s-tint), .1);background:rgba(var(--s-tint), .04);color:rgba(var(--s-tint), .6);border-radius:9px;align-items:center;gap:7px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.home-nav-btn.active{color:var(--s-on-accent);background:#6366f1;border-color:#6366f1}.home-nav-btn{position:relative}.home-nav-badge{min-width:17px;height:17px;color:var(--s-on-accent);background:#ef4444;border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex}.school-agenda{height:calc(100vh - 200px);min-height:420px}.school-agenda-hint{color:rgba(var(--s-tint), .45);margin-bottom:10px;font-size:13px}.msg-view{grid-template-columns:280px 1fr;gap:14px;height:calc(100vh - 200px);min-height:440px;display:grid}.msg-sidebar{border:1px solid rgba(var(--s-tint), .08);background:rgba(var(--s-tint), .02);border-radius:12px;flex-direction:column;min-height:0;display:flex}.msg-sidebar-head{color:var(--s-text-strong);border-bottom:1px solid rgba(var(--s-tint), .06);justify-content:space-between;align-items:center;gap:8px;padding:12px 12px 10px;font-size:14px;font-weight:700;display:flex}.school-btn-primary.sm{padding:5px 9px;font-size:12px}.msg-conv-list{flex:1;padding:6px;overflow-y:auto}.msg-empty-list{color:rgba(var(--s-tint), .4);text-align:center;padding:18px 14px;font-size:13px}.msg-conv-item{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:none;border-radius:9px;align-items:center;gap:9px;padding:9px 10px;display:flex}.msg-conv-item:hover{background:rgba(var(--s-tint), .04)}.msg-conv-item.active{background:#6366f129}.msg-conv-avatar{width:32px;height:32px;color:var(--s-accent-text);background:#6366f147;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.msg-conv-main{flex-direction:column;flex:1;min-width:0;display:flex}.msg-conv-name{color:var(--s-text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.msg-conv-item.unread .msg-conv-name{color:var(--s-text-strong)}.msg-conv-preview{color:rgba(var(--s-tint), .45);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.msg-conv-course-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.msg-conv-badge{min-width:18px;height:18px;color:var(--s-on-accent);background:#ef4444;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.msg-main{border:1px solid rgba(var(--s-tint), .08);background:rgba(var(--s-tint), .02);border-radius:12px;flex-direction:column;min-height:0;display:flex}.msg-placeholder,.msg-thread,.msg-recipients{flex-direction:column;height:100%;min-height:0;display:flex}.msg-placeholder{color:rgba(var(--s-tint), .3);justify-content:center;align-items:center;gap:12px;font-size:14px}.msg-thread-head{border-bottom:1px solid rgba(var(--s-tint), .06);align-items:center;gap:10px;padding:12px 14px;display:flex}.msg-thread-title{color:var(--s-text-strong);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;font-weight:700;overflow:hidden}.msg-thread-course{align-items:center;gap:4px;font-size:12px;font-weight:600;display:inline-flex}.msg-stream{flex-direction:column;flex:1;gap:8px;padding:14px;display:flex;overflow-y:auto}.msg-bubble-row{display:flex}.msg-bubble-row.mine{justify-content:flex-end}.msg-bubble{background:rgba(var(--s-tint), .06);border:1px solid rgba(var(--s-tint), .06);border-radius:12px;max-width:78%;padding:8px 11px}.msg-bubble-row.mine .msg-bubble{background:#6366f138;border-color:#6366f14d}.msg-sender{color:#a5b4fc;margin-bottom:3px;font-size:11px;font-weight:700}.msg-text{color:var(--s-text);white-space:pre-wrap;word-break:break-word;font-size:13px}.msg-time{color:rgba(var(--s-tint), .4);text-align:right;margin-top:4px;font-size:10px}.msg-refs,.msg-atts{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.msg-ref-chip{cursor:pointer;background:rgba(var(--s-tint), .08);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:7px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.msg-ref-chip:hover{background:rgba(var(--s-tint), .14)}.msg-ref-chip.pending{cursor:default}.msg-ref-chip.pending button{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;padding:0;display:inline-flex}.msg-ref-chip span{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.msg-pending{border-top:1px solid rgba(var(--s-tint), .06);flex-wrap:wrap;gap:6px;padding:8px 14px;display:flex}.msg-composer{border-top:1px solid rgba(var(--s-tint), .06);padding:10px 12px}.msg-composer-tools{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.msg-composer-row{align-items:flex-end;gap:8px;display:flex}.msg-composer-row textarea{resize:none;min-height:38px;max-height:130px;font:inherit;background:var(--s-input-bg);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:10px;flex:1;padding:9px 11px;font-size:13px}.msg-composer-row .school-btn-primary{padding:9px 12px}.msg-search{background:var(--s-input-bg);border:1px solid rgba(var(--s-tint), .12);border-radius:9px;align-items:center;gap:8px;margin:12px 14px;padding:8px 11px;display:flex}.msg-search input{color:var(--s-text);font:inherit;background:0 0;border:none;outline:none;flex:1;font-size:13px}.msg-picked-row{flex-wrap:wrap;align-items:center;gap:6px;padding:0 14px 10px;display:flex}.msg-picked-chip{color:var(--s-text);background:#6366f133;border:1px solid #6366f14d;border-radius:7px;align-items:center;gap:5px;padding:4px 8px;font-size:12px;display:inline-flex}.msg-picked-chip button{color:inherit;cursor:pointer;background:0 0;border:none;padding:0;display:inline-flex}.msg-candidate-list{flex:1;padding:4px 8px 8px;overflow-y:auto}.msg-candidate{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:none;border-radius:9px;align-items:center;gap:9px;padding:8px 10px;display:flex}.msg-candidate:hover{background:rgba(var(--s-tint), .04)}.msg-candidate.picked{background:#6366f124}.msg-candidate-main{flex:1;align-items:center;gap:7px;min-width:0;display:flex}.msg-candidate-add{opacity:.5;display:inline-flex}.msg-candidate:hover .msg-candidate-add{opacity:.9}.msg-refpicker{background:var(--s-input-bg);border:1px solid rgba(var(--s-tint), .1);border-radius:10px;max-height:220px;margin:0 12px 8px;padding:8px;overflow-y:auto}.msg-refpicker-head{color:var(--s-text-muted);justify-content:space-between;align-items:center;padding:2px 4px 8px;font-size:12px;font-weight:700;display:flex}.msg-refpicker-course{margin-bottom:8px}.msg-ref-opt{text-align:left;cursor:pointer;width:100%;color:rgba(var(--s-tint), .75);background:0 0;border:none;border-radius:7px;align-items:center;gap:7px;padding:6px 9px;font-size:12px;display:flex}.msg-ref-opt:hover{background:rgba(var(--s-tint), .06);color:var(--s-text-strong)}.msg-ref-opt.course{color:var(--s-text-strong);font-weight:700}.msg-ref-opt:not(.course){padding-left:22px}.rt-editor{border:1px solid rgba(var(--s-tint), .12);background:var(--s-input-bg);border-radius:9px;overflow:hidden}.rt-toolbar{border-bottom:1px solid rgba(var(--s-tint), .08);background:rgba(var(--s-tint), .03);align-items:center;gap:2px;padding:5px 6px;display:flex}.rt-spacer{flex:1}.rt-tool{cursor:pointer;width:28px;height:26px;color:rgba(var(--s-tint), .6);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.rt-tool:hover{background:rgba(var(--s-tint), .1);color:var(--s-text-strong)}.rt-tool.active{color:var(--s-accent-text);background:#6366f140}.rt-textarea{resize:vertical;width:100%;min-height:60px;color:var(--s-text);font:inherit;background:0 0;border:none;outline:none;padding:10px 11px;font-size:13px;line-height:1.5}.rt-preview{min-height:60px;padding:10px 11px;font-size:13px}.rt-preview-empty{color:rgba(var(--s-tint), .35);font-style:italic}.rt-hint{color:rgba(var(--s-tint), .35);padding:4px 10px 6px;font-size:10.5px}.richtext{color:var(--s-text);word-break:break-word;font-size:13px;line-height:1.55}.richtext>:first-child{margin-top:0}.richtext>:last-child{margin-bottom:0}.richtext p{margin:6px 0}.richtext h1,.richtext h2,.richtext h3{color:var(--s-text);margin:10px 0 6px;line-height:1.25}.richtext h1{font-size:17px}.richtext h2{font-size:15px}.richtext h3{font-size:13.5px}.richtext ul,.richtext ol{margin:6px 0;padding-left:20px}.richtext li{margin:2px 0}.richtext a{color:var(--s-accent-text);text-decoration:underline}.richtext code{background:rgba(var(--s-tint), .1);border-radius:4px;padding:1px 5px;font-size:.92em}.richtext pre{background:rgba(var(--s-tint), .08);border-radius:7px;margin:8px 0;padding:9px 11px;overflow-x:auto}.richtext pre code{background:0 0;padding:0}.richtext blockquote{color:rgba(var(--s-tint), .7);background:rgba(var(--s-tint), .03);border-left:3px solid #6366f180;margin:8px 0;padding:4px 12px}.richtext hr{border:none;border-top:1px solid rgba(var(--s-tint), .12);margin:10px 0}.qz{flex-direction:column;height:calc(100vh - 150px);min-height:480px;display:flex}.qz-head{align-items:center;gap:10px;margin-bottom:12px;display:flex}.qz-title-input{color:var(--s-text);border:none;border-bottom:2px solid rgba(var(--s-tint), .12);background:0 0;flex:1;padding:6px 2px;font-size:16px;font-weight:700}.qz-title-input:focus{border-bottom-color:#6366f1;outline:none}.qz-saved{color:#34d399;opacity:.8;font-size:11px}.school-btn-secondary.active{background:#6366f133;border-color:#6366f166}.qz-settings{background:rgba(var(--s-tint), .03);border:1px solid rgba(var(--s-tint), .08);border-radius:10px;flex-wrap:wrap;align-items:flex-end;gap:14px 18px;margin-bottom:12px;padding:12px 14px;display:flex}.qz-settings .school-field{flex:none;min-width:130px}.qz-settings .qz-settings-desc{flex:100%;min-width:220px}.qz-settings .qz-settings-desc input{width:100%}.qz-check{color:var(--s-text-muted);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.qz-grid{flex:1;grid-template-columns:250px 1fr 360px;gap:12px;min-height:0;display:grid}@media (width<=1100px){.qz-grid{grid-template-columns:220px 1fr}.qz-preview{display:none}}.qz-list,.qz-editor,.qz-preview{border:1px solid rgba(var(--s-tint), .08);background:rgba(var(--s-tint), .02);border-radius:12px;flex-direction:column;min-height:0;display:flex}.qz-list-head,.qz-preview-head{color:var(--s-text-strong);border-bottom:1px solid rgba(var(--s-tint), .06);justify-content:space-between;align-items:center;gap:8px;padding:11px 12px;font-size:13px;font-weight:700;display:flex}.qz-preview-head{justify-content:flex-start;gap:6px}.qz-typemenu{border-bottom:1px solid rgba(var(--s-tint), .06);flex-direction:column;gap:2px;padding:6px;display:flex}.qz-typemenu-item{color:rgba(var(--s-tint), .75);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:7px;align-items:center;gap:8px;padding:7px 9px;font-size:12.5px;display:flex}.qz-typemenu-item:hover{color:var(--s-accent-text);background:#6366f129}.qz-typemenu-item{align-items:flex-start}.qz-typemenu-item>svg{flex-shrink:0;margin-top:2px}.qz-typemenu-text{flex-direction:column;gap:1px;min-width:0;display:flex}.qz-typemenu-text>span:first-child{font-weight:600}.qz-typemenu-hint{color:rgba(var(--s-tint), .45);font-size:10.5px;line-height:1.3}.qz-list-empty,.qz-editor-empty,.qz-preview-empty{color:rgba(var(--s-tint), .4);text-align:center;padding:22px 16px;font-size:13px}.qz-list-items{flex:1;padding:6px;overflow-y:auto}.qz-list-item{cursor:pointer;border-radius:8px;align-items:center;gap:7px;padding:8px 9px;display:flex}.qz-list-item:hover{background:rgba(var(--s-tint), .04)}.qz-list-item.active{background:#6366f129}.qz-li-num{background:rgba(var(--s-tint), .08);width:20px;height:20px;color:var(--s-text-muted);border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.qz-li-num.sm{width:18px;height:18px}.qz-li-icon{color:#a5b4fc;flex-shrink:0}.qz-li-text{color:var(--s-text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12.5px;overflow:hidden}.qz-li-pts{color:rgba(var(--s-tint), .45);font-size:11px;font-weight:700}.qz-li-controls{gap:1px;display:none}.qz-list-item:hover .qz-li-controls,.qz-list-item.active .qz-li-controls{display:inline-flex}.qz-editor{overflow-y:auto}.qz-editor-empty{color:rgba(var(--s-tint), .35);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.qz-template-gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;width:100%;max-width:560px;display:grid}.qz-template-card{text-align:center;cursor:pointer;background:rgba(var(--s-tint), .03);border:1px solid rgba(var(--s-tint), .1);color:var(--s-accent-text);border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:14px 10px;display:flex}.qz-template-card:hover{background:#6366f129;border-color:#6366f166}.qz-tpl-name{color:var(--s-text-strong);font-size:12.5px;font-weight:700}.qz-tpl-hint{color:rgba(var(--s-tint), .45);font-size:10.5px;line-height:1.3}.qz-form{flex-direction:column;gap:12px;padding:14px;display:flex}.qz-form-row{flex-wrap:wrap;gap:12px;display:flex}.qz-form-row>.qz-field{flex:1;min-width:160px}.qz-form-type{color:var(--s-accent-text);background:#6366f133;border-radius:7px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.qz-points{color:var(--s-text-muted);align-items:center;gap:6px;margin-left:auto;font-size:12px;display:flex}.qz-points input{width:64px}.qz-field{flex-direction:column;gap:5px;display:flex}.qz-field>span{color:rgba(var(--s-tint), .65);font-size:12px;font-weight:600}.qz-field input,.qz-points input,.qz-settings input,.qz-settings select,.qz-opt-row input,.qz-opt-row select,.qz-pair-row input{font:inherit;background:var(--s-input-bg);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:8px;padding:8px 10px;font-size:13px}.qz-hint-inline{color:rgba(var(--s-tint), .45);margin:-4px 0 2px;font-size:11.5px}.qz-listed{flex-direction:column;gap:6px;display:flex}.qz-listed-label{color:rgba(var(--s-tint), .65);margin-top:4px;font-size:12px;font-weight:600}.qz-opt-row,.qz-pair-row{align-items:center;gap:6px;display:flex}.qz-opt-row>input,.qz-pair-row>input{flex:1}.qz-pair-sep{color:rgba(var(--s-tint), .4)}.qz-star{cursor:pointer;border:1px solid rgba(var(--s-tint), .12);width:28px;height:28px;color:rgba(var(--s-tint), .4);background:0 0;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.qz-star.on{color:#34d399;background:#10b98133;border-color:#10b98180}.qz-add-btn{cursor:pointer;background:rgba(var(--s-tint), .05);border:1px dashed rgba(var(--s-tint), .2);color:var(--s-text-muted);border-radius:7px;align-self:flex-start;align-items:center;gap:5px;padding:5px 10px;font-size:12px;display:inline-flex}.qz-add-btn:hover{background:rgba(var(--s-tint), .1)}.qz-add-btn:disabled{opacity:.4;cursor:not-allowed}.qz-preview-body{flex:1;padding:12px;overflow-y:auto}.qz-replay{margin-top:10px}.qz-ai-btn{cursor:pointer;color:var(--s-on-accent);background:linear-gradient(135deg,#005c3a,#34a578);border:1px solid #a855f780;border-radius:8px;align-items:center;gap:6px;padding:7px 13px;font-size:13px;font-weight:600;display:inline-flex}.qz-ai-btn:hover{filter:brightness(1.08)}.qz-ai-btn.active{box-shadow:0 0 0 2px #a855f780}.qz-ai-head-actions{align-items:center;gap:2px;display:inline-flex}.qz-grid.docked{grid-template-columns:230px minmax(0,1fr) 300px minmax(320px,360px)}@media (width<=1500px){.qz-grid.docked{grid-template-columns:220px minmax(0,1fr) 340px}.qz-grid.docked .qz-preview{display:none}}@media (width<=1100px){.qz-grid.docked{grid-template-columns:220px minmax(0,1fr)}.qz-grid.docked .qz-list{display:none}}.qz-ai-dock{background:#7c3aed0d;border:1px solid #a855f74d;border-radius:12px;flex-direction:column;min-height:0;display:flex}.qz-ai-dock .qz-ai-head{border-bottom:1px solid rgba(var(--s-tint), .08)}.qz-ai-dock .qz-ai-thread{min-height:80px}.qz-ai-overlay{z-index:60;background:#00000073;position:fixed;inset:0}.qz-ai-drawer{z-index:61;background:#14141f;border-left:1px solid #a855f74d;flex-direction:column;width:400px;max-width:92vw;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-12px 0 40px #00000080}.qz-ai-head{border-bottom:1px solid rgba(var(--s-tint), .08);color:var(--s-text);justify-content:space-between;align-items:center;padding:14px 16px;font-size:15px;font-weight:700;display:flex}.qz-ai-head>span{color:#c4b5fd;align-items:center;gap:8px;display:inline-flex}.qz-ai-notice{color:#fcd34d;background:#f59e0b1f;border:1px solid #f59e0b4d;border-radius:10px;gap:8px;margin:16px;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}.qz-ai-source{border-bottom:1px solid rgba(var(--s-tint), .06);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.qz-ai-source textarea{resize:vertical;min-height:70px;font:inherit;background:var(--s-input-bg);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:9px;padding:9px 11px;font-size:13px}.qz-ai-controls{align-items:flex-end;gap:8px;display:flex}.qz-ai-controls label{color:rgba(var(--s-tint), .55);flex-direction:column;gap:3px;font-size:11px;display:flex}.qz-ai-controls select,.qz-ai-controls input{font:inherit;background:var(--s-input-bg);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:7px;padding:6px 8px;font-size:12.5px}.qz-ai-controls input{width:56px}.qz-ai-controls .school-btn-primary{margin-left:auto}.qz-ai-thread{flex-direction:column;flex:1;gap:10px;padding:14px;display:flex;overflow-y:auto}.qz-ai-empty{color:rgba(var(--s-tint), .45);padding:8px 4px;font-size:13px;line-height:1.55}.qz-ai-msg{flex-direction:column;gap:4px;max-width:92%;display:flex}.qz-ai-msg.user{align-self:flex-end;align-items:flex-end}.qz-ai-msg.assistant{align-self:flex-start}.qz-ai-bubble{white-space:pre-wrap;word-break:break-word;background:rgba(var(--s-tint), .06);color:var(--s-text);border:1px solid rgba(var(--s-tint), .07);border-radius:12px;padding:9px 12px;font-size:13px;line-height:1.5}.qz-ai-msg.user .qz-ai-bubble{background:#7c3aed40;border-color:#7c3aed59}.qz-ai-bubble.busy{color:#c4b5fd;align-items:center;gap:7px;display:inline-flex}.qz-ai-summary{color:#34d399;font-size:11px;font-weight:700}.qz-ai-error{color:#fca5a5;align-items:center;gap:6px;font-size:12px;display:flex}.qz-spin{animation:1s linear infinite qz-spin}@keyframes qz-spin{to{transform:rotate(360deg)}}.qz-ai-input{border-top:1px solid rgba(var(--s-tint), .08);gap:8px;padding:12px 14px;display:flex}.qz-ai-input textarea{resize:none;min-height:40px;max-height:120px;font:inherit;background:var(--s-input-bg);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:10px;flex:1;padding:9px 11px;font-size:13px}.qz-ai-input .school-btn-primary{align-self:stretch;padding:0 14px}.qz-ai-settings-inline{flex-direction:column;flex:1;gap:12px;min-height:0;padding:14px;display:flex;overflow-y:auto}.qz-ai-settings-inline .qz-ai-settings-title{color:var(--s-accent-text);align-items:center;gap:6px;margin-bottom:2px;font-size:13.5px;font-weight:700;display:flex}.qz-ai-settings-inline .school-field{flex-direction:column;gap:4px;display:flex}.qz-ai-settings-inline .school-field span{color:rgba(var(--s-tint), .6);font-size:11.5px;font-weight:600}.qz-ai-settings-inline input,.qz-ai-settings-inline select{font:inherit;background:var(--s-input-bg);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:8px;padding:8px 10px;font-size:13px}.qz-ai-provider-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:6px;display:grid}.qz-ai-provider-card{background:rgba(var(--s-tint), .03);border:1px solid rgba(var(--s-tint), .08);color:var(--s-text-muted);cursor:pointer;text-align:left;border-radius:8px;flex-direction:column;justify-content:space-between;gap:6px;padding:8px;font-size:11px;font-weight:600;transition:all .15s;display:flex}.qz-ai-provider-card:hover{background:rgba(var(--s-tint), .07)}.qz-ai-provider-card.active{color:var(--s-text-strong);background:#7c3aed26;border-color:#a855f780}.qz-ai-provider-card-top{justify-content:space-between;align-items:center;width:100%;display:flex}.qz-ai-provider-card .ai-badge{color:#34d399;background:#10b98133;border-radius:4px;align-self:flex-start;padding:1px 4px;font-size:8.5px}.qz-ai-key-row{align-items:center;gap:6px;display:flex}.qz-ai-key-row input{flex:1}.qz-ai-settings-actions{gap:8px;margin-top:auto;padding-top:12px;display:flex}.workshop-head-actions{gap:8px;display:inline-flex}.workshop-live-btn{cursor:pointer;color:var(--s-on-accent);background:linear-gradient(135deg,#e21b3c,#c01030);border:1px solid #e21b3c80;border-radius:8px;align-items:center;gap:5px;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.workshop-live-btn:hover{filter:brightness(1.08)}.workshop-live-btn:disabled{opacity:.45;cursor:not-allowed}.live-host,.live-player{--s-tint:255, 255, 255;--s-text:#e5e7eb;--s-text-strong:#fff;--s-text-muted:#94a3b8;--s-surface:#1a1a20;min-height:calc(100vh - 120px);color:var(--s-text-strong);background:radial-gradient(120% 120% at 50% 0,#1b1340 0%,#0e0b1f 60%);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.live-topbar{border-bottom:1px solid rgba(var(--s-tint), .08);background:#00000040;align-items:center;gap:12px;padding:12px 18px;display:flex}.live-quiz-name{flex:1;font-size:15px;font-weight:800}.live-qcount{color:rgba(var(--s-tint), .6);font-size:13px}.live-topbar .school-iconbtn{color:var(--s-text-strong)}.live-lobby{flex-direction:column;flex:1;align-items:center;gap:22px;padding:30px 20px;display:flex}.live-join-card{text-align:center;background:rgba(var(--s-tint), .95);color:#1b1340;border-radius:18px;padding:22px 40px;box-shadow:0 16px 50px #0006}.live-join-label{color:#6b21a8;text-transform:uppercase;letter-spacing:.06em;font-size:14px;font-weight:700}.live-pin{letter-spacing:.14em;margin:4px 0;font-size:56px;font-weight:900;line-height:1.1}.live-join-hint{color:#555;max-width:360px;font-size:12.5px}.live-lobby-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.live-perq{color:rgba(var(--s-tint), .7);align-items:center;gap:6px;font-size:13px;display:inline-flex}.live-perq>span{align-items:center;gap:5px;display:inline-flex}.live-perq-btn{cursor:pointer;background:rgba(var(--s-tint), .08);border:1px solid rgba(var(--s-tint), .16);color:var(--s-text-strong);border-radius:7px;padding:5px 11px;font-size:13px;font-weight:700}.live-perq-btn.active{background:#6366f1;border-color:#6366f1}.live-start-btn{cursor:pointer;color:var(--s-on-accent);background:linear-gradient(135deg,#26890c,#1d6b08);border:none;border-radius:12px;align-items:center;gap:8px;padding:12px 26px;font-size:16px;font-weight:800;display:inline-flex;box-shadow:0 8px 24px #26890c59}.live-start-btn:hover{filter:brightness(1.08)}.live-start-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.live-warn{color:#fda4af;background:#f43f5e1f;border-radius:9px;padding:8px 14px;font-size:13px}.live-players{width:100%;max-width:760px}.live-players-head{color:rgba(var(--s-tint), .85);align-items:center;gap:7px;margin-bottom:10px;font-weight:700;display:flex}.live-player-chips{flex-wrap:wrap;gap:8px;display:flex}.live-chip{background:var(--c,#6366f1);color:var(--s-on-accent);border-radius:20px;padding:7px 14px;font-size:14px;font-weight:700;animation:.25s live-pop;box-shadow:0 3px 10px #0000004d}@keyframes live-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.live-waiting{color:rgba(var(--s-tint), .4);font-style:italic}.live-question,.live-reveal{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex}.live-q-top{align-items:center;gap:16px;display:flex}.live-timer{background:#6366f1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:28px;font-weight:900;display:flex;box-shadow:0 6px 18px #6366f173}.live-timer.sm{width:44px;height:44px;font-size:20px}.live-prompt{text-align:center;flex:1;font-size:26px;font-weight:800;line-height:1.25}.live-answered{color:rgba(var(--s-tint), .8);align-items:center;gap:6px;font-weight:700;display:inline-flex}.live-options{flex:1;grid-template-columns:1fr 1fr;align-content:stretch;gap:12px;display:grid}.live-option{color:var(--s-on-accent);background:var(--c);border-radius:12px;align-items:center;gap:12px;min-height:84px;padding:18px 22px;font-size:19px;font-weight:800;display:flex}.live-options.reveal .live-option.dim{opacity:.4}.live-options.reveal .live-option.correct{outline:4px solid #fff}.live-option>span:first-of-type,.live-option span{word-break:break-word}.live-correct-ic{margin-left:auto}.live-tally{background:#0000004d;border-radius:10px;margin-left:auto;padding:2px 10px;font-size:16px}.live-text-hint,.live-text-answer{text-align:center;color:rgba(var(--s-tint), .85);padding:24px;font-size:18px}.live-controls{justify-content:center;gap:10px;display:flex}.live-controls .school-btn-secondary{color:var(--s-text-strong);border-color:rgba(var(--s-tint), .3);background:rgba(var(--s-tint), .08)}.live-mini-lb{flex-direction:column;gap:6px;width:100%;max-width:520px;margin:0 auto;display:flex}.live-lb-row{background:rgba(var(--s-tint), .07);border-radius:10px;align-items:center;gap:10px;padding:9px 14px;display:flex}.live-lb-rank{width:22px;color:rgba(var(--s-tint), .6);font-weight:900}.live-lb-nick{border-left:4px solid var(--c,#6366f1);flex:1;padding-left:9px;font-weight:700}.live-lb-score{font-weight:800}.live-lb-gain{color:#4ade80;font-size:12px;font-weight:800}.live-podium{flex-direction:column;flex:1;align-items:center;gap:18px;padding:30px 20px;display:flex}.live-podium h2{align-items:center;gap:10px;font-size:26px;display:inline-flex}.live-podium-top{align-items:flex-end;gap:16px;display:flex}.live-podium-col{background:rgba(var(--s-tint), .1);border-radius:12px 12px 0 0;flex-direction:column;align-items:center;gap:6px;min-width:110px;padding:16px 22px;display:flex}.live-podium-col.p1{background:#f5c51840;padding-bottom:40px}.live-podium-col.p2{padding-bottom:26px}.live-podium-col.p3{padding-bottom:14px}.live-podium-medal{font-size:32px}.live-podium-nick{border-bottom:3px solid var(--c,#6366f1);padding-bottom:2px;font-weight:800}.live-podium-score{font-size:20px;font-weight:900}.live-recorded-banner{color:#34d399;background:#10b98126;border:1px solid #10b98159;border-radius:10px;align-items:center;gap:8px;margin-top:6px;padding:10px 16px;font-size:13.5px;font-weight:600;animation:.3s fadeIn;display:inline-flex}.live-join-form{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex}.live-join-form h2{font-size:24px}.live-pin-input,.live-nick-input{text-align:center;background:rgba(var(--s-tint), .95);color:#1b1340;border:none;border-radius:12px;width:100%;max-width:320px;padding:14px 16px;font-size:20px;font-weight:700}.live-pin-input{letter-spacing:.2em}.live-center{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.live-center p{font-size:16px}.live-dim{color:rgba(var(--s-tint), .55);font-size:14px}.live-you{border-radius:24px;padding:12px 26px;font-size:22px;font-weight:800;box-shadow:0 6px 20px #00000059}.live-play-question{flex-direction:column;flex:1;gap:14px;padding:16px;display:flex}.live-play-head{align-items:center;gap:12px;display:flex}.live-play-prompt{flex:1;font-size:19px;font-weight:700}.live-play-options{flex:1;grid-template-columns:1fr 1fr;gap:12px;display:grid}.live-play-opt{cursor:pointer;color:var(--s-on-accent);background:var(--c);text-align:left;border:none;border-radius:12px;align-items:center;gap:10px;min-height:90px;padding:16px;font-size:17px;font-weight:800;display:flex}.live-play-opt:hover{filter:brightness(1.08)}.live-play-opt:active{transform:scale(.97)}.live-play-text{flex-direction:column;align-items:center;gap:10px;padding:20px;display:flex}.live-play-text input{text-align:center;border:none;border-radius:12px;width:100%;max-width:360px;padding:14px;font-size:18px}.live-spinner{border:4px solid rgba(var(--s-tint), .2);border-top-color:var(--s-text-strong);border-radius:50%;width:38px;height:38px;animation:.9s linear infinite qz-spin}.live-feedback.ok{color:#4ade80}.live-feedback.no{color:#fb7185}.live-feedback h2{font-size:26px}.live-gain{font-size:28px;font-weight:900}.workshop-tab .school-section-head h2{align-items:center;gap:8px;display:inline-flex}.workshop-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-top:12px;display:grid}.workshop-card{background:rgba(var(--s-tint), .03);border:1px solid rgba(var(--s-tint), .09);border-radius:12px;flex-direction:column;gap:8px;padding:14px;display:flex}.workshop-card-top{align-items:center;gap:8px;display:flex}.workshop-card-title{color:var(--s-text);flex:1;font-size:14px;font-weight:700}.workshop-draft{text-transform:uppercase;letter-spacing:.03em;color:#fbbf24;background:#f59e0b33;border-radius:6px;padding:2px 7px;font-size:10px;font-weight:700}.workshop-card-desc{color:rgba(var(--s-tint), .5);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.workshop-card-meta{color:rgba(var(--s-tint), .55);flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.workshop-card-meta span{align-items:center;gap:4px;display:inline-flex}.workshop-card-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;display:flex}.workshop-live-btn.sm{border-radius:7px;justify-content:center;width:28px;height:28px;padding:0}.workshop-card-actions .school-btn-secondary.sm,.workshop-card-actions .school-btn-primary.sm{align-items:center;gap:5px;padding:6px 10px;font-size:12px;display:inline-flex}.workshop-card-actions .school-iconbtn.danger{margin-left:auto}.school-empty{color:rgba(var(--s-tint), .4);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:60px 20px;display:flex}.school-empty.sm{padding:36px 20px}.school-empty svg{opacity:.5}.school-course-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;display:grid}.school-course-card{background:rgba(var(--s-tint), .035);border:1px solid rgba(var(--s-tint), .08);cursor:pointer;border-radius:14px;transition:transform .12s,border-color .15s,background .15s;position:relative;overflow:hidden}.school-course-card:hover{border-color:var(--course-color);background:rgba(var(--s-tint), .06);transform:translateY(-2px)}.course-card-banner{background:var(--course-gradient,var(--course-color,#6366f1));height:80px;position:relative;overflow:hidden}.course-card-banner:after{content:"";opacity:.12;background-image:radial-gradient(circle at 100% 150%,#fff 24% 24%,#fff 28% 28%,#fff 36% 36%,#fff 40%,#0000 40%),radial-gradient(circle at 0 150%,#fff 24% 24%,#fff 28% 28%,#fff 36% 36%,#fff 40%,#0000 40%);background-size:20px 20px;position:absolute;inset:0}.course-card-body{padding:14px 16px 16px}.course-card-name{margin-bottom:4px;font-size:16px;font-weight:700}.course-card-subject{color:rgba(var(--s-tint), .55);font-size:12px}.course-card-teacher{color:rgba(var(--s-tint), .45);margin-top:2px;font-size:12px}.course-card-meta{color:rgba(var(--s-tint), .5);gap:14px;margin-top:12px;font-size:12px;display:flex}.course-card-meta span{align-items:center;gap:4px;display:inline-flex}.course-progress{align-items:center;gap:8px;margin-top:12px;display:flex}.course-progress-bar{background:rgba(var(--s-tint), .1);border-radius:4px;flex:1;height:6px;overflow:hidden}.course-progress-fill{background:var(--course-color,#6366f1);border-radius:4px;height:100%;transition:width .3s}.course-progress-label{color:rgba(var(--s-tint), .55);text-align:right;min-width:30px;font-size:11px;font-weight:700}.course-card-actions{opacity:0;z-index:3;gap:5px;transition:opacity .15s;display:flex;position:absolute;top:12px;right:10px}.school-course-card:hover .course-card-actions{opacity:1}.course-detail-banner{background:var(--course-gradient,var(--course-color,#6366f1));border-radius:14px;align-items:center;gap:16px;height:110px;margin-bottom:20px;padding:0 24px;display:flex;position:relative;overflow:hidden}.course-detail-banner:after{content:"";opacity:.1;pointer-events:none;background-image:radial-gradient(circle at 100% 150%,#fff 24% 24%,#fff 28% 28%,#fff 36% 36%,#fff 40%,#0000 40%),radial-gradient(circle at 0 150%,#fff 24% 24%,#fff 28% 28%,#fff 36% 36%,#fff 40%,#0000 40%);background-size:20px 20px;position:absolute;inset:0}.course-detail-banner .back-btn{border:1px solid rgba(var(--s-tint), .12);color:var(--s-text-strong);z-index:2;background:#00000040}.course-detail-banner .back-btn:hover{color:var(--s-text-strong);background:#0006}.course-detail-banner .course-detail-titles{z-index:2;text-shadow:0 2px 4px #00000080}.course-detail-banner .course-detail-titles h2{color:var(--s-text-strong);margin:0;font-size:20px;font-weight:700}.course-detail-banner .course-detail-sub{color:rgba(var(--s-tint), .8);margin-top:2px;font-size:13px}.course-tabs{border-bottom:1px solid rgba(var(--s-tint), .08);gap:4px;margin-bottom:18px;display:flex}.course-tab{color:rgba(var(--s-tint), .55);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:9px 14px;font-size:13px;font-weight:600;transition:color .15s,border-color .15s;display:inline-flex}.course-tab:hover{color:var(--s-text)}.course-tab.active{color:var(--s-text-strong);border-bottom-color:var(--course-color)}.stream-composer{flex-direction:column;gap:8px;margin-bottom:18px;display:flex}.stream-composer textarea,.assignment-submit textarea,.assignment-form textarea,.assignment-form input,.school-field input,.school-field textarea,.grading-row input{background:rgba(var(--s-tint), .05);border:1px solid rgba(var(--s-tint), .12);width:100%;color:var(--s-text);resize:vertical;border-radius:9px;padding:9px 11px;font-family:inherit;font-size:13px}.stream-composer textarea:focus,.assignment-submit textarea:focus,.school-field input:focus,.school-field textarea:focus{border-color:#6366f1;outline:none}.stream-composer .school-btn-primary{align-self:flex-end}.stream-list,.assignment-list{flex-direction:column;gap:12px;display:flex}.stream-item{background:rgba(var(--s-tint), .035);border:1px solid rgba(var(--s-tint), .08);border-radius:11px;padding:12px 14px}.stream-item-head{align-items:center;gap:10px;margin-bottom:7px;display:flex}.author-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:700}.author-badge.teacher{color:var(--s-accent-text);background:#6366f133}.author-badge.student{color:#6ee7b7;background:#10b9812e}.stream-date{color:rgba(var(--s-tint), .4);flex:1;font-size:11px}.stream-item-text{white-space:pre-wrap;font-size:14px;line-height:1.5}.assignments-tab>.school-btn-primary{margin-bottom:16px}.assignment-form{background:rgba(var(--s-tint), .035);border:1px solid rgba(var(--s-tint), .1);border-radius:12px;flex-direction:column;gap:10px;margin-bottom:16px;padding:14px;display:flex}.assignment-item{background:rgba(var(--s-tint), .035);border:1px solid rgba(var(--s-tint), .08);border-radius:12px;padding:14px 16px}.assignment-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.assignment-title{font-size:15px;font-weight:700}.assignment-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.assignment-badge{color:rgba(var(--s-tint), .6);background:rgba(var(--s-tint), .06);border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;display:inline-flex}.assignment-desc{color:rgba(var(--s-tint), .7);white-space:pre-wrap;margin-top:8px;font-size:13px;line-height:1.5}.status-badge{border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.status-badge.todo{background:rgba(var(--s-tint), .08);color:rgba(var(--s-tint), .55)}.status-badge.submitted{color:#7dd3fc;background:#0ea5e92e}.status-badge.returned{color:#6ee7b7;background:#10b9812e}.assignment-submit{flex-direction:column;gap:8px;margin-top:12px;display:flex}.assignment-submit .school-btn-primary{align-self:flex-end}.rubric-editor{flex-direction:column;gap:6px;display:flex}.rubric-row{align-items:center;gap:8px;display:flex}.rubric-title{background:rgba(var(--s-tint), .05);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:8px;flex:1;padding:7px 10px;font-size:13px}.rubric-points{background:rgba(var(--s-tint), .05);border:1px solid rgba(var(--s-tint), .12);width:80px;color:var(--s-text);border-radius:8px;padding:7px 10px;font-size:13px}.rubric-title:focus,.rubric-points:focus{border-color:#6366f1;outline:none}.rubric-add{border:1px dashed rgba(var(--s-tint), .2);color:rgba(var(--s-tint), .65);cursor:pointer;background:0 0;border-radius:8px;align-self:flex-start;align-items:center;gap:6px;padding:6px 11px;font-size:12px;font-weight:600;display:inline-flex}.rubric-add:hover{background:rgba(var(--s-tint), .06);border-color:#6366f180}.rubric-grade{flex-direction:column;gap:6px;margin:10px 0;display:flex}.rubric-grade-row{align-items:center;gap:8px;display:flex}.rubric-grade-title{color:rgba(var(--s-tint), .8);flex:1;font-size:13px}.rubric-grade-input{text-align:right;background:rgba(var(--s-tint), .05);border:1px solid rgba(var(--s-tint), .12);width:64px;color:var(--s-text);border-radius:7px;padding:5px 8px;font-size:13px}.rubric-grade-max{color:rgba(var(--s-tint), .45);width:44px;font-size:12px}.rubric-grade-total{text-align:right;color:var(--s-accent-text);font-size:13px}.rubric-result{flex-direction:column;gap:4px;margin-bottom:8px;display:flex}.rubric-result-row{color:rgba(var(--s-tint), .8);justify-content:space-between;font-size:13px;display:flex}.assignment-result{background:#10b9811a;border-radius:9px;margin-top:12px;padding:10px 12px}.result-grade{font-size:14px}.result-feedback{color:rgba(var(--s-tint), .7);margin-top:4px;font-size:13px}.assignment-grading{border-top:1px solid rgba(var(--s-tint), .07);margin-top:12px;padding-top:12px}.submission-label{text-transform:uppercase;letter-spacing:.04em;color:rgba(var(--s-tint), .45);margin-bottom:5px;font-size:11px}.submission-text{background:rgba(var(--s-tint), .04);white-space:pre-wrap;border-radius:8px;padding:9px 11px;font-size:13px;line-height:1.5}.submission-empty{color:rgba(var(--s-tint), .4);font-size:13px;font-style:italic}.grading-row{gap:8px;margin-top:10px;display:flex}.grading-row .grade-input{flex-shrink:0;width:90px}.grading-row .feedback-input{flex:1}.assignment-badge.type{color:var(--s-accent-text);background:#6366f129}.submit-hint{color:#fcd34d;background:#f59e0b1a;border-radius:8px;margin-bottom:8px;padding:7px 10px;font-size:12px}.assignment-attach{margin-top:4px}.att-section-label{text-transform:uppercase;letter-spacing:.04em;color:rgba(var(--s-tint), .4);margin-bottom:6px;font-size:11px;font-weight:700;display:block}.att-chip-row{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.att-teacher{margin-top:6px}.att-chip{background:rgba(var(--s-tint), .06);border:1px solid rgba(var(--s-tint), .12);border-radius:8px;align-items:center;max-width:240px;display:inline-flex;overflow:hidden}.att-chip.is-app{border-color:#6366f166}.att-chip-open{color:var(--s-accent-text);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;min-width:0;padding:5px 9px;font-size:12px;display:inline-flex}.att-chip.is-file .att-chip-open{color:var(--s-text-muted)}.att-chip-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.att-chip-ext{opacity:.5;flex-shrink:0}.att-chip-remove{border:none;border-left:1px solid rgba(var(--s-tint), .12);color:rgba(var(--s-tint), .5);cursor:pointer;background:0 0;align-items:center;padding:5px 6px;display:inline-flex}.att-chip-remove:hover{color:#fca5a5;background:#ef444433}.att-picker{margin-top:4px}.att-picker-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.att-source-btn{border:1px dashed rgba(var(--s-tint), .2);background:rgba(var(--s-tint), .03);color:rgba(var(--s-tint), .7);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 11px;font-size:12px;font-weight:600;display:inline-flex}.att-source-btn:hover{background:rgba(var(--s-tint), .08);border-color:#6366f180}.att-hint{color:rgba(var(--s-tint), .4);font-size:12px}.att-app-list{border:1px solid rgba(var(--s-tint), .08);border-radius:9px;flex-direction:column;gap:4px;max-height:180px;margin-top:8px;padding:6px;display:flex;overflow-y:auto}.att-app-item{color:var(--s-text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:7px;align-items:center;gap:8px;padding:7px 9px;font-size:13px;display:flex}.att-app-item:hover{background:#6366f124}.stream-composer-foot{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.stream-composer-foot .school-btn-primary{flex-shrink:0}.grade-student{border-top:1px solid rgba(var(--s-tint), .07);margin-top:12px;padding-top:12px}.grade-student:first-child{border-top:none;margin-top:0;padding-top:0}.grade-student-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.grade-student-name{flex:1;font-size:13px;font-weight:600}.person-avatar.sm{width:24px;height:24px;font-size:11px}.gradebook-scroll{border:1px solid rgba(var(--s-tint), .08);border-radius:12px;overflow-x:auto}.gradebook-table{border-collapse:collapse;width:100%;font-size:13px}.gradebook-table th,.gradebook-table td{text-align:center;border-bottom:1px solid rgba(var(--s-tint), .06);white-space:nowrap;padding:9px 12px}.gradebook-table thead th{background:rgba(var(--s-tint), .03);color:rgba(var(--s-tint), .6);font-size:12px;font-weight:700;position:sticky;top:0}.gradebook-table th .gb-assign{text-overflow:ellipsis;max-width:120px;display:block;overflow:hidden}.gradebook-table th .gb-pts{color:rgba(var(--s-tint), .4);font-weight:400}.gb-corner,.gb-student{text-align:left;background:var(--s-bg);position:sticky;left:0}.gb-student{align-items:center;gap:8px;font-weight:600;display:flex}.gb-student-name{text-overflow:ellipsis;max-width:150px;overflow:hidden}.gb-cell.empty{color:rgba(var(--s-tint), .3)}.gb-total{background:#6366f114;font-weight:600}.gb-total strong{color:var(--s-accent-text)}.gb-grade{background:#10b9811a}.gb-grade strong{color:#6ee7b7}.gradebook-toolbar{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.gradebook-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.school-field.inline{flex-direction:row;align-items:center;gap:8px}.school-field.inline>span{white-space:nowrap}.school-field.inline select{background:rgba(var(--s-tint), .06);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:8px;padding:6px 10px;font-size:13px}.school-field.inline select:focus{border-color:#6366f1;outline:none}.assignment-item.is-draft{opacity:.82;border-style:dashed}.assignment-badge.draft{color:var(--s-text-muted);cursor:pointer;background:#94a3b82e;border:none}.assignment-badge.draft:hover{color:var(--s-accent-text);background:#6366f140}.assignment-badge.locked{color:#fcd34d;background:#f59e0b29}.submit-locked{color:#fcd34d;background:#f59e0b1a;border-radius:9px;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;font-size:13px;display:flex}.student-dashboard{margin-bottom:28px}.dash-head{color:var(--s-accent-text);align-items:center;gap:9px;margin-bottom:14px;display:flex}.dash-head h2{color:var(--s-text-strong);margin:0;font-size:18px;font-weight:700}.dash-bucket{margin-bottom:14px}.dash-bucket-head{text-transform:uppercase;letter-spacing:.04em;color:rgba(var(--s-tint), .5);margin-bottom:6px;padding-left:2px;font-size:12px;font-weight:700}.dash-bucket.overdue .dash-bucket-head{color:#fca5a5}.dash-count{background:rgba(var(--s-tint), .1);border-radius:999px;margin-left:4px;padding:1px 7px}.dash-row{background:rgba(var(--s-tint), .035);border:1px solid rgba(var(--s-tint), .07);cursor:pointer;text-align:left;width:100%;color:inherit;border-radius:10px;align-items:center;gap:10px;margin-bottom:6px;padding:10px 12px;transition:background .15s,border-color .15s;display:flex}.dash-row:hover{background:rgba(var(--s-tint), .07);border-color:#6366f166}.dash-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.dash-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.dash-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.dash-meta{color:rgba(var(--s-tint), .5);font-size:12px}.dash-status{border-radius:6px;flex-shrink:0;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.dash-status.overdue{color:#fca5a5;background:#ef44442e}.dash-status.open{background:rgba(var(--s-tint), .08);color:rgba(var(--s-tint), .6)}.dash-status.locked{color:#fcd34d;background:#f59e0b29}.dash-status.submitted{color:#7dd3fc;background:#0ea5e92e}.dash-status.graded{color:#6ee7b7;background:#10b9812e}.dash-chevron{color:rgba(var(--s-tint), .3);flex-shrink:0}.dash-done{margin-top:10px}.dash-done summary{cursor:pointer;color:rgba(var(--s-tint), .55);padding:6px 2px;font-size:13px;font-weight:600;list-style-position:inside}.dash-done summary:hover{color:var(--s-text)}.form-more{border:1px solid rgba(var(--s-tint), .08);background:rgba(var(--s-tint), .02);border-radius:10px;padding:0 12px}.form-more>summary{cursor:pointer;color:rgba(var(--s-tint), .6);-webkit-user-select:none;user-select:none;padding:10px 0;font-size:13px;font-weight:600;list-style-position:inside}.form-more>summary:hover{color:var(--s-text)}.form-more-body{flex-direction:column;gap:12px;padding-bottom:12px;display:flex}.today-tab{flex-direction:column;gap:16px;max-width:760px;display:flex}.today-teacher-row{flex-wrap:wrap;align-items:stretch;gap:12px;display:flex}.today-stat{cursor:pointer;color:var(--s-accent-text);background:#6366f11a;border:1px solid #6366f14d;border-radius:12px;align-items:center;gap:10px;padding:14px 18px;display:flex}.today-stat:hover{background:#6366f129}.today-stat-num{font-size:24px;font-weight:800}.today-stat-label{font-size:12.5px;font-weight:600}.today-quick{border:1px solid rgba(var(--s-tint), .08);background:rgba(var(--s-tint), .02);border-radius:12px;flex-wrap:wrap;flex:1;align-items:center;gap:8px;padding:12px 14px;display:flex}.today-section-label{color:rgba(var(--s-tint), .55);align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex}.today-quick .today-section-label{margin-right:4px}.today-announce{flex-direction:column;gap:8px;display:flex}.today-section-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.today-announce .stream-item{margin:0}.grade-filter{gap:6px;margin-bottom:12px;display:flex}.grade-filter-btn{cursor:pointer;border:1px solid rgba(var(--s-tint), .12);background:rgba(var(--s-tint), .04);color:rgba(var(--s-tint), .6);border-radius:999px;padding:5px 11px;font-size:12px;font-weight:600}.grade-filter-btn.active{color:var(--s-accent-text);background:#6366f133;border-color:#6366f1}.grading-row .school-btn-secondary{flex-shrink:0}.eval-plan{border:1px solid rgba(var(--s-tint), .08);background:rgba(var(--s-tint), .02);border-radius:12px;margin-bottom:16px;padding:0 14px}.eval-plan summary{cursor:pointer;color:var(--s-accent-text);padding:12px 0;font-size:13px;font-weight:700;list-style-position:inside}.eval-plan-body{flex-direction:column;gap:8px;padding-bottom:14px;display:flex}.eval-cat{align-items:center;gap:8px;display:flex}.eval-cat input{background:rgba(var(--s-tint), .05);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:8px;padding:7px 10px;font-size:13px}.eval-cat>input:first-child{flex:1}.eval-cat input:focus{border-color:#6366f1;outline:none}.eval-weight{text-align:right;width:70px}.eval-unit{color:rgba(var(--s-tint), .5);font-size:13px}.eval-add{margin-top:4px}.eval-hint{color:rgba(var(--s-tint), .4);margin-top:4px;font-size:12px}.modules-tab>.school-btn-primary{margin-bottom:16px}.module-list{flex-direction:column;gap:14px;display:flex}.module-card{background:rgba(var(--s-tint), .03);border:1px solid rgba(var(--s-tint), .09);border-radius:12px;overflow:hidden}.module-card.is-draft{opacity:.82;border-style:dashed}.module-head{background:rgba(var(--s-tint), .03);border-bottom:1px solid rgba(var(--s-tint), .06);align-items:center;gap:8px;padding:12px 14px;display:flex}.module-title{flex:1;align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.module-title-input{color:var(--s-text-strong);background:0 0;border:1px solid #0000;border-radius:7px;flex:1;padding:5px 8px;font-size:15px;font-weight:700}.module-title-input:hover{border-color:rgba(var(--s-tint), .12)}.module-title-input:focus{background:rgba(var(--s-tint), .05);border-color:#6366f1;outline:none}.module-actions{gap:4px;display:flex}.module-items{flex-direction:column;display:flex}.module-empty{color:rgba(var(--s-tint), .4);padding:12px 16px;font-size:13px}.module-item{border-top:1px solid rgba(var(--s-tint), .04);flex-wrap:wrap;align-items:center;gap:6px;padding:4px 10px 4px 14px;display:flex}.module-item:first-child{border-top:none}.module-item.is-draft,.module-item-header.is-draft{opacity:.5}.module-card.is-locked{opacity:.75;border-style:dashed}.module-card.is-locked .module-title{color:rgba(var(--s-tint), .6)}.module-locked-note{color:#fcd34d;padding:10px 14px 14px;font-size:13px}.module-prereq{border-bottom:1px solid rgba(var(--s-tint), .05);color:rgba(var(--s-tint), .5);align-items:center;gap:7px;padding:8px 14px;font-size:12px;display:flex}.module-prereq select{background:rgba(var(--s-tint), .06);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:7px;padding:4px 7px;font-size:12px}.module-item-main{min-width:0;color:var(--s-text);text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:9px;padding:8px 4px;font-size:14px;display:flex}.module-item-main.clickable{cursor:pointer}.module-item-main.clickable:hover{color:var(--s-accent-text)}.module-item-icon{color:rgba(var(--s-tint), .45);flex-shrink:0}.module-item-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.module-item-ext{opacity:.4;flex-shrink:0}.module-item-actions{gap:3px;display:flex}.module-item-header{text-transform:uppercase;letter-spacing:.05em;color:rgba(var(--s-tint), .45);justify-content:space-between;align-items:center;padding:10px 14px 4px;font-size:11px;font-weight:700;display:flex}.module-page-body{color:rgba(var(--s-tint), .7);white-space:pre-wrap;flex-basis:100%;padding:4px 14px 12px 36px;font-size:13px;line-height:1.5}.module-add-item{border:none;border-top:1px dashed rgba(var(--s-tint), .1);width:100%;color:rgba(var(--s-tint), .55);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.module-add-item:hover{background:rgba(var(--s-tint), .04);color:var(--s-accent-text)}.add-item-form{border-top:1px solid rgba(var(--s-tint), .06);background:#6366f10d;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.add-item-kinds{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.kind-card{text-align:center;cursor:pointer;background:rgba(var(--s-tint), .03);border:1px solid rgba(var(--s-tint), .1);color:var(--s-accent-text);border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:12px 10px;display:flex}.kind-card:hover{background:#6366f11a;border-color:#6366f14d}.kind-card.active{background:#6366f129;border-color:#6366f1}.kind-card-label{color:var(--s-text-strong);font-size:12.5px;font-weight:700}.kind-card-hint{color:rgba(var(--s-tint), .5);font-size:10.5px;line-height:1.3}.add-item-form select,.add-item-form input,.add-item-form textarea{background:rgba(var(--s-tint), .06);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:8px;padding:8px 10px;font-family:inherit;font-size:13px}.add-item-form select:focus,.add-item-form input:focus,.add-item-form textarea:focus{border-color:#6366f1;outline:none}.add-item-actions{justify-content:flex-end;gap:8px;display:flex}.add-item-source{gap:6px;display:flex}.src-btn{cursor:pointer;border:1px solid rgba(var(--s-tint), .12);background:rgba(var(--s-tint), .04);color:rgba(var(--s-tint), .6);border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600}.src-btn.active{color:var(--s-accent-text);background:#6366f133;border-color:#6366f1}.add-item-form .assignment-form{background:0 0;border:none;margin:0;padding:0}.attendance-plan{border:1px solid rgba(var(--s-tint), .08);background:rgba(var(--s-tint), .02);border-radius:12px;margin-bottom:16px;padding:0 14px}.attendance-plan-toggle{width:100%;color:var(--s-accent-text);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:12px 0;font-size:13px;font-weight:700;display:flex}.attendance-plan-count{color:rgba(var(--s-tint), .5);background:rgba(var(--s-tint), .08);border-radius:999px;margin-left:auto;padding:2px 9px;font-size:12px;font-weight:600}.attendance-plan-body{flex-direction:column;gap:12px;padding-bottom:14px;display:flex}.weekday-row{flex-wrap:wrap;gap:6px;display:flex}.weekday-btn{cursor:pointer;border:1px solid rgba(var(--s-tint), .12);background:rgba(var(--s-tint), .04);min-width:42px;color:rgba(var(--s-tint), .6);border-radius:8px;padding:7px 10px;font-size:12px;font-weight:600}.weekday-btn.active{color:var(--s-accent-text);background:#6366f140;border-color:#6366f1}.attendance-legend{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.att-legend{align-items:center;gap:5px;font-size:12px;display:inline-flex}.att-legend.present{color:#6ee7b7}.att-legend.absent{color:#fca5a5}.att-legend.late{color:#fcd34d}.att-legend.excused{color:var(--s-accent-text)}.att-legend-hint{color:rgba(var(--s-tint), .4);font-size:12px}.attendance-matrix-scroll{border:1px solid rgba(var(--s-tint), .08);border-radius:12px;overflow-x:auto}.attendance-matrix{border-collapse:collapse;font-size:13px}.attendance-matrix th,.attendance-matrix td{border-bottom:1px solid rgba(var(--s-tint), .06);border-right:1px solid rgba(var(--s-tint), .04);text-align:center;white-space:nowrap}.attendance-matrix thead th{background:rgba(var(--s-tint), .03);padding:6px 8px}.am-day{font-size:11px}.am-wd{color:rgba(var(--s-tint), .45);text-transform:uppercase;display:block}.am-dm{color:rgba(var(--s-tint), .7);font-weight:700;display:block}.am-corner,.am-student{text-align:left;background:var(--s-bg);z-index:1;min-width:160px;padding:8px 12px;position:sticky;left:0}.am-student{align-items:center;gap:8px;font-weight:600;display:flex}.am-student-name{text-overflow:ellipsis;max-width:140px;overflow:hidden}.am-rate{color:var(--s-accent-text);font-variant-numeric:tabular-nums;background:#6366f10f;padding:8px 12px;font-weight:700}.am-cell{padding:3px}.am-mark{cursor:pointer;border:1px solid rgba(var(--s-tint), .08);background:rgba(var(--s-tint), .03);width:30px;height:30px;color:var(--s-text-strong);border-radius:7px;justify-content:center;align-items:center;display:inline-flex}.am-mark.none:hover{background:rgba(var(--s-tint), .1)}.am-mark.present{color:#6ee7b7;background:#10b9814d;border-color:#10b98180}.am-mark.absent{color:#fca5a5;background:#ef444447;border-color:#ef444480}.am-mark.late{color:#fcd34d;background:#f59e0b47;border-color:#f59e0b80}.am-mark.excused{color:var(--s-accent-text);background:#6366f14d;border-color:#6366f180}.am-day{position:relative}.am-cancel{width:14px;height:14px;color:rgba(var(--s-tint), .25);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:0;font-size:13px;line-height:12px;position:absolute;top:1px;right:2px}.am-day:hover .am-cancel{color:rgba(var(--s-tint), .6)}.am-cancel:hover{color:#fca5a5;background:#ef444440}.cancelled-days{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.cancelled-label{color:rgba(var(--s-tint), .5);font-size:12px}.cancelled-chip{cursor:pointer;color:#fca5a5;background:#ef44441f;border:1px solid #ef44444d;border-radius:999px;padding:3px 9px;font-size:12px}.cancelled-chip:hover{background:#ef444433}.school-bell-wrap{position:relative}.school-bell-badge{min-width:16px;height:16px;color:var(--s-on-accent);text-align:center;background:#ef4444;border-radius:999px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:-4px;right:-4px}.notif-backdrop{z-index:900;position:fixed;inset:0}.notif-panel{z-index:901;background:var(--s-surface);border:1px solid rgba(var(--s-tint), .12);border-radius:12px;width:320px;max-height:70vh;position:absolute;top:42px;right:0;overflow-y:auto;box-shadow:0 12px 32px #00000080}.notif-head{border-bottom:1px solid rgba(var(--s-tint), .08);justify-content:space-between;align-items:center;padding:12px 14px;font-size:13px;font-weight:700;display:flex}.notif-markall{color:#7dd3fc;cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600}.notif-empty{text-align:center;color:rgba(var(--s-tint), .4);padding:24px 14px;font-size:13px}.notif-list{flex-direction:column;display:flex}.notif-item{text-align:left;border:none;border-bottom:1px solid rgba(var(--s-tint), .05);cursor:pointer;width:100%;color:inherit;background:0 0;align-items:center;gap:10px;padding:11px 14px;display:flex}.notif-item:hover{background:rgba(var(--s-tint), .05)}.notif-item.unread{background:#6366f114}.notif-icon{width:30px;height:30px;color:var(--s-accent-text);background:#6366f126;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.notif-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notif-text{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.notif-course{color:rgba(var(--s-tint), .45);font-size:11px}.notif-dot{background:#6366f1;border-radius:50%;flex-shrink:0;width:8px;height:8px}.syllabus-section{margin-bottom:24px}.syllabus-section h3{color:var(--s-accent-text);margin:0 0 10px;font-size:14px;font-weight:700}.syllabus-editor{background:rgba(var(--s-tint), .05);border:1px solid rgba(var(--s-tint), .12);width:100%;color:var(--s-text);resize:vertical;border-radius:10px;padding:12px;font-family:inherit;font-size:14px;line-height:1.55}.syllabus-editor:focus{border-color:#6366f1;outline:none}.syllabus-readonly{white-space:pre-wrap;color:rgba(var(--s-tint), .85);font-size:14px;line-height:1.6}.syllabus-empty{color:rgba(var(--s-tint), .4);font-size:13px}.syllabus-timeline{flex-direction:column;gap:6px;display:flex}.syllabus-row{cursor:pointer;text-align:left;width:100%;color:inherit;background:rgba(var(--s-tint), .035);border:1px solid rgba(var(--s-tint), .07);border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex}.syllabus-row:hover{background:rgba(var(--s-tint), .07);border-color:#6366f166}.syllabus-date{color:rgba(var(--s-tint), .55);flex-shrink:0;align-items:center;gap:5px;width:120px;font-size:12px;display:inline-flex}.syllabus-title{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;font-weight:600;overflow:hidden}.syllabus-pts{color:rgba(var(--s-tint), .5);align-items:center;gap:4px;font-size:12px;display:inline-flex}.syllabus-chevron{color:rgba(var(--s-tint), .3);flex-shrink:0}.school-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.school-modal{background:var(--s-surface);border:1px solid rgba(var(--s-tint), .1);border-radius:16px;flex-direction:column;gap:14px;width:min(480px,92vw);max-height:90vh;padding:20px;display:flex;overflow-y:auto}.school-modal-head{justify-content:space-between;align-items:center;display:flex}.school-modal-head h3{margin:0;font-size:17px;font-weight:700}.school-field{flex-direction:column;gap:6px;display:flex}.school-field>span{color:rgba(var(--s-tint), .6);font-size:12px;font-weight:600}.school-field-row{gap:12px;display:flex}.school-field-row .school-field{flex:1}.school-color-row{flex-wrap:wrap;gap:8px;display:flex}.color-dot{cursor:pointer;border:2px solid #0000;border-radius:50%;width:26px;height:26px}.color-dot.active{border-color:var(--s-text-strong);transform:scale(1.1)}.school-modal-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.school-hint{color:rgba(var(--s-tint), .45);font-size:12px;line-height:1.5}.materials-tab>.school-btn-primary{margin-bottom:16px}.material-kind-switch{gap:8px;display:flex}.kind-btn{border:1px solid rgba(var(--s-tint), .12);background:rgba(var(--s-tint), .04);color:rgba(var(--s-tint), .6);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.kind-btn.active{color:var(--s-accent-text);background:#6366f12e;border-color:#6366f1}.material-list{flex-direction:column;gap:10px;display:flex}.material-item{background:rgba(var(--s-tint), .035);border:1px solid rgba(var(--s-tint), .08);border-radius:11px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.material-icon{width:32px;height:32px;color:var(--s-accent-text);background:#6366f126;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.material-body{flex:1;min-width:0}.material-title{font-size:14px;font-weight:600}.material-text{color:rgba(var(--s-tint), .7);white-space:pre-wrap;margin-top:4px;font-size:13px}.material-link{color:#7dd3fc;word-break:break-all;align-items:center;gap:5px;margin-top:4px;font-size:12px;text-decoration:none;display:inline-flex}.material-link:hover{text-decoration:underline}.enroll-box{margin-bottom:22px}.enroll-search{background:rgba(var(--s-tint), .05);border:1px solid rgba(var(--s-tint), .12);color:rgba(var(--s-tint), .5);border-radius:10px;align-items:center;gap:8px;padding:0 11px;display:flex}.enroll-search:focus-within{border-color:#6366f1}.enroll-search input{color:var(--s-text);background:0 0;border:none;outline:none;flex:1;padding:10px 0;font-size:13px}.enroll-search select{background:rgba(var(--s-tint), .06);border:1px solid rgba(var(--s-tint), .12);color:var(--s-text);border-radius:7px;padding:5px 6px;font-size:12px}.enroll-hint{color:rgba(var(--s-tint), .45);margin-top:10px;font-size:12px}.enroll-suggestions{border:1px solid rgba(var(--s-tint), .08);border-radius:11px;margin-top:10px;overflow:hidden}.enroll-suggestions-label{text-transform:uppercase;letter-spacing:.04em;color:rgba(var(--s-tint), .4);background:rgba(var(--s-tint), .02);padding:8px 12px;font-size:11px;font-weight:700}.enroll-suggestion{border:none;border-top:1px solid rgba(var(--s-tint), .05);cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;align-items:center;gap:10px;padding:9px 12px;display:flex}.enroll-suggestion:hover{background:#6366f11f}.enroll-add{color:var(--s-accent-text);flex-shrink:0;align-items:center;gap:5px;font-size:12px;font-weight:600;display:inline-flex}.person-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.person-email{color:rgba(var(--s-tint), .4);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.people-group{margin-bottom:20px}.people-group-head{text-transform:uppercase;letter-spacing:.04em;color:rgba(var(--s-tint), .45);margin-bottom:8px;font-size:12px;font-weight:700}.people-count{background:rgba(var(--s-tint), .1);border-radius:999px;margin-left:4px;padding:1px 7px}.people-empty{color:rgba(var(--s-tint), .35);font-size:13px}.person-row{border-radius:9px;align-items:center;gap:10px;padding:8px 10px;display:flex}.person-row:hover{background:rgba(var(--s-tint), .04)}.person-avatar{width:30px;height:30px;color:var(--s-on-accent);background:#6366f1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.person-name{flex:1;font-size:14px}.att-preview-modal{background:var(--s-surface);border:1px solid rgba(var(--s-tint), .12);border-radius:16px;flex-direction:column;width:90%;max-width:650px;max-height:85vh;animation:.2s cubic-bezier(.16,1,.3,1) modalEnter;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 25px -5px #00000080,0 10px 10px -5px #0006}.att-preview-head{border-bottom:1px solid rgba(var(--s-tint), .08);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.att-preview-title-row{color:var(--s-text);align-items:center;gap:10px;font-size:16px;font-weight:700;display:inline-flex}.preview-type-icon{flex-shrink:0}.preview-type-icon.text-indigo{color:#818cf8}.preview-type-icon.text-emerald{color:#34d399}.att-preview-body{background:#0f172a66;flex:1;min-height:200px;max-height:55vh;padding:20px;overflow-y:auto}.att-preview-foot{border-top:1px solid rgba(var(--s-tint), .08);background:#0f172a33;justify-content:flex-end;align-items:center;gap:10px;padding:14px 20px;display:flex}.preview-empty{height:150px;color:rgba(var(--s-tint), .4);justify-content:center;align-items:center;font-size:13px;font-style:italic;display:flex}.preview-workspace-content{flex-direction:column;gap:16px;display:flex}.preview-notebook-list{flex-direction:column;gap:14px;display:flex}.preview-notebook-item{background:rgba(var(--s-tint), .02);border:1px solid rgba(var(--s-tint), .06);border-radius:10px;overflow:hidden}.preview-notebook-title{background:rgba(var(--s-tint), .04);border-bottom:1px solid rgba(var(--s-tint), .04);justify-content:space-between;align-items:center;padding:10px 14px;font-size:13.5px;font-weight:700;display:flex}.preview-notes-list{flex-direction:column;gap:6px;padding:8px 12px;display:flex}.preview-note-details{border:1px solid rgba(var(--s-tint), .04);background:#0f172a26;border-radius:6px;overflow:hidden}.preview-note-summary{cursor:pointer;-webkit-user-select:none;user-select:none;background:rgba(var(--s-tint), .01);color:var(--s-text-muted);align-items:center;gap:8px;padding:8px 12px;font-size:12.5px;font-weight:600;display:flex}.preview-note-summary:hover{background:rgba(var(--s-tint), .03);color:var(--s-text)}.preview-note-body{border-top:1px solid rgba(var(--s-tint), .04);color:var(--s-text-strong);background:rgba(var(--s-tint), .04);padding:12px;font-size:13px;line-height:1.5}.preview-mirar-header{color:rgba(var(--s-tint), .55);margin-bottom:10px;font-size:12px;font-weight:600}.preview-tasks-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;display:grid}.preview-task-card{background:rgba(var(--s-tint), .03);border:1px solid rgba(var(--s-tint), .06);border-left:4px solid #6366f1;border-radius:8px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.preview-task-type{text-transform:uppercase;color:rgba(var(--s-tint), .45);align-items:center;gap:5px;font-size:10px;font-weight:700;display:inline-flex}.preview-task-text{color:var(--s-text-strong);white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.4}.preview-file-content{justify-content:center;align-items:center;height:100%;display:flex}.preview-image-container{border:1px solid rgba(var(--s-tint), .1);background:#000;border-radius:8px;justify-content:center;align-items:center;max-width:100%;max-height:48vh;display:flex;overflow:hidden}.preview-image{object-fit:contain;max-width:100%;max-height:100%}.preview-file-placeholder{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:30px;display:flex}.preview-file-icon{color:rgba(var(--s-tint), .3)}.preview-file-name{color:var(--s-text);font-size:15px;font-weight:700}.preview-file-path{color:rgba(var(--s-tint), .4);word-break:break-all;max-width:450px;font-family:monospace;font-size:12px}.preview-browser-warning{color:#f59e0b;background:#f59e0b1a;border:1px solid #f59e0b33;border-radius:6px;margin-top:10px;padding:8px 12px;font-size:12px}.preview-file-actions{gap:10px;margin-right:auto;display:flex}.quiz-editor{height:100%;color:var(--s-text);background:#0b0f19;flex-direction:column;display:flex}.quiz-editor-grid{flex:1;grid-template-columns:320px 1fr;gap:20px;min-height:0;padding:20px;display:grid;overflow:hidden}.quiz-editor-sidebar{flex-direction:column;gap:15px;display:flex;overflow-y:auto}.quiz-editor-main{flex-direction:column;min-height:0;display:flex;overflow-y:auto}.quiz-editor-card{border:1px solid rgba(var(--s-tint), .08);background:#151d30;border-radius:12px;flex-direction:column;gap:15px;padding:20px;display:flex}.quiz-editor-card.ai-card{background:linear-gradient(135deg,#1e1b4b 0%,#1e1e38 100%);border:1px solid #6366f14d}.quiz-editor-card h3{color:var(--s-text);border-bottom:1px solid rgba(var(--s-tint), .08);align-items:center;gap:8px;margin:0 0 5px;padding-bottom:8px;font-size:14px;font-weight:700;display:flex}.quiz-hint{color:var(--s-text-muted);margin:0;font-size:11.5px;line-height:1.4}.quiz-ai-input-row{flex-direction:column;gap:10px;display:flex}.quiz-ai-input-row input{border:1px solid rgba(var(--s-tint), .1);color:var(--s-text);background:#0003;border-radius:6px;padding:8px 12px;font-size:13px}.quiz-ai-input-row button{align-self:flex-end}.quiz-checkbox-row{flex-direction:column;gap:10px;display:flex}.quiz-checkbox{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:12.5px;display:flex}.quiz-checkbox input{cursor:pointer}.quiz-questions-head{border-bottom:1px solid rgba(var(--s-tint), .08);justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;padding-bottom:10px;display:flex}.quiz-add-dropdown select{color:var(--s-on-accent);cursor:pointer;background:#312e81;border:1px solid #4338ca;border-radius:6px;outline:none;padding:6px 12px;font-size:13px;font-weight:600}.quiz-add-dropdown select:hover{background:#3730a3}.quiz-empty-state{text-align:center;color:#64748b;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 40px;display:flex}.quiz-empty-state p{max-width:400px;margin:0;font-size:13px}.quiz-questions-list{flex-direction:column;gap:12px;display:flex}.quiz-question-item{border:1px solid rgba(var(--s-tint), .06);background:rgba(var(--s-tint), .02);border-radius:8px;transition:all .2s;overflow:hidden}.quiz-question-item.selected{background:#6366f10a;border-color:#6366f199;box-shadow:0 4px 12px #00000026}.quiz-question-summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;padding:12px 15px;display:flex}.quiz-question-summary:hover{background:rgba(var(--s-tint), .03)}.quiz-question-number{color:#6366f1;font-size:13px;font-weight:700}.quiz-type-badge{text-transform:uppercase;background:rgba(var(--s-tint), .08);color:var(--s-text-muted);border-radius:4px;padding:2px 6px;font-size:10.5px;font-weight:700}.quiz-question-preview-text{color:var(--s-text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;overflow:hidden}.quiz-question-pts{color:rgba(var(--s-tint), .5);font-size:12px;font-weight:600}.quiz-question-controls{gap:4px;display:flex}.quiz-question-detail-form{border-top:1px solid rgba(var(--s-tint), .08);background:#00000026;flex-direction:column;gap:12px;padding:15px;display:flex}.quiz-pair-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.quiz-pair-row input{border:1px solid rgba(var(--s-tint), .1);color:var(--s-text);background:#0003;border-radius:6px;flex:1;padding:6px 10px;font-size:12.5px}.quiz-pair-row span{color:rgba(var(--s-tint), .3)}.quiz-pairs-editor span,.quiz-sort-editor span{color:var(--s-text-muted);margin-bottom:4px;font-size:12px;font-weight:600;display:block}.quiz-buckets-row,.quiz-items-row{margin-bottom:10px}.quiz-buckets-row input,.quiz-items-row input{border:1px solid rgba(var(--s-tint), .1);width:100%;color:var(--s-text);background:#0003;border-radius:6px;padding:8px 10px;font-size:12.5px}.quiz-player-fullscreen{color:var(--s-text);z-index:1000;background:#0f172a;flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0;overflow-y:auto}.quiz-player-fullscreen.active-player{background:#090d16;justify-content:flex-start;padding-top:70px}.quiz-player-container{background:var(--s-surface);border:1px solid rgba(var(--s-tint), .08);border-radius:16px;width:100%;max-width:600px;padding:40px;box-shadow:0 20px 25px -5px #0006}.quiz-player-container.text-center{text-align:center}.quiz-header-badge{color:#818cf8;letter-spacing:.05em;background:#6366f133;border-radius:99px;align-items:center;gap:5px;margin-bottom:15px;padding:4px 10px;font-size:11px;font-weight:800;display:inline-flex}.quiz-player-container h2{color:var(--s-text-strong);margin:0 0 10px;font-size:24px;font-weight:800}.quiz-desc{color:var(--s-text-muted);margin:0 0 25px;font-size:14px;line-height:1.5}.quiz-meta-panel{text-align:left;background:#0003;border-radius:10px;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:30px;padding:15px 20px;display:grid}.quiz-meta-item{color:var(--s-text-muted);align-items:center;gap:10px;font-size:13.5px;display:flex}.quiz-meta-item strong{color:var(--s-text-strong)}.quiz-meta-item svg{color:#6366f1}.quiz-actions-row{justify-content:center;gap:15px;margin-top:15px;display:flex}.quiz-warning{color:#f59e0b;margin:15px 0 0;font-size:12px;font-weight:500}.quiz-result-score-ring{border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;margin:0 auto 20px;display:flex;box-shadow:0 4px 10px #0003}.quiz-result-score-inner{background:var(--s-surface);border-radius:50%;justify-content:center;align-items:center;width:100px;height:100px;display:flex}.quiz-result-score-inner span{color:var(--s-text-strong);font-size:24px;font-weight:800}.quiz-score-label{color:var(--s-text-muted);margin-bottom:25px;font-size:15px}.quiz-results-review-list{text-align:left;flex-direction:column;gap:12px;max-height:250px;margin-bottom:25px;padding-right:5px;display:flex;overflow-y:auto}.quiz-review-item{border:1px solid rgba(var(--s-tint), .08);background:#00000026;border-radius:8px;overflow:hidden}.quiz-review-item.correct{border-left:4px solid #10b981}.quiz-review-item.incorrect{border-left:4px solid #ef4444}.quiz-review-header{border-bottom:1px solid rgba(var(--s-tint), .04);color:var(--s-text-strong);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:700;display:flex}.quiz-review-pts{opacity:.7;white-space:nowrap;font-size:11px}.quiz-review-body{color:var(--s-text-muted);flex-direction:column;gap:6px;padding:10px 12px;font-size:12px;display:flex}.quiz-review-body p{margin:0}.quiz-review-explain{background:rgba(var(--s-tint), .03);color:var(--s-text-muted);border-radius:4px;padding:6px 10px;font-style:italic}.quiz-player-topbar{border-bottom:1px solid rgba(var(--s-tint), .08);background:#111827;align-items:center;gap:15px;height:56px;padding:0 20px;display:flex;position:absolute;top:0;left:0;right:0}.quiz-player-title{color:var(--s-text-strong);white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:14px;font-weight:700;overflow:hidden}.quiz-progress-wrapper{flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.quiz-progress-bar{background:rgba(var(--s-tint), .1);border-radius:99px;width:100%;max-width:300px;height:6px;overflow:hidden}.quiz-progress-fill{background:#6366f1;height:100%;transition:width .3s}.quiz-progress-text{color:rgba(var(--s-tint), .5);white-space:nowrap;font-size:12px;font-weight:600}.quiz-timer-badge{background:rgba(var(--s-tint), .06);border:1px solid rgba(var(--s-tint), .08);color:var(--s-text-muted);border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;font-weight:700;display:flex}.quiz-timer-badge.critical{color:#ef4444;background:#ef444426;border-color:#ef44444d;animation:1s infinite alternate pulse}@keyframes pulse{0%{opacity:.7}to{opacity:1}}.quiz-question-container{width:100%;max-width:650px;margin:30px auto}.quiz-engine-card{background:var(--s-surface);border:1px solid rgba(var(--s-tint), .08);border-radius:12px;flex-direction:column;gap:20px;padding:30px;display:flex;box-shadow:0 10px 15px -3px #0000004d}.quiz-task-prompt{color:var(--s-text-strong);margin-bottom:15px;font-size:16px;font-weight:700}.quiz-feedback-box{border-radius:8px;flex-direction:column;gap:10px;padding:15px;animation:.3s cubic-bezier(.16,1,.3,1) slideIn;display:flex}.quiz-feedback-box.correct{background:#10b9811a;border:1px solid #10b98133}.quiz-feedback-box.incorrect{background:#ef44441a;border:1px solid #ef444433}.quiz-feedback-title{align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.quiz-feedback-box.correct .quiz-feedback-title{color:#10b981}.quiz-feedback-box.incorrect .quiz-feedback-title{color:#ef4444}.quiz-explanation-text{color:var(--s-text-muted);margin:0;font-size:13px;font-style:italic;line-height:1.4}.quiz-next-btn{align-self:flex-end}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.quiz-options-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;display:grid}.quiz-option-card{background:rgba(var(--s-tint), .03);border:1px solid rgba(var(--s-tint), .08);overflow-wrap:break-word;min-width:0;color:var(--s-text-muted);text-align:left;cursor:pointer;border-radius:8px;padding:12px 36px 12px 16px;font-size:13.5px;font-weight:600;transition:all .15s}.quiz-option-card:hover:not(:disabled){background:rgba(var(--s-tint), .06);border-color:rgba(var(--s-tint), .15);color:var(--s-text-strong)}.quiz-option-card.selected{color:var(--s-accent-text);background:#6366f126;border-color:#6366f1}.quiz-option-card.right{color:var(--s-text-strong);background:#10b98126;border-color:#10b981;position:relative}.quiz-option-card.right:after{content:"✓";color:#10b981;font-weight:700;position:absolute;top:50%;right:15px;transform:translateY(-50%)}.quiz-option-card.wrong{color:var(--s-text-strong);background:#ef444426;border-color:#ef4444;position:relative}.quiz-option-card.wrong:after{content:"✗";color:#ef4444;font-weight:700;position:absolute;top:50%;right:15px;transform:translateY(-50%)}.quiz-cloze-form{flex-direction:column;gap:20px;display:flex}.quiz-cloze-sentence{color:var(--s-text);font-size:16px;line-height:2}.quiz-cloze-input{border:1px solid rgba(var(--s-tint), .12);color:var(--s-text-strong);text-align:center;background:#0000004d;border-bottom:2px solid #6366f1;border-radius:4px;outline:none;width:120px;margin:0 8px;padding:2px 10px;font-size:15px;font-weight:700}.quiz-cloze-input.correct{color:#10b981;border-bottom-color:#10b981}.quiz-cloze-input.wrong{color:#ef4444;border-bottom-color:#ef4444}.quiz-task-translation{color:var(--s-text-muted);margin:0 0 15px;font-size:13.5px;font-style:italic}.quiz-assembled-pool{border:1px dashed rgba(var(--s-tint), .1);background:#0003;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;min-height:60px;margin-bottom:20px;padding:15px;display:flex}.quiz-placeholder-text{color:rgba(var(--s-tint), .25);font-size:12.5px;font-style:italic}.quiz-word-token{background:rgba(var(--s-tint), .05);border:1px solid rgba(var(--s-tint), .08);color:var(--s-text);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:600;transition:all .15s}.quiz-word-token:hover:not(:disabled){background:rgba(var(--s-tint), .1);border-color:rgba(var(--s-tint), .15)}.quiz-word-token.placed{background:#312e81;border-color:#4338ca}.quiz-word-token.placed:hover:not(:disabled){background:#3730a3}.quiz-tokens-bank{flex-wrap:wrap;gap:8px;margin-bottom:25px;display:flex}.quiz-task textarea{border:1px solid rgba(var(--s-tint), .1);width:100%;color:var(--s-text-strong);resize:vertical;background:#0003;border-radius:8px;outline:none;padding:12px;font-size:13.5px}.quiz-task textarea:focus{border-color:#6366f1}.quiz-memory-grid{gap:10px;margin-bottom:20px;display:grid}.quiz-memory-card{aspect-ratio:3/2;background:var(--s-surface-accent);cursor:pointer;color:var(--s-text-strong);text-align:center;border:1px solid #312e81;border-radius:8px;justify-content:center;align-items:center;padding:8px;font-size:12.5px;font-weight:700;transition:transform .2s,background-color .2s;display:flex;position:relative}.quiz-memory-card .card-front{color:rgba(var(--s-tint), .3);font-size:20px;display:block}.quiz-memory-card .card-back{display:none}.quiz-memory-card.up{background:#312e81;border-color:#4338ca}.quiz-memory-card.up .card-front{display:none}.quiz-memory-card.up .card-back{display:block}.quiz-memory-card.matched{color:#10b981;cursor:default;opacity:.6;background:#10b98126;border-color:#10b981}.quiz-memory-card.matched .card-front{display:none}.quiz-memory-card.matched .card-back{display:block}.quiz-game-stats{color:rgba(var(--s-tint), .5);align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:flex}.quiz-sort-pool{border:1px solid rgba(var(--s-tint), .05);background:#00000026;border-radius:8px;flex-direction:column;gap:8px;min-height:80px;margin-bottom:20px;padding:12px;display:flex}.quiz-sort-token{background:var(--s-surface);border:1px solid rgba(var(--s-tint), .08);color:var(--s-text-strong);border-radius:6px;justify-content:space-between;align-items:center;padding:6px 10px;font-size:13px;font-weight:600;display:flex}.quiz-sort-actions{gap:4px;display:flex}.quiz-quick-btn{background:rgba(var(--s-tint), .08);color:var(--s-text-muted);cursor:pointer;border:none;border-radius:4px;padding:3px 6px;font-size:11px;font-weight:700}.quiz-quick-btn:hover{background:rgba(var(--s-tint), .15);color:var(--s-text-strong)}.quiz-sort-buckets{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:20px;display:grid}.quiz-sort-bucket{border:1px solid rgba(var(--s-tint), .06);background:#0003;border-radius:8px;flex-direction:column;min-height:120px;display:flex}.quiz-sort-bucket-label{background:rgba(var(--s-tint), .04);text-transform:uppercase;color:var(--s-text-muted);border-bottom:1px solid rgba(var(--s-tint), .04);text-align:center;padding:6px 10px;font-size:11.5px;font-weight:700}.quiz-sort-bucket-body{flex-direction:column;flex:1;gap:6px;padding:10px;display:flex}.quiz-sort-token.placed{background:#312e81;border-color:#4338ca;justify-content:center;font-size:12px}.quiz-sort-token.placed.correct{color:#10b981;background:#10b98126;border-color:#10b981}.quiz-sort-token.placed.incorrect{color:#ef4444;background:#ef444426;border-color:#ef4444}.quiz-detective-sentence{background:#0003;border-radius:8px;flex-wrap:wrap;gap:6px;margin-bottom:20px;padding:20px;line-height:2;display:flex}.quiz-detective-word{color:var(--s-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;outline:none;padding:2px 4px;font-size:15px;font-weight:600}.quiz-detective-word:hover:not(:disabled){background:rgba(var(--s-tint), .08);color:var(--s-text-strong)}.quiz-detective-word.selected{color:#818cf8;background:#6366f133;border-bottom:2px solid #6366f1}.quiz-detective-word.correct{color:#ef4444;background:#ef444426;border-bottom:2px solid #ef4444;text-decoration:line-through}.quiz-detective-options-wrapper{background:rgba(var(--s-tint), .02);border:1px solid rgba(var(--s-tint), .05);border-radius:8px;margin-bottom:20px;padding:15px;animation:.2s fadeIn}.quiz-detective-options-wrapper p{color:var(--s-text-muted);margin:0 0 10px;font-size:13px}.quiz-detective-options-row{flex-wrap:wrap;gap:8px;display:flex}.quiz-detective-option{background:rgba(var(--s-tint), .04);border:1px solid rgba(var(--s-tint), .08);color:var(--s-text-muted);cursor:pointer;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:600}.quiz-detective-option:hover:not(:disabled){background:rgba(var(--s-tint), .1);color:var(--s-text-strong)}.quiz-detective-option.active{color:var(--s-on-accent);background:#6366f1;border-color:#6366f1}.quiz-synonym-target{color:#6366f1;text-align:center;margin-bottom:20px;font-size:28px;font-weight:800}.quiz-synonym-cloud{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:25px;display:flex}.quiz-synonym-chip{background:rgba(var(--s-tint), .03);border:1px solid rgba(var(--s-tint), .08);color:var(--s-text-muted);cursor:pointer;border-radius:99px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s}.quiz-synonym-chip:hover:not(:disabled){background:rgba(var(--s-tint), .08);border-color:rgba(var(--s-tint), .15);color:var(--s-text-strong)}.quiz-synonym-chip.selected{color:var(--s-on-accent);background:#312e81;border-color:#6366f1}.quiz-synonym-chip.correct{color:#10b981;background:#10b98126;border-color:#10b981}.quiz-synonym-chip.incorrect{color:#ef4444;background:#ef444426;border-color:#ef4444}.quiz-synonym-chip.miss{color:#10b981b3;border:1px dashed #10b981}.lb-section{margin:4px 0 18px}.lb-promo{border:1px solid var(--border-light,#e2e8f0);background:linear-gradient(135deg,#5c42e512,#7c3aed0a);border-radius:14px;align-items:center;gap:14px;margin-bottom:12px;padding:14px 16px;display:flex}.lb-promo-icon{color:#fff;background:linear-gradient(135deg,#007a4d,#005c3a);border-radius:12px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.lb-promo-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.lb-promo-body strong{font-size:15px}.lb-promo-body span{color:var(--text-muted,#64748b);font-size:12.5px}.lb-promo-actions{flex-shrink:0;gap:8px;display:flex}.lb-empty-hint{color:var(--text-muted,#64748b);padding:2px 2px 6px;font-size:12.5px}.lb-invite-hint{color:var(--text-muted,#64748b);margin-top:8px;font-size:11.5px}.lb-board-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.lb-board-card{border:1px solid var(--border-light,#e2e8f0);background:var(--bg-panel,#fff);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:12px 14px;transition:border-color .15s,box-shadow .15s;display:flex}.lb-board-card:hover{border-color:var(--accent,#007a4d);box-shadow:0 6px 16px #0f172a1a}.lb-board-icon{color:#fff;background:linear-gradient(135deg,#007a4d,#005c3a);border-radius:9px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.lb-board-title{min-width:0;color:var(--text-main,#1e293b);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13.5px;font-weight:600;overflow:hidden}.lb-board-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.projects-tab{flex-direction:column;gap:14px;display:flex}.project-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;display:grid}.project-card{cursor:pointer;background:var(--card-bg,#fff);border:1px solid var(--border,#e2e8f0);border-radius:14px;transition:transform .12s,box-shadow .12s;position:relative;overflow:hidden}.project-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.project-card.is-draft{opacity:.72}.project-card-banner{color:#fff;background:var(--course-gradient,linear-gradient(135deg,#6366f1,#312e81));justify-content:flex-start;align-items:center;height:52px;padding:0 14px;display:flex}.project-card-body{flex-direction:column;gap:8px;padding:12px 14px;display:flex}.project-card-title{color:var(--text-main,#1e293b);align-items:center;gap:6px;font-size:15px;font-weight:700;display:flex}.project-card-meta{color:var(--text-soft,#64748b);flex-wrap:wrap;gap:12px;font-size:12.5px;display:flex}.project-card-meta span{align-items:center;gap:4px;display:inline-flex}.project-card-myteam{color:#fff;border-radius:999px;align-self:flex-start;padding:3px 10px;font-size:12px;font-weight:600}.project-card-actions{gap:4px;display:flex;position:absolute;top:10px;right:10px}.project-card-banner svg{opacity:.9}.school-modal.lg{width:92%;max-width:640px}.project-form-head{align-items:center;gap:8px;margin:0 0 6px;font-size:17px;display:flex}.project-detail{flex-direction:column;gap:16px;display:flex}.project-detail-head{align-items:flex-start;gap:12px;display:flex}.project-detail-titles h2{align-items:center;gap:8px;margin:0;font-size:20px;display:flex}.project-draft-badge{color:#92400e;background:#fde68a;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.project-detail-sub{color:var(--text-soft,#64748b);align-items:center;gap:6px;margin-top:4px;font-size:13px;display:flex}.project-brief{background:var(--card-bg,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:12px;padding:14px 16px}.team-generator{border:1px solid var(--border,#e2e8f0);background:var(--card-bg,#fff);border-radius:14px;flex-direction:column;gap:12px;padding:14px;display:flex}.tg-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tg-mode{border:1px solid var(--border,#e2e8f0);border-radius:999px;display:inline-flex;overflow:hidden}.tg-seg{cursor:pointer;color:var(--text-soft,#64748b);background:0 0;border:none;padding:6px 14px;font-size:13px}.tg-seg.active{background:var(--accent,#6366f1);color:#fff}.tg-num{color:var(--text-soft,#64748b);align-items:center;gap:6px;font-size:13px;display:inline-flex}.tg-num input{border:1px solid var(--border,#e2e8f0);border-radius:8px;width:64px;padding:6px 8px}.tg-preview{color:var(--text-soft,#64748b);font-size:13px;font-weight:600}.tg-strategies{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.tg-strategy{text-align:left;border:1.5px solid var(--border,#e2e8f0);background:var(--card-bg,#fff);cursor:pointer;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;transition:border-color .12s,background .12s;display:flex}.tg-strategy:hover{border-color:var(--accent,#6366f1)}.tg-strategy.active{border-color:var(--accent,#6366f1);background:color-mix(in srgb, var(--accent,#6366f1) 8%, transparent)}.tg-strategy-label{color:var(--text-main,#1e293b);font-size:13.5px;font-weight:700}.tg-strategy-help{color:var(--text-soft,#64748b);font-size:11.5px;line-height:1.3}.tg-strategy svg{color:var(--accent,#6366f1)}.tg-actions{flex-wrap:wrap;gap:8px;display:flex}.tg-actions .school-btn-secondary.is-locked{color:#b91c1c;background:#fee2e2}.team-board{align-items:flex-start;gap:12px;padding-bottom:6px;display:flex;overflow-x:auto}.team-col{border:1px solid var(--border,#e2e8f0);background:var(--card-bg,#fff);border-radius:14px;flex-direction:column;flex:0 0 220px;min-height:120px;display:flex}.team-col.is-over{border-color:var(--accent,#6366f1);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent,#6366f1) 30%, transparent)}.team-col.is-mine{box-shadow:0 0 0 2px color-mix(in srgb, var(--team-color,#6366f1) 50%, transparent)}.team-col.is-pool{background:var(--card-bg,#f8fafc)}.team-col-head{border-bottom:2px solid var(--border,#e2e8f0);align-items:center;gap:6px;padding:10px 12px;display:flex}.team-col-title{flex:1;align-items:center;gap:6px;font-size:14px;font-weight:700;display:flex}.team-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.team-col-count{color:var(--text-soft,#64748b);font-size:12px;font-weight:600}.team-mine-badge{background:var(--accent,#6366f1);color:#fff;border-radius:999px;padding:1px 7px;font-size:10px;font-weight:700}.team-name-input{background:0 0;border:1px solid #0000;border-radius:6px;flex:1;min-width:0;padding:2px 4px;font-size:14px;font-weight:700}.team-name-input:hover,.team-name-input:focus{border-color:var(--border,#e2e8f0);background:#fff}.team-color{cursor:pointer;background:0 0;border:none;width:26px;height:26px;padding:0}.team-col-body{flex-direction:column;gap:6px;min-height:60px;padding:8px;display:flex}.team-col-empty{color:var(--text-soft,#94a3b8);text-align:center;padding:14px 6px;font-size:12px;font-style:italic}.team-chip{background:var(--card-bg,#f1f5f9);border:1px solid var(--border,#e2e8f0);cursor:grab;border-radius:9px;align-items:center;gap:6px;padding:6px 8px;font-size:13px;display:flex}.team-chip:active{cursor:grabbing}.team-chip.is-self{border-color:var(--accent,#6366f1)}.team-chip-grip{color:var(--text-soft,#94a3b8);flex-shrink:0}.team-chip-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-main,#1e293b);flex:1;align-items:center;gap:4px;display:flex;overflow:hidden}.team-chip-level{color:var(--text-soft,#64748b);background:#fff;border-radius:999px;flex-shrink:0;padding:1px 6px;font-size:11px;font-weight:700}.team-lead-btn{color:var(--text-soft,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:2px}.team-lead-btn.active,.team-lead-btn:hover{color:#f59e0b}.team-add-col{border:2px dashed var(--border,#cbd5e1);color:var(--text-soft,#64748b);cursor:pointer;background:0 0;border-radius:14px;flex:0 0 180px;justify-content:center;align-self:stretch;align-items:center;gap:6px;min-height:120px;font-size:13px;font-weight:600;display:flex}.team-add-col:hover{border-color:var(--accent,#6366f1);color:var(--accent,#6366f1)}.add-item-newproject{gap:8px;display:flex}.add-item-newproject input{flex:1}.quiz-exam-banner{text-align:left;color:#fbbf24;background:#f59e0b1f;border:1px solid #f59e0b66;border-radius:12px;align-items:flex-start;gap:10px;max-width:520px;margin:14px auto;padding:12px 14px;font-size:13.5px;line-height:1.45;display:flex}.quiz-exam-banner svg{flex-shrink:0;margin-top:2px}.quiz-exam-banner.done{color:#7dd3fc;background:#0ea5e91f;border-color:#0ea5e966}.quiz-feedback-box.pending{border-color:#f59e0b80}.quiz-feedback-box.pending .quiz-feedback-title{color:#f59e0b}.quiz-review-item.pending{border-left:3px solid #f59e0b}.workshop-exam-badge{letter-spacing:.04em;text-transform:uppercase;color:#f59e0b;background:#f59e0b2e;border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:800}.quiz-review{flex-direction:column;gap:14px;padding:4px;display:flex}.quiz-review-titles h3{margin:0}.quiz-review-list{flex-direction:column;gap:8px;display:flex}.quiz-review-row{border:1px solid var(--border,#e2e8f0);background:var(--card-bg,#fff);border-radius:12px;overflow:hidden}.quiz-review-summary{cursor:pointer;width:100%;color:inherit;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 14px;font-size:13.5px;display:flex}.quiz-review-summary:disabled{cursor:default;opacity:.7}.quiz-review-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:700;overflow:hidden}.quiz-review-pts{color:var(--text-soft,#64748b);flex-shrink:0;font-size:12.5px;font-weight:700}.quiz-review-dur{color:var(--text-soft,#94a3b8);flex-shrink:0;font-size:12px}.quiz-review-detail{border-top:1px solid var(--border,#e2e8f0);flex-direction:column;gap:10px;padding:12px 14px;display:flex}.quiz-review-q{border:1px solid var(--border,#e2e8f0);border-radius:10px;padding:8px 10px}.quiz-review-q-head{justify-content:space-between;align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}.quiz-review-score-edit{white-space:nowrap;align-items:center;gap:4px;font-size:12.5px;display:flex}.quiz-review-score-edit input{border:1px solid var(--border,#e2e8f0);border-radius:8px;width:56px;padding:4px 6px}.quiz-review-answer{white-space:pre-wrap;background:#64748b14;border-radius:8px;margin-top:6px;padding:8px 10px;font-size:13px}.quiz-review-sample{margin-top:6px;font-size:12.5px}.quiz-review-sample summary{cursor:pointer;color:var(--text-soft,#64748b);font-weight:600}.quiz-review-integrity summary{cursor:pointer;color:#f59e0b;align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:flex}.quiz-review-integrity ul{color:var(--text-soft,#64748b);margin:6px 0 0;padding-left:18px;font-size:12px}.quiz-review-actions{align-items:center;gap:10px;display:flex}.integrity-badge{border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.integrity-badge.ok{color:#10b981;background:#10b98126}.integrity-badge.warn{color:#f59e0b;background:#f59e0b26}.integrity-badge.bad{color:#ef4444;background:#ef444426}.audience-picker{border:1px solid var(--border,#e2e8f0);border-radius:10px;padding:8px 12px;font-size:13px}.audience-picker summary{cursor:pointer;align-items:center;gap:6px;font-weight:600;display:flex}.audience-body{flex-direction:column;gap:4px;margin-top:8px;display:flex}.audience-student{padding-left:18px}.text-rules{flex-direction:column;gap:6px;display:flex}.word-counter{color:var(--text-soft,#94a3b8);justify-content:space-between;align-items:center;gap:10px;font-size:12px;font-weight:600;display:flex}.word-counter.ok{color:#10b981}.draft-saved{color:var(--text-soft,#94a3b8);font-weight:500}.assignment-submit.session-gate{align-items:flex-start;gap:10px}.submissions-summary{gap:16px;margin-bottom:16px;display:flex}.submissions-stat{color:var(--s-text-muted);font-size:13px;font-weight:600}.submissions-module-group{border:1px solid rgba(var(--s-tint), .08);border-radius:12px;margin-bottom:12px;overflow:hidden}.submissions-group-header{background:rgba(var(--s-tint), .03);cursor:pointer;width:100%;color:var(--s-text-strong);border:none;align-items:center;gap:8px;padding:11px 14px;font-size:13px;font-weight:700;display:flex}.submissions-group-header:hover{background:rgba(var(--s-tint), .06)}.submissions-group-title{text-align:left;flex:1}.submissions-group-count{color:var(--s-text-muted);background:rgba(var(--s-tint), .08);border-radius:20px;padding:1px 8px;font-size:12px}.submissions-group-body{flex-direction:column;gap:4px;padding:6px;display:flex}.submissions-row{cursor:pointer;text-align:left;width:100%;color:var(--s-text);background:0 0;border:none;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.submissions-row:hover{background:rgba(var(--s-tint), .05)}.submissions-row.is-draft{opacity:.65}.submissions-row-left{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.submissions-row-icon{color:var(--s-text-muted);flex-shrink:0}.submissions-row-info{flex-direction:column;gap:2px;min-width:0;display:flex}.submissions-row-title{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.submissions-row-meta{color:var(--s-text-muted);align-items:center;gap:10px;font-size:11.5px;display:flex}.submissions-row-meta svg{vertical-align:-1px;margin-right:2px}.submissions-draft-badge{text-transform:uppercase;color:#f59e0b;font-size:10.5px;font-weight:700}.submissions-row-right{flex-shrink:0}.submissions-progress-wrap{align-items:center;gap:8px;display:flex}.submissions-progress-bar{background:rgba(var(--s-tint), .12);border-radius:20px;width:90px;height:6px;overflow:hidden}.submissions-progress-fill{border-radius:20px;height:100%;transition:width .3s}.submissions-progress-fill.high{background:#22c55e}.submissions-progress-fill.mid{background:#f59e0b}.submissions-progress-fill.low{background:#ef4444}.submissions-progress-label{color:var(--s-text-muted);font-variant-numeric:tabular-nums;min-width:34px;font-size:12px}.submissions-graded-hint{color:#22c55e}.submissions-back{color:var(--s-text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:10px;padding:4px 0;font-size:13px;display:inline-flex}.submissions-back:hover{color:var(--s-text-strong)}.submissions-detail-header{margin-bottom:12px}.submissions-detail-title{color:var(--s-text-strong);margin-bottom:6px;font-size:18px;font-weight:700}.submissions-detail-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.submissions-detail-stats{flex-wrap:wrap;gap:16px;margin:12px 0;display:flex}.sub-stat{color:var(--s-text-muted);align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:inline-flex}.sub-stat svg{color:var(--s-accent-text)}.submissions-student-list{flex-direction:column;display:flex}.submissions-missing-row{opacity:.6}.module-item-submit{background:rgba(var(--s-tint), .03);border:1px solid rgba(var(--s-tint), .08);border-radius:10px;margin:4px 0 8px;padding:12px 14px}.student-submit-panel{flex-direction:column;gap:10px;display:flex}.ssp-header{flex-direction:column;gap:6px;display:flex}.ssp-title{color:var(--s-text-strong);font-size:15px;font-weight:700}.ssp-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.streaks-nav-btns{align-items:center;gap:8px;display:flex}.streaks-app{color:#1e293b;background:linear-gradient(#fff7ed 0%,#fef3c7 40%,#fff 100%);flex-direction:column;height:100vh;display:flex;overflow:hidden}.streaks-topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb3;border-bottom:1px solid #0f172a0f;flex-shrink:0;align-items:center;gap:14px;padding:14px 22px;display:flex}.streaks-topbar.compact{padding:10px 22px}.streaks-topbar-title{align-items:center;gap:8px;font-size:18px;font-weight:700;display:flex}.streaks-topbar-summary{color:#475569;align-items:center;gap:12px;margin-left:auto;font-size:13px;display:flex}.streaks-topbar-summary .dot{background:#cbd5e1;border-radius:50%;width:4px;height:4px}.streaks-add-btn{margin-left:8px}.streaks-iconbtn{color:#334155;cursor:pointer;background:#0f172a0f;border:none;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;transition:background .15s,color .15s;display:inline-flex}.streaks-iconbtn:hover{background:#0f172a1f}.streaks-iconbtn.is-pinned{color:#f97316;background:#f9731626}.streaks-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));align-content:start;gap:18px;padding:28px;display:grid;overflow-y:auto}.streaks-tile{cursor:pointer;-webkit-user-select:none;user-select:none;aspect-ratio:1;background:#fff;border-radius:22px;flex-direction:column;justify-content:space-between;align-items:center;padding:14px 12px 12px;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 14px #0f172a0f}.streaks-tile:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0f172a1a}.streaks-tile.is-done{background:linear-gradient(145deg,#fff 60%,#fef3c7 100%)}.streaks-tile-add{color:#94a3b8;background:0 0;border:2px dashed #cbd5e1;justify-content:center;gap:8px;font-size:13px}.streaks-tile-add:hover{color:#f97316;border-color:#f97316}.streaks-tile-pin{filter:drop-shadow(0 1px 2px #00000026);font-size:14px;position:absolute;top:8px;right:10px}.streaks-tile-name{text-align:center;color:#1e293b;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:6px;font-size:13px;font-weight:600;line-height:1.2;display:-webkit-box;overflow:hidden}.streaks-tile-sub{color:#94a3b8;margin-top:1px;font-size:10px}.streaks-tile-mini{opacity:.85;justify-content:center;width:100%;max-height:36px;display:flex;overflow:hidden}.streaks-tile-mini .heatmap-grid,.streaks-tile-mini .heatmap-col{gap:2px}.hr-wrap{touch-action:manipulation;justify-content:center;align-items:center;display:inline-flex;position:relative}.hr-svg{position:absolute;top:0;left:0}.hr-inner{z-index:1;flex-direction:column;justify-content:center;align-items:center;line-height:1;display:flex;position:relative}.hr-icon{display:block}.hr-streak{color:var(--ring-color);align-items:center;gap:2px;margin-top:4px;font-weight:800;display:inline-flex}.hr-streak:before{content:"🔥";font-size:.8em}.hr-wrap.hr-filling{transition:transform .5s ease-in;transform:scale(.96)}.hr-wrap.hr-done .hr-icon{filter:saturate(1.2)}.streaks-detail{flex:1;padding:0 32px 60px;overflow-y:auto}.streaks-detail-top{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:5;background:linear-gradient(#fff7edf2 0%,#fff7ed99 100%);align-items:center;gap:10px;padding:18px 0;display:flex;position:sticky;top:0}.streaks-detail-title{color:#1e293b;flex:1;font-size:22px;font-weight:700}.streaks-detail-hero{background:#fff;border-radius:20px;align-items:center;gap:36px;margin-bottom:24px;padding:24px;display:flex;box-shadow:0 6px 20px #0f172a0f}.streaks-detail-info{flex:1;min-width:0}.streaks-stats{flex-wrap:wrap;gap:30px;margin-bottom:18px;display:flex}.streaks-stat{flex-direction:column;display:flex}.streaks-stat-value{color:#1e293b;font-size:28px;font-weight:800}.streaks-stat-suffix{color:#94a3b8;font-size:13px;font-weight:500}.streaks-stat-label{color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-top:2px;font-size:12px}.streaks-complete{background:var(--accent,#f97316);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:6px;padding:10px 16px;font-size:14px;font-weight:600;transition:filter .15s,transform .15s;display:inline-flex}.streaks-complete:hover{filter:brightness(1.05);transform:translateY(-1px)}.streaks-complete.big{padding:14px 20px;font-size:15px}.streaks-complete.done{background:#16a34a}.streaks-counter{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.streaks-counter-value{color:#475569;background:#0f172a0d;border-radius:8px;padding:6px 12px;font-size:14px}.streaks-hint{color:#64748b;background:#f9731614;border-left:3px solid #f97316;border-radius:6px;margin-top:10px;padding:8px 12px;font-size:13px}.streaks-section{background:#fff;border-radius:16px;margin-bottom:18px;padding:18px 22px;box-shadow:0 4px 14px #0f172a0d}.streaks-section-title{color:#475569;text-transform:uppercase;letter-spacing:.6px;margin-bottom:14px;font-size:13px;font-weight:700}.streaks-notes{color:#475569;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.5}.streaks-bars{align-items:flex-end;gap:6px;height:80px;display:flex}.streaks-bar-col{flex-direction:column;flex:1;align-items:center;gap:4px;display:flex}.streaks-bar-track{flex-direction:column;flex:1;justify-content:flex-end;width:100%;display:flex}.streaks-bar-fill{border-radius:4px 4px 0 0;transition:height .3s}.streaks-bar-label{color:#94a3b8;font-size:10px}.heatmap-grid{gap:3px;display:flex}.heatmap-col{flex-direction:column;gap:3px;display:flex}.heatmap-cell{border-radius:2px;transition:background .2s}.heatmap-cell.is-skip{opacity:.3}.streaks-timer{margin-top:8px}.streaks-timer-display{font-variant-numeric:tabular-nums;font-size:32px;font-weight:800}.streaks-timer-track{background:#94a3b840;border-radius:3px;height:6px;margin:8px 0 12px;overflow:hidden}.streaks-timer-fill{height:100%;transition:width .5s}.streaks-timer-actions{gap:8px;display:flex}.streaks-empty{text-align:center;color:#475569;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:40px;display:flex}.streaks-empty h2{color:#1e293b;margin:0;font-size:22px}.streaks-empty p{max-width:360px;margin:0}.streaks-icon-picker,.streaks-color-picker{flex-wrap:wrap;gap:6px;display:flex}.streaks-icon-opt{cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:8px;width:36px;height:36px;font-size:18px;transition:border-color .15s,transform .1s}.streaks-icon-opt:hover{transform:scale(1.06)}.streaks-icon-opt.active{background:#fff7ed;border-color:#f97316}.streaks-color-opt{cursor:pointer;border:2px solid #fff;border-radius:50%;width:28px;height:28px;transition:transform .1s,box-shadow .15s;box-shadow:0 0 0 1px #e2e8f0}.streaks-color-opt:hover{transform:scale(1.1)}.streaks-color-opt.active{box-shadow:0 0 0 2px #1e293b}.streaks-kind-row{flex-direction:column;gap:8px;display:flex}.streaks-kind-btn{cursor:pointer;text-align:left;background:#fff;border:2px solid #e2e8f0;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.streaks-kind-btn:hover{border-color:#cbd5e1}.streaks-kind-btn.active{background:#fff7ed;border-color:#f97316}.streaks-kind-btn .kind-emoji{font-size:22px}.streaks-kind-btn strong{color:#1e293b;font-size:14px;display:block}.streaks-kind-btn span{color:#64748b;font-size:12px}.streaks-weekdays{flex-wrap:wrap;gap:6px;display:flex}.streaks-wd{cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:8px;width:42px;height:36px;font-weight:600;transition:all .15s}.streaks-wd.active{color:#fff;background:#f97316;border-color:#f97316}.streaks-tile-v2{background:radial-gradient(circle at 50% 30%,#fffffff2,#fff 70%);justify-content:center;padding:18px 14px;position:relative}.streaks-tile-v2 .tile-base{flex-direction:column;align-items:center;gap:10px;transition:transform .25s,opacity .2s;display:flex}.streaks-tile-v2.stage-1 .tile-base{transform:translateY(-6px)scale(.97)}.streaks-tile-v2.stage-2 .tile-base{opacity:0;pointer-events:none}.tile-streak-badge{color:#1e293b;background:#0f172a0f;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:13px;font-weight:700;display:inline-flex}.tile-streak-badge .flame{font-size:13px}.tile-streak-badge.done{background:var(--habit-color,#f97316);color:#fff;box-shadow:0 4px 10px color-mix(in srgb, var(--habit-color,#f97316) 35%, transparent)}.tile-overlay{border-radius:inherit;pointer-events:none;opacity:0;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:14px;transition:opacity .2s;display:flex;position:absolute;inset:0}.tile-overlay-1{background:linear-gradient(#fffffff0,#fff7edf5)}.streaks-tile-v2.stage-1 .tile-overlay-1{opacity:1}.streaks-tile-v2.stage-2 .tile-overlay-1{opacity:0}.ov1-name{color:#1e293b;text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.ov1-heat{justify-content:center;display:flex}.tile-overlay-2{color:#fff;background:linear-gradient(160deg,#1e293b 0%,#0f172a 100%);justify-content:space-between;padding:14px 14px 12px}.streaks-tile-v2.stage-2 .tile-overlay-2{opacity:1}.ov2-name{text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:700;display:-webkit-box;overflow:hidden}.ov2-stats{justify-content:space-between;gap:6px;width:100%;display:flex}.ov2-stats .big{font-size:18px;font-weight:800;line-height:1}.ov2-stats .lbl{text-transform:uppercase;letter-spacing:.5px;opacity:.65;margin-top:3px;font-size:9px}.ov2-bars{align-items:flex-end;gap:2px;width:100%;height:28px;display:flex}.ov2-bar{border-radius:2px;flex:1;min-height:4px;transition:height .2s}.ov2-meta{opacity:.85;justify-content:center;gap:10px;font-size:11px;display:flex}.habit-pin-banner{flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:12px 0;display:flex}.habit-pin-streak{color:#fff;background:#00000040;border-radius:10px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-flex}.habit-pin-streak:before{content:"🔥"}.habit-pin-hover{color:#fff;opacity:0;text-align:center;pointer-events:none;background:#0f172aeb;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:14px;transition:opacity .15s;display:flex;position:absolute;inset:0}.home-card:hover .habit-pin-hover{opacity:1}.habit-pin-hover .big-num{font-size:30px;font-weight:800;line-height:1}.habit-pin-hover .lbl{text-transform:uppercase;letter-spacing:.5px;opacity:.7;font-size:10px}.habit-pin-hover .row{gap:18px;margin-top:4px;display:flex}.habit-pin-hover .row>div{flex-direction:column;align-items:center;display:flex}.streaks-tile-v2{touch-action:none}.streaks-tile-v2.is-pressing{transition:transform .18s;transform:scale(.97)}.streaks-tile-v2.is-pressing .tile-overlay{opacity:0!important}.streaks-tile-v2.is-pressing .tile-base{opacity:1!important;transform:none!important}.tile-press-ring{pointer-events:none;border:2px solid #0000;border-radius:18px;transition:border-color .15s;position:absolute;inset:6px}.streaks-tile-v2.is-pressing .tile-press-ring{border-color:var(--habit-color,#f97316);animation:.5s linear forwards tile-press-fill}@keyframes tile-press-fill{0%{clip-path:polygon(50% 0%,50% 0%,50% 0%,50% 0%,50% 0%)}25%{clip-path:polygon(50% 0%,100% 0%,100% 50%,50% 50%,50% 0%)}50%{clip-path:polygon(50% 0%,100% 0%,100% 100%,50% 100%,50% 0%)}75%{clip-path:polygon(50% 0%,100% 0%,100% 100%,0% 100%,0% 50%,50% 50%,50% 0%)}to{clip-path:polygon(50% 0%,100% 0%,100% 100%,0% 100%,0% 0%,50% 0%)}}.streaks-tile-v2.stage-2 .tile-base{pointer-events:auto}.tile-feedback{border-radius:inherit;pointer-events:none;z-index:5;justify-content:center;align-items:center;animation:.75s forwards tile-fb-fade;display:flex;position:absolute;inset:0}.tile-feedback-done{background:radial-gradient(circle at center, color-mix(in srgb, var(--habit-color,#16a34a) 35%, transparent) 0%, transparent 70%);color:#16a34a}.tile-feedback-done svg{filter:drop-shadow(0 4px 10px #16a34a73);animation:.55s cubic-bezier(.34,1.56,.64,1) forwards tile-fb-pop}.tile-feedback-undone{color:#ef4444;background:radial-gradient(circle,#ef444438 0%,#0000 70%)}.tile-feedback-undone svg{filter:drop-shadow(0 4px 10px #ef444466);animation:.55s forwards tile-fb-shake}@keyframes tile-fb-fade{0%{opacity:0}15%{opacity:1}75%{opacity:1}to{opacity:0}}@keyframes tile-fb-pop{0%{transform:scale(.2)rotate(-20deg)}60%{transform:scale(1.25)rotate(8deg)}to{transform:scale(1)rotate(0)}}@keyframes tile-fb-shake{0%{transform:scale(.4)translate(0)}30%{transform:scale(1.1)translate(-6px)}50%{transform:scale(1.05)translate(6px)}70%{transform:scale(1)translate(-3px)}to{transform:scale(1)translate(0)}}.streaks-tile-v2.fb-done .tile-streak-badge{animation:.6s badge-pulse}@keyframes badge-pulse{0%{transform:scale(1)}50%{transform:scale(1.18)}to{transform:scale(1)}}.habit-calendar{--cal-color:#f97316;font-size:13px}.cal-header{align-items:center;gap:10px;margin-bottom:12px;display:flex}.cal-title{text-align:center;color:#1e293b;text-transform:capitalize;flex:1;font-size:14px;font-weight:700}.streaks-iconbtn:disabled{opacity:.4;cursor:not-allowed}.cal-weekdays{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px;display:grid}.cal-wd{text-align:center;color:#94a3b8;text-transform:uppercase;letter-spacing:.6px;font-size:10px;font-weight:700}.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-cell{aspect-ratio:1;color:#475569;cursor:default;background:#94a3b814;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:12px;font-weight:600;transition:background .15s,transform .1s,box-shadow .15s;display:flex;position:relative}.cal-empty{background:0 0}.cal-cell.is-editable{cursor:pointer}.cal-cell.is-editable:hover{background:#94a3b82e;transform:scale(1.05)}.cal-cell.is-done{background:var(--cal-color);color:#fff;box-shadow:0 2px 8px color-mix(in srgb, var(--cal-color) 35%, transparent)}.cal-cell.is-done:hover{filter:brightness(1.05)}.cal-cell.is-missed{box-shadow:inset 0 0 0 1.5px #ef444459}.cal-cell.is-skip:not(.is-done){color:#cbd5e1;background:0 0}.cal-cell.is-today{outline:2px solid var(--cal-color);outline-offset:-2px;font-weight:800}.cal-cell.is-future,.cal-cell.is-before{opacity:.3}.cal-cell.is-future{color:#cbd5e1}.cal-num{line-height:1}.cal-mark{background:#ffffffd9;border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.cal-cell.is-done .cal-mark{display:none}.cal-legend{color:#64748b;flex-wrap:wrap;align-items:center;gap:14px;margin-top:14px;font-size:11px;display:flex}.cal-legend .lg-dot{vertical-align:middle;border-radius:3px;width:10px;height:10px;margin-right:4px;display:inline-block}.cal-legend .lg-dot.done{background:var(--cal-color)}.cal-legend .lg-dot.missed{background:0 0;box-shadow:inset 0 0 0 1.5px #ef444480}.cal-legend .lg-dot.skip{background:#94a3b840}.cal-legend .cal-hint{opacity:.8;margin-left:auto;font-style:italic}.stats-overview .streaks-section-title{justify-content:space-between;align-items:center;display:flex}.stats-overview .section-hint{color:#94a3b8;text-transform:none;letter-spacing:0;font-size:11px;font-weight:500}.stats-kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:18px;display:grid}.kpi{background:#fff;border-radius:16px;padding:16px 18px;position:relative;overflow:hidden;box-shadow:0 4px 14px #0f172a0d}.kpi:before{content:"";background:var(--kpi-accent,#f97316);width:4px;height:100%;position:absolute;top:0;left:0}.kpi-top{color:#64748b;text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:8px;margin-bottom:8px;font-size:12px;font-weight:600;display:flex}.kpi-top .kpi-icon{color:var(--kpi-accent,#f97316);display:inline-flex}.kpi-value{color:#1e293b;font-size:28px;font-weight:800;line-height:1}.kpi-sub{color:#94a3b8;margin-top:4px;font-size:12px}.trend-bars{align-items:flex-end;gap:3px;height:100px;display:flex}.trend-col{flex-direction:column;flex:1;align-items:center;gap:4px;height:100%;display:flex}.trend-track{flex:1;align-items:flex-end;width:100%;display:flex}.trend-fill{border-radius:3px 3px 0 0;width:100%;min-height:3px;transition:height .3s}.trend-label{color:#94a3b8;font-size:9px}.weekday-bars{grid-template-columns:repeat(7,1fr);gap:8px;height:130px;display:grid}.wd-col{flex-direction:column;align-items:center;display:flex}.wd-track{background:#94a3b81f;border-radius:6px 6px 0 0;flex:1;align-items:flex-end;width:70%;display:flex;overflow:hidden}.wd-fill{background:linear-gradient(#f97316 0%,#ea580c 100%);border-radius:6px 6px 0 0;width:100%;min-height:4px;transition:height .3s}.wd-pct{color:#1e293b;margin-top:4px;font-size:11px;font-weight:700}.wd-lbl{color:#94a3b8;font-size:10px}.habit-rank{flex-direction:column;gap:6px;display:flex}.habit-rank-row{cursor:pointer;text-align:left;background:#94a3b80f;border:none;border-radius:10px;grid-template-columns:4px 22px 1fr auto auto auto;align-items:center;gap:10px;width:100%;padding:10px 12px;transition:background .15s,transform .1s;display:grid}.habit-rank-row:hover{background:#94a3b824;transform:translate(2px)}.habit-rank-row .hr-dot{background:var(--c,#f97316);border-radius:2px;width:4px;height:22px}.habit-rank-row .hr-icon-sm{font-size:16px}.habit-rank-row .hr-name{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.habit-rank-row .hr-spark{gap:2px;display:inline-flex}.habit-rank-row .hr-spark-dot{background:#94a3b840;border-radius:1.5px;width:5px;height:12px}.habit-rank-row .hr-spark-dot.on{background:var(--c,#f97316)}.habit-rank-row .hr-spark-dot.off{background:#ef444440}.habit-rank-row .hr-spark-dot.skip{background:#94a3b81f}.habit-rank-row .hr-streak-num{color:#475569;align-items:center;gap:3px;font-size:12px;font-weight:700;display:inline-flex}.habit-rank-row .hr-streak-num .flame{font-size:11px}.habit-rank-row .hr-rate{align-items:center;gap:8px;min-width:110px;display:inline-flex}.habit-rank-row .hr-bar{background:#94a3b82e;border-radius:3px;width:60px;height:6px;overflow:hidden}.habit-rank-row .hr-bar-fill{background:var(--c,#f97316);border-radius:3px;height:100%;transition:width .3s;display:block}.habit-rank-row .hr-rate-num{color:#1e293b;text-align:right;min-width:36px;font-size:12px;font-weight:700}.agenda-nav-btns{align-items:center;gap:8px;display:flex}.agenda-app{color:#1e293b;background:linear-gradient(#f8fafc 0%,#eef2ff 100%);flex-direction:column;height:100vh;display:flex;overflow:hidden}.agenda-topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border-bottom:1px solid #0f172a0f;flex-shrink:0;align-items:center;gap:12px;padding:12px 22px;display:flex}.agenda-topbar-title{align-items:center;gap:8px;font-size:18px;font-weight:700;display:flex}.agenda-iconbtn{color:#334155;cursor:pointer;background:#0f172a0f;border:none;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;transition:background .15s;display:inline-flex}.agenda-iconbtn:hover{background:#0f172a1f}.agenda-toggles{align-items:center;gap:6px;margin-left:auto;display:flex}.agenda-toggle{color:#64748b;cursor:pointer;background:#fff;border:1px solid #0f172a1f;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.agenda-toggle.on{color:#fff;background:#1e293b;border-color:#1e293b}.agenda-legend{color:#475569;background:#fff9;border-bottom:1px solid #0f172a0a;flex-wrap:wrap;gap:6px 12px;padding:8px 22px;font-size:12px;display:flex}.agenda-legend-item{align-items:center;gap:5px;display:inline-flex}.agenda-legend-dot{border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 1px #0000000f}.agenda-cal{flex:1;min-height:0;padding:14px 18px 22px}.agenda-cal .fc{height:100%;font-family:inherit}.agenda-cal .fc .fc-toolbar-title{font-size:18px;font-weight:700}.agenda-cal .fc .fc-button{color:#334155;text-transform:capitalize;box-shadow:none;background:#fff;border:1px solid #0f172a1f;border-radius:8px;font-size:12px;font-weight:600}.agenda-cal .fc .fc-button:hover{background:#f1f5f9}.agenda-cal .fc .fc-button-primary:not(:disabled).fc-button-active,.agenda-cal .fc .fc-button-primary:not(:disabled):active{color:#fff;background:#1e293b;border-color:#1e293b}.agenda-cal .fc-timegrid-slot{height:2.4em}.agenda-cal .fc-col-header-cell-cushion{color:#475569;font-weight:600}.agenda-cal .fc-day-today{background-color:#6366f10a!important}.agenda-cal .fc-event.agenda-ev{cursor:grab;border-width:0;border-radius:8px;padding:2px 6px;font-size:12px;font-weight:500;box-shadow:0 1px 3px #00000014}.agenda-cal .fc-event.agenda-ev:hover{filter:brightness(1.06);box-shadow:0 3px 10px #00000029}.agenda-cal .fc-event.agenda-ev-done{opacity:.65;text-decoration:line-through}.agenda-cal .fc-event.agenda-ev-habit.agenda-ev-pending{border-radius:6px;box-shadow:0 1px 3px #0000000f;background:#ffffffd9!important;border-left:3px solid!important}.agenda-cal .fc-event.agenda-ev-habit .fc-event-title{font-weight:600}.agenda-cal .fc-highlight{border-radius:4px;background:#6366f133!important}.agenda-cal .fc-timegrid-slot:hover{cursor:pointer;background-color:#6366f114}.agenda-ev-school{font-weight:600;border-left-width:3px!important}.clock-app{background:var(--bg,#f8fafc);color:#0f172a;flex-direction:column;flex:auto;width:100%;height:100%;min-height:0;display:flex}.clk-topbar{border-bottom:1px solid #0f172a14;align-items:center;gap:12px;padding:10px 16px;display:flex}.clk-nav{gap:6px;display:flex}.clk-iconbtn{color:#334155;cursor:pointer;background:#0f172a0d;border:none;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.clk-iconbtn:hover{background:#0f172a1a}.clk-title{flex:1;font-size:15px;font-weight:650}.clk-display-toggle{color:#0284c7;cursor:pointer;background:#0ea5e914;border:1px solid #0ea5e966;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600}.clk-hero{justify-content:center;padding:24px 16px 8px;display:flex}.clk-hero-face{justify-content:center;align-items:center;width:200px;height:200px;display:flex}.clk-tabs{border-bottom:1px solid #0f172a14;gap:4px;padding:0 12px;display:flex;overflow-x:auto}.clk-tab{cursor:pointer;color:#64748b;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:12px 14px;font-size:13px;font-weight:600;display:inline-flex}.clk-tab:hover{color:#334155}.clk-tab.active{border-bottom-style:solid;border-bottom-width:2px}.clk-body{flex:1;padding:18px 16px 28px;overflow-y:auto}.clk-pane{max-width:560px;margin:0 auto}.clk-empty{color:#94a3b8;text-align:center;padding:18px 0;font-size:13px}.clk-input{color:#0f172a;background:#fff;border:1px solid #0f172a26;border-radius:9px;padding:8px 10px;font-size:14px}.clk-input-grow{flex:1;min-width:0}.clk-time{width:110px}.clk-add-row,.clk-alarm-new{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.clk-add-unit{color:#64748b;font-size:13px}.clk-btn{color:#334155;cursor:pointer;background:#fff;border:1px solid #0f172a1f;border-radius:9px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.clk-btn:hover:not(:disabled){background:#0f172a0a}.clk-btn:disabled{opacity:.4;cursor:default}.clk-btn-primary{color:#fff;background:#0ea5e9;border-color:#0000}.clk-icon{color:#334155;cursor:pointer;background:#0f172a0d;border:none;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.clk-icon:hover{background:#0f172a1a}.clk-icon-danger:hover{color:#dc2626;background:#ef44441f}.clk-chip{cursor:pointer;color:#334155;background:#fff;border:1px solid #0f172a1f;border-radius:999px;align-items:center;gap:4px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.clk-chip:hover{background:#0f172a0a}.clk-chip.on{color:#0284c7;background:#0ea5e91f;border-color:#0ea5e980}.clk-digital{font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;display:flex}.clk-digital-main{letter-spacing:1px;font-size:56px;font-weight:300}.clk-digital-sec{opacity:.55;font-size:24px;font-weight:400}.clk-bigtime{text-align:center;font-variant-numeric:tabular-nums;margin:8px 0 20px;font-size:60px;font-weight:250}.clk-controls{justify-content:center;gap:10px;margin-bottom:16px;display:flex}.clk-laps{border-top:1px solid #0f172a14;margin:0;padding:0;list-style:none}.clk-laps li{font-variant-numeric:tabular-nums;border-bottom:1px solid #0f172a0f;gap:12px;padding:9px 4px;font-size:14px;display:flex}.clk-lap-n{color:#94a3b8;width:36px}.clk-lap-split{color:#0284c7;flex:1}.clk-lap-total{color:#334155}.clk-presets{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.clk-timer-list{flex-direction:column;gap:10px;display:flex}.clk-timer-row{background:#fff;border:1px solid #0f172a14;border-radius:12px;align-items:center;gap:14px;padding:12px;display:flex}.clk-timer-row.is-done{background:#ef44440d;border-color:#ef444480}.clk-timer-ring{--p:1;--c:#0ea5e9;background:conic-gradient(var(--c) calc(var(--p) * 360deg), #0f172a14 0deg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:flex;position:relative}.clk-timer-ring:before{content:"";background:#fff;border-radius:50%;position:absolute;inset:5px}.clk-timer-ring span{font-variant-numeric:tabular-nums;color:#0f172a;font-size:13px;font-weight:600;position:relative}.clk-timer-meta{flex-direction:column;flex:1;gap:8px;display:flex}.clk-timer-label{font-size:14px;font-weight:600}.clk-timer-actions{gap:6px;display:flex}.clk-weekdays{gap:6px;margin-bottom:16px;display:flex}.clk-wd{cursor:pointer;color:#64748b;background:#fff;border:1px solid #0f172a1f;border-radius:8px;width:34px;height:34px;font-size:12px;font-weight:600}.clk-wd.on{color:#0284c7;background:#0ea5e924;border-color:#0ea5e980}.clk-alarm-list{flex-direction:column;gap:8px;display:flex}.clk-alarm-row{background:#fff;border:1px solid #0f172a14;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex}.clk-alarm-row.off{opacity:.5}.clk-alarm-info{flex:1;align-items:baseline;gap:12px;display:flex}.clk-alarm-time{font-variant-numeric:tabular-nums;font-size:26px;font-weight:300}.clk-alarm-sub{flex-direction:column;gap:2px;display:flex}.clk-alarm-label{font-size:13px;font-weight:600}.clk-alarm-days{color:#94a3b8;font-size:12px}.clk-switch{cursor:pointer;width:40px;height:22px;position:relative}.clk-switch input{opacity:0;width:0;height:0}.clk-switch-track{background:#0f172a2e;border-radius:999px;transition:all .2s;position:absolute;inset:0}.clk-switch-track:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:all .2s;position:absolute;top:2px;left:2px}.clk-switch input:checked+.clk-switch-track:before{transform:translate(18px)}.clk-zone-list{flex-direction:column;gap:8px;display:flex}.clk-zone-row{background:#fff;border:1px solid #0f172a14;border-radius:12px;align-items:center;gap:14px;padding:10px 14px;display:flex}.clk-zone-face{flex-shrink:0;width:48px;height:48px}.clk-zone-meta{flex-direction:column;flex:1;display:flex}.clk-zone-label{font-size:14px;font-weight:600}.clk-zone-sub{color:#94a3b8;font-size:12px}.clk-zone-time{font-variant-numeric:tabular-nums;font-size:22px;font-weight:300}.clk-link-preview{text-align:center;border:2px dashed #0ea5e966;border-radius:14px;margin-bottom:16px;padding:18px}.clk-link-pv-title{margin-bottom:6px;font-size:16px;font-weight:650}.clk-link-pv-time{font-variant-numeric:tabular-nums;font-size:30px;font-weight:300}.clk-link-mode{gap:8px;margin-bottom:16px;display:flex}.clk-link-group{margin-bottom:14px}.clk-link-grouphead{text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;margin-bottom:6px;font-size:12px;font-weight:700}.clk-link-opt{cursor:pointer;text-align:left;background:#fff;border:1px solid #0f172a14;border-radius:10px;justify-content:space-between;align-items:center;width:100%;margin-bottom:6px;padding:10px 12px;display:flex}.clk-link-opt:hover{background:#0f172a08}.clk-link-opt.sel{background:#0ea5e914;border-color:#0ea5e999}.clk-link-title{font-size:14px;font-weight:600}.clk-link-sub{color:#94a3b8;font-size:12px}.clk-analog{display:block}.clk-cover{justify-content:center;align-items:center;width:100%;height:100%;padding:8px;display:flex}.clk-cover .clk-analog{width:100%;height:100%}.clk-cover .clk-digital-main{font-size:34px}.dark .clock-app{color:#e2e8f0;background:#0f172a}.dark .clk-title,.dark .clk-timer-label,.dark .clk-alarm-time,.dark .clk-zone-time{color:#e2e8f0}.dark .clk-input,.dark .clk-btn,.dark .clk-timer-row,.dark .clk-alarm-row,.dark .clk-zone-row,.dark .clk-link-opt{color:#e2e8f0;background:#1e293b;border-color:#ffffff1a}.dark .clk-timer-ring:before{background:#1e293b}.dark .clk-timer-ring span{color:#e2e8f0}.today-app{background-color:var(--bg-body);flex-direction:column;height:100vh;display:flex;overflow:hidden}.today-topbar{background:var(--bg-app);border-bottom:1px solid var(--border-light);flex-shrink:0;align-items:center;gap:16px;padding:12px 16px;display:flex}.today-nav-btns{gap:8px;display:flex}.today-iconbtn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex}.today-iconbtn:hover{background:var(--bg-hover);color:var(--text-main)}.today-topbar-title{color:var(--text-main);flex:1;align-items:center;gap:8px;font-weight:600;display:flex}.today-toggles{gap:8px;display:flex}.today-notepad-container{flex:1;justify-content:center;align-items:flex-start;padding:32px 16px;display:flex;overflow-y:auto}.today-notepad{background:#fff;border-radius:12px;width:100%;max-width:600px;position:relative;overflow:hidden;box-shadow:0 10px 40px #00000014}.today-notepad:before{content:"";z-index:1;background:#fecaca;width:2px;position:absolute;top:0;bottom:0;left:30px}.today-header{background:#fafaf9;border-bottom:2px solid #f1f5f9;padding:32px 32px 24px 60px}.today-header h2{color:#1e293b;margin:0 0 8px;font-size:1.8rem;font-weight:800}.today-date{color:#64748b;font-size:.95rem;font-weight:500}.today-content{background-image:repeating-linear-gradient(#0000,#0000 47px,#f1f5f9 47px 48px);background-position:0 16px;background-attachment:local;min-height:400px;padding:16px 32px 40px 60px}.today-section{margin-bottom:32px}.today-app .section-title{color:#475569;text-transform:uppercase;letter-spacing:.05em;background:#fff;margin:0 0 16px;padding-right:12px;font-size:1.1rem;font-weight:700;display:inline-block}.today-list{flex-direction:column;gap:12px;display:flex}.today-item{background:#fff;border-radius:8px;align-items:center;gap:12px;padding:8px;transition:all .2s;display:flex}.today-item:hover{background:#f8fafc}.check-btn{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:transform .1s;display:flex}.check-btn:active{transform:scale(.9)}.item-body{cursor:pointer;flex:1;min-width:0}.today-app .item-title{color:#334155;white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:1.05rem;font-weight:600;transition:color .2s;overflow:hidden}.habit-icon{margin-right:4px;font-size:1.1em}.item-meta{color:#94a3b8;align-items:center;gap:12px;font-size:.75rem;font-weight:500;display:flex}.item-time{color:var(--item-color);background:color-mix(in srgb, var(--item-color) 10%, transparent);border-radius:4px;padding:2px 6px}.item-overdue{color:#ef4444;background:#fee2e2;border-radius:4px;padding:2px 6px}.item-project{align-items:center;display:flex}.item-actions{color:#cbd5e1;opacity:0;transition:opacity .2s}.today-item:hover .item-actions{opacity:1}.today-item.done .item-title{color:#94a3b8;text-decoration:line-through}.today-item.done .item-time,.today-item.done .item-project{opacity:.6}.today-empty{color:#94a3b8;text-align:center;background:#fff;flex-direction:column;justify-content:center;align-items:center;padding:60px 0;display:flex}.empty-icon{margin-bottom:16px;font-size:3rem}.empty-sub{opacity:.7;margin-top:4px;font-size:.85rem}html[data-theme=dark] .today-notepad{background:#1e293b;box-shadow:0 10px 40px #0000004d}html[data-theme=dark] .today-notepad:before{background:#334155}html[data-theme=dark] .today-header{background:#0f172a;border-bottom-color:#334155}html[data-theme=dark] .today-header h2{color:#f8fafc}html[data-theme=dark] .today-content{background-image:repeating-linear-gradient(#0000,#0000 47px,#334155 47px 48px)}html[data-theme=dark] .today-app .section-title{color:#94a3b8;background:#1e293b}html[data-theme=dark] .today-item{background:#1e293b}html[data-theme=dark] .today-item:hover{background:#334155}html[data-theme=dark] .today-app .item-title{color:#e2e8f0}html[data-theme=dark] .today-empty{background:#1e293b}.live-overlay{pointer-events:none;z-index:3;position:absolute;inset:0;overflow:hidden}.live-card{pointer-events:none;color:#1e293b;-webkit-user-select:none;user-select:none;background:#fff;border-radius:.9em;flex-direction:column;line-height:1.25;display:flex;position:absolute;overflow:hidden;box-shadow:0 1px 3px #0f172a1f}html[data-theme=dark] .live-card{color:#e2e8f0;background:#1e293b;box-shadow:0 1px 3px #0006}.live-card.is-interactive{box-shadow:0 4px 14px #0f172a38}.live-face{flex-direction:column;height:100%;min-height:0;display:flex}.live-head{color:#fff;flex:none;align-items:center;gap:.4em;padding:.4em .55em;font-weight:600;display:flex}.live-head-today{background:linear-gradient(135deg,#10b981,#34d399)}.live-head-icon{font-size:1.15em;line-height:1}.live-head-name{white-space:nowrap;text-overflow:ellipsis;flex:auto;font-size:.95em;overflow:hidden}.live-head-badge{background:#ffffff47;border-radius:.7em;flex:none;padding:.05em .5em;font-size:.85em;font-weight:700}.live-today-list{flex:auto;min-height:0;padding:.3em .4em;overflow:hidden}.live-row{align-items:center;gap:.4em;padding:.18em .1em;font-size:.85em;display:flex}.live-row.done{opacity:.5}.live-row.done .live-row-title{text-decoration:line-through}.live-row-title{white-space:nowrap;text-overflow:ellipsis;flex:auto;overflow:hidden}.live-row-time{opacity:.6;font-variant-numeric:tabular-nums;flex:none;font-size:.85em}.live-row-over{color:#ef4444;flex:none;font-weight:800}.live-empty{opacity:.6;text-align:center;padding:.8em 0;font-size:.85em}.live-check{cursor:pointer;background:0 0;border:.16em solid #94a3b8;border-radius:.35em;flex:none;justify-content:center;align-items:center;width:1.25em;height:1.25em;margin:0;padding:0;transition:transform 80ms;display:inline-flex}.live-check:disabled{cursor:default}.live-card.is-interactive .live-check{pointer-events:auto}.live-card.is-interactive .live-check:hover:not(:disabled){transform:scale(1.12)}.live-streak-body{flex:auto;align-items:center;gap:.5em;min-height:0;padding:.5em .6em;display:flex}.live-ring{cursor:default;background:0 0;border:none;flex:none;width:3.4em;height:3.4em;margin:0;padding:0;position:relative}.live-ring.is-int{pointer-events:auto;cursor:pointer}.live-ring.is-int:hover:not(:disabled){transform:scale(1.05)}.live-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.live-ring-bg{fill:none;stroke:#7878782e;stroke-width:6px}.live-ring-fg{fill:none;stroke-width:6px;stroke-linecap:round;transition:stroke-dashoffset .3s}.live-ring-num{justify-content:center;align-items:center;font-size:1.25em;font-weight:800;display:flex;position:absolute;inset:0}.live-ring-check{border-radius:50%;justify-content:center;align-items:center;width:1.3em;height:1.3em;display:flex;position:absolute;top:-.1em;right:-.1em;box-shadow:0 1px 2px #0000004d}.live-streak-meta{flex-direction:column;flex:auto;gap:.35em;min-width:0;display:flex}.live-streak-rate{opacity:.7;font-size:.85em;font-weight:600}.live-heat{gap:.12em;display:flex}.live-heat span{border-radius:.15em;flex:1 1 0;min-width:.25em;height:1em}.live-broken{opacity:.7;text-align:center;padding:.8em;font-size:.85em}.live-clock{position:relative}.live-clock-full{flex:auto;justify-content:center;align-items:center;min-height:0;padding:.6em;display:flex}.live-clock-full .clk-analog{width:100%;max-width:100%;height:100%;max-height:100%}.live-clock-full .clk-digital-main{font-size:2.6em;font-weight:300}.live-clock-full .clk-digital-sec{font-size:1.1em}.live-clock-status{color:#fff;cursor:default;font-variant-numeric:tabular-nums;background:linear-gradient(#0f172a00,#0f172ad1);border:none;align-items:center;gap:.45em;margin:0;padding:.4em .7em;display:flex;position:absolute;bottom:0;left:0;right:0}.live-clock-status:not(:disabled){cursor:pointer}.live-card.is-interactive .live-clock-status:not(:disabled){pointer-events:auto}.live-clock-status-dot{border-radius:50%;flex:none;width:.55em;height:.55em}.live-clock-status-text{flex:none;font-size:.95em;font-weight:700}.live-clock-status-title{opacity:.85;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.82em;overflow:hidden}.card-actions{pointer-events:none;gap:4px;animation:.12s card-actions-in;display:flex;position:absolute;transform:translate(-100%)}@keyframes card-actions-in{0%{opacity:0;transform:translate(-100%)translateY(-3px)}to{opacity:1;transform:translate(-100%)translateY(0)}}.card-action-btn{pointer-events:auto;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a9e;border:none;border-radius:7px;justify-content:center;align-items:center;width:24px;height:24px;transition:background .12s,transform 80ms;display:inline-flex;box-shadow:0 1px 3px #0000004d}.card-action-btn:hover{background:#0f172ad9;transform:scale(1.08)}.card-action-btn:last-child:hover{background:#ef4444}.lp-flash{flex-direction:column;align-items:center;gap:16px;padding:8px 0;display:flex}.lp-flash-card{perspective:1200px;cursor:pointer;width:100%;min-height:180px;font:inherit;color:inherit;background:0 0;border:none;padding:0}.lp-flash-inner{width:100%;min-height:180px;transform-style:preserve-3d;transition:transform .5s cubic-bezier(.4,.2,.2,1);position:relative}.lp-flash-card.flipped .lp-flash-inner{transform:rotateY(180deg)}.lp-flash-face{backface-visibility:hidden;text-align:center;background:#0f172a99;border:1px solid #94a3b84d;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex;position:absolute;inset:0;box-shadow:0 6px 20px #00000040}.lp-flash-face.back{border-color:#007a4d80;transform:rotateY(180deg)}html[data-theme=light] .lp-flash-face{background:#fff;box-shadow:0 6px 20px #0f172a1f}.lp-flash-tag{letter-spacing:.08em;text-transform:uppercase;opacity:.55;font-size:11px;font-weight:700}.lp-flash-text{font-size:19px;font-weight:700;line-height:1.35}.lp-flash-actions{gap:10px;width:100%;display:flex}.lp-flash-actions .lp-btn{flex:1}.lp-btn.flash-knew{color:#fff;background:#007a4d;border-color:#007a4d}.lp-btn.flash-knew:hover{filter:brightness(1.08)}.lp-btn.flash-no{color:#ef4444;border-color:#ef444480}.lp-btn.flash-no:hover{border-color:#ef4444}.lp-iconbtn,.learn-iconbtn{width:26px;height:26px;color:inherit;cursor:pointer;background:#94a3b826;border:none;border-radius:7px;flex:none;justify-content:center;align-items:center;display:inline-flex}.lp-iconbtn:hover,.learn-iconbtn:hover:not(:disabled){background:#94a3b84d}.learn-iconbtn:disabled{opacity:.4;cursor:default}.lp-iconbtn.ok,.learn-iconbtn.ok{color:#22c55e}.lp-iconbtn.no,.learn-iconbtn.no{color:#ef4444}.learn-iconbtn.on{color:#fff;background:#007a4d}.learn-btn.is-disabled{opacity:.45;cursor:default;pointer-events:none}.lp-btn,.learn-btn{color:inherit;cursor:pointer;background:0 0;border:1px solid #94a3b859;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:600;display:inline-flex}.lp-btn:hover:not(:disabled),.learn-btn:hover:not(:disabled){border-color:#007a4d}.lp-btn:disabled,.learn-btn:disabled{opacity:.45;cursor:default}.lp-btn.primary,.learn-btn.primary{color:#fff;background:#007a4d;border-color:#007a4d}.learn-btn.big{border-radius:12px;padding:11px 22px;font-size:15px}.learn-input{color:#1e293b;background:#ffffffbf;border:1px solid #94a3b866;border-radius:7px;width:100%;padding:7px 10px;font-family:inherit;font-size:13px}html[data-theme=dark] .learn-input{color:#e2e8f0;background:#00000040}.lp-spin,.learn-spin{animation:1s linear infinite lp-spin}@keyframes lp-spin{to{transform:rotate(360deg)}}.learn-face{flex-direction:column;height:100%;min-height:0;font-size:.95em;display:flex}.live-card.is-interactive .learn-face button,.live-card.is-interactive .learn-face input,.live-card.is-interactive .learn-face textarea,.live-card.is-interactive .learn-face a,.live-card.is-interactive .learn-browser webview,.live-card.is-interactive .learn-browser iframe{pointer-events:auto}.learn-browser{background:#fff;border-radius:10px;overflow:hidden}html[data-theme=dark] .learn-browser{background:#1e293b}.learn-browser-bar{border-bottom:1px solid #00000014;align-items:center;gap:.3em;padding:.4em;display:flex}html[data-theme=dark] .learn-browser-bar{border-color:#ffffff1a}.learn-browser-input{flex:1;margin:0}.learn-browser-web{border:0;flex:1;width:100%;min-height:0}.learn-browser-empty{color:#94a3b8;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.5em;padding:1em;display:flex}.live-card.is-interactive .learn-streak-body .hr-wrap{pointer-events:auto;cursor:pointer}.learn-head{color:#fff;background:#007a4d;flex:none;align-items:center;gap:.4em;padding:.45em .6em;font-weight:700;display:flex}.learn-head-name{white-space:nowrap;text-overflow:ellipsis;flex:auto;font-size:.95em;overflow:hidden}.learn-head-timer{background:linear-gradient(135deg,#3f7cbf,#89bdf0)}.learn-head-quiz{background:linear-gradient(135deg,#6d28d9,#8b5cf6)}.learn-head-research{background:linear-gradient(135deg,#b45309,#f59e0b)}.learn-badge{background:#ffffff47;border-radius:.7em;align-items:center;gap:3px;padding:.05em .5em;font-size:.8em;font-weight:700;display:inline-flex}.learn-module{background:inherit}.learn-hint{opacity:.55;text-align:center;font-size:.8em}.learn-error{color:#dc2626;font-size:.85em}.learn-ok{color:#16a34a;font-size:.85em}.learn-broken{opacity:.6;justify-content:center;align-items:center;padding:1em;font-size:.85em}.learn-setup{gap:.5em;padding:.8em .9em}.learn-setup-title{color:#065f46;font-size:1.05em;font-weight:800}html[data-theme=dark] .learn-setup-title{color:#6ee7b7}.learn-goal-input{resize:none;flex:auto;min-height:3em;font-size:1em}.learn-label{opacity:.65;font-size:.78em;font-weight:600}.learn-arch-row{flex:auto;gap:.6em;display:flex}.learn-arch{color:inherit;cursor:pointer;background:#fff9;border:2px solid #94a3b859;border-radius:.7em;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.45em;padding:.6em;font-size:.9em;font-weight:700;display:flex}html[data-theme=dark] .learn-arch{background:#00000026}.learn-arch:hover{border-color:#007a4d}.learn-arch.on{color:#065f46;background:#007a4d1f;border-color:#007a4d}html[data-theme=dark] .learn-arch.on{color:#6ee7b7}.learn-streak-body{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.4em;padding:.5em;display:flex}.learn-timer-body{flex:1;justify-content:space-between;align-items:center;padding:.6em .9em;display:flex}.learn-timer-time{font-variant-numeric:tabular-nums;font-size:1.9em;font-weight:800}.learn-timer-controls{gap:.4em;display:flex}.learn-progress{justify-content:center;gap:.5em;padding:.7em .9em}.learn-progress-label{font-size:.95em;font-weight:700}.learn-progress-bar{background:#94a3b840;border-radius:999px;height:.5em;overflow:hidden}.learn-progress-fill{background:#007a4d;border-radius:999px;height:100%;transition:width .4s}.learn-quiz-body{flex-direction:column;flex:1;gap:.5em;min-height:0;padding:.6em .7em;display:flex}.learn-proposals{flex-direction:column;gap:.35em;min-height:0;display:flex;overflow-y:auto}.learn-proposal{border:1px solid #94a3b84d;border-radius:.5em;align-items:center;gap:.4em;padding:.35em .5em;font-size:.82em;display:flex}.learn-proposal-text{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.learn-trend{flex-wrap:wrap;gap:.35em;display:flex}.learn-trend-chip{background:#94a3b833;border-radius:999px;padding:.1em .55em;font-size:.75em;font-weight:700}.learn-trend-chip.good{color:#15803d;background:#22c55e38}.learn-trend-chip.bad{color:#b91c1c;background:#ef44442e}html[data-theme=dark] .learn-trend-chip.good{color:#4ade80}html[data-theme=dark] .learn-trend-chip.bad{color:#f87171}.learn-research-body{flex-direction:column;flex:1;gap:.5em;padding:.6em .7em;display:flex}.learn-research-actions{gap:.5em;display:flex}.learn-research-actions .learn-btn{flex:1}.learn-head-source{background:linear-gradient(135deg,#c2410c,#fb923c)}.learn-source-body{flex-direction:column;flex:1;gap:.4em;min-height:0;padding:.6em .7em;display:flex}.learn-source-input{resize:none;flex:none;min-height:3.2em;font-size:.85em}.learn-source-list{flex-direction:column;flex:auto;gap:.25em;min-height:0;margin-top:.2em;display:flex;overflow-y:auto}.learn-source-item{background:#00000008;border-radius:6px;align-items:center;gap:.4em;padding:.25em .4em;display:flex}.learn-source-item .learn-source-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:.82em;overflow:hidden}.learn-workshop-overlay{z-index:60;background:var(--bg-app);position:fixed;inset:0;overflow:auto}.learn-workshop-overlay>*{height:100%}.learn-source-title{text-overflow:ellipsis;white-space:nowrap;font-size:.95em;font-weight:800;overflow:hidden}.learn-source-url{color:#2563eb;text-overflow:ellipsis;white-space:nowrap;font-size:.78em;overflow:hidden}.learn-source-excerpt{opacity:.7;flex:auto;min-height:0;font-size:.8em;overflow:hidden}.live-card.learn-card-agent{background:linear-gradient(135deg,#065f46,#10b981);border-radius:50%;overflow:visible;box-shadow:0 4px 14px #065f4666}.learn-agent{color:#fff;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:100%;position:relative}.learn-agent.is-int{pointer-events:auto}.learn-agent.is-int:hover{transform:scale(1.06)}.learn-agent-ring{pointer-events:none;background:#10b9810d;border:2px dashed #10b9818c;border-radius:50%;position:absolute;top:50%;left:50%}.learn-confirm{background:var(--bg-panel);color:var(--text-main);border:1px solid var(--border-light);z-index:45;border-radius:16px;align-items:center;gap:14px;padding:10px 16px;display:flex;position:absolute;bottom:84px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #00000059}.learn-confirm-hint{opacity:.75;max-width:320px;font-size:13px}.learn-fab-wrap{z-index:40;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.learning-panel-fab{color:#fff;cursor:grab;touch-action:none;background:#007a4d;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex;box-shadow:0 6px 18px #0000004d}.learning-panel-fab:active{cursor:grabbing}.learn-fab-menu{background:var(--bg-panel);color:var(--text-main);border:1px solid var(--border-light);border-radius:12px;flex-direction:column;gap:4px;padding:6px;display:flex;box-shadow:0 10px 30px #00000059}.learn-fab-menu button{color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:600;display:flex}.learn-fab-menu button:hover:not(:disabled){background:#94a3b826}.learn-fab-menu button:disabled{opacity:.45;cursor:default}.learn-bridges{z-index:44;background:var(--bg-panel);width:300px;color:var(--text-main);border:1px solid #8b5cf673;border-radius:14px;flex-direction:column;gap:6px;padding:10px 12px;display:flex;position:absolute;bottom:90px;right:68px;box-shadow:0 10px 30px #00000059}.learn-bridges-title{color:#a78bfa;align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.learn-bridge-row{align-items:center;gap:6px;font-size:12px;display:flex}.learn-bridge-text{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.learn-bridge-board{color:#a78bfa;font-weight:700}.learn-bridge-reason{opacity:.65;white-space:normal;font-size:.92em;display:block}.learn-bridge-row:has(.learn-bridge-reason) .learn-bridge-text{white-space:normal}.learn-agent-chat{z-index:2600;background:var(--bg-panel);color:var(--text-main);border:1px solid var(--border-light);border-radius:16px;flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 18px 50px #00000073}.lac-head{background:#10b9811f;align-items:center;gap:8px;padding:10px 12px;font-size:13px;font-weight:800;display:flex}.lac-title{flex:1}.lac-scroll{flex-direction:column;flex:1;gap:8px;min-height:0;padding:10px 12px;display:flex;overflow-y:auto}.lac-empty{opacity:.55;text-align:center;margin:auto;padding:12px;font-size:12px}.lac-msg{white-space:pre-wrap;background:#94a3b81f;border-radius:12px;align-items:flex-start;gap:6px;max-width:92%;padding:7px 10px;font-size:13px;display:flex}.lac-msg.user{background:#007a4d40;align-self:flex-end}.lac-msg.err{color:#f87171}.lac-msg-text{flex:auto;min-width:0}.lac-pin{color:inherit;opacity:.5;cursor:pointer;background:0 0;border:none;flex:none;padding:2px}.lac-pin:hover:not(:disabled){opacity:1}.lac-pin.on{opacity:1;color:#10b981}.lac-radius{opacity:.55}.lac-radius.on{opacity:1;color:#10b981}.lac-quick{flex-wrap:wrap;gap:6px;padding:0 12px 8px;display:flex}.lac-quick button{color:inherit;cursor:pointer;background:0 0;border:1px solid #94a3b859;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.lac-quick button:hover:not(:disabled){border-color:#10b981}.lac-quick button:disabled{opacity:.45;cursor:default}.lac-input-row{gap:6px;padding:8px 12px 12px;display:flex}.learning-practice-backdrop{z-index:3000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.learning-practice-card{color:#ffffffe6;--s-bg:transparent;--s-tint:255, 255, 255;--s-text:#ffffffd9;--s-text-muted:#ffffff80;--s-text-strong:#fff;--s-on-accent:#fff;--s-accent-text:#86efac;--s-surface:#ffffff0f;--s-surface-accent:#064e3b;--s-input-bg:#00000040;background:#111827;border-radius:16px;width:min(560px,100% - 32px);max-height:85vh;padding:16px;overflow-y:auto}html[data-theme=light] .learning-practice-card{color:#1e293b;--s-tint:30, 41, 59;--s-text:#1e293b;--s-text-muted:#475569;--s-text-strong:#0f172a;--s-accent-text:#007a4d;--s-surface:#f8fafc;--s-surface-accent:#ecfdf5;--s-input-bg:#fff;background:#fff}.lpr-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.lpr-progress{opacity:.75;font-size:13px;font-weight:700}.lpr-result{flex-direction:column;align-items:center;gap:14px;padding:24px 0;display:flex}.lpr-score{font-size:22px;font-weight:800}.learn-sources{z-index:44;background:var(--bg-panel);width:250px;max-height:60vh;color:var(--text-main);border:1px solid #007a4d80;border-radius:14px;flex-direction:column;display:flex;position:absolute;top:60px;left:16px;overflow:hidden;box-shadow:0 10px 30px #00000059}.learn-sources.collapsed{width:auto}.learn-sources-head{cursor:pointer;width:100%;color:inherit;background:0 0;border:none;align-items:center;gap:6px;padding:9px 11px;font-size:12px;font-weight:800;display:flex}.learn-sources-title{text-align:left;flex:auto}.learn-sources-count{opacity:.6;font-variant-numeric:tabular-nums;font-weight:700}.learn-sources-empty{opacity:.6;padding:4px 12px 12px;font-size:12px}.learn-sources-filters{flex-wrap:wrap;gap:5px;padding:0 11px 8px;display:flex}.learn-chip{cursor:pointer;color:inherit;background:#ffffff14;border:1px solid #0000;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}html[data-theme=light] .learn-chip{background:#0000000d}.learn-chip.on{color:#10b981;border-color:#007a4db3}.learn-sources-list{flex-direction:column;gap:2px;padding:0 6px 8px;display:flex;overflow-y:auto}.learn-source-row{border-radius:8px;align-items:center;gap:6px;padding:2px 5px;display:flex}.learn-source-row:hover{background:#ffffff0f}html[data-theme=light] .learn-source-row:hover{background:#0000000a}.learn-source-row.off{opacity:.42}.learn-source-row.is-origin{opacity:1;background:#10b98138;box-shadow:inset 0 0 0 1px #10b9818c}.learn-source-row input{accent-color:#10b981;cursor:pointer}.learn-source-open{cursor:pointer;min-width:0;color:inherit;text-align:left;background:0 0;border:none;flex:auto;align-items:center;gap:6px;padding:4px 2px;display:flex}.learn-source-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:12px;overflow:hidden}.learn-source-meta{opacity:.5;font-variant-numeric:tabular-nums;font-size:10px}.learn-origin-tip{z-index:60;color:#fff;pointer-events:none;white-space:nowrap;text-overflow:ellipsis;background:#007a4df2;border-radius:8px;align-items:center;gap:5px;max-width:280px;padding:4px 9px;font-size:12px;font-weight:600;display:flex;position:fixed;overflow:hidden;box-shadow:0 6px 18px #0000004d}.learn-drop-toast{z-index:60;color:#fff;pointer-events:none;background:#007a4df2;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:700;position:fixed;bottom:26px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0000004d}.learn-engine{z-index:45;background:var(--bg-panel);width:280px;max-height:56vh;color:var(--text-main);border:1px solid #007a4d8c;border-radius:14px;flex-direction:column;gap:8px;padding:11px 13px;display:flex;position:absolute;bottom:24px;left:16px;overflow-y:auto;box-shadow:0 10px 30px #0006}.learn-engine-head{color:#10b981;align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.learn-engine-title{flex:auto}.learn-engine-sec{flex-direction:column;gap:5px;display:flex}.learn-engine-label{text-transform:uppercase;letter-spacing:.04em;opacity:.55;font-size:10px;font-weight:800}.learn-engine-chips{flex-wrap:wrap;gap:5px;display:flex}.learn-engine-gaps{flex-direction:column;gap:3px;margin:0;padding-left:16px;font-size:12px;line-height:1.4;display:flex}.learn-btn.engine-sug{text-align:left;justify-content:flex-start;width:100%}.engine-sug-label{text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.engine-sug-kind{opacity:.6;background:#007a4d2e;border-radius:999px;flex:none;padding:1px 6px;font-size:10px;font-weight:700}.viewport-root{inset:0 var(--side-reserve-right,0px) 0 var(--side-reserve-left,0px);z-index:0;transition:inset .22s cubic-bezier(.16,1,.3,1);position:fixed}.viewport-split{width:100%;height:100%;display:flex}.viewport-child{min-width:0;min-height:0;position:relative;overflow:hidden}.viewport-divider{background:var(--border-light);z-index:40;flex:none;transition:background .12s}.viewport-divider.vertical{cursor:col-resize;width:6px}.viewport-divider.horizontal{cursor:row-resize;height:6px}.viewport-divider:hover{background:var(--accent)}.viewport-pane{width:100%;height:100%;position:relative;overflow:hidden}.viewport-pane.focused{box-shadow:inset 0 0 0 2px var(--accent)}.viewport-pane>:not(.viewport-grip):not(.viewport-preview):not(.viewport-close-hint){width:auto!important;height:auto!important;position:absolute!important;inset:0!important}.viewport-grip{z-index:50;cursor:crosshair;opacity:.22;background:repeating-linear-gradient(135deg, var(--accent) 0 1.5px, transparent 1.5px 4px);width:18px;height:18px;transition:opacity .12s;position:absolute}.viewport-grip:hover{opacity:.95}.viewport-grip.tr{border-bottom-left-radius:8px;top:0;right:0}.viewport-grip.bl{border-top-right-radius:8px;bottom:0;left:0}.viewport-preview{background:var(--accent);box-shadow:0 0 8px var(--accent);pointer-events:none;z-index:60;position:absolute}.viewport-preview.vertical{width:2px;top:0;bottom:0;transform:translate(-1px)}.viewport-preview.horizontal{height:2px;left:0;right:0;transform:translateY(-1px)}.viewport-close-hint{background:color-mix(in srgb, var(--accent) 22%, transparent);pointer-events:none;z-index:60;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.viewport-close-hint span{background:var(--accent);color:#fff;border-radius:999px;padding:6px 14px;font-size:.85rem;font-weight:600;box-shadow:0 4px 16px #00000040}.viewport-pane-error{background:var(--bg-panel);color:var(--text-main);flex-direction:column;gap:10px;padding:20px;display:flex;overflow:auto}.viewport-pane-error pre{white-space:pre-wrap;word-break:break-word;background:#ff000012;border:1px solid #ff000040;border-radius:8px;margin:0;padding:10px;font-size:.8rem}.viewport-pane-error-stack{opacity:.7;font-size:.72rem}.viewport-pane-error button{border:1px solid var(--border-light);background:var(--accent);color:#fff;cursor:pointer;border-radius:8px;align-self:flex-start;padding:6px 14px}.view-switcher{background:color-mix(in srgb, var(--bg-panel) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-light);z-index:1400;border-radius:12px;gap:6px;padding:6px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #0000002e}.view-chip{cursor:pointer;max-width:170px;color:var(--text-main);border-radius:8px;align-items:center;gap:6px;padding:4px 6px 4px 9px;font-size:.8rem;transition:background .12s;display:flex}.view-chip:hover{background:var(--border-light)}.view-chip.active{background:var(--accent);color:#fff}.view-chip-icon{font-size:.95rem;line-height:1}.view-chip-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.view-chip-close{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:4px;padding:0 2px;font-size:1rem;line-height:1}.view-chip-close:hover{opacity:1;background:#00000026}.floating-today-root{left:var(--x);top:var(--y);z-index:9999;-webkit-user-select:none;user-select:none;font-family:Outfit,Inter,sans-serif;position:fixed}.floating-trigger{-webkit-backdrop-filter:blur(12px);cursor:grab;color:#fff;background:#1e1e23d9;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;padding:0;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),box-shadow .2s;display:flex;overflow:visible;box-shadow:0 8px 32px #0006,inset 0 0 0 1px #ffffff0d}.floating-trigger:active{cursor:grabbing;transform:scale(.95)}.floating-trigger:hover{background:#28282de6;transform:scale(1.05);box-shadow:0 12px 40px #00000080,inset 0 0 0 1px #ffffff1a}.trigger-content{justify-content:center;align-items:center;display:flex;position:relative}.trigger-badge{background:var(--accent-color,#ff4757);color:#fff;border:2px solid #1a1a1e;border-radius:10px;padding:2px 6px;font-size:10px;font-weight:700;position:absolute;top:-12px;right:-12px;box-shadow:0 2px 8px #0000004d}.progress-ring{pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-90deg)}.progress-ring-fill{transition:stroke-dashoffset .6s cubic-bezier(.4,0,.2,1)}.floating-panel{width:var(--w);height:var(--h);-webkit-backdrop-filter:blur(20px);transform-origin:100% 100%;background:#19191cf2;border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;animation:.3s cubic-bezier(.34,1.56,.64,1) panel-appear;display:flex;overflow:hidden;box-shadow:0 20px 60px #0009}@keyframes panel-appear{0%{opacity:0;transform:scale(.9)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.panel-header{cursor:grab;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:16px;display:flex}.panel-header:active{cursor:grabbing}.panel-title{color:#fff;align-items:center;gap:10px;font-size:.95rem;font-weight:600;display:flex}.panel-header-actions{gap:8px;display:flex}.panel-header-actions button{color:#fff9;cursor:pointer;background:#ffffff0d;border:none;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex}.panel-header-actions button:hover{color:#fff;background:#ffffff1a}.panel-content{flex:1;padding:12px;overflow-y:auto}.panel-empty{color:#fff6;flex-direction:column;justify-content:center;align-items:center;gap:10px;height:100%;display:flex}.empty-icon{font-size:32px}.panel-section{margin-bottom:20px}.section-header{text-transform:uppercase;letter-spacing:.05em;color:#fff6;margin-bottom:8px;padding-left:4px;font-size:.75rem;font-weight:700}.panel-item{border:1px solid #0000;border-radius:14px;align-items:flex-start;gap:12px;padding:12px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.panel-item:hover{background:#ffffff0a;border-color:#ffffff0d;transform:translate(4px)}.panel-check{cursor:pointer;color:var(--text-muted);background:0 0;border:none;margin-top:1px;padding:0;transition:transform .2s cubic-bezier(.175,.885,.32,1.275)}.panel-check:hover{transform:scale(1.2)}.panel-item-body{flex:1;min-width:0}.panel-item-title{color:#eee;white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin-bottom:2px;font-size:.92rem;transition:color .3s;display:inline-block;position:relative;overflow:hidden}.panel-item.done .panel-item-title{color:#ffffff40}.panel-item.done .panel-item-title:after{content:"";background:var(--item-color,var(--accent-color));transform-origin:0;width:100%;height:2px;box-shadow:0 0 8px var(--item-color,var(--accent-color));border-radius:2px;animation:.4s cubic-bezier(.65,0,.35,1) forwards strikethrough;position:absolute;top:55%;left:0}@keyframes strikethrough{0%{opacity:0;transform:scaleX(0)}to{opacity:.6;transform:scaleX(1)}}.panel-item-meta{color:#ffffff59;align-items:center;gap:8px;font-size:.72rem;display:flex}.item-time{color:var(--item-color,#fff);background:#ffffff0d;border-radius:4px;padding:1px 4px;font-weight:600}.item-overdue{color:#ff4757;text-transform:uppercase;font-size:.65rem;font-weight:700}.item-time{color:var(--item-color,#fff);font-weight:600}.habit-icon{margin-right:4px}.panel-footer{background:#0000001a;border-top:1px solid #ffffff0d;padding:12px 16px;position:relative}.panel-progress-bar{background:#ffffff0d;border-radius:2px;height:4px;margin-bottom:8px;overflow:hidden}.progress-fill{background:var(--accent-color,#ff4757);height:100%;box-shadow:0 0 8px var(--accent-color);transition:width .6s cubic-bezier(.4,0,.2,1)}.panel-stats{color:#ffffff80;font-size:.75rem}.resize-handle{cursor:nwse-resize;color:#fff3;justify-content:center;align-items:center;width:20px;height:20px;transition:color .2s;display:flex;position:absolute;bottom:4px;right:4px}.resize-handle:hover{color:#ffffff80}.floating-pin{color:#ffffffb3;cursor:pointer;opacity:0;z-index:2;background:#141418f2;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:opacity .18s,transform .18s,color .18s;display:flex;position:absolute;top:-6px;left:-6px}.floating-trigger:hover .floating-pin,.floating-trigger.docked .floating-pin{opacity:1}.floating-pin:hover{color:var(--primary,#d94e1f);transform:scale(1.1)}.floating-trigger.docked.dock-right{border-top-right-radius:0;border-bottom-right-radius:0;box-shadow:-6px 8px 24px #0006}.floating-trigger.docked.dock-right .floating-pin{left:auto;right:-6px}.floating-trigger.docked.dock-left{border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:6px 8px 24px #0006}.floating-today-root.side-left .floating-panel{transform-origin:0 100%}.floating-today-root.side-right .floating-panel{transform-origin:100% 100%}.ai-panel{--lh-solid:#9fd3b0;--lh-gap:#f2a182;--lh-fg:var(--color-bg);--lh-dim:color-mix(in srgb, var(--color-bg) 55%, transparent);--lh-line:color-mix(in srgb, var(--color-bg) 12%, transparent);--lh-fill:color-mix(in srgb, var(--color-bg) 4%, transparent);--lh-fill-hover:color-mix(in srgb, var(--color-bg) 9%, transparent)}.lh-view{flex-direction:column;flex:1;min-height:0;display:flex}.lh-body{min-height:0;padding:var(--space-4);flex:1;overflow:auto}.lh-foot{padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--lh-line);flex:none}.lh-foot-row{gap:var(--space-2);display:flex}.lh-head{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-1);flex:none;display:flex}.lh-head-main{flex:1;min-width:0}.lh-head-title{font-size:var(--text-lg);font-weight:600}.lh-sec{align-items:center;gap:var(--space-2);margin:var(--space-6) 0 var(--space-3);display:flex}.lh-rule{background:var(--lh-line);flex:1;height:1px}.lh-list{gap:var(--space-2);flex-direction:column;display:flex}.lh-gap{margin-top:var(--space-2)}.lh-mt{margin-top:var(--space-5);display:block}.lh-dim{color:var(--lh-dim)}.lh-primary{cursor:pointer;border-radius:var(--radius-md);background:var(--color-accent);width:100%;height:40px;color:var(--color-on-accent);font-family:var(--font-sans);font-size:var(--text-md);justify-content:center;align-items:center;gap:var(--space-2);border:0;font-weight:600;display:flex}.lh-primary:hover:not(:disabled){background:var(--color-accent-hover)}.lh-primary:disabled{opacity:.45;cursor:default}.lh-primary.lh-invert{background:var(--color-bg);color:var(--color-ink);flex:1}.lh-ghost{height:32px;padding:0 var(--space-3);cursor:pointer;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb, var(--color-bg) 18%, transparent);color:var(--lh-fg);font-family:var(--font-sans);font-size:var(--text-sm);background:0 0;flex:none}.lh-ghost:hover{background:var(--lh-fill-hover)}.lh-ask{align-items:center;gap:var(--space-2);height:40px;font-size:var(--text-md);display:flex}.lh-back{cursor:pointer;border:1px solid color-mix(in srgb, var(--color-bg) 16%, transparent);width:30px;height:30px;color:var(--lh-fg);border-radius:var(--radius-sm);background:0 0;flex:none;justify-content:center;align-items:center;display:flex}.lh-back:hover{background:var(--lh-fill-hover)}.lh-link{cursor:pointer;font-family:var(--font-mono);letter-spacing:var(--track-meta);color:var(--color-accent);text-transform:uppercase;background:0 0;border:0;padding:0;font-size:9.5px}.lh-due{border:1px solid color-mix(in srgb, var(--color-accent) 50%, transparent);background:color-mix(in srgb, var(--color-accent) 10%, transparent);border-radius:var(--radius-lg);padding:var(--space-4)}.lh-due-head{align-items:center;gap:var(--space-2);color:var(--lh-gap);display:flex}.lh-dot-pulse{border-radius:var(--radius-pill);background:var(--color-accent);width:7px;height:7px;animation:2s ease-in-out infinite lhPulse}@keyframes lhPulse{0%,to{opacity:1}50%{opacity:.35}}.lh-due-title{font-size:var(--text-xl);margin-top:var(--space-2);font-weight:600}.lh-due-list{gap:var(--space-1);margin:var(--space-3) 0;flex-direction:column;display:flex}.lh-due-row{align-items:center;gap:var(--space-3);padding:var(--space-2);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-ink) 35%, transparent);display:flex}.lh-due-name{min-width:0;font-size:var(--text-md);flex:1}.lh-newset{align-items:center;gap:var(--space-3);width:100%;margin-top:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;text-align:left;border-radius:var(--radius-md);border:1px dashed color-mix(in srgb, var(--color-bg) 22%, transparent);color:var(--lh-fg);font-family:var(--font-sans);background:0 0;display:flex}.lh-newset:hover{background:var(--lh-fill);border-color:color-mix(in srgb, var(--color-bg) 40%, transparent)}.lh-newset-icon{border-radius:var(--radius-sm);background:var(--lh-fill-hover);flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.lh-newset-title{font-size:var(--text-md);font-weight:600;display:block}.lh-newset .u-meta{margin-top:3px;display:block}.lh-mastery{border:1px solid var(--lh-line);background:var(--lh-fill);border-radius:var(--radius-md);padding:var(--space-3)}.lh-mastery-head{align-items:center;gap:var(--space-2);display:flex}.lh-mastery-name{min-width:0;font-size:var(--text-md);flex:1;font-weight:500}.lh-pct{font-family:var(--font-mono);font-size:var(--text-md)}.lh-bar{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-bg) 10%, transparent);height:6px;margin-top:var(--space-2);overflow:hidden}.lh-bar-fill{border-radius:var(--radius-pill);height:100%}.lh-mastery-foot{align-items:center;gap:var(--space-2);margin-top:var(--space-2);display:flex}.lh-chip{font-family:var(--font-mono);letter-spacing:.08em;border-radius:var(--radius-sm);white-space:nowrap;border:1px solid;flex:none;padding:3px 6px;font-size:9.5px}.band-solid{color:var(--lh-solid)}.band-fading{color:var(--lh-gap)}.band-gap{color:var(--color-accent)}.band-unseen{color:var(--lh-dim)}.lh-bar-fill.band-solid{background:var(--lh-solid)}.lh-bar-fill.band-fading{background:var(--lh-gap)}.lh-bar-fill.band-gap{background:var(--color-accent)}.lh-bar-fill.band-unseen{background:var(--lh-dim)}.lh-tree{border:1px solid var(--lh-line);background:var(--lh-fill);border-radius:var(--radius-lg);padding:var(--space-3)}.lh-tree-row{align-items:center;gap:var(--space-3);height:34px;display:flex}.lh-tree-name{font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lh-tree-dot{border-radius:var(--radius-pill);background:currentColor;border:1.5px solid;flex:none;width:9px;height:9px}.lh-tree-dot.band-unseen{background:0 0}.lh-legend{gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--lh-line);display:flex}.lh-legend>span{align-items:center;gap:var(--space-2);font-family:var(--font-mono);letter-spacing:.08em;color:var(--lh-dim);text-transform:uppercase;font-size:9px;display:flex}.lh-session{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--lh-fill);border:1px solid var(--lh-line);display:flex}.lh-score{border-radius:var(--radius-sm);background:var(--lh-fill-hover);width:34px;height:34px;font-family:var(--font-mono);font-size:var(--text-xs);flex:none;justify-content:center;align-items:center;display:flex}.lh-session-main{flex:1;min-width:0}.lh-session-name{font-size:var(--text-md);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.lh-radio{align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;width:100%;padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--lh-line);background:var(--lh-fill);color:var(--lh-fg);font-family:var(--font-sans);display:flex}.lh-radio.on{border-color:var(--color-accent);background:var(--color-accent-wash)}.lh-radio:disabled{opacity:.45;cursor:default}.lh-radio-ring{border-radius:var(--radius-pill);border:1.5px solid color-mix(in srgb, var(--color-bg) 30%, transparent);flex:none;justify-content:center;align-items:center;width:16px;height:16px;display:flex}.lh-radio.on .lh-radio-ring{border-color:var(--color-accent)}.lh-radio-dot{border-radius:var(--radius-pill);background:0 0;width:8px;height:8px}.lh-radio.on .lh-radio-dot{background:var(--color-accent)}.lh-radio-name{font-size:var(--text-md);font-weight:500;display:block}.lh-radio .u-meta{margin-top:3px;display:block}.lh-chips{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.lh-toggle{cursor:pointer;border-radius:var(--radius-pill);border:1px solid color-mix(in srgb, var(--color-bg) 16%, transparent);height:34px;color:var(--lh-dim);font-family:var(--font-sans);font-size:var(--text-sm);background:0 0;padding:0 13px;font-weight:500}.lh-toggle.on{border-color:var(--color-accent);background:var(--color-accent-wash);color:var(--lh-fg)}.lh-depths{gap:var(--space-2);margin-top:var(--space-2);display:flex}.lh-depth{padding:11px var(--space-2);cursor:pointer;border-radius:var(--radius-md);border:1px solid var(--lh-line);background:var(--lh-fill);color:var(--lh-fg);font-family:var(--font-sans);flex:1}.lh-depth.on{border-color:var(--color-accent);background:var(--color-accent-wash)}.lh-depth-n{font-family:var(--font-mono);font-size:var(--text-lg);display:block}.lh-depth .u-meta{margin-top:var(--space-1);display:block}.lh-tutor{margin-top:var(--space-5);border:1px solid var(--lh-line);background:var(--lh-fill);border-radius:var(--radius-md);padding:var(--space-3)}.lh-tutor-head{align-items:center;gap:var(--space-2);color:var(--lh-solid);display:flex}.lh-tutor-head .u-meta{color:var(--lh-dim)}.lh-tutor-text{font-size:var(--text-sm);line-height:var(--leading-body);color:color-mix(in srgb, var(--color-bg) 78%, transparent);margin-top:var(--space-2)}.lh-error{margin-top:var(--space-4);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--color-danger) 55%, transparent);background:color-mix(in srgb, var(--color-danger) 14%, transparent);font-size:var(--text-sm)}.lh-spin{animation:.7s linear infinite lhSpin}@keyframes lhSpin{to{transform:rotate(360deg)}}.lh-dots{gap:var(--space-1);padding:var(--space-3) var(--space-4) 0;flex:none;display:flex}.lh-tick{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-bg) 12%, transparent);flex:1;height:4px}.lh-tick.done{background:var(--lh-solid)}.lh-tick.now{background:var(--color-accent)}.lh-question{font-size:var(--text-xl);margin-top:var(--space-3);text-wrap:pretty;font-weight:600;line-height:1.35}.lh-reveal{margin-top:var(--space-4);border:1px solid color-mix(in srgb, var(--color-bg) 14%, transparent);background:color-mix(in srgb, var(--color-bg) 5%, transparent);border-radius:var(--radius-lg);padding:var(--space-5);flex-direction:column;justify-content:center;min-height:132px;display:flex}.lh-reveal-back{font-size:var(--text-lg);line-height:var(--leading-body)}.lh-reveal-btn{cursor:pointer;border-radius:var(--radius-md);border:1px dashed color-mix(in srgb, var(--color-bg) 30%, transparent);height:38px;color:var(--lh-dim);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);text-transform:uppercase;background:0 0;align-self:center;padding:0 18px}.lh-reveal-btn:hover{background:var(--lh-fill-hover);color:var(--lh-fg)}.lh-grade{gap:var(--space-2);margin-top:var(--space-3);display:flex}.lh-grade button{cursor:pointer;border-radius:var(--radius-md);height:40px;color:var(--lh-fg);font-family:var(--font-sans);font-size:var(--text-md);flex:1;font-weight:500}.lh-grade-miss{border:1px solid color-mix(in srgb, var(--color-accent) 60%, transparent);background:color-mix(in srgb, var(--color-accent) 12%, transparent)}.lh-grade-miss:hover{background:color-mix(in srgb, var(--color-accent) 24%, transparent)}.lh-grade-got{border:1px solid color-mix(in srgb, var(--lh-solid) 55%, transparent);background:color-mix(in srgb, var(--lh-solid) 14%, transparent)}.lh-grade-got:hover{background:color-mix(in srgb, var(--lh-solid) 26%, transparent)}.lh-result-head{align-items:center;gap:var(--space-4);display:flex}.lh-ring{border-radius:var(--radius-pill);background:conic-gradient(var(--lh-solid) var(--turn), color-mix(in srgb, var(--color-bg) 12%, transparent) 0);flex:none;justify-content:center;align-items:center;width:76px;height:76px;display:flex}.lh-ring-in{border-radius:var(--radius-pill);background:var(--color-ink);width:60px;height:60px;font-family:var(--font-mono);font-size:var(--text-lg);justify-content:center;align-items:center;display:flex}.lh-result-title{font-size:var(--text-xl);font-weight:600}.lh-stats{gap:var(--space-2);margin-top:var(--space-5);display:flex}.lh-stat{border:1px solid var(--lh-line);background:var(--lh-fill);border-radius:var(--radius-md);padding:var(--space-3);flex:1}.lh-stat-v{font-family:var(--font-mono);margin-top:var(--space-2);color:var(--lh-solid);font-size:17px}.lh-break{align-items:center;gap:var(--space-3);padding:11px var(--space-3);border-radius:var(--radius-md);border:1px solid var(--lh-line);background:var(--lh-fill);display:flex}.lh-break-name{min-width:0;font-size:var(--text-md);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.lh-empty{justify-content:center;align-items:center;gap:var(--space-2);text-align:center;padding:var(--space-10) var(--space-4);color:var(--lh-dim);flex-direction:column;display:flex}.lh-empty h4{font-size:var(--text-lg);color:var(--lh-fg);margin:0}.lh-empty p{font-size:var(--text-md);line-height:var(--leading-body);margin:0}.floating-ai-root{--ai-accent-rgb:226, 97, 42;--ai-fg-rgb:255, 252, 246;left:var(--x,20px);top:var(--y,20px);z-index:9999;pointer-events:none;position:fixed}.floating-ai-root *{pointer-events:auto}.ai-trigger{background:linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-hover) 100%);width:56px;height:56px;color:var(--color-bg);box-shadow:0 4px 15px rgba(var(--ai-accent-rgb), .4);cursor:grab;border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),box-shadow .2s;display:flex;position:relative;overflow:visible}.ai-trigger:hover{box-shadow:0 6px 20px rgba(var(--ai-accent-rgb), .6);transform:scale(1.1)}.ai-trigger:active{cursor:grabbing}.ai-trigger svg{filter:drop-shadow(0 2px 4px #0003)}.floating-ai-root .floating-pin{border:1px solid rgba(var(--ai-fg-rgb), .15);width:22px;height:22px;color:rgba(var(--ai-fg-rgb), .85);cursor:pointer;opacity:0;z-index:2;background:#141418f2;border-radius:50%;justify-content:center;align-items:center;transition:opacity .18s,transform .18s;display:flex;position:absolute;top:-6px;left:-6px}.ai-trigger:hover .floating-pin,.ai-trigger.docked .floating-pin{opacity:1}.floating-ai-root .floating-pin:hover{transform:scale(1.1)}.ai-trigger.docked.dock-right{border-top-right-radius:0;border-bottom-right-radius:0}.ai-trigger.docked.dock-right .floating-pin{left:auto;right:-6px}.ai-trigger.docked.dock-left{border-top-left-radius:0;border-bottom-left-radius:0}.floating-ai-root.side-left .ai-panel{transform-origin:0 100%}.floating-ai-root.side-right .ai-panel{transform-origin:100% 100%}.floating-ai-root.is-side{top:0;bottom:0;left:auto}.floating-ai-root.is-side.dock-right{left:auto;right:0}.floating-ai-root.is-side.dock-left{left:0;right:auto}.floating-ai-root.is-side .ai-panel{border-top:none;border-bottom:none;border-radius:0;height:100vh;animation:.22s cubic-bezier(.16,1,.3,1) panel-slide-in}.floating-ai-root.is-side.dock-right .ai-panel{border-right:none}.floating-ai-root.is-side.dock-left .ai-panel{border-left:none}@keyframes panel-slide-in{0%{opacity:.4;transform:translate(12px)}to{opacity:1;transform:none}}.trigger-glow{background:linear-gradient(135deg, var(--color-accent), var(--color-accent-hover));opacity:.3;filter:blur(8px);z-index:-1;border-radius:50%;animation:2s ease-in-out infinite pulse-glow;position:absolute;inset:-4px}@keyframes pulse-glow{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.4;transform:scale(1.15)}}.ai-panel{width:var(--w,380px);height:var(--h,550px);font-family:var(--font-sans);color:var(--color-bg);background:var(--color-ink);-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px solid rgba(var(--ai-fg-rgb), .1);transform-origin:0 0;border-radius:20px;flex-direction:column;animation:.3s cubic-bezier(.16,1,.3,1) panel-appear;display:flex;overflow:hidden;box-shadow:0 20px 50px #0006}.ai-header{background:rgba(var(--ai-fg-rgb), .03);border-bottom:1px solid rgba(var(--ai-fg-rgb), .08);cursor:grab;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.ai-header:active{cursor:grabbing}.header-left{align-items:center;gap:10px;display:flex}.ai-icon-bg{background:linear-gradient(135deg, var(--color-accent), var(--color-accent-hover));width:32px;height:32px;color:var(--color-bg);border-radius:8px;justify-content:center;align-items:center;display:flex}.header-title{color:var(--color-bg);letter-spacing:-.01em;font-size:15px;font-weight:600}.header-actions{align-items:center;gap:4px;display:flex}.header-btn{width:32px;height:32px;color:rgba(var(--ai-fg-rgb), .6);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.header-btn:hover{background:rgba(var(--ai-fg-rgb), .1);color:var(--color-bg)}.ai-history{flex:1;padding:12px;overflow-y:auto}.history-item{background:rgba(var(--ai-fg-rgb), .03);cursor:pointer;border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;margin-bottom:8px;padding:12px 14px;transition:all .2s;display:flex}.history-item:hover{background:rgba(var(--ai-fg-rgb), .06);border-color:rgba(var(--ai-fg-rgb), .1)}.history-item.active{background:rgba(var(--ai-accent-rgb), .15);border-color:rgba(var(--ai-accent-rgb), .3)}.history-info{flex:1;min-width:0}.history-name{color:var(--color-bg);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.history-date{color:rgba(var(--ai-fg-rgb), .4);margin-top:2px;font-size:11px}.history-delete{opacity:0;transition:opacity .2s}.history-item:hover .history-delete{opacity:1}.ai-messages-container{flex-direction:column;flex:1;display:flex;overflow:hidden}.ai-messages-list{flex-direction:column;flex:1;gap:16px;padding:16px;display:flex;overflow-y:auto}.message{flex-direction:column;max-width:85%;display:flex}.message.user{align-self:flex-end}.message.assistant{align-self:flex-start}.msg-bubble{word-wrap:break-word;border-radius:16px;padding:10px 14px;font-size:14px;line-height:1.5}.msg-bubble p{margin:0 0 10px}.msg-bubble p:last-child{margin-bottom:0}.msg-bubble ul,.msg-bubble ol{margin:8px 0;padding-left:20px}.msg-bubble li{margin-bottom:4px}.msg-bubble h1,.msg-bubble h2,.msg-bubble h3{color:var(--color-bg);margin:12px 0 6px;font-size:1.1em;font-weight:600}.msg-bubble h1:first-child,.msg-bubble h2:first-child,.msg-bubble h3:first-child{margin-top:0}.message.user .msg-bubble{background:var(--color-accent);color:var(--color-bg);box-shadow:0 4px 12px rgba(var(--ai-accent-rgb), .2);border-bottom-right-radius:4px}.message.assistant .msg-bubble{background:rgba(var(--ai-fg-rgb), .08);color:var(--color-bg);border:1px solid rgba(var(--ai-fg-rgb), .05);border-bottom-left-radius:4px}.msg-time{color:rgba(var(--ai-fg-rgb), .3);align-self:flex-end;margin-top:4px;font-size:10px}.message.assistant .msg-time{align-self:flex-start}.ai-commands{background:rgba(var(--ai-fg-rgb), .02);padding:6px 12px 0}.commands-toggle{width:100%;color:rgba(var(--ai-fg-rgb), .45);letter-spacing:.03em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:4px 2px;font-size:11px;font-weight:600;transition:color .15s;display:flex}.commands-toggle:hover{color:rgba(var(--ai-fg-rgb), .7)}.commands-toggle-label{text-align:left;flex:1}.commands-list{flex-wrap:wrap;gap:6px;padding:6px 0 2px;display:flex}.command-chip{background:rgba(var(--ai-accent-rgb), .12);border:1px solid rgba(var(--ai-accent-rgb), .3);color:var(--color-bg);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:500;transition:background .15s,border-color .15s,transform .1s;display:inline-flex}.command-chip:hover:not(:disabled){background:rgba(var(--ai-accent-rgb), .22);border-color:rgba(var(--ai-accent-rgb), .55)}.command-chip:active:not(:disabled){transform:scale(.96)}.command-chip:disabled{opacity:.45;cursor:default}.command-chip.active{background:rgba(var(--ai-accent-rgb), .28);border-color:rgba(var(--ai-accent-rgb), .6)}.command-wrap{display:inline-flex;position:relative}.command-targets{z-index:20;border:1px solid rgba(var(--ai-accent-rgb), .35);background:#1c1c28;border-radius:10px;flex-direction:column;gap:2px;min-width:180px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 6px);left:0;box-shadow:0 8px 24px #00000073}.command-target{color:#e5e7f0;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 9px;font-size:12.5px;display:flex}.command-target:hover:not(:disabled){background:rgba(var(--ai-accent-rgb), .2)}.command-target:disabled{opacity:.4;cursor:default}.target-reason{color:#9ca3b8;font-size:10.5px}.ai-input-area{background:rgba(var(--ai-fg-rgb), .02);border-top:1px solid rgba(var(--ai-fg-rgb), .08);padding:16px}.input-wrapper{background:rgba(var(--ai-fg-rgb), .05);border:1px solid rgba(var(--ai-fg-rgb), .1);border-radius:12px;align-items:flex-end;gap:8px;padding:8px 12px;transition:border-color .2s,background .2s;display:flex}.input-wrapper:focus-within{border-color:rgba(var(--ai-accent-rgb), .5);background:rgba(var(--ai-fg-rgb), .08)}.ai-textarea{color:var(--color-bg);resize:none;background:0 0;border:none;outline:none;flex:1;max-height:120px;padding:4px 0;font-family:inherit;font-size:14px;line-height:1.4}.send-btn{background:var(--color-accent);width:32px;height:32px;color:var(--color-bg);cursor:pointer;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.send-btn:hover{background:#4f46e5;transform:translateY(-1px)}.send-btn:disabled{background:rgba(var(--ai-fg-rgb), .1);color:rgba(var(--ai-fg-rgb), .3);cursor:not-allowed;transform:none}.typing-indicator{gap:4px;padding:4px 0;display:flex}.dot{background:rgba(var(--ai-fg-rgb), .4);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite dot-jump}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes dot-jump{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:0 0}.custom-scrollbar::-webkit-scrollbar-thumb{background:rgba(var(--ai-fg-rgb), .1);border-radius:3px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:rgba(var(--ai-fg-rgb), .2)}.resize-handle{z-index:10;position:absolute}.resize-handle.res-e{cursor:e-resize;width:6px;height:100%;top:0;right:0}.resize-handle.res-s{cursor:s-resize;width:100%;height:6px;bottom:0;left:0}.resize-handle.res-w{cursor:w-resize;width:6px;height:100%;top:0;left:0}.resize-handle.res-n{cursor:n-resize;width:100%;height:6px;top:0;left:0}.resize-handle.res-se{cursor:se-resize;width:20px;height:20px;color:rgba(var(--ai-fg-rgb), .2);justify-content:center;align-items:center;display:flex;bottom:0;right:0}.resize-handle.res-sw{cursor:sw-resize;width:12px;height:12px;bottom:0;left:0}.resize-handle.res-ne{cursor:ne-resize;width:12px;height:12px;top:0;right:0}.resize-handle.res-nw{cursor:nw-resize;width:12px;height:12px;top:0;left:0}.resize-handle:hover{background:rgba(var(--ai-accent-rgb), .1)}.empty-chat{text-align:center;color:rgba(var(--ai-fg-rgb), .4);flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.empty-icon{background:linear-gradient(135deg, var(--color-accent), var(--color-accent-hover));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:16px;font-size:40px}.empty-chat h3{color:var(--color-bg);margin-bottom:8px;font-size:18px}.empty-chat p{font-size:13px;line-height:1.5}.task-dest-picker{border:1px solid rgba(var(--ai-fg-rgb), .12);background:rgba(var(--ai-fg-rgb), .05);border-radius:12px;flex-shrink:0;margin:0 12px 8px;overflow:hidden}.task-dest-picker .picker-head{justify-content:space-between;align-items:center;padding:8px 10px 4px 12px;display:flex}.task-dest-picker .picker-title{color:rgba(var(--ai-fg-rgb), .85);font-size:12px;font-weight:600}.task-dest-picker .picker-list{max-height:180px;padding:0 6px 4px;overflow-y:auto}.task-dest-picker .picker-group{text-transform:uppercase;letter-spacing:.5px;color:rgba(var(--ai-fg-rgb), .4);padding:6px 8px 2px;font-size:10px}.task-dest-picker .picker-empty{color:rgba(var(--ai-fg-rgb), .5);padding:8px;font-size:12px}.task-dest-picker .picker-row{width:100%;color:rgba(var(--ai-fg-rgb), .9);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:7px 8px;font-size:13px;display:flex}.task-dest-picker .picker-row:hover:not(:disabled){background:rgba(var(--ai-fg-rgb), .08)}.task-dest-picker .picker-row:disabled{opacity:.5;cursor:default}.task-dest-picker .picker-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.task-dest-picker .picker-count{color:rgba(var(--ai-fg-rgb), .4);flex-shrink:0;font-size:11px}.task-dest-picker .picker-new{border-top:1px solid rgba(var(--ai-fg-rgb), .08);color:#a5b4fc;border-radius:0;margin:0}.task-dest-picker .picker-new-form{border-top:1px solid rgba(var(--ai-fg-rgb), .08);gap:6px;padding:8px;display:flex}.task-dest-picker .picker-new-input{border:1px solid rgba(var(--ai-fg-rgb), .15);min-width:0;color:var(--color-bg);background:#00000040;border-radius:8px;flex:1;padding:6px 8px;font-size:13px}.task-dest-picker .picker-new-create{background:linear-gradient(135deg, var(--color-accent), var(--color-accent-hover));color:var(--color-bg);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:600}.task-dest-picker .picker-new-create:disabled{opacity:.5;cursor:default}.learn-game-card{--s-bg:transparent;--s-tint:255, 255, 255;--s-text:rgba(var(--ai-fg-rgb), .85);--s-text-muted:rgba(var(--ai-fg-rgb), .5);--s-text-strong:var(--color-bg);--s-on-accent:var(--color-bg);--s-accent-text:var(--color-bg);--s-surface:rgba(var(--ai-fg-rgb), .06);--s-surface-accent:#1e1b4b;--s-input-bg:#00000040;padding-bottom:8px}html[data-theme=light] .learn-game-card{--s-tint:30, 41, 59;--s-text:#1e293b;--s-text-muted:#475569;--s-text-strong:#0f172a;--s-accent-text:#4338ca;--s-surface:var(--color-bg);--s-surface-accent:#eef2ff;--s-input-bg:var(--color-bg)}.learn-game-card .quiz-engine-card{padding:4px 12px 8px}.learn-game-card .learn-loading{padding:8px 12px}.task-review .picker-list{max-height:240px}.review-row{border-radius:8px;padding:4px 4px 4px 2px}.review-row.excluded .review-title,.review-row.excluded .review-date,.review-row.excluded .review-desc{opacity:.45;text-decoration:line-through}.review-main{align-items:center;gap:6px;display:flex}.review-check{accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.review-title{min-width:0;color:var(--color-bg);background:0 0;border:1px solid #0000;border-radius:7px;flex:1;padding:5px 7px;font-size:12.5px}.review-title:hover:not(:disabled),.review-title:focus{border-color:rgba(var(--ai-fg-rgb), .15);background:#00000040;outline:none}.review-date{border:1px solid rgba(var(--ai-fg-rgb), .12);width:112px;color:rgba(var(--ai-fg-rgb), .85);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#00000040;border-radius:7px;flex-shrink:0;padding:4px 5px;font-size:11px}.review-expand{flex-shrink:0}.review-desc{border:1px solid rgba(var(--ai-fg-rgb), .12);width:100%;color:var(--color-bg);resize:vertical;background:#00000040;border-radius:8px;margin-top:4px;padding:6px 8px;font-size:12px}.review-actions{align-items:center}.review-actions .review-cancel{width:auto;color:rgba(var(--ai-fg-rgb), .6);flex:none;font-size:12px}.review-actions .picker-new-create{flex:1}.review-delete{color:rgba(var(--ai-fg-rgb), .4);flex-shrink:0}.review-delete:hover{color:#f87171;background:#f871711f}.ai-mode-switch{gap:var(--space-1);margin:var(--space-3) var(--space-4) var(--space-2);background:rgba(var(--ai-fg-rgb), .06);border-radius:var(--radius-md);flex:none;padding:3px;display:flex}.ai-mode{cursor:pointer;height:34px;color:rgba(var(--ai-fg-rgb), .6);font-family:var(--font-sans);font-size:var(--text-md);background:0 0;border:0;border-radius:11px;flex:1;justify-content:center;align-items:center;gap:7px;font-weight:500;display:flex}.ai-mode:hover:not(.active){color:var(--color-bg)}.ai-mode.active{background:var(--color-bg);color:var(--color-ink)}.ai-mode-badge{font-family:var(--font-mono);letter-spacing:.04em;background:var(--color-accent);color:var(--color-on-accent);border-radius:7px;padding:2px 5px;font-size:9px}.ai-context-strip{align-items:center;gap:var(--space-2);margin:0 var(--space-4) var(--space-1);padding:var(--space-2) var(--space-3);border:1px solid rgba(var(--ai-fg-rgb), .1);border-radius:var(--radius-md);background:rgba(var(--ai-fg-rgb), .035);color:var(--color-accent);flex:none;display:flex}.ai-context-main{min-width:0;color:var(--color-bg);flex:1}.ai-context-strip .u-meta{color:rgba(var(--ai-fg-rgb), .45)}.ai-context-name{font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-weight:500;overflow:hidden}.ai-context-words{font-family:var(--font-mono);letter-spacing:.08em;color:rgba(var(--ai-fg-rgb), .55);border:1px solid rgba(var(--ai-fg-rgb), .14);border-radius:var(--radius-sm);flex:none;padding:4px 7px;font-size:9.5px}:root{--aa-accent:var(--accent,#d94e1f)}.app-auth-screen{z-index:2000;background:radial-gradient(circle,#17201c12 1.2px,#0000 1.3px) 0 0/22px 22px,radial-gradient(1200px 600px at 15% -10%,#d94e1f1a,#0000 60%),#f4efe3;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.app-auth-card{background:var(--bg-panel,#fff);border:1px solid var(--border-light,#e2e8f0);border-radius:20px;width:min(420px,100%);padding:28px;box-shadow:0 24px 60px #0f172a2e}.app-auth-brand{text-align:center;margin-bottom:22px}.app-auth-logo{color:#030402;background:0 0;justify-content:center;align-items:center;margin-bottom:12px;display:inline-flex}.app-auth-brand h1{color:var(--text-main,#1e293b);margin:0 0 4px;font-size:21px;font-weight:700}.app-auth-brand p{color:var(--text-muted,#64748b);margin:0;font-size:13px}.app-auth-social{flex-direction:column;gap:9px;display:flex}.app-auth-social-btn{border:1px solid var(--border-light,#e2e8f0);background:var(--bg-panel,#fff);width:100%;color:var(--text-main,#1e293b);cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:10px;padding:11px 14px;font-size:13.5px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.app-auth-social-btn:hover:not(:disabled){background:var(--bg-app,#f4f7fb);border-color:var(--aa-accent)}.app-auth-social-btn:disabled{opacity:.6;cursor:default}.app-auth-divider{color:var(--text-muted,#64748b);align-items:center;gap:10px;margin:16px 0;display:flex}.app-auth-divider:before,.app-auth-divider:after{content:"";background:var(--border-light,#e2e8f0);flex:1;height:1px}.app-auth-divider span{text-transform:uppercase;letter-spacing:.06em;font-size:11px}.app-auth-tabs{gap:6px;margin-bottom:14px;display:flex}.app-auth-tabs button{border:1px solid var(--border-light,#e2e8f0);color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.app-auth-tabs button.active{background:var(--aa-accent);color:#fff;border-color:var(--aa-accent)}.app-auth-form{flex-direction:column;gap:11px;display:flex}.app-auth-field{flex-direction:column;gap:5px;display:flex}.app-auth-field-label{color:var(--text-muted,#64748b);font-size:12px;font-weight:600}.app-auth-input{border:1px solid var(--border-light,#e2e8f0);background:var(--bg-app,#f8fafc);color:var(--text-muted,#64748b);border-radius:10px;align-items:center;gap:8px;padding:0 11px;display:flex}.app-auth-input:focus-within{border-color:var(--aa-accent)}.app-auth-input input{color:var(--text-main,#1e293b);background:0 0;border:none;outline:none;flex:1;padding:10px 0;font-size:13.5px}.app-auth-primary{background:var(--aa-accent);color:#fff;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:11px 14px;font-size:13.5px;font-weight:600;display:inline-flex}.app-auth-primary:hover{filter:brightness(1.08)}.app-auth-secondary{border:1px solid var(--border-light,#e2e8f0);color:var(--text-main,#1e293b);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:9px 13px;font-size:13px;font-weight:600;display:inline-flex}.app-auth-secondary:hover{background:var(--bg-app,#f4f7fb)}.app-auth-consent{color:var(--text-muted,#64748b);align-items:flex-start;gap:9px;margin:14px 0 2px;font-size:12.5px;line-height:1.5;display:flex}.app-auth-consent input{accent-color:var(--aa-accent);flex-shrink:0;margin-top:2px}.app-auth-link{color:var(--aa-accent);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.app-auth-error{color:#b91c1c;background:#ef44441a;border:1px solid #ef444440;border-radius:9px;margin-top:12px;padding:9px 11px;font-size:12.5px}.app-auth-foot{text-align:center;color:var(--text-muted,#64748b);margin:16px 0 0;font-size:11.5px}.app-auth-lang{color:var(--text-muted,#64748b);background:var(--bg-subtle,#94a3b81a);border:1px solid var(--border-light,#e2e8f0);border-radius:9px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:0 0 14px;padding:8px 10px;font-size:12.5px;display:flex}.app-auth-lang .app-auth-link{font-weight:600}.app-auth-lang-x{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:0;padding:0 2px;font-size:12px;line-height:1}.app-auth-lang-x:hover{opacity:1}.app-account-widget{top:12px;right:calc(14px + var(--side-reserve-right,0px));z-index:1500;transition:right .22s cubic-bezier(.16,1,.3,1);position:fixed}.app-account-chip{border:1px solid var(--border-light,#e2e8f0);background:var(--bg-panel,#fff);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:2px;line-height:0;display:inline-flex;position:relative;box-shadow:0 3px 10px #0f172a24}.app-account-chip:hover{border-color:var(--aa-accent)}.app-account-agenda{opacity:0;visibility:hidden;pointer-events:none;flex-direction:column;justify-content:flex-end;align-items:flex-end;gap:8px;padding-top:8px;transition:opacity .2s,transform .22s cubic-bezier(.34,1.56,.64,1),visibility .2s;display:flex;position:absolute;top:100%;right:0;transform:translateY(-8px)}.app-account-agenda.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.agenda-anchored-trigger{border:1px solid var(--border-light,#e2e8f0);background:var(--bg-panel,#fff);width:40px;height:40px;color:var(--aa-accent);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:transform .15s,border-color .15s;display:inline-flex;position:relative;box-shadow:0 3px 10px #0f172a24}.agenda-anchored-trigger:hover{border-color:var(--aa-accent);transform:scale(1.06)}.app-account-restore{top:12px;right:var(--side-reserve-right,0px);z-index:1500;border:1px solid var(--border-light,#e2e8f0);background:var(--bg-panel,#fff);width:22px;height:30px;color:var(--text-muted,#64748b);cursor:pointer;opacity:.55;border-right:none;border-radius:8px 0 0 8px;justify-content:center;align-items:center;padding:0;transition:opacity .15s,color .15s;display:inline-flex;position:fixed;box-shadow:0 3px 10px #0f172a1f}.app-account-restore:hover{opacity:1;color:var(--aa-accent)}.app-account-panel{background:var(--bg-panel,#fff);border:1px solid var(--border-light,#e2e8f0);border-radius:16px;flex-direction:column;gap:14px;width:320px;padding:16px;display:flex;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 24px 60px #0f172a38}.app-account-head{align-items:flex-start;gap:12px;display:flex}.app-account-avatar-wrap{flex-shrink:0;position:relative}.app-account-avatar-edit{border:2px solid var(--bg-panel,#fff);background:var(--aa-accent);color:#fff;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:absolute;bottom:-2px;right:-2px}.app-account-id{flex:1;min-width:0}.app-account-name-row{align-items:center;gap:6px;display:flex}.app-account-name-row strong{color:var(--text-main,#1e293b);text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;overflow:hidden}.app-account-name-pencil{color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:none;padding:2px}.app-account-name-edit{gap:6px;display:flex}.app-account-name-edit input{border:1px solid var(--border-light,#e2e8f0);background:var(--bg-app,#f8fafc);min-width:0;color:var(--text-main,#1e293b);border-radius:8px;flex:1;padding:5px 8px;font-size:13px}.app-account-email{color:var(--text-muted,#64748b);text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.app-account-handle{color:var(--text-muted,#64748b);border-top:1px solid var(--border-light,#e2e8f0);align-items:center;gap:7px;padding:8px 12px;font-size:13px;display:flex}.app-account-handle-val{color:var(--text-main,#1e293b);flex:1;font-weight:600}.app-account-handle.editing{flex-direction:column;align-items:stretch;gap:8px}.app-account-handle-row{align-items:center;gap:7px;display:flex}.app-account-handle-row input{border:1px solid var(--border-light,#e2e8f0);background:var(--bg-app,#fff);min-width:0;color:var(--text-main,#1e293b);border-radius:7px;flex:1;padding:6px 9px;font-size:13px}.app-account-handle-ok{color:#16a34a;white-space:nowrap;font-size:11.5px}.app-account-handle-bad{color:#e5484d;white-space:nowrap;font-size:11.5px}.app-account-handle-actions{justify-content:flex-end;gap:6px;display:flex}.app-auth-primary.sm,.app-auth-secondary.sm{padding:5px 10px;font-size:12px}.app-account-spin{animation:.8s linear infinite app-account-spin}@keyframes app-account-spin{to{transform:rotate(360deg)}}.app-account-avatar-img{object-fit:cover;border-radius:50%;display:block}.app-account-avatar-fallback{color:#fff;border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.app-account-plan{border:1px solid var(--border-light,#e2e8f0);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex}.app-account-plan.pro{background:linear-gradient(135deg,#f59e0b1f,#7c3aed1f);border-color:#f59e0b66}.app-account-plan-info{color:var(--text-main,#1e293b);align-items:center;gap:9px;display:flex}.app-account-plan-info strong{font-size:13.5px;display:block}.app-account-plan-info span{color:var(--text-muted,#64748b);font-size:11.5px;display:block}.app-account-features{grid-template-columns:1fr 1fr;gap:6px;margin:0;padding:0;list-style:none;display:grid}.app-account-features li{align-items:center;gap:5px;font-size:11.5px;display:flex}.app-account-features li.on{color:var(--text-main,#1e293b)}.app-account-features li.on svg{color:#10b981}.app-account-features li.off{color:var(--text-muted,#94a3b8);opacity:.65}.app-account-features li.off svg{color:var(--text-muted,#94a3b8)}.app-account-links{border-top:1px solid var(--border-light,#e2e8f0);gap:8px;padding-top:12px;display:flex}.app-account-links button{border:1px solid var(--border-light,#e2e8f0);color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;padding:7px;font-size:12px;font-weight:600;display:inline-flex}.app-account-links button:hover{background:var(--bg-app,#f4f7fb);color:var(--text-main,#1e293b)}.app-account-actions{justify-content:space-between;align-items:center;display:flex}.app-account-logout,.app-account-delete{cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:6px;padding:8px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.app-account-logout{color:var(--text-main,#1e293b);border:1px solid var(--border-light,#e2e8f0)}.app-account-logout:hover{background:var(--bg-app,#f4f7fb)}.app-account-delete{color:#ef4444}.app-account-delete:hover{background:#ef44441a}.app-account-panel.slim{transform-origin:100% 0;border-radius:18px;gap:0;width:340px;padding:0;overflow:hidden;transform:scale(.8)}@keyframes app-account-pop{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:none}}.app-account-body{flex-direction:column;gap:8px;padding:14px 18px 18px;display:flex}.app-account-body.pop{animation:.16s app-account-pop}.app-account-cover{cursor:pointer;background-size:cover;border:none;width:100%;height:92px;padding:0;display:block;position:relative}.app-account-cover:hover .app-account-cover-edit{background:#00000059}.app-account-cover-edit{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000038;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;transition:background .15s;display:flex;position:absolute;top:12px;left:12px}.app-account-close{color:#fff;z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000038;border-color:#0000;border-radius:10px;width:34px;height:34px;position:absolute;top:12px;right:12px}.app-account-close:hover{color:#fff;background:#0006}.app-account-slim-id{z-index:1;margin-top:-34px;padding:0 18px;position:relative}.app-account-avatar-btn{border:4px solid var(--bg-panel,#fff);background:var(--bg-panel,#fff);cursor:pointer;border-radius:50%;padding:0;line-height:0;display:inline-block;position:relative}.app-account-avatar-btn:hover{filter:brightness(.97)}.app-account-slim-meta{min-width:0;margin-top:10px}.app-account-slim-handle-big{letter-spacing:-.02em;color:var(--text-main,#1c1917);text-overflow:ellipsis;white-space:nowrap;font-size:22px;font-weight:800;line-height:1.1;display:block;overflow:hidden}.app-account-slim-realname{color:var(--text-muted,#78716c);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:13.5px;font-weight:500;display:block;overflow:hidden}.app-avatar-stack{line-height:0;display:inline-flex;position:relative}.app-account-status-dot{border:2.5px solid var(--bg-panel,#fff);box-sizing:border-box;border-radius:50%;position:absolute;bottom:-1px;right:-1px}.app-account-avatar-btn .app-account-status-dot{border-width:4px;bottom:2px;right:2px}.app-account-status-dot.inline{border-width:0;flex-shrink:0;width:9px;height:9px;display:inline-block;position:static}.app-account-status-dot.inline.lg{width:12px;height:12px}.app-account-row{text-align:left;border:1px solid var(--border-light,#ede9e3);background:var(--bg-panel,#fff);width:100%;color:var(--text-main,#292524);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:11px 13px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s;display:flex}.app-account-row:hover{background:var(--bg-app,#faf9f6);border-color:var(--border-light,#e2ddd4)}.app-account-row.soft{background:var(--bg-app,#faf9f6)}.app-account-row.ghost{background:0 0;border-color:#0000}.app-account-row.ghost:hover{background:var(--bg-app,#f5f3ee)}.app-account-row-icon{color:var(--text-muted,#a8a29e);flex:none;place-items:center;display:grid}.app-account-row-txt{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.app-account-row-txt.strong{font-weight:700}.app-account-row-txt.muted{color:var(--text-muted,#a8a29e);font-weight:600}.app-account-row-chev{color:var(--text-muted,#a8a29e);flex:none}.app-account-divider{background:var(--border-light,#f0ede7);height:1px;margin:4px 0}.app-account-slim-actions{gap:8px;display:flex}.app-account-slim-actions button{color:var(--text-main,#44403c);cursor:pointer;background:0 0;border:none;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:8px;padding:11px;font-size:14px;font-weight:600;transition:background .15s;display:inline-flex}.app-account-slim-actions button:hover{background:var(--bg-app,#f5f3ee)}.app-account-slim-actions button.danger{color:#dc2626}.app-account-slim-actions button.danger:hover{background:#dc262614}.app-account-back{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted,#a8a29e);background:0 0;border:none;align-items:center;gap:8px;padding:4px 4px 10px;font-size:12.5px;font-weight:700;display:flex}.app-account-back:hover{color:var(--text-main,#57534e)}.app-account-statuslist{flex-direction:column;gap:2px;display:flex}.app-account-statusitem{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:11px;align-items:flex-start;gap:11px;width:100%;padding:10px 12px;transition:background .15s;display:flex}.app-account-statusitem:hover{background:var(--bg-app,#f5f3ee)}.app-account-statusitem.sel{background:var(--bg-app,#faf7f2)}.app-account-statusitem .app-account-status-dot.inline.lg{margin-top:3px}.app-account-statusitem-meta{flex:1;min-width:0}.app-account-statusitem-meta .label{color:var(--text-main,#292524);font-size:14px;font-weight:700;display:block}.app-account-statusitem-meta .desc{color:var(--text-muted,#a8a29e);margin-top:1px;font-size:12.5px;font-weight:500;display:block}.app-account-statusitem-check{color:var(--aa-accent,#f97316);flex:none;margin-top:1px}.app-account-status-ta{resize:none;border:1px solid var(--border-light,#e7e2da);background:var(--bg-app,#faf9f6);width:100%;height:84px;font:inherit;color:var(--text-main,#292524);border-radius:12px;outline:none;padding:12px 13px;font-size:14px;font-weight:500}.app-account-status-ta:focus{border-color:var(--aa-accent,#f97316);background:var(--bg-panel,#fff)}.app-account-ta-count{color:var(--text-muted,#b8b2a8);justify-content:flex-end;margin-top:4px;font-size:12px;font-weight:600;display:flex}.app-account-custom-actions{gap:8px;margin-top:8px;display:flex}.app-account-custom-actions .app-auth-secondary{flex:none}.app-account-custom-actions .app-auth-primary{flex:1}.app-status-controls{flex-direction:column;gap:8px;display:flex}.app-status-opts{grid-template-columns:1fr 1fr;gap:6px;display:grid}.app-status-opt{border:1px solid var(--border-light,#e2e8f0);color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border-radius:9px;align-items:center;gap:7px;padding:7px 9px;font-size:12.5px;font-weight:600;transition:all .15s;display:inline-flex}.app-status-opt:hover{background:var(--bg-app,#f4f7fb)}.app-status-opt.sel{border-color:var(--aa-accent);color:var(--text-main,#1e293b);background:var(--bg-app,#f4f7fb)}.app-status-input{border:1px solid var(--border-light,#e2e8f0);background:var(--bg-app,#f8fafc);width:100%;color:var(--text-main,#1e293b);border-radius:9px;padding:8px 11px;font-size:13px}.app-status-input:focus{border-color:var(--aa-accent);outline:none}.app-profile-tab{flex-direction:column;gap:14px;display:flex}.app-profile-cover{background-size:cover;border-radius:12px;height:132px;position:relative}.app-profile-cover-btn{color:#fff;cursor:pointer;background:#00000080;border:none;border-radius:9px;align-items:center;gap:6px;padding:7px 11px;font-size:12px;font-weight:600;display:inline-flex;position:absolute;bottom:10px;right:10px}.app-profile-cover-btn:hover{background:#000000ad}.app-profile-avatar-row{z-index:1;align-items:flex-end;gap:14px;margin-top:-42px;padding-left:10px;display:flex;position:relative}.app-profile-avatar-row .app-account-avatar-wrap{border:4px solid var(--bg-panel,#fff);background:var(--bg-panel,#fff);border-radius:50%}.app-profile-avatar-row .app-account-avatar-wrap .app-account-status-dot{bottom:6px;right:6px}.app-profile-avatar-row .app-account-id{padding-bottom:6px}.app-profile-section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted,#64748b);align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.app-profile-covers{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.app-profile-covers button{border:2px solid var(--border-light,#e2e8f0);cursor:pointer;background-size:cover;border-radius:8px;height:34px}.app-profile-covers button.sel{border-color:var(--aa-accent);box-shadow:0 0 0 2px #d94e1f4d}.app-auth-iconbtn{border:1px solid var(--border-light,#e2e8f0);width:30px;height:30px;color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.app-auth-iconbtn:hover{background:var(--bg-app,#f4f7fb);color:var(--text-main,#1e293b)}.app-auth-overlay{z-index:3000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.app-auth-legal{background:var(--bg-panel,#fff);border:1px solid var(--border-light,#e2e8f0);border-radius:16px;flex-direction:column;width:min(680px,96vw);max-height:86vh;display:flex;overflow:hidden}.app-auth-legal-head{border-bottom:1px solid var(--border-light,#e2e8f0);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.app-auth-legal-head h3{color:var(--text-main,#1e293b);margin:0;font-size:16px;font-weight:700}.app-auth-legal-body{color:var(--text-main,#1e293b);padding:18px 22px;font-size:13.5px;line-height:1.6;overflow-y:auto}.app-auth-legal-body h1{margin:0 0 6px;font-size:19px}.app-auth-legal-body h2{margin:18px 0 6px;font-size:15.5px}.app-auth-legal-body h3{margin:14px 0 4px;font-size:13.5px}.app-auth-legal-body p{color:var(--text-muted,#475569);margin:6px 0}.app-auth-legal-body ul{color:var(--text-muted,#475569);margin:6px 0 6px 18px;padding:0}.app-auth-legal-body li{margin:3px 0}.app-auth-legal-body hr{border:none;border-top:1px solid var(--border-light,#e2e8f0);margin:16px 0}.app-auth-legal-body blockquote{border-left:3px solid var(--aa-accent);background:var(--bg-app,#f4f7fb);color:var(--text-muted,#475569);border-radius:0 8px 8px 0;margin:10px 0;padding:10px 12px;font-size:12.5px}.app-auth-terms-note{color:var(--text-muted,#64748b);text-align:center;margin:8px 0 0;font-size:11.5px;line-height:1.4}.app-auth-forgot{align-self:flex-end;padding:2px 0;font-size:12px}.app-auth-notice{color:#15803d;background:#16a34a1a;border:1px solid #16a34a38;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.app-auth-magic{flex-direction:column;gap:8px;margin-top:2px;display:flex}.app-auth-magic .app-auth-input{width:100%}.app-auth-magic-sent{background:var(--bg-app,#f4f7fb);color:var(--text-muted,#475569);border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:2px;padding:10px 12px;font-size:13px;display:flex}@media (width<=480px){.app-account-panel{width:min(92vw,320px)}}.app-source-menu{z-index:30;background:var(--color-surface,#fff);border:1px solid var(--color-line,#e6e0d4);border-radius:12px;flex-direction:column;gap:2px;min-width:210px;padding:6px;display:flex;position:absolute;bottom:44px;right:8px;box-shadow:0 24px 48px -20px #10281c59}.app-account-avatar-wrap .app-source-menu{bottom:-8px;left:0;right:auto;transform:translateY(100%)}.app-source-menu button{cursor:pointer;text-align:left;color:var(--color-ink,#10281c);background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:9px 10px;font-size:13px;display:flex}.app-source-menu button:hover{background:var(--color-surface-2,#faf5ea)}.app-source-menu .app-source-cancel{opacity:.6;justify-content:center;font-size:12px}.floating-today-root .notifs-panel{background:var(--bg-panel,#fff);border:1px solid var(--border-light,#e2e8f0);color:var(--text-main,#1e293b);box-shadow:0 20px 60px #0f172a2e}html[data-theme=dark] .notifs-panel{box-shadow:0 20px 60px #0000008c}.notifs-panel .panel-header{cursor:default;border-bottom:1px solid var(--border-light,#e2e8f0)}.notifs-panel .panel-title{color:var(--text-main,#1e293b)}.notifs-panel .panel-header-actions button{color:var(--text-muted,#64748b);background:0 0}.notifs-panel .panel-header-actions button:hover{background:color-mix(in srgb, var(--text-muted,#64748b) 16%, transparent);color:var(--text-main,#1e293b)}.notifs-count{background:var(--primary,#d94e1f);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:.68rem;font-weight:700;display:inline-flex}.notifs-list{flex-direction:column;flex:1;gap:4px;padding:6px;display:flex;overflow-y:auto}.notifs-empty{color:var(--text-muted,#64748b);opacity:.85;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.notifs-empty p{margin:0;font-size:.85rem}.notifs-item{width:100%;color:var(--text-main,#1e293b);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:flex-start;gap:9px;padding:9px 22px 9px 9px;font-family:inherit;transition:background .14s;display:flex;position:relative}.notifs-item:hover{background:color-mix(in srgb, var(--text-muted,#64748b) 14%, transparent)}.notifs-item.unread{background:color-mix(in srgb, var(--primary,#d94e1f) 8%, transparent)}.notifs-item.unread:hover{background:color-mix(in srgb, var(--primary,#d94e1f) 14%, transparent)}.notifs-icon{background:color-mix(in srgb, var(--text-muted,#64748b) 16%, transparent);width:26px;height:26px;color:var(--text-muted,#64748b);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.notifs-item.kind-invite .notifs-icon{color:#d94e1f;background:#d94e1f29}.notifs-item.kind-people .notifs-icon{color:#0284c7;background:#0ea5e929}.notifs-item.kind-message .notifs-icon{color:#16a34a;background:#22c55e29}.notifs-item.kind-school .notifs-icon{color:#7c3aed;background:#8b5cf629}.notifs-item.kind-reminder .notifs-icon{color:#ea580c;background:#f9731629}.notifs-item.kind-release .notifs-icon{color:#ca8a04;background:#eab3082e}html[data-theme=dark] .notifs-item.kind-people .notifs-icon{color:#7dd3fc}html[data-theme=dark] .notifs-item.kind-message .notifs-icon{color:#86efac}html[data-theme=dark] .notifs-item.kind-school .notifs-icon{color:#c4b5fd}html[data-theme=dark] .notifs-item.kind-reminder .notifs-icon{color:#fdba74}html[data-theme=dark] .notifs-item.kind-release .notifs-icon{color:#fde68a}html[data-theme=dark] .notifs-item.kind-invite .notifs-icon{color:#fca5a5}.notifs-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notifs-text{color:var(--text-main,#1e293b);font-size:.82rem;line-height:1.3}.notifs-item.unread .notifs-text{font-weight:600}.notifs-sub{color:var(--text-muted,#64748b);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.notifs-time{color:var(--text-muted,#64748b);flex-shrink:0;padding-top:2px;font-size:.68rem}.notifs-dot{background:var(--primary,#d94e1f);border-radius:50%;width:7px;height:7px;position:absolute;top:12px;right:9px}.notifs-trigger-badge{background:var(--primary,#d94e1f);color:#fff;border:2px solid var(--bg-panel,#fff);border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.62rem;font-weight:700;display:flex;position:absolute;bottom:-4px;right:-4px}.notifs-action{cursor:pointer;letter-spacing:.01em;background:var(--primary,#d94e1f);color:#fff;border-radius:999px;align-self:flex-start;margin-top:5px;padding:3px 9px;font-size:.72rem;font-weight:700}.notifs-action:hover{filter:brightness(1.08)}:root{--rw-ease:cubic-bezier(.2, .8, .2, 1);--rw-ease-flip:cubic-bezier(.22, .9, .18, 1);--rw-sealed:linear-gradient(160deg, #10281c, #1e4032)}@keyframes rw-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes rw-sheen{0%{transform:translate(-120%)}to{transform:translate(220%)}}.rw-meta{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-muted);font-size:10px;font-weight:500}.rw-meta.accent{color:var(--color-accent)}.rw-ring{box-shadow:0 0 0 2px var(--color-bg), 0 0 0 3.5px var(--color-accent);transition:box-shadow .24s var(--rw-ease);border-radius:50%}.rw-pip{background:var(--color-accent);border:2px solid var(--color-bg);pointer-events:none;border-radius:50%;width:9px;height:9px;position:absolute;top:-1px;right:-1px}.rw-widget{border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-surface) 94%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--color-line);width:288px;box-shadow:0 28px 60px -30px color-mix(in srgb, var(--color-ink) 42%, transparent);animation:rw-widget-in .28s var(--rw-ease) both;padding:16px}@keyframes rw-widget-in{0%{opacity:0;transform:translateY(-6px)scale(.985)}to{opacity:1;transform:none}}.rw-widget-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.rw-sealed-row{gap:10px;margin-bottom:14px;display:flex}.rw-sealed{border-radius:var(--radius-sm);background:var(--rw-sealed);border:1px solid var(--color-line);flex:1;align-items:flex-end;height:72px;padding:8px;display:flex;position:relative;overflow:hidden}.rw-sealed .rw-meta{color:#fffcf6b8;position:relative}.rw-sealed.pale{background:linear-gradient(160deg, var(--color-surface-2), #efe6d4)}.rw-sealed.pale .rw-meta{color:var(--color-ink-muted)}.rw-sheen:after{content:"";background:linear-gradient(90deg,#0000,#fffcf624,#0000);width:45%;animation:3.2s cubic-bezier(.4,0,.2,1) infinite rw-sheen;position:absolute;top:0;bottom:0}.rw-btn{text-align:center;border-radius:var(--radius-sm);cursor:pointer;width:100%;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:var(--color-accent);color:var(--color-on-accent);border:none;padding:11px;font-size:10px;font-weight:500;transition:background .2s;display:block}.rw-btn:hover,.rw-btn.on{background:var(--color-ink);color:var(--color-bg)}.rw-btn.ghost{color:var(--color-ink-muted);background:0 0;padding:9px}.rw-btn.ghost:hover{color:var(--color-ink);background:0 0}.rw-btn.outline{border:1px solid var(--color-line-strong);color:var(--color-ink-muted);background:0 0}.rw-btn.outline:hover{background:var(--color-surface-2);color:var(--color-ink)}.rw-btn:disabled{background:var(--color-hover);color:var(--color-ink-muted);cursor:default}.rw-scrim{z-index:12000;background:color-mix(in srgb, var(--color-ink) 42%, transparent);-webkit-backdrop-filter:blur(6px)saturate(.94);backdrop-filter:blur(6px)saturate(.94);animation:rw-fade .36s var(--rw-ease) both;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@keyframes rw-fade{0%{opacity:0}to{opacity:1}}.rw-dialog{border-radius:var(--radius-lg);background:var(--color-surface);width:460px;max-width:calc(100vw - 32px);box-shadow:0 60px 120px -40px color-mix(in srgb, var(--color-ink) 60%, transparent);animation:rw-dialog-in .42s var(--rw-ease) both;flex-direction:column;align-items:center;gap:22px;padding:28px;display:flex}@keyframes rw-dialog-in{0%{opacity:0;transform:scale(.97)translateY(8px)}to{opacity:1;transform:none}}.rw-dialog-head{justify-content:space-between;align-items:center;width:100%;display:flex}.rw-x{border-radius:var(--radius-sm);cursor:pointer;width:28px;height:28px;color:var(--color-ink-muted);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.rw-x:hover{background:var(--color-surface-2);color:var(--color-ink)}.rw-flip{perspective:1400px;cursor:pointer;background:0 0;border:none;width:260px;height:320px;padding:0}.rw-flip-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .76s var(--rw-ease-flip);position:relative}.rw-flip.flipped .rw-flip-inner{transform:rotateY(180deg)}.rw-face{backface-visibility:hidden;border-radius:var(--radius-md);position:absolute;inset:0;overflow:hidden}.rw-face-front{box-shadow:0 30px 60px -30px color-mix(in srgb, var(--color-ink) 70%, transparent);background:linear-gradient(155deg,#10281c 0%,#1e4032 60%,#10281c 100%);justify-content:center;align-items:center;animation:4.4s ease-in-out infinite rw-breathe;display:flex}.rw-seal{border:1.5px solid #fffcf680;width:54px;height:54px;transform:rotate(45deg)}.rw-face-front .rw-hint{color:#fffcf699;letter-spacing:.14em;position:absolute;bottom:18px}.rw-face-back{background:var(--color-surface-2);border:1px solid var(--color-line);box-shadow:0 30px 60px -30px color-mix(in srgb, var(--color-ink) 55%, transparent);flex-direction:column;display:flex;transform:rotateY(180deg)}.rw-art{flex:1;justify-content:center;align-items:center;display:flex}.rw-face-back .rw-caption{background:var(--color-surface);border-top:1px solid var(--color-line);flex-direction:column;gap:6px;padding:16px;display:flex}.rw-caption-name{font-size:17px;font-weight:500}.rw-copy{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.rw-copy-title{font-size:15px;font-weight:500}.rw-copy-body{color:var(--color-ink-muted);max-width:340px;font-size:13px;line-height:1.55}.rw-actions{gap:10px;width:100%;display:flex}.rw-actions .rw-btn{padding:13px}.rw-dots{gap:6px;display:flex}.rw-dot{background:var(--color-line-strong);border-radius:50%;width:5px;height:5px}.rw-dot.on{background:var(--color-accent)}.rw-coll-scrim{z-index:11500;background:color-mix(in srgb, var(--color-ink) 42%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:rw-fade .36s var(--rw-ease) both;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.rw-coll{border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-line);width:min(1160px,100vw - 48px);height:min(760px,100vh - 48px);box-shadow:0 60px 120px -40px color-mix(in srgb, var(--color-ink) 60%, transparent);animation:rw-dialog-in .42s var(--rw-ease) both;flex-direction:column;display:flex;overflow:hidden}.rw-coll-head{border-bottom:1px solid var(--color-line);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;padding:22px 28px;display:flex}.rw-coll-title{letter-spacing:-.01em;font-size:22px;font-weight:500}.rw-filters{flex-wrap:wrap;gap:6px;display:flex}.rw-filter{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:var(--color-surface-2);color:var(--color-ink-muted);border:none;padding:9px 12px;font-size:10px}.rw-filter.on{background:var(--color-ink);color:var(--color-bg)}.rw-coll-body{flex:1;grid-template-columns:1fr 320px;min-height:0;display:grid}.rw-tile-art.dim,.rw-preview.dim{opacity:.55;filter:saturate(.7)}.rw-tile-art.secret,.rw-preview.secret{filter:blur(14px)saturate(.75);transform:scale(1.18)}.rw-req{color:var(--color-ink-muted);flex-direction:column;gap:7px;font-size:12px;display:flex}.rw-req-bar{background:var(--color-line);border-radius:2px;height:3px;overflow:hidden}.rw-req-bar i{background:var(--color-accent);height:100%;transition:width .4s var(--rw-ease);display:block}.rw-dev{border-top:1px dashed var(--color-line);background:var(--color-surface-2);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 28px;display:flex}.rw-dev-tag{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;background:var(--color-accent);color:var(--color-bg);border-radius:4px;padding:4px 7px;font-size:9px}.rw-dev-luck{font-family:var(--font-mono);color:var(--color-ink-muted);align-items:center;gap:6px;margin-left:auto;font-size:10px;display:flex}.rw-dev-luck input{width:90px;accent-color:var(--color-accent)}.rw-dev-btn{font-family:var(--font-mono);cursor:pointer;border-radius:var(--radius-sm);border:1px solid var(--color-line);background:var(--color-surface);color:var(--color-ink);padding:6px 9px;font-size:10px}.rw-dev-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.rw-dev-btn:disabled{opacity:.4;cursor:default}.rw-coll-main{flex-direction:column;gap:20px;padding:24px 28px;display:flex;overflow-y:auto}.rw-grid{grid-template-columns:repeat(4,1fr);align-content:start;gap:16px;display:grid}.rw-tile{border-radius:var(--radius-md);border:1px solid var(--color-line);background:var(--color-surface);cursor:pointer;text-align:left;transition:transform .26s var(--rw-ease), box-shadow .26s, border-color .2s;padding:0;overflow:hidden}.rw-tile:hover{box-shadow:0 18px 36px -22px color-mix(in srgb, var(--color-ink) 40%, transparent);transform:translateY(-3px)}.rw-tile.sel{border-color:var(--color-accent)}.rw-tile-art{justify-content:center;align-items:center;height:118px;display:flex}.rw-tile.locked .rw-tile-art{background:linear-gradient(160deg, var(--color-surface-2), #f2ebdc)}.rw-tile.locked .rw-tile-name{color:color-mix(in srgb, var(--color-ink) 40%, transparent)}.rw-sil{border:1.5px solid color-mix(in srgb, var(--color-ink) 22%, transparent)}.rw-tile-meta{flex-direction:column;gap:5px;padding:12px;display:flex}.rw-tile-name{color:var(--color-ink);font-size:13px;font-weight:500}.rw-hidden-band{border-radius:var(--radius-md);background:var(--color-surface-2);border:1px solid var(--color-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:auto;padding:20px 22px;display:flex}.rw-hidden-band p{color:var(--color-ink-muted);max-width:560px;margin:0;font-size:14px;line-height:1.5}.rw-teasers{gap:8px;display:flex}.rw-teaser{border-radius:var(--radius-sm);border:1px solid var(--color-line);background:linear-gradient(160deg,#f2ebdc,#e9e0cd);justify-content:center;align-items:center;width:52px;height:52px;display:flex}.rw-rail{border-left:1px solid var(--color-line);background:var(--color-surface-2);flex-direction:column;gap:18px;padding:24px;display:flex;overflow-y:auto}.rw-preview{border-radius:var(--radius-md);border:1px solid var(--color-line);justify-content:center;align-items:center;height:180px;display:flex}.rw-rail-name{font-size:18px;font-weight:500}.rw-rail-story{color:var(--color-ink-muted);font-size:13px;line-height:1.55}.rw-facts{border-top:1px solid var(--color-line);flex-direction:column;gap:10px;padding-top:14px;display:flex}.rw-fact{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;gap:12px;font-size:10px;display:flex}.rw-fact span:last-child{text-align:right;color:var(--color-ink)}.rw-rail-actions{gap:10px;margin-top:auto;display:flex}.rw-fav{border-radius:var(--radius-sm);border:1px solid var(--color-line-strong);width:44px;color:var(--color-ink-muted);cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;display:flex}.rw-fav.on{color:var(--color-accent)}.rw-empty{text-align:center;color:var(--color-ink-muted);padding:40px 0;font-size:13px}@media (width<=900px){.rw-coll-body{grid-template-columns:1fr}.rw-grid{grid-template-columns:repeat(2,1fr)}.rw-rail{border-left:none;border-top:1px solid var(--color-line)}}@media (prefers-reduced-motion:reduce){.rw-sheen:after,.rw-face-front{animation:none}.rw-scrim,.rw-coll-scrim{-webkit-backdrop-filter:none;backdrop-filter:none;background:color-mix(in srgb, var(--color-ink) 58%, transparent)}.rw-flip-inner{transition:none;transform:none!important}.rw-face{transition:opacity .18s linear}.rw-face-back{opacity:0;transform:none}.rw-flip.flipped .rw-face-front{opacity:0}.rw-flip.flipped .rw-face-back{opacity:1}.rw-tile:hover{transform:none}.rw-widget,.rw-dialog,.rw-coll,.rw-scrim,.rw-coll-scrim{animation-duration:1ms}}.beta-dock{bottom:20px;right:calc(74px + var(--side-reserve-right,0px));z-index:1400;align-items:flex-end;gap:var(--space-3);flex-direction:column;transition:right .22s cubic-bezier(.16,1,.3,1);display:flex;position:fixed}.beta-dock.left{right:auto;left:calc(20px + var(--side-reserve-left,0px));align-items:flex-start}.beta-pill{border:1.4px solid var(--color-line-strong);border-radius:var(--radius-pill);background:var(--color-surface);height:38px;color:var(--color-ink);box-shadow:var(--shadow-md);cursor:pointer;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:9px;padding:0 15px;font-size:10.5px;font-weight:700;display:inline-flex}.beta-pill:hover,.beta-pill.open{border-color:var(--color-accent);color:var(--color-accent)}.beta-pill-dot{border-radius:var(--radius-pill);background:var(--color-accent);flex:none;width:7px;height:7px}.beta-pill-badge{font-family:var(--font-mono);border-radius:var(--radius-pill);background:var(--color-accent-wash);color:var(--color-accent);padding:1px 5px;font-size:9px}@keyframes beta-pop{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:none}}@keyframes beta-fade{0%{opacity:0}to{opacity:1}}.beta-panel{border:1.4px solid var(--color-line-strong);border-radius:var(--radius-lg);background:var(--color-surface);width:380px;max-width:calc(100vw - 40px);box-shadow:var(--shadow-lg);animation:.18s ease-out beta-pop;overflow:hidden}.beta-panel-head{align-items:flex-start;gap:var(--space-3);padding:14px var(--space-4);background:var(--color-surface-2);border-bottom:1px solid var(--color-line);display:flex}.beta-panel-head h3{margin:0 0 var(--space-1);font-size:var(--text-lg);letter-spacing:-.01em;color:var(--color-ink);font-weight:600}.beta-x{border:1.4px solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface);width:26px;height:26px;color:var(--color-ink-muted);cursor:pointer;flex:none;font-size:14px;line-height:1}.beta-x:hover{color:var(--color-accent);border-color:var(--color-accent)}.beta-body{gap:var(--space-4);max-height:62vh;padding:var(--space-4);flex-direction:column;display:flex;overflow-y:auto}.beta-field{gap:var(--space-2);flex-direction:column;display:flex}.beta-ratings{gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}.beta-rating{border:1.4px solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-surface-2);height:56px;color:var(--color-ink-muted);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex}.beta-rating span{font-size:17px;line-height:1}.beta-rating small{font-family:var(--font-mono);letter-spacing:.1em;font-size:9.5px;font-weight:700}.beta-rating:hover{border-color:var(--color-accent)}.beta-rating.on{border-color:var(--color-accent);background:var(--color-accent-wash);color:var(--color-accent)}.beta-cats{flex-direction:column;gap:6px;display:flex}.beta-cat{align-items:center;gap:var(--space-3);height:40px;padding:0 var(--space-3);border:1.4px solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);font-size:var(--text-md);text-align:left;cursor:pointer;font-weight:500;display:flex}.beta-cat:hover{border-color:var(--color-accent)}.beta-cat.on{border-color:var(--color-accent);background:var(--color-accent-wash)}.beta-cat i{border:1.4px solid var(--color-line-strong);border-radius:var(--radius-pill);flex:none;width:11px;height:11px}.beta-cat.on i{border-color:var(--color-accent);background:var(--color-accent)}.beta-tags{flex-wrap:wrap;gap:6px;display:flex}.beta-tag{border:1.4px solid var(--color-line-strong);border-radius:var(--radius-pill);background:var(--color-surface);height:30px;color:var(--color-ink-muted);font-family:var(--font-mono);letter-spacing:.06em;cursor:pointer;padding:0 11px;font-size:10.5px;font-weight:700}.beta-tag:hover{border-color:var(--color-accent)}.beta-tag.on{border-color:var(--color-accent);background:var(--color-accent-wash);color:var(--color-accent)}.beta-textarea{resize:vertical;width:100%;min-height:92px;padding:10px var(--space-3);border:1.4px solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-ink);font-family:inherit;font-size:var(--text-md);line-height:var(--leading-body);outline:none}.beta-textarea:focus{border-color:var(--color-accent);background:var(--color-surface)}.beta-meta{border:1.4px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface-2);overflow:hidden}.beta-meta-rows{padding:10px var(--space-3);border-bottom:1px solid var(--color-line);flex-direction:column;gap:5px;display:flex}.beta-meta-row{gap:var(--space-2);font-family:var(--font-mono);color:var(--color-ink);font-size:10.5px;display:flex}.beta-meta-row b{opacity:.55;flex:none;width:78px;font-weight:400}.beta-meta-row span{text-overflow:ellipsis;white-space:nowrap;opacity:.8;min-width:0;overflow:hidden}.beta-optin{align-items:center;gap:var(--space-3);width:100%;padding:9px var(--space-3);border:none;border-top:1px solid var(--color-line);color:var(--color-ink);font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;display:flex}.beta-optin:hover{background:var(--color-hover)}.beta-switch{border-radius:var(--radius-pill);background:var(--color-line-strong);flex:none;justify-content:flex-start;width:30px;height:18px;padding:2px;transition:background .14s;display:flex}.beta-switch b{border-radius:var(--radius-pill);background:var(--color-surface);width:14px;height:14px}.beta-optin.on .beta-switch{background:var(--color-accent);justify-content:flex-end}.beta-shot-note{font-family:var(--font-mono);color:var(--color-accent);flex:none;font-size:9.5px}.beta-actions{align-items:center;gap:var(--space-3);display:flex}.beta-submit{border-radius:var(--radius-md);background:var(--color-accent);height:40px;color:var(--color-on-accent);font-size:var(--text-md);cursor:pointer;border:none;flex:1;font-weight:600}.beta-submit:hover:not(:disabled){background:var(--color-accent-hover)}.beta-submit:disabled{opacity:.55;cursor:default}.beta-link{height:40px;padding:0 var(--space-3);color:var(--color-accent);font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;flex:none;font-weight:500}.beta-link:hover{text-decoration:underline}.beta-thanks{align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-5);text-align:center;flex-direction:column;animation:.2s ease-out beta-fade;display:flex}.beta-thanks-mark{border-radius:var(--radius-md);background:var(--color-accent);width:34px;height:34px}.beta-thanks strong{font-size:var(--text-lg);color:var(--color-ink);font-weight:600}.beta-thanks p{max-width:260px;font-size:var(--text-sm);color:var(--color-ink-muted);margin:0}.beta-thanks button{border:1.4px solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface);height:34px;color:var(--color-ink);font-size:var(--text-md);cursor:pointer;padding:0 14px;font-weight:500}.beta-thanks button:hover{border-color:var(--color-accent);color:var(--color-accent)}.beta-about{gap:var(--space-6);flex-direction:column;display:flex}.beta-version{padding:14px var(--space-4);border:1.4px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface-2);align-items:center;gap:14px;display:flex}.beta-version-main{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.beta-version-num{font-family:var(--font-mono);letter-spacing:-.01em;color:var(--color-ink);font-size:20px;font-weight:500}.beta-version-side{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.beta-badge{border-radius:var(--radius-pill);background:var(--color-accent-wash);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);text-transform:uppercase;align-items:center;gap:6px;padding:5px 10px;font-weight:700;display:inline-flex}.beta-badge i{border-radius:var(--radius-pill);background:var(--color-accent);width:6px;height:6px}.beta-build{font-family:var(--font-mono);font-size:var(--text-meta);color:var(--color-ink-muted)}.beta-rule{align-items:center;gap:var(--space-3);display:flex}.beta-rule h4{font-size:var(--text-md);color:var(--color-ink);margin:0;font-weight:600}.beta-rule hr{background:var(--color-line);border:none;flex:1;height:1px;margin:0}.beta-section{gap:var(--space-3);flex-direction:column;display:flex}.beta-release{padding:var(--space-3) 0;border-top:1px solid var(--color-line);grid-template-columns:118px 1fr;gap:14px;display:grid}.beta-release-meta{gap:var(--space-1);flex-direction:column;display:flex}.beta-release-ver{font-family:var(--font-mono);color:var(--color-ink);font-size:11.5px;font-weight:500}.beta-release-date{font-family:var(--font-mono);font-size:var(--text-meta);color:var(--color-ink-muted)}.beta-release-badge{padding:3px var(--space-2);border-radius:var(--radius-pill);background:var(--color-hover);color:var(--color-ink-muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;align-self:flex-start;font-size:9.5px;font-weight:700}.beta-release-badge.current{background:var(--color-accent-wash);color:var(--color-accent)}.beta-release-items{flex-direction:column;gap:7px;display:flex}.beta-item{align-items:baseline;gap:9px;display:flex}.beta-item-tag{width:52px;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-muted);flex:none;font-size:9.5px;font-weight:700}.beta-item-tag.new{color:var(--color-accent)}.beta-item-text{font-size:var(--text-sm);line-height:var(--leading-body);color:var(--color-ink);text-wrap:pretty;flex:1}.beta-cards{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(178px,1fr));display:grid}.beta-card{padding:var(--space-3);border:1.4px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface-2);flex-direction:column;gap:6px;display:flex}.beta-card-head{align-items:center;gap:var(--space-2);display:flex}.beta-card-ver{font-family:var(--font-mono);color:var(--color-ink);font-size:10.5px;font-weight:500}.beta-state{border-radius:var(--radius-pill);background:var(--color-hover);color:var(--color-ink-muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;padding:2px 7px;font-size:9px;font-weight:700}.beta-state.wip{background:var(--color-accent-wash);color:var(--color-accent)}.beta-card strong{font-size:var(--text-md);color:var(--color-ink);font-weight:500}.beta-card p{font-size:var(--text-sm);color:var(--color-ink-muted);text-wrap:pretty;margin:0;line-height:1.45}.beta-support-btns{gap:var(--space-2);flex-wrap:wrap;display:flex}.beta-btn-primary{height:40px;padding:0 var(--space-4);border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-on-accent);font-size:var(--text-md);cursor:pointer;border:none;font-weight:500}.beta-btn-primary:hover{background:var(--color-accent-hover)}.beta-btn-ghost{height:40px;padding:0 var(--space-4);border:1.4px solid var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);font-size:var(--text-md);cursor:pointer;font-weight:500}.beta-btn-ghost:hover{border-color:var(--color-accent);color:var(--color-accent)}.beta-contacts{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(178px,1fr));display:grid}.beta-contact{padding:11px var(--space-3);border:1.4px solid var(--color-line);border-radius:var(--radius-md);color:var(--color-ink);flex-direction:column;gap:3px;text-decoration:none;display:flex}.beta-contact:hover{border-color:var(--color-accent)}.beta-contact span{font-size:var(--text-sm)}.beta-note{font-size:var(--text-xs);line-height:var(--leading-body);color:var(--color-ink-muted)}.beta-editor{gap:var(--space-2);padding:var(--space-3);border:1.4px dashed var(--color-line-strong);border-radius:var(--radius-md);background:var(--color-surface-2);flex-direction:column;display:flex}.beta-editor-status{font-family:var(--font-mono);font-size:var(--text-meta);color:var(--color-ink-muted)}.beta-editor-status.err{color:var(--color-danger)}.beta-editor-status.ok{color:var(--color-success)}.beta-ed-bar{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.beta-ed-lang{border:1.4px solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface);min-width:34px;height:26px;color:var(--color-ink-muted);font-family:var(--font-mono);font-size:var(--text-xs);cursor:pointer;padding:0 8px;font-weight:700}.beta-ed-lang:hover{border-color:var(--color-accent)}.beta-ed-lang.on{border-color:var(--color-accent);background:var(--color-accent-wash);color:var(--color-accent)}.beta-ed-danger{border:1.4px solid var(--color-danger);border-radius:var(--radius-sm);height:26px;color:var(--color-danger);font-size:var(--text-sm);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:0 10px;font-weight:500;display:inline-flex}.beta-ed-danger:hover{background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.beta-ed-block{padding:var(--space-2);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);flex-direction:column;gap:6px;display:flex}.beta-ed-block.picked,.beta-ed-row.picked{border-color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 6%, var(--color-surface))}.beta-ed-head{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.beta-ed-row{border-radius:var(--radius-sm);border:1px solid #0000;align-items:flex-start;gap:6px;padding:4px;display:flex}.beta-ed-input{padding:5px var(--space-2);border:1.4px solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface-2);color:var(--color-ink);font-family:inherit;font-size:var(--text-sm);outline:none}.beta-ed-input:focus{border-color:var(--color-accent);background:var(--color-surface)}.beta-ed-input.mono{font-family:var(--font-mono)}.beta-ed-text{resize:vertical;min-width:0;line-height:var(--leading-body);flex:1}.beta-ed-check{border:1.4px solid var(--color-line-strong);background:var(--color-surface);color:#0000;cursor:pointer;border-radius:5px;flex:none;place-items:center;width:18px;height:18px;margin-top:4px;display:grid;position:relative}.beta-ed-check:hover{border-color:var(--color-danger)}.beta-ed-check input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.beta-ed-check:has(input:checked){border-color:var(--color-danger);background:var(--color-danger);color:var(--color-on-accent)}.beta-ed-check:has(input:focus-visible){outline:2px solid var(--color-accent);outline-offset:1px}.beta-langdots{flex:none;gap:3px;margin-top:6px;display:flex}.beta-langdots b{font-family:var(--font-mono);background:var(--color-hover);color:var(--color-ink-muted);opacity:.45;text-transform:uppercase;border-radius:4px;padding:2px 3px;font-size:8.5px;font-weight:700}.beta-langdots b.on{background:var(--color-accent-wash);color:var(--color-accent);opacity:1}.beta-ed-add{border:1.4px dashed var(--color-line-strong);border-radius:var(--radius-sm);height:28px;color:var(--color-ink-muted);font-size:var(--text-sm);cursor:pointer;background:0 0;align-self:flex-start;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.beta-ed-add:hover{border-color:var(--color-accent);color:var(--color-accent)}html.drillo-welcome .beta-dock,html.drillo-boot-entrance .beta-dock{opacity:0!important;pointer-events:none!important;transition:none!important}body.hub-focus-mode .beta-dock{display:none}@media (width<=640px){.beta-dock{align-items:stretch;left:16px;right:16px}.beta-panel{width:auto;max-width:none}.beta-release{gap:var(--space-2);grid-template-columns:1fr}.beta-release-meta{align-items:center;gap:var(--space-2);flex-direction:row}}.collab-fab{z-index:1400;color:#334155;-webkit-backdrop-filter:blur(8px);cursor:pointer;background:#ffffffb8;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:9px 14px;font-size:13px;font-weight:600;transition:transform .12s,border-color .15s,box-shadow .15s;display:inline-flex;position:fixed;bottom:18px;left:18px;box-shadow:0 6px 18px #0f172a1f}html[data-theme=dark] .collab-fab{color:#cbd5e1;background:#1e293bc7}.collab-fab:hover{border-color:var(--accent,#d94e1f);transform:translateY(-1px);box-shadow:0 10px 24px #0f172a2e}body.tasks-sidebar .collab-fab{transition:left .2s,transform .12s,border-color .15s,box-shadow .15s;left:292px}body.tasks-sidebar.tasks-sidebar--collapsed .collab-fab{left:76px}.collab-fab.is-shared{border-color:var(--accent,#d94e1f)}.collab-fab-badge{background:var(--accent,#d94e1f);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.collab-members{align-items:center;gap:5px;margin-left:4px;display:inline-flex}.collab-members-bubbles{display:inline-flex}.collab-member-bubble{color:#fff;border:2px solid var(--surface,#fff);background:linear-gradient(135deg,#d94e1f,#ff7a3d);border-radius:50%;justify-content:center;align-items:center;width:19px;height:19px;margin-left:-7px;display:inline-flex}.collab-member-bubble:first-child{margin-left:0}.collab-members-count{color:var(--accent,#d94e1f);font-size:11px;font-weight:700}.collab-modal .modal-body{flex-direction:column;gap:12px;display:flex}.collab-project-head{align-items:center;gap:10px;display:flex}.collab-kind{text-transform:uppercase;letter-spacing:.06em;color:var(--accent,#d94e1f);background:color-mix(in srgb, var(--accent,#d94e1f) 12%, transparent);border-radius:6px;padding:3px 8px;font-size:10.5px;font-weight:700}.collab-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted,#64748b);margin-top:4px;font-size:11px;font-weight:700}.collab-member-list{flex-direction:column;gap:6px;display:flex}.collab-member-row{border:1px solid var(--border-light,#e2e8f0);background:var(--bg-app,#f8fafc);border-radius:10px;align-items:center;gap:10px;padding:7px 9px;display:flex}.collab-avatar{color:#fff;background:linear-gradient(135deg,#d94e1f,#ff7a3d);border-radius:50%;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:inline-flex}.collab-avatar-muted{background:var(--border-light,#cbd5e1);color:var(--text-muted,#475569)}.collab-avatar-img{object-fit:cover}.collab-invite-contact{width:auto;margin:0;padding:5px 10px;font-size:12px}.collab-member-name{min-width:0;color:var(--text-main,#1e293b);text-overflow:ellipsis;flex:1;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex;overflow:hidden}.collab-pending-tag{color:var(--text-muted,#64748b);border:1px solid var(--border-light,#e2e8f0);border-radius:6px;padding:1px 6px;font-size:10.5px;font-weight:600}.collab-role-owner{color:#d89e00;align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex}.collab-role-static{color:var(--text-muted,#64748b);font-size:12px;font-weight:600}.collab-role-select{border:1px solid var(--border-light,#e2e8f0);background:var(--bg-panel,#fff);color:var(--text-main,#1e293b);cursor:pointer;border-radius:8px;padding:5px 7px;font-size:12.5px}.collab-invite-row{align-items:center;gap:8px;display:flex}.collab-invite-row .form-input{flex:1;min-width:0}.collab-inline-icon{color:var(--text-muted,#64748b);flex:none}.collab-link-btn{border:1px dashed var(--border-light,#cbd5e1);color:var(--text-main,#1e293b);cursor:pointer;background:0 0;border-radius:9px;align-self:flex-start;align-items:center;gap:7px;padding:7px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.collab-link-btn:hover{border-color:var(--accent,#d94e1f);color:var(--accent,#d94e1f)}.collab-danger{color:#ef4444}.collab-foot-note{color:var(--text-muted,#64748b);align-items:center;gap:6px;margin-top:6px;font-size:11.5px;display:flex}.collab-notice{background:var(--accent,#d94e1f);color:#fff;text-align:center;border-radius:9px;padding:8px 12px;font-size:12.5px;font-weight:600;position:sticky;bottom:0}.collab-empty,.collab-upsell{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:14px 6px;display:flex}.collab-upsell h3{color:var(--text-main,#1e293b);margin:2px 0 0;font-size:16px}.collab-upsell p,.collab-empty p{color:var(--text-muted,#64748b);max-width:360px;margin:0;font-size:13px}.collab-upsell-icon{color:#fff;background:linear-gradient(135deg,#d94e1f,#ff7a3d);border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.collab-perks{flex-direction:column;gap:6px;margin-top:4px;display:flex}.collab-perks span{color:var(--text-main,#1e293b);align-items:center;gap:7px;font-size:12.5px;display:inline-flex}.collab-perks svg{color:#16a34a}.collab-status{border-radius:10px;margin-bottom:12px;padding:9px 11px;font-size:12px;line-height:1.4}.collab-status-ok{color:#15803d;background:#16a34a1a;border:1px solid #16a34a40}.collab-status-warn{color:#b45309;background:#d977061a;border:1px solid #d9770640}.social-fab{z-index:1400;border:1px solid var(--border-light);background:var(--bg-panel);width:46px;height:46px;color:var(--text-main);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:transform .15s,background .15s;display:flex;position:fixed;bottom:20px;right:80px;box-shadow:0 4px 16px #0000002e}.social-fab:hover{background:var(--bg-secondary);transform:translateY(-2px)}.social-fab-badge{background:var(--primary);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:flex;position:absolute;top:-3px;right:-3px}.social-window{z-index:1600;background:var(--bg-panel);border:1px solid var(--border-light);border-radius:14px;flex-direction:column;animation:.14s social-pop;display:flex;position:fixed;overflow:hidden;box-shadow:0 12px 40px #00000047}@keyframes social-pop{0%{opacity:.4;transform:scale(.97)}to{opacity:1;transform:none}}.social-winhead{border-bottom:1px solid var(--border-light);cursor:grab;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;padding:10px 12px;display:flex}.social-winhead:active{cursor:grabbing}.social-head-icon{color:var(--primary);display:flex}.social-head-title{color:var(--text-main);flex:1;font-size:14.5px;font-weight:700}.social-content{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.social-subhead{border-bottom:1px solid var(--border-light);padding:6px 8px}.social-subhead .social-iconbtn{gap:6px;font-size:13px;font-weight:600}.social-resize{cursor:nwse-resize;background:linear-gradient(135deg, transparent 50%, var(--border-light) 50%);border-bottom-right-radius:14px;width:16px;height:16px;position:absolute;bottom:0;right:0}.social-window.is-side{border-top:none;border-bottom:none;border-radius:0;animation:.22s cubic-bezier(.16,1,.3,1) social-slide-in}.social-window.is-side.dock-right{border-right:none}.social-window.is-side.dock-left{border-left:none}@keyframes social-slide-in{0%{opacity:.4;transform:translate(12px)}to{opacity:1;transform:none}}.social-edge-resize{cursor:ew-resize;z-index:2;width:6px;position:absolute;top:0;bottom:0}.social-window.is-side.dock-right .social-edge-resize{left:0}.social-window.is-side.dock-left .social-edge-resize{right:0}.social-edge-resize:hover{background:var(--border-light)}.social-iconbtn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:5px;display:flex}.social-iconbtn:hover{background:var(--bg-secondary);color:var(--text-main)}.social-iconbtn.sm{padding:3px}.social-self{background:var(--bg-secondary);border-bottom:1px solid var(--border-light);align-items:center;gap:10px;padding:9px 14px;display:flex}.social-self .social-avatar{border-radius:11px;width:32px;height:32px}.social-tabs{border-bottom:1px solid var(--border-light);gap:4px;padding:8px 10px 0;display:flex}.social-tabs button{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 4px;font-size:13px;font-weight:600;display:flex;position:relative}.social-tabs button.active{color:var(--primary);border-bottom-color:var(--primary)}.social-tab-badge{background:var(--primary);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;display:flex;position:absolute;top:2px;right:8px}.social-tabs.icons button{border-radius:10px 10px 0 0;height:40px;margin-bottom:-1px}.social-tabs.icons button.active{background:var(--bg-secondary);color:var(--text-main);border-bottom-color:var(--primary)}.social-tab-tip{background:var(--text-main);color:var(--bg-panel);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;opacity:0;pointer-events:none;z-index:5;border-radius:7px;padding:4px 8px;font-size:10.5px;font-weight:700;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)scale(.96)}.social-tabs.icons button:hover .social-tab-tip{opacity:1;transform:translate(-50%)scale(1)}.social-body{flex:1;padding:10px;overflow-y:auto}.social-empty{text-align:center;color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:48px 24px;display:flex}.social-empty.subtle{padding:28px 18px}.social-empty.sm{padding:16px}.social-empty p{margin:0;font-size:13px}.social-handle-setup{border:1px dashed var(--border-light);background:var(--bg-secondary);border-radius:10px;margin:10px;padding:12px}.social-handle-hint{color:var(--text-muted);margin:0 0 8px;font-size:12.5px}.social-handle-row{align-items:center;gap:6px;display:flex}.social-handle-at{color:var(--text-muted);display:flex}.social-handle-row input{border:1px solid var(--border-light);background:var(--bg-app);color:var(--text-main);border-radius:7px;flex:1;padding:7px 9px;font-size:13px}.social-err{color:#e5484d;margin:6px 0 0;font-size:12px}.social-search-block{margin-bottom:8px}.social-search{border:1px solid var(--border-light);background:var(--bg-app);color:var(--text-muted);border-radius:9px;align-items:center;gap:8px;padding:7px 10px;display:flex}.social-search input{color:var(--text-main);background:0 0;border:none;outline:none;flex:1;font-size:13px}.social-results{margin-top:6px}.social-section-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:14px 4px 6px;font-size:11px;font-weight:700}.social-list{flex-direction:column;gap:2px;display:flex}.social-person{text-align:left;width:100%;color:var(--text-main);background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;padding:8px;display:flex}.social-person.clickable{cursor:pointer}.social-person.clickable:hover{background:var(--bg-secondary)}.social-person-main{flex-direction:column;flex:1;min-width:0;display:flex}.social-person-name{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.social-person-handle{color:var(--text-muted);font-size:11.5px}.social-person-go{color:var(--text-muted);flex-shrink:0}.social-avatar-wrap{flex-shrink:0;display:inline-flex;position:relative}.social-status{border:2px solid var(--bg-panel);border-radius:50%;width:11px;height:11px;position:absolute;bottom:-1px;right:-1px}.social-status.online{background:#22c55e}.social-status.offline{background:var(--text-muted);opacity:.55}.social-avatar{object-fit:cover;background:var(--bg-secondary);border-radius:50%;flex-shrink:0;width:34px;height:34px}.social-avatar.initials{color:#fff;background:linear-gradient(135deg, var(--primary), var(--primary-hover,var(--primary)));justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.social-notif{text-align:left;cursor:pointer;width:100%;color:var(--text-main);background:0 0;border:none;border-radius:9px;align-items:flex-start;gap:10px;padding:9px 8px;display:flex}.social-notif:hover{background:var(--bg-secondary)}.social-notif.unread{background:color-mix(in srgb, var(--primary) 9%, transparent)}.social-notif-icon{background:color-mix(in srgb, var(--primary) 16%, transparent);width:28px;height:28px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.social-notif-text{font-size:13px;line-height:1.35}.social-notif-time{color:var(--text-muted);font-size:11px}.social-unread-dot{background:var(--primary);color:#fff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:flex}.social-rel-btn{border:1px solid var(--border-light);cursor:pointer;background:var(--bg-app);color:var(--text-main);border-radius:7px;flex-shrink:0;align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex}.social-rel-btn.none{background:var(--primary);color:#fff;border-color:var(--primary)}.social-rel-btn.none:hover{background:var(--primary-hover,var(--primary))}.social-rel-btn.outgoing,.social-rel-btn:disabled{color:var(--text-muted);cursor:default}.social-rel-btn.friends{color:var(--text-muted)}.social-req-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.social-btn-primary{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:600;display:inline-flex}.social-btn-primary.sm{padding:6px 10px;font-size:12px}.social-btn-primary:disabled{opacity:.5;cursor:default}.social-thread{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.social-thread-peer{border-bottom:1px solid var(--border-light);align-items:center;gap:10px;padding:10px 14px;display:flex}.social-stream{flex-direction:column;flex:1;gap:8px;padding:14px;display:flex;overflow-y:auto}.social-bubble-row{display:flex}.social-bubble-row.mine{justify-content:flex-end}.social-bubble{background:var(--bg-secondary);max-width:78%;color:var(--text-main);border-radius:14px;flex-direction:column;gap:3px;padding:8px 11px;display:flex}.social-bubble-row.mine .social-bubble{background:var(--primary);color:#fff}.social-bubble-text{white-space:pre-wrap;word-break:break-word;font-size:13.5px;line-height:1.35}.social-bubble-time{opacity:.65;align-self:flex-end;font-size:10.5px}.social-composer{border-top:1px solid var(--border-light);gap:8px;padding:10px;display:flex}.social-composer textarea{resize:none;border:1px solid var(--border-light);background:var(--bg-app);color:var(--text-main);border-radius:10px;flex:1;max-height:120px;padding:9px 11px;font-family:inherit;font-size:13px}.social-call-btns{gap:4px;margin-left:auto;display:flex}.call-ringer{z-index:4000;background:var(--bg-panel,var(--bg-secondary));color:var(--text-main);border:1px solid var(--border-light);border-radius:16px;align-items:center;gap:12px;padding:12px 16px;animation:1.2s ease-in-out infinite call-ring-pulse;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #00000040}@keyframes call-ring-pulse{50%{box-shadow:0 12px 40px #d94e1f59}}.call-ringer-main{flex-direction:column;display:flex}.call-sub{opacity:.7;font-size:12px}.call-window{z-index:4000;color:#fff;background:#1c1c20;border:1px solid #ffffff1f;border-radius:16px;flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 16px 48px #00000073}.call-head{cursor:move;-webkit-user-select:none;user-select:none;background:#ffffff0f;padding:8px 14px}.call-name{font-size:13.5px;font-weight:600}.call-stage{background:#000;flex:1;min-height:0;position:relative}.call-stage video{object-fit:contain;width:100%;height:100%;display:block}.call-stage video.hidden{display:none}.call-peer-idle{place-items:center;display:grid;position:absolute;inset:0}.call-pip{background:#111;border:1px solid #ffffff40;border-radius:10px;bottom:10px;right:10px;object-fit:cover!important;width:96px!important;height:64px!important;position:absolute!important}.call-controls{justify-content:center;gap:10px;padding:12px;display:flex}.call-btn{cursor:pointer;color:#fff;background:#ffffff1f;border:none;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.call-ringer .call-btn{background:var(--bg-secondary);color:var(--text-main)}.call-btn:hover{filter:brightness(1.2)}.call-btn:disabled{opacity:.4;cursor:default}.call-btn.off{color:#ffb4a2;background:#ffffff40}.call-btn.active{background:var(--primary,#d94e1f)}.call-btn.accept{color:#fff!important;background:#2ea44f!important}.call-btn.end{color:#fff!important;background:#d9363e!important}.call-avatar{object-fit:cover;background:var(--primary,#d94e1f);color:#fff;border-radius:50%;place-items:center;width:40px;height:40px;font-weight:700;display:grid}.call-avatar.big{width:84px;height:84px;font-size:30px}.call-window.full{z-index:5000;border:none;border-radius:0;width:100vw!important;height:100vh!important;inset:0!important}.call-head{align-items:center;gap:10px;display:flex}.call-timer{opacity:.75;font-variant-numeric:tabular-nums;font-size:12px}.call-head-btns{gap:2px;margin-left:auto;display:flex}.call-headbtn{cursor:pointer;color:#fff;opacity:.75;background:0 0;border:none;border-radius:6px;place-items:center;width:26px;height:26px;display:grid}.call-headbtn:hover{opacity:1;background:#ffffff1f}.call-resize{cursor:nwse-resize;z-index:2;background:linear-gradient(135deg,#0000 50%,#ffffff59 50%);border-bottom-right-radius:16px;width:16px;height:16px;position:absolute;bottom:0;right:0}.call-window.mini{border-radius:999px;flex-direction:row;align-items:center;gap:8px;width:auto;padding:8px 10px}.call-mini-drag{cursor:move;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;min-width:0;display:flex}.call-mini-main{flex-direction:column;min-width:0;max-width:160px;display:flex}.call-mini-main .call-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.call-btn.sm{flex:none;width:32px;height:32px}.call-window video.hidden{display:none}.call-toast{z-index:5001;color:#fff;background:#1c1c20;border:1px solid #ffffff26;border-radius:12px;align-items:center;gap:10px;max-width:340px;padding:10px 14px;font-size:13px;display:flex;position:fixed;top:18px;right:18px;box-shadow:0 10px 28px #00000059}.call-share-chip{background:var(--primary,#d94e1f);color:#fff;white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.call-main{flex:1;min-height:0;display:flex}.call-stage-col{flex-direction:column;flex:1;min-width:0;display:flex}.call-chat{background:var(--bg-app,#fff);width:280px;min-height:0;color:var(--text-main,#222);border-left:1px solid #ffffff1f;flex-direction:column;flex:none;display:flex}.call-chat .social-thread{flex:1;min-height:0}.call-headbtn.on{opacity:1;background:#ffffff2e}.call-pip.share{outline:2px solid var(--primary,#d94e1f)}.call-settings{z-index:3;color:#fff;background:#26262c;border:1px solid #ffffff26;border-radius:12px;flex-direction:column;gap:8px;width:240px;padding:10px;display:flex;position:absolute;top:10px;right:10px;box-shadow:0 10px 28px #0006}.call-set-head{justify-content:space-between;align-items:center;font-size:12.5px;font-weight:600;display:flex}.call-set-row{opacity:.95;flex-direction:column;gap:3px;font-size:11.5px;display:flex}.call-set-row select{color:#fff;background:#1c1c20;border:1px solid #fff3;border-radius:8px;max-width:100%;padding:5px 6px;font-size:12px}.call-set-hint{opacity:.65;margin:0;font-size:11px}.social-clip-wrap{align-self:flex-end;position:relative}.social-clip-popover{z-index:30;background:var(--bg-panel,var(--bg-app));border:1px solid var(--border-light);border-radius:12px;width:300px;max-height:320px;padding:10px;position:absolute;bottom:40px;left:0;overflow-y:auto;box-shadow:0 8px 28px #0000002e}.social-clip-list{flex-direction:column;gap:2px;display:flex}.social-clip-row{border-radius:8px;align-items:center;gap:8px;padding:6px 4px;display:flex}.social-clip-row:hover{background:var(--bg-hover,#0000000a)}.social-clip-row .social-rel-btn{padding:4px 8px;font-size:11px}.social-clip-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-main);flex:1;font-size:13px;font-weight:600;overflow:hidden}.social-clip-icon{flex-shrink:0;font-size:16px}.social-clip-icon.lg{align-items:center;font-size:22px;display:inline-flex}.social-clip-card{align-items:center;gap:10px;min-width:200px;padding:4px 2px;display:flex}.social-clip-done{color:var(--text-muted);flex-shrink:0;align-items:center;gap:4px;font-size:12px;font-weight:600;display:inline-flex}.social-filter-chips{gap:6px;margin:2px 0 8px;display:flex}.social-filter-chips button{border:1px solid var(--border-light);background:var(--bg-app);color:var(--text-muted);cursor:pointer;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600}.social-filter-chips button.active{background:var(--primary);border-color:var(--primary);color:#fff}.social-group-count{color:var(--text-muted);flex-shrink:0;align-items:center;gap:4px;font-size:12px;display:inline-flex}.social-search.sm{margin:0 0 6px}.social-search.sm input{font-size:12px}.social-clip-crumbs{flex-wrap:wrap;align-items:center;gap:2px;min-height:22px;margin:2px 0 6px;display:flex}.social-clip-crumbwrap{align-items:center;gap:2px;display:inline-flex}.social-clip-crumbsep{color:var(--text-muted);flex-shrink:0}.social-clip-crumb{cursor:pointer;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;border-radius:6px;max-width:110px;padding:2px 5px;font-size:12px;font-weight:600;overflow:hidden}.social-clip-crumb:hover{background:var(--bg-hover,#0000000d);color:var(--text-main)}.social-clip-crumb.current{color:var(--text-main)}.social-clip-main{text-align:left;min-width:0;color:var(--text-main);cursor:default;background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:2px;display:flex}.social-clip-row.folder .social-clip-main{cursor:pointer}.social-clip-row.folder .social-clip-main:hover .social-clip-name{color:var(--primary)}.social-clip-enter{color:var(--text-muted);flex-shrink:0}.social-clip-name{flex-direction:column;display:flex}.social-clip-path{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:500;overflow:hidden}.social-clip-action{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.social-clip-action:hover:not(:disabled){background:var(--primary);border-color:var(--primary);color:#fff}.social-clip-action:disabled{opacity:.5;cursor:default}.social-clip-action:after{content:attr(data-tip);background:var(--text-main);color:var(--bg-app,#fff);white-space:nowrap;opacity:0;pointer-events:none;z-index:5;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:600;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)scale(.96)}.social-clip-action:hover:not(:disabled):after{opacity:1;transform:translate(-50%)scale(1)}.social-profile-scrim{z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a61;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.social-profile-card{width:min(320px,92%);max-height:96%;position:relative;top:auto;right:auto;overflow-y:auto;transform:none}.social-profile-card .app-account-cover{cursor:default}.social-profile-actions{align-items:center;gap:8px;margin-top:4px;display:flex}.social-profile-actions .social-iconbtn{border-radius:10px;padding:8px}.social-avatar-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;padding:0;line-height:0}.social-avatar-btn:hover{filter:brightness(.9)}.social-avatar-btn:focus-visible{outline:2px solid var(--accent,#d94e1f);outline-offset:2px}.social-window,.cfull{--sc-line:var(--border-light);--sc-surface:var(--bg-panel);--sc-raised:color-mix(in srgb, var(--text-main) 4%, var(--bg-panel));--sc-hover:color-mix(in srgb, var(--text-main) 8%, var(--bg-panel));--sc-ink:var(--text-main);--sc-muted:var(--text-muted);--sc-accent:var(--primary);--sc-mono:var(--font-mono)}.sc-label{font-family:var(--sc-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sc-muted);justify-content:space-between;align-items:center;gap:8px;padding:12px 6px 6px;font-size:10px;font-weight:700;line-height:1.2;display:flex}.sc-label.accent{color:var(--sc-accent)}.sc-label button{color:inherit;cursor:pointer;background:0 0;border:none;padding:2px;display:flex}.sc-name{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;line-height:1.3;overflow:hidden}.sc-name.lg{font-size:15px;font-weight:700}.sc-name.strong{font-weight:700}.sc-sub{color:var(--sc-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;overflow:hidden}.sc-hint{color:var(--sc-muted);margin:0;font-size:12px;line-height:1.45}.sc-main{text-align:left;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sc-tile{color:#fff;border-radius:13px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:700;line-height:1;display:flex;position:relative}.sc-tile.sm{border-radius:10px;width:30px;height:30px;font-size:12.5px}.sc-tile img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.sc-badge{font-family:var(--sc-mono);background:var(--sc-accent);color:#fff;border-radius:999px;flex:none;padding:2px 7px;font-size:10px;font-weight:700;line-height:1.4}.sc-chip{font-family:var(--sc-mono);letter-spacing:.06em;text-transform:uppercase;background:var(--sc-hover);color:var(--sc-muted);border-radius:6px;flex:none;padding:3px 6px;font-size:9.5px;font-weight:700;line-height:1.4}.sc-btn{font-family:var(--sc-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:1px solid var(--sc-line);background:var(--sc-surface);color:var(--sc-ink);border-radius:9px;flex:none;justify-content:center;align-items:center;gap:6px;padding:9px 12px;font-size:10.5px;font-weight:700;line-height:1.2;display:inline-flex}.sc-btn:hover:not(:disabled){border-color:var(--sc-ink)}.sc-btn.sm{padding:6px 9px;font-size:10px}.sc-btn.primary{background:var(--sc-ink);border-color:var(--sc-ink);color:var(--sc-surface)}.sc-btn.primary:hover:not(:disabled),.sc-btn.accent{background:var(--sc-accent);border-color:var(--sc-accent);color:#fff}.sc-btn.accent:hover:not(:disabled){filter:brightness(1.08)}.sc-btn.danger:hover:not(:disabled){color:#e5484d;border-color:#e5484d}.sc-btn:disabled{opacity:.5;cursor:default}.sc-iconbtn{cursor:pointer;width:32px;height:32px;color:var(--sc-muted);background:0 0;border:1px solid #0000;border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.sc-iconbtn:hover:not(:disabled){background:var(--sc-hover);color:var(--sc-ink)}.sc-iconbtn.accent{background:var(--sc-accent);border-color:var(--sc-accent);color:#fff}.sc-iconbtn.accent:hover:not(:disabled){filter:brightness(1.08);color:#fff}.sc-iconbtn.ok{color:#fff;background:#1d7a49;border-color:#1d7a49}.sc-iconbtn:disabled{opacity:.5;cursor:default}.sc-back{cursor:pointer;width:100%;color:var(--sc-muted);text-align:left;background:0 0;border:none;flex:none;align-items:center;gap:7px;padding:10px;font-size:12.5px;font-weight:600;line-height:1.3;display:flex}.sc-back:hover{color:var(--sc-ink)}.sc-field{border:1px solid var(--sc-line);background:var(--sc-raised);min-width:0;color:var(--sc-muted);border-radius:12px;flex:1;align-items:center;gap:8px;padding:9px 11px;display:flex}.sc-field:focus-within{border-color:var(--sc-accent)}.sc-field input{min-width:0;color:var(--sc-ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:13px;line-height:1.4}.sc-field input::placeholder{color:var(--sc-muted)}.sc-field.as-button{cursor:pointer;font-size:13px}.sc-field.as-button:hover{border-color:var(--sc-ink)}.sc-select{border:1px solid var(--sc-line);background:var(--sc-surface);color:var(--sc-ink);cursor:pointer;border-radius:8px;padding:5px 7px;font-size:11.5px}.sc-check{color:var(--sc-ink);cursor:pointer;align-items:center;gap:8px;font-size:12.5px;line-height:1.4;display:flex}.sc-check input{cursor:pointer}.social-body.flush{flex-direction:column;padding:0;display:flex;overflow:hidden}.sc-view{flex-direction:column;flex:1;min-height:0;padding:8px 10px 12px;display:flex;overflow-y:auto}.sc-view.stream{padding-bottom:0;overflow:hidden}.sc-toolbar{flex:none;align-items:center;gap:8px;padding:4px 0 8px;display:flex}.sc-head{flex:none;align-items:center;gap:10px;padding:6px 4px 10px;display:flex}.sc-actions{flex:none;align-items:center;gap:6px;display:flex}.sc-cards{flex-direction:column;gap:8px;display:flex}.sc-card{text-align:left;cursor:pointer;border:1px solid var(--sc-line);background:var(--sc-surface);width:100%;color:var(--sc-ink);border-radius:14px;align-items:center;gap:12px;padding:10px;display:flex}.sc-card:hover{border-color:var(--sc-accent);background:var(--sc-raised)}.sc-card.static,.sc-card.static:hover{cursor:default;border-color:var(--sc-line);background:var(--sc-surface)}.sc-rows{flex-direction:column;gap:2px;display:flex}.sc-row,.sc-chan{text-align:left;width:100%;color:var(--sc-ink);background:0 0;border:none;border-radius:11px;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;line-height:1.3;display:flex}.sc-chan{cursor:pointer}.sc-chan:hover,.sc-row:hover{background:var(--sc-raised)}.sc-chan>svg{color:var(--sc-muted);flex:none}.sc-chan .sc-name{flex:1}.sc-cta{cursor:pointer;border:1px dashed var(--sc-line);background:var(--sc-raised);color:var(--sc-accent);font-family:var(--sc-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:14px;flex:none;margin-top:10px;padding:12px;font-size:10.5px;font-weight:700;line-height:1.2}.sc-cta:hover{border-color:var(--sc-accent)}.sc-stream{flex-direction:column;flex:1;gap:14px;min-height:0;padding:6px 2px 12px;display:flex;overflow-y:auto}.sc-msg{gap:10px;display:flex}.sc-msg-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.sc-msg-meta{align-items:baseline;gap:8px;display:flex}.sc-msg-meta strong{font-size:13px;font-weight:700;line-height:1.3}.sc-msg-meta>span{font-family:var(--sc-mono);color:var(--sc-muted);font-size:10.5px;line-height:1.3}.sc-msg-meta em{font-style:normal;font-family:var(--sc-mono);letter-spacing:.06em;text-transform:uppercase;background:var(--sc-hover);color:var(--sc-muted);border-radius:5px;padding:2px 6px;font-size:9px;font-weight:700;line-height:1.4}.sc-msg-del{cursor:pointer;color:var(--sc-muted);opacity:0;background:0 0;border:none;border-radius:6px;margin-left:auto;padding:2px;transition:opacity .1s;display:flex}.sc-msg:hover .sc-msg-del{opacity:1}.sc-msg-del:hover{color:#e5484d}.sc-msg-body p{white-space:pre-wrap;word-break:break-word;margin:0;font-size:14px;line-height:1.55}.sc-composer{border-top:1px solid var(--sc-line);flex:none;align-items:center;gap:8px;padding:10px 0 12px;display:flex}.sc-composer input{border:1px solid var(--sc-line);background:var(--sc-raised);min-width:0;color:var(--sc-ink);border-radius:13px;outline:none;flex:1;padding:11px 13px;font-family:inherit;font-size:13.5px;line-height:1.4}.sc-composer input:focus{border-color:var(--sc-accent)}.sc-composer .sc-iconbtn{width:38px;height:38px}.sc-modal-scrim{z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a6b;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.sc-modal{border:1px solid var(--sc-line);background:var(--sc-surface);width:min(340px,100%);color:var(--sc-ink);border-radius:16px;flex-direction:column;gap:12px;padding:16px;display:flex;box-shadow:0 18px 40px -18px #00000080}.sc-modal h3{margin:0;font-size:14.5px;font-weight:700;line-height:1.3}.sc-modal-actions{justify-content:flex-end;gap:8px;display:flex}.cfull-scrim{z-index:1700;background:var(--bg-app);position:fixed;inset:0}.cfull{background:var(--sc-surface);color:var(--sc-ink);display:flex;position:absolute;inset:0;overflow:hidden}.cfull-rail{background:var(--text-main);flex-direction:column;flex:none;align-items:center;gap:8px;width:76px;padding:14px 0;display:flex;overflow:hidden auto}.cfull-rail-tile,.cfull-rail-add{cursor:pointer;width:46px;height:46px;color:var(--bg-panel);background:#ffffff24;border:none;border-radius:15px;flex:none;justify-content:center;align-items:center;font-size:17px;font-weight:700;line-height:1;display:flex}.cfull-rail-tile.active{box-shadow:0 0 0 2px var(--bg-panel) inset}.cfull-rail-add{background:0 0;border:1px dashed #ffffff59}.cfull-rail-add:hover{border-color:var(--sc-accent);color:var(--sc-accent)}.cfull-side{background:var(--sc-raised);border-right:1px solid var(--sc-line);flex-direction:column;flex:none;width:252px;min-width:0;display:flex}.cfull-banner{border-bottom:1px solid var(--sc-line);flex:none;align-items:center;gap:10px;padding:16px 14px;display:flex}.cfull-chanlist{flex-direction:column;flex:1;min-height:0;padding:4px 8px 10px;display:flex;overflow-y:auto}.cfull-side-foot{border-top:1px solid var(--sc-line);flex:none;gap:8px;padding:10px;display:flex}.cfull-side-foot .sc-btn{flex:1}.cfull-main{flex-direction:column;flex:1;min-width:0;display:flex}.cfull-head{border-bottom:1px solid var(--sc-line);flex:none;align-items:center;gap:12px;padding:14px 20px;display:flex}.cfull-head-title{flex:none;align-items:center;gap:7px;font-size:16px;font-weight:700;line-height:1.3;display:flex}.cfull-head-title svg{color:var(--sc-muted)}.cfull-head-sub{min-width:0;color:var(--sc-muted);border-left:1px solid var(--sc-line);text-overflow:ellipsis;white-space:nowrap;flex:1;padding-left:12px;font-size:12.5px;line-height:1.4;overflow:hidden}.cfull-stream{flex-direction:column;flex:1;gap:18px;min-height:0;padding:20px 22px;display:flex;overflow-y:auto}.cfull-stream .sc-msg-body p{max-width:68ch}.cfull-composer{flex:none;padding:0 22px 18px}.cfull-composer .sc-composer{border-top:none;padding:0}.cfull-members{background:var(--sc-raised);border-left:1px solid var(--sc-line);flex-direction:column;flex:none;width:232px;min-width:0;padding:8px 10px 16px;display:flex;overflow-y:auto}.cfull-pending{border:1px solid var(--sc-line);background:var(--sc-surface);border-radius:12px;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:6px;padding:9px;display:flex}.cfull-pending .sc-actions{width:100%}.cfull-pending .sc-actions .sc-iconbtn{flex:1}@media (width<=1180px){.cfull-members{display:none}}@media (width<=860px){.cfull-rail{width:60px}.cfull-side{width:210px}}@media (width<=680px){.cfull-rail{display:none}.cfull-side{width:176px}.cfull-head{padding:12px 14px}.cfull-head-sub{display:none}.cfull-stream{padding:14px}.cfull-composer{padding:0 14px 14px}}.mytasks-window{z-index:1550;background:var(--bg-panel);border:1px solid var(--border-light);border-radius:14px;flex-direction:column;animation:.14s mytasks-pop;display:flex;position:fixed;overflow:hidden;box-shadow:0 12px 40px #00000047}@keyframes mytasks-pop{0%{opacity:.4;transform:scale(.97)}to{opacity:1;transform:none}}.mytasks-head{border-bottom:1px solid var(--border-light);cursor:grab;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;padding:10px 12px;display:flex}.mytasks-head:active{cursor:grabbing}.mytasks-head-icon{color:var(--primary);display:flex}.mytasks-head-title{color:var(--text-main);font-size:14.5px;font-weight:700}.mytasks-count{color:var(--text-muted);flex:1;font-size:12px}.mytasks-overdue{color:#e5484d;font-style:normal;font-weight:600}.mytasks-iconbtn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:4px;display:flex}.mytasks-iconbtn:hover{background:var(--bg-secondary);color:var(--text-main)}.mytasks-body{flex:1;padding:8px;overflow-y:auto}.mytasks-empty{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:10px;height:100%;padding:48px 24px;display:flex}.mytasks-empty p{margin:0;font-size:13px}.mytasks-group{margin-bottom:10px}.mytasks-group-head{text-align:left;cursor:pointer;width:100%;color:var(--text-main);background:0 0;border:none;border-radius:7px;align-items:center;gap:8px;padding:5px 6px;display:flex}.mytasks-group-head:hover{background:var(--bg-secondary)}.mytasks-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.mytasks-group-name{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;font-weight:700;overflow:hidden}.mytasks-group-count{color:var(--text-muted);font-size:11px;font-weight:700}.mytasks-group-go{color:var(--text-muted);flex-shrink:0}.mytasks-item{text-align:left;cursor:pointer;width:100%;color:var(--text-main);background:0 0;border:none;border-radius:8px;align-items:center;gap:9px;padding:7px 8px;display:flex}.mytasks-item:hover{background:var(--bg-secondary)}.mytasks-item-bar{border-radius:2px;flex-shrink:0;align-self:stretch;width:3px}.mytasks-item-title{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;overflow:hidden}.mytasks-item-meta{color:var(--text-muted);flex-shrink:0;align-items:center;gap:3px;font-size:11px;display:inline-flex}.mytasks-item-meta.overdue{color:#e5484d}.mytasks-resize{cursor:nwse-resize;background:linear-gradient(135deg, transparent 50%, var(--border-light) 50%);border-bottom-right-radius:14px;width:16px;height:16px;position:absolute;bottom:0;right:0}:root{--ob-dim:color-mix(in srgb, var(--color-ink) 62%, transparent);--ob-accent:var(--color-accent)}.ob-root{z-index:9000;pointer-events:none;position:fixed;inset:0}.ob-veil{background:var(--ob-dim);pointer-events:auto;position:fixed;inset:0}.ob-veil-soft{background:#0f141c47;transition:background .2s}.ob-panel{z-index:9001;pointer-events:auto}.ob-ring{z-index:9002;pointer-events:none;box-shadow:0 0 0 2px var(--ob-accent), 0 0 0 6px #d94e1f40;border-radius:12px;animation:1.6s ease-in-out infinite ob-ring-pulse;position:fixed}@keyframes ob-ring-pulse{0%,to{box-shadow:0 0 0 2px var(--ob-accent), 0 0 0 6px #d94e1f38}50%{box-shadow:0 0 0 2px var(--ob-accent), 0 0 0 12px #d94e1f0d}}.ob-ghost{z-index:9004;pointer-events:none;filter:drop-shadow(0 3px 6px #00000059);margin:-2px 0 0 -2px;transition:transform .7s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:0}.ob-ghost-ptr{display:block}.ob-ghost-tap{border:2px solid var(--ob-accent);opacity:0;border-radius:50%;width:16px;height:16px;animation:1.6s ease-out infinite ob-tap;position:absolute;top:2px;left:2px;transform:translate(-50%,-50%)}@keyframes ob-tap{0%{opacity:.8;transform:translate(-50%,-50%)scale(.2)}70%{opacity:0;transform:translate(-50%,-50%)scale(2.4)}to{opacity:0}}.ob-bubble{z-index:9005;background:var(--surface,#fff);color:var(--text-main,#1e293b);pointer-events:auto;border:1px solid #0000000f;border-radius:14px;padding:16px 16px 12px;animation:.28s cubic-bezier(.2,.9,.3,1.2) ob-pop;position:fixed;box-shadow:0 18px 50px #00000047}@keyframes ob-pop{0%{opacity:0;transform:translateY(6px)scale(.96)}}.ob-bubble[style*="translate(-50%"]{animation:.3s cubic-bezier(.2,.9,.3,1.2) ob-pop-center}@keyframes ob-pop-center{0%{opacity:0}}.ob-bubble-title{margin-bottom:5px;font-size:15px;font-weight:700}.ob-bubble-body{color:var(--text-muted,#64748b);font-size:13.5px;line-height:1.5}.ob-bubble-foot{justify-content:space-between;align-items:center;gap:10px;margin-top:14px;display:flex}.ob-bubble-actions{align-items:center;gap:6px;display:flex}.ob-dots{gap:5px;display:flex}.ob-dot{background:#0000002e;border-radius:50%;width:6px;height:6px;transition:all .2s}.ob-dot.on{background:var(--ob-accent);border-radius:3px;width:16px}.ob-btn{background:var(--ob-accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600}.ob-btn:hover{filter:brightness(1.05)}.ob-btn-ghost{color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:none;padding:7px 6px;font-size:13px}.ob-btn-ghost:hover{color:var(--text-main,#1e293b)}.ob-launcher{z-index:8500;touch-action:none;cursor:grab;background:var(--ob-accent);color:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;animation:.4s ob-launch-in;display:flex;position:fixed;box-shadow:0 8px 24px #d94e1f66}.ob-launcher:hover{transform:scale(1.06)}.ob-launcher:active{cursor:grabbing}.ob-launcher.ob-docked{border-radius:50% 12px 12px 50%}.ob-launcher.ob-dock-left{border-radius:12px 50% 50% 12px}@keyframes ob-launch-in{0%{opacity:0;transform:scale(.6)}}.ob-launcher-pin{background:var(--surface,#fff);width:20px;height:20px;color:var(--text-muted,#64748b);cursor:pointer;opacity:0;border-radius:50%;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;top:-6px;right:-6px;box-shadow:0 2px 6px #00000040}.ob-launcher:hover .ob-launcher-pin{opacity:1}.ob-launcher-pin:hover{color:var(--ob-accent)}.ob-launcher-panel{z-index:8501;background:var(--surface,#fff);border:1px solid #0000000f;border-radius:14px;width:260px;max-height:80vh;padding:8px;animation:.24s ob-pop;position:fixed;overflow-y:auto;box-shadow:0 18px 50px #00000047}.ob-launcher-head{color:var(--text-main,#1e293b);padding:8px 10px 6px;font-size:13px;font-weight:700}.ob-launcher-item{text-align:left;cursor:pointer;width:100%;color:var(--text-main,#1e293b);background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;padding:10px;font-size:13.5px;display:flex}.ob-launcher-item:hover{background:#d94e1f14}.ob-launcher-emoji{text-align:center;flex-shrink:0;width:18px;font-size:16px}.ob-launcher-label{flex:1}.ob-launcher-ctx{color:var(--text-muted,#94a3b8);font-size:11.5px}.ob-launcher-play{color:var(--ob-accent);opacity:.7}.ob-launcher-sep{background:#00000014;height:1px;margin:6px 4px}.ob-launcher-dev{color:var(--text-muted,#64748b);font-size:12.5px}.ob-demo .ob-shape,.ob-demo .ob-photo,.ob-demo .ob-folder{z-index:9003;opacity:0;position:fixed}.ob-shape{border-radius:12px;transition:opacity .4s,transform .5s cubic-bezier(.2,.9,.3,1.2);transform:scale(.6);box-shadow:0 10px 30px #00000040}.ob-shape.in{opacity:1;transform:scale(1)}.ob-shape-a{background:linear-gradient(135deg,#d94e1f,#ff7a3d);width:8%;height:12%;top:38%;left:40%}.ob-shape-a.grown{background:linear-gradient(135deg,#007a4d,#34a578);width:12%;height:17%}.ob-shape-b{background:linear-gradient(135deg,#89bdf0,#3f7cbf);width:8%;height:12%;top:36%;left:60%}.ob-shape-b.in{transform:scale(1)}.ob-arrow{z-index:9003;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .4s;position:fixed;inset:0}.ob-arrow.in{opacity:1}.ob-arrow-line{stroke-dasharray:1;stroke-dashoffset:1px}.ob-arrow.in .ob-arrow-line{animation:.6s forwards ob-draw}@keyframes ob-draw{to{stroke-dashoffset:0}}.ob-photo{background:#cfe8ff;border:3px solid #fff;border-radius:10px;width:12%;height:15%;transition:opacity .4s,transform .5s cubic-bezier(.2,.9,.3,1.2);top:58%;left:33%;overflow:hidden;transform:scale(.6)rotate(-6deg);box-shadow:0 10px 30px #00000040}.ob-photo.in{opacity:1;transform:scale(1)rotate(-4deg)}.ob-photo-sky{background:linear-gradient(#8fd0ff,#d6f0ff);position:absolute;inset:0}.ob-photo-sun{background:#ffd766;border-radius:50%;width:22%;padding-bottom:22%;position:absolute;top:16%;right:16%}.ob-photo-hill{background:#6fbf7a;border-radius:50% 50% 0 0/100% 100% 0 0;height:42%;position:absolute;bottom:0;left:0;right:0}.ob-folder{background:var(--surface,#fff);border-radius:12px;justify-content:center;align-items:center;width:8%;height:12%;font-size:40px;transition:opacity .4s,transform .5s cubic-bezier(.2,.9,.3,1.2);display:flex;top:56%;left:54%;transform:scale(.6);box-shadow:0 10px 30px #00000040}.ob-folder.in{opacity:1;transform:scale(1)}.ob-demo-tap{z-index:9004;border:2px solid var(--ob-accent);pointer-events:none;border-radius:50%;width:18px;height:18px;margin:-2px 0 0 -2px;animation:.5s ease-out ob-tap;position:fixed;transform:translate(-50%,-50%)}.ob-demo-caption{z-index:9005;background:var(--surface,#fff);pointer-events:auto;border:1px solid #0000000f;border-radius:100px;align-items:center;gap:16px;padding:12px 18px;animation:.3s ob-pop;display:flex;position:fixed;bottom:48px;left:50%;transform:translate(-50%);box-shadow:0 14px 40px #00000047}.ob-demo-cap-text{color:var(--text-main,#1e293b);font-size:14px;font-weight:600}.ob-demo-progress{gap:5px;display:flex}.ob-bot-catcher{z-index:9000;cursor:progress;pointer-events:auto;position:fixed;inset:0}.ob-bot .ob-demo-caption{max-width:min(92vw,620px)}.ob-bot-tag{color:#fff;background:var(--ob-accent);white-space:nowrap;border-radius:100px;padding:4px 10px;font-size:12px;font-weight:700}.ob-demo-cap-text{min-width:0}.ob-wi{z-index:9990;pointer-events:auto}.ob-wi-reveal{z-index:9998;opacity:1;pointer-events:auto;background:#fff;transition:opacity .8s cubic-bezier(.25,1,.5,1);position:fixed;inset:0}.ob-wi-reveal.out{opacity:0;pointer-events:none}.ob-wi-skip{z-index:9999;pointer-events:auto;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f141c80;border:none;border-radius:100px;padding:8px 16px;font-size:13px;font-weight:600;position:fixed;top:18px;right:18px}.ob-wi-skip:hover{background:#0f141cb8}.ob-wi-title{z-index:9996;text-align:center;pointer-events:none;letter-spacing:-.02em;color:#111827;font-size:clamp(28px,5vw,52px);font-weight:800;transition:opacity .4s,transform .4s;animation:.6s cubic-bezier(.34,1.56,.64,1) both ob-wi-title-in;position:fixed;top:52%;left:0;right:0}.ob-wi-title.gone{opacity:0;transform:translateY(-16px)}@keyframes ob-wi-title-in{0%{opacity:0;transform:translateY(14px)}}.ob-wi-logo{z-index:9997;color:var(--ob-accent);pointer-events:none;transform-origin:0 100%;transition:transform .8s cubic-bezier(.34,1.56,.64,1);position:fixed;bottom:40px;left:40px}.ob-wi-logo-inner{transform-origin:0 100%;animation:.7s cubic-bezier(.34,1.56,.64,1) both ob-wi-logo-pop;display:block}@keyframes ob-wi-logo-pop{0%{opacity:0;transform:scale(.2)}55%{opacity:1;transform:scale(1.12,.9)}75%{transform:scale(.96,1.06)}to{opacity:1;transform:scale(1)}}.ob-wi-bubble{z-index:9997;background:var(--surface,#fff);max-width:min(60vw,420px);color:var(--text-main,#1e293b);pointer-events:none;border:1px solid #0000000f;border-radius:14px 14px 14px 4px;min-height:20px;padding:12px 16px;font-size:15px;font-weight:600;line-height:1.4;animation:.3s cubic-bezier(.2,.9,.3,1.2) ob-pop;position:fixed;bottom:44px;left:104px;box-shadow:0 14px 40px #00000047}.ob-wi-bubble.cheer{animation:.5s cubic-bezier(.34,1.56,.64,1) ob-wi-cheer}@keyframes ob-wi-cheer{0%{transform:scale(1)}40%{transform:scale(1.08)}to{transform:scale(1)}}.ob-wi-fly{z-index:9994;pointer-events:none;border-radius:10px;width:200px;height:auto;position:fixed;box-shadow:0 14px 40px #0000004d}@media (prefers-reduced-motion:reduce){.ob-wi-reveal,.ob-wi-title,.ob-wi-logo,.ob-wi-logo-inner,.ob-wi-bubble{transition:none!important;animation:none!important}}@media (prefers-color-scheme:dark){.ob-wi-reveal{background:#0f141c}.ob-wi-bubble,.ob-bubble,.ob-launcher-panel,.ob-demo-caption,.ob-folder{color:#e5e9f0;background:#1e2530;border-color:#ffffff14}.ob-bubble-body,.ob-launcher-dev{color:#9aa5b5}.ob-launcher-item,.ob-launcher-head{color:#e5e9f0}.ob-launcher-sep{background:#ffffff1a}}html.drillo-welcome .mdd-rail,html.drillo-welcome .hub-canvas-bar,html.drillo-welcome .hub-dock,html.drillo-welcome .app-account-widget,html.drillo-welcome .app-account-restore,html.drillo-welcome .collab-fab,html.drillo-welcome .floating-pin,html.drillo-welcome .mytasks-window,html.drillo-welcome .social-winhead,html.drillo-welcome .agenda-dh-wd,html.drillo-welcome .ob-launcher,html.drillo-welcome .mirar-home-btn-left,html.drillo-welcome .sync-badge-wrap{opacity:0!important;pointer-events:none!important;transition:none!important}@keyframes ob-scale-in{0%{opacity:0;scale:0}55%{opacity:1;scale:1.14 .88}75%{scale:.94 1.08}90%{scale:1.03 .98}to{opacity:1;scale:1}}html.drillo-welcome-reveal .mdd-rail,html.drillo-welcome-reveal .hub-canvas-bar,html.drillo-welcome-reveal .hub-dock,html.drillo-welcome-reveal .app-account-widget,html.drillo-welcome-reveal .app-account-restore,html.drillo-welcome-reveal .collab-fab,html.drillo-welcome-reveal .floating-pin,html.drillo-welcome-reveal .mytasks-window,html.drillo-welcome-reveal .social-winhead,html.drillo-welcome-reveal .agenda-dh-wd,html.drillo-welcome-reveal .ob-launcher,html.drillo-welcome-reveal .sync-badge-wrap{animation:.55s both ob-scale-in}html.drillo-welcome-reveal .hub-canvas-bar{animation-delay:0s}html.drillo-welcome-reveal .mdd-rail{animation-delay:.1s}html.drillo-welcome-reveal .hub-dock{animation-delay:.15s}html.drillo-welcome-reveal .sync-badge-wrap{animation-delay:.2s}html.drillo-welcome-reveal .app-account-widget,html.drillo-welcome-reveal .app-account-restore{animation-delay:.3s}html.drillo-welcome-reveal .collab-fab{animation-delay:.4s}html.drillo-welcome-reveal .floating-pin{animation-delay:.5s}html.drillo-welcome-reveal .social-winhead,html.drillo-welcome-reveal .mytasks-window{animation-delay:.6s}html.drillo-welcome-reveal .agenda-dh-wd{animation-delay:.65s}html.drillo-welcome-reveal .ob-launcher{animation-delay:.75s}@media (prefers-reduced-motion:reduce){html.drillo-welcome-reveal .mdd-rail,html.drillo-welcome-reveal .hub-canvas-bar,html.drillo-welcome-reveal .hub-dock,html.drillo-welcome-reveal .app-account-widget,html.drillo-welcome-reveal .app-account-restore,html.drillo-welcome-reveal .collab-fab,html.drillo-welcome-reveal .floating-pin,html.drillo-welcome-reveal .mytasks-window,html.drillo-welcome-reveal .social-winhead,html.drillo-welcome-reveal .agenda-dh-wd,html.drillo-welcome-reveal .ob-launcher,html.drillo-welcome-reveal .sync-badge-wrap{animation:none}}html.drillo-boot-entrance .mdd-rail,html.drillo-boot-entrance .hub-canvas-bar,html.drillo-boot-entrance .hub-dock,html.drillo-boot-entrance .app-account-widget,html.drillo-boot-entrance .app-account-restore,html.drillo-boot-entrance .collab-fab,html.drillo-boot-entrance .floating-pin,html.drillo-boot-entrance .mytasks-window,html.drillo-boot-entrance .social-winhead,html.drillo-boot-entrance .agenda-dh-wd,html.drillo-boot-entrance .ob-launcher,html.drillo-boot-entrance .mirar-home-btn-left,html.drillo-boot-entrance .sync-badge-wrap{scale:0;opacity:0!important;pointer-events:none!important;transition:none!important}html.drillo-boot-reveal .mdd-rail,html.drillo-boot-reveal .hub-canvas-bar,html.drillo-boot-reveal .hub-dock,html.drillo-boot-reveal .app-account-widget,html.drillo-boot-reveal .app-account-restore,html.drillo-boot-reveal .collab-fab,html.drillo-boot-reveal .floating-pin,html.drillo-boot-reveal .mytasks-window,html.drillo-boot-reveal .social-winhead,html.drillo-boot-reveal .agenda-dh-wd,html.drillo-boot-reveal .ob-launcher,html.drillo-boot-reveal .sync-badge-wrap{animation:.5s cubic-bezier(.2,.9,.3,1.2) both ob-scale-in}html.drillo-boot-reveal .hub-canvas-bar{animation-delay:0s}html.drillo-boot-reveal .mdd-rail{animation-delay:80ms}html.drillo-boot-reveal .hub-dock{animation-delay:.14s}html.drillo-boot-reveal .sync-badge-wrap{animation-delay:.18s}html.drillo-boot-reveal .app-account-widget,html.drillo-boot-reveal .app-account-restore{animation-delay:.24s}html.drillo-boot-reveal .collab-fab{animation-delay:.32s}html.drillo-boot-reveal .floating-pin{animation-delay:.4s}html.drillo-boot-reveal .social-winhead,html.drillo-boot-reveal .mytasks-window{animation-delay:.46s}html.drillo-boot-reveal .agenda-dh-wd{animation-delay:.52s}html.drillo-boot-reveal .ob-launcher{animation-delay:.58s}.drillo-boot-veil{z-index:99999;pointer-events:none;background:#fff;animation:1s ease-out .35s both drillo-boot-veil-fade;position:fixed;inset:0}@keyframes drillo-boot-veil-fade{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){html.drillo-boot-entrance .mdd-rail,html.drillo-boot-entrance .hub-canvas-bar,html.drillo-boot-entrance .hub-dock,html.drillo-boot-entrance .app-account-widget,html.drillo-boot-entrance .app-account-restore,html.drillo-boot-entrance .collab-fab,html.drillo-boot-entrance .floating-pin,html.drillo-boot-entrance .mytasks-window,html.drillo-boot-entrance .social-winhead,html.drillo-boot-entrance .agenda-dh-wd,html.drillo-boot-entrance .ob-launcher,html.drillo-boot-entrance .mirar-home-btn-left,html.drillo-boot-entrance .sync-badge-wrap{scale:1;opacity:1!important;pointer-events:auto!important}.drillo-boot-veil{display:none}html.drillo-boot-reveal .mdd-rail,html.drillo-boot-reveal .hub-canvas-bar,html.drillo-boot-reveal .hub-dock,html.drillo-boot-reveal .app-account-widget,html.drillo-boot-reveal .app-account-restore,html.drillo-boot-reveal .collab-fab,html.drillo-boot-reveal .floating-pin,html.drillo-boot-reveal .mytasks-window,html.drillo-boot-reveal .social-winhead,html.drillo-boot-reveal .agenda-dh-wd,html.drillo-boot-reveal .ob-launcher,html.drillo-boot-reveal .sync-badge-wrap{animation:none}}
