:root{--bg-primary: #ffffff;--bg-secondary: #fafafa;--accent-blue: #5a9ad9;--accent-blue-light: #7ab3e8;--accent-blue-dark: #3b82f6;--text-primary: #000000;--text-secondary: #6b7280;--text-light: #9ca3af;--border-light: #e5e7eb;--border-purple: #a78bfa;--border-purple-dark: #7c3aed;--button-gray: #f3f4f6;--beni-dk: #1e2124;--beni-dk-m: #2f3234;--beni-tx-m: #636363;--beni-tx-l: #767676;--beni-bd: #e5e5e5;--beni-bg: #f3f3f3;--beni-orange: #ff6619;--beni-teal: #add5d4;--beni-navy: #0d0d55}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,sans-serif;background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.App{min-height:100vh}header{display:none}.header-left{display:none}.logo-container{display:flex;align-items:center;gap:.875rem}.logo{width:40px;height:40px;border-radius:0;flex-shrink:0;display:block;object-fit:contain;image-rendering:auto}.logo-container h1{margin:0;font-size:1.375rem;font-weight:400;color:var(--text-primary);text-transform:lowercase;letter-spacing:-.01em}.header-buttons,.header-button{display:none}:root{--beni-rail-w-collapsed: 64px;--beni-rail-w-open: 260px;--beni-rail-accent: var(--accent-blue, #ff6619);--beni-rail-accent-06: color-mix(in srgb, var(--accent-blue, #ff6619) 8%, transparent);--beni-rail-tx: #1e2124;--beni-rail-tx-m: #5a5a5a;--beni-rail-tx-l: #888888;--beni-rail-bd: #e5e5e5;--beni-rail-bg: #f6f4f1;--beni-surface: #ffffff;--beni-surface-2: #f6f4f1;--beni-surface-hover: #f3f4f6}[data-theme=dark]{--bg-primary: #1a1f24;--bg-secondary: #0f1419;--text-primary: #f1f5f9;--text-secondary: #a0aab6;--text-light: #6b7785;--border-light: #2a3138;--beni-rail-tx: #f1f5f9;--beni-rail-tx-m: #c0c5cb;--beni-rail-tx-l: #8b95a1;--beni-rail-bd: #2a3138;--beni-rail-bg: #1a1f24;--beni-surface: #1a1f24;--beni-surface-2: #0f1419;--beni-surface-hover: #242a31}[data-theme=dark] body{background:var(--bg-secondary);color:var(--text-primary)}[data-theme=dark] .beni-nav-rail{background:var(--beni-surface);border-right-color:var(--beni-rail-bd)}[data-theme=dark] .beni-nav-rail-mark span,[data-theme=dark] .beni-nav-rail-it-lb,[data-theme=dark] .beni-nav-rail-ft-name{color:var(--beni-rail-tx)}[data-theme=dark] .beni-nav-rail-it-ic{color:var(--beni-rail-tx-m)}[data-theme=dark] .beni-nav-rail-ft-sch,[data-theme=dark] .beni-nav-rail-pin{color:var(--beni-rail-tx-l)}[data-theme=dark] .beni-nav-rail-it:hover{background:var(--beni-surface-hover)}[data-theme=dark] .beni-nav-rail-ic:hover{background:var(--beni-surface-hover);color:var(--beni-rail-tx)}[data-theme=dark] .beni-workspace-topbar{background:var(--beni-surface);border-bottom-color:var(--border-light)}[data-theme=dark] .beni-workspace-topbar-due{background:var(--beni-surface-hover);color:var(--text-secondary)}[data-theme=dark] .beni-workspace-back:hover{background:color-mix(in srgb,var(--accent-blue, #5a9ad9) 18%,transparent)}[data-theme=dark] .beni-empty-recents{background:transparent}[data-theme=dark] .beni-empty-recents-card{background:var(--beni-surface);border-color:var(--border-light)}[data-theme=dark] .beni-empty-recents-card:hover{background:var(--beni-surface-hover)}[data-theme=dark] .beni-empty-recents-card-title{color:var(--text-primary)}[data-theme=dark] .beni-settings-page{background:var(--bg-secondary);color:var(--text-primary)}[data-theme=dark] .beni-settings-section{background:var(--beni-surface);border-color:var(--border-light)}[data-theme=dark] .beni-settings-row-title,[data-theme=dark] .beni-settings-hd h2{color:var(--text-primary)}[data-theme=dark] .beni-settings-row-desc,[data-theme=dark] .beni-settings-hd p,[data-theme=dark] .beni-settings-eyebrow,[data-theme=dark] .beni-settings-coming-soon li{color:var(--text-secondary)}[data-theme=dark] .beni-settings-coming-soon li{border-bottom-color:var(--border-light)}[data-theme=dark] .beni-settings-btn{background:var(--beni-surface-hover);color:var(--text-primary);border-color:var(--border-light)}[data-theme=dark] .beni-chat-column{background:var(--beni-surface)}[data-theme=dark] .beni-chat-column .chat-display{background:var(--beni-surface);color:var(--text-primary)}[data-theme=dark] .beni-chat-column .chat-input{background:var(--beni-surface-hover);color:var(--text-primary);border-color:var(--border-light)}[data-theme=dark] .beni-chat-column .chat-input-container,[data-theme=dark] .beni-chat-column .chat-action-row{background:var(--beni-surface);color:var(--text-primary);border-color:var(--border-light)}[data-theme=dark] .beni-chat-column .chat-input::placeholder{color:var(--text-light)}[data-theme=dark] .beni-editor-tabs{background:var(--beni-surface);border-bottom-color:var(--border-light)}[data-theme=dark] .beni-editor-tab{color:var(--text-secondary)}[data-theme=dark] .beni-editor-tab.is-active{color:var(--text-primary)}[data-theme=dark] .beni-editor-toolbar{background:var(--beni-surface);border-bottom-color:var(--border-light);color:var(--text-primary)}[data-theme=dark] .beni-editor-footer{background:var(--beni-surface);border-top-color:var(--border-light);color:var(--text-secondary)}[data-theme=dark] .beni-editor-stage{background:var(--bg-secondary)}[data-theme=dark] .beni-editor-body,[data-theme=dark] .beni-editor-body .ProseMirror{background:#fff;color:#1a1a1a}[data-theme=dark] .beni-autosave-dot{background:var(--beni-surface-hover);border-color:var(--border-light);color:var(--text-secondary)}[data-theme=dark] .beni-nav-rail-mark-logo,[data-theme=dark] img[src^="/beni-logo.png"]{content:url(/beni-logo-white.png);filter:none}[data-theme=dark] .beni-tb-menu{background:var(--beni-surface);border-color:var(--border-light);box-shadow:0 6px 20px #00000080;color:var(--text-primary)}[data-theme=dark] .beni-tb-menu-item{color:var(--text-primary)}[data-theme=dark] .beni-tb-menu-item:hover{background:#ffffff14}[data-theme=dark] .beni-tb-menu-item.is-active{background:color-mix(in srgb,var(--accent-blue, #5a9ad9) 22%,transparent);color:var(--accent-blue)}[data-theme=dark] .beni-tb-menu-item--full{border-top-color:var(--border-light);color:var(--text-secondary)}[data-theme=dark] .beni-tb-btn{color:var(--text-primary)}[data-theme=dark] .beni-tb-btn:hover{background:#ffffff14}[data-theme=dark] .beni-tb-btn.is-active{background:color-mix(in srgb,var(--accent-blue, #5a9ad9) 22%,transparent);color:var(--accent-blue)}[data-theme=dark] .beni-tb-divider{background:var(--border-light)}[data-theme=dark] .beni-tb-dropdown-btn{color:var(--text-primary);background:transparent}[data-theme=dark] .beni-tb-dropdown-btn:hover{background:#ffffff14}[data-theme=dark] .assignments-list-tile,[data-theme=dark] .assignment-card-tile{color:var(--text-primary)}.beni-nav-rail{position:fixed;top:0;left:0;bottom:0;width:var(--beni-rail-w-collapsed);background:#fff;border-right:1px solid var(--beni-rail-bd);display:flex;flex-direction:column;overflow:hidden;z-index:200;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;color:var(--beni-rail-tx);transition:width .3s cubic-bezier(.16,1,.3,1);box-sizing:border-box}.beni-nav-rail.is-open{width:var(--beni-rail-w-open)}.beni-nav-rail.is-open:not(.is-pinned){box-shadow:0 6px 24px #0000000f}.beni-nav-rail-hd{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;flex-shrink:0}.beni-nav-rail.is-open .beni-nav-rail-hd{padding:0 22px 0 20px}.beni-nav-rail-mark{display:flex;align-items:center;gap:10px;flex:1;min-width:0;background:none;border:0;padding:0;cursor:pointer;color:inherit;font:inherit}.beni-nav-rail-mark-logo{width:24px;height:24px;flex-shrink:0;object-fit:contain;display:block;transform:translate(-1px)}.beni-nav-rail-mark-school{max-height:22px;max-width:80px;width:auto;object-fit:contain;flex-shrink:0;opacity:0;transition:opacity .2s .05s cubic-bezier(.16,1,.3,1)}.beni-nav-rail.is-open .beni-nav-rail-mark-school{opacity:1}.beni-nav-rail-mark span{font-family:Poppins,-apple-system,BlinkMacSystemFont,sans-serif;font-size:17px;font-weight:500;letter-spacing:-.02em;white-space:nowrap;opacity:0;transition:opacity .2s .05s cubic-bezier(.16,1,.3,1)}.beni-nav-rail.is-open .beni-nav-rail-mark span{opacity:1}.beni-nav-rail-pin{width:26px;height:26px;display:grid;place-items:center;border-radius:5px;color:var(--beni-rail-tx-l);opacity:0;flex-shrink:0;background:transparent;border:0;cursor:pointer;transition:opacity .2s,color .15s,background .15s}.beni-nav-rail.is-open .beni-nav-rail-pin{opacity:1}.beni-nav-rail-pin:hover{background:var(--beni-rail-bg);color:var(--beni-rail-tx)}.beni-nav-rail.is-pinned .beni-nav-rail-pin{color:var(--beni-rail-accent);background:var(--beni-rail-accent-06)}.beni-nav-rail-nav{display:flex;flex-direction:column;padding:6px 10px;gap:2px}.beni-nav-rail-it{position:relative;display:flex;align-items:center;gap:14px;height:40px;padding:0 12px;border-radius:6px;color:var(--beni-rail-tx-m);white-space:nowrap;overflow:hidden;background:transparent;border:0;cursor:pointer;font:inherit;transition:background .15s,color .15s}.beni-nav-rail-it:hover{background:var(--beni-rail-bg);color:var(--beni-rail-tx)}.beni-nav-rail-it.is-on{background:var(--beni-rail-accent-06);color:var(--beni-rail-tx)}.beni-nav-rail-it.is-on .beni-nav-rail-it-ic{color:var(--beni-rail-accent)}.beni-nav-rail-it.is-on:before{content:"";position:absolute;left:0;top:50%;width:2px;height:18px;background:var(--beni-rail-accent);border-radius:0 2px 2px 0;transform:translateY(-50%)}.beni-nav-rail-it-ic{position:relative;display:grid;place-items:center;width:20px;height:20px;flex-shrink:0}.beni-nav-rail-it-lb{font-size:12.5px;font-weight:500;letter-spacing:-.005em;opacity:0;transition:opacity .2s cubic-bezier(.16,1,.3,1)}.beni-nav-rail.is-open .beni-nav-rail-it-lb{opacity:1}.beni-nav-rail-it-badge{position:absolute;top:-1px;right:-2px;width:7px;height:7px;border-radius:50%;background:var(--beni-rail-accent);border:1.5px solid #ffffff}.beni-nav-rail-it.is-on .beni-nav-rail-it-badge{border-color:var(--beni-rail-accent-06)}.beni-nav-rail-eyebrow{font-family:Inter,sans-serif;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--beni-rail-tx-l);margin-bottom:10px}.beni-nav-rail-accent-row{display:flex;gap:8px}.beni-nav-rail-accent-dot{width:22px;height:22px;border-radius:50%;border:1px solid rgba(0,0,0,.12);padding:0;cursor:pointer;flex-shrink:0;transition:transform .12s ease,border-color .12s ease}.beni-nav-rail-accent-dot:hover{transform:scale(1.08)}.beni-nav-rail-accent-dot.is-on{border:2px solid var(--beni-rail-tx)}.beni-nav-rail-ft{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid var(--beni-rail-bd);white-space:nowrap;overflow:hidden;flex-shrink:0}.beni-nav-rail:not(:has(.beni-nav-rail-school-band)) .beni-nav-rail-ft{margin-top:auto}.beni-nav-rail-ft-photo{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.beni-nav-rail-ft-photo--initials{display:grid;place-items:center;background:linear-gradient(145deg,#0ea5e9,#2563eb);color:#fff;font-weight:700;font-size:13px}.beni-nav-rail-ft-who{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0;opacity:0;transition:opacity .2s cubic-bezier(.16,1,.3,1)}.beni-nav-rail.is-open .beni-nav-rail-ft-who{opacity:1}.beni-nav-rail-ft-name{font-size:12px;font-weight:600;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis}.beni-nav-rail-ft-sch{font-size:10.5px;color:var(--beni-rail-tx-l);overflow:hidden;text-overflow:ellipsis}.beni-nav-rail-school-band{margin-top:auto;flex-shrink:0;border-top:1px solid var(--beni-rail-bd);background:transparent;display:flex;flex-direction:row;align-items:center;gap:10px;padding:12px 14px;overflow:hidden}.beni-nav-rail.is-open .beni-nav-rail-school-band{padding:12px 22px 12px 14px}.beni-nav-rail-school-band-logo{max-height:36px;max-width:40px;width:auto;height:auto;object-fit:contain;display:block;flex-shrink:0}.beni-nav-rail-school-band-name{font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--beni-rail-tx-m);text-align:left;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1 1 auto;opacity:0;transition:opacity .2s cubic-bezier(.16,1,.3,1)}.beni-nav-rail.is-open .beni-nav-rail-school-band-name{opacity:1}.beni-nav-rail-ic{width:26px;height:26px;display:grid;place-items:center;border-radius:5px;color:var(--beni-rail-tx-m);opacity:0;flex-shrink:0;background:transparent;border:0;cursor:pointer;transition:opacity .2s,color .15s,background .15s}.beni-nav-rail.is-open .beni-nav-rail-ic{opacity:1}.beni-nav-rail-ic:hover{background:var(--beni-rail-bg);color:var(--beni-rail-tx)}.beni-nav-rail-ic.is-on{background:var(--beni-rail-accent-06);color:var(--beni-rail-accent)}.beni-workspace-topbar{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;font-size:.8rem;color:var(--text-secondary, #64748b);flex-shrink:0;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;background:var(--bg-primary, #ffffff);border-bottom:1px solid var(--border-light, #e2e8f0);min-height:44px;box-sizing:border-box}.beni-workspace-back{display:inline-flex;align-items:center;gap:.3rem;background:transparent;border:0;padding:.25rem .5rem;border-radius:6px;color:var(--accent-blue, #5a9ad9);cursor:pointer;font:inherit;font-size:.8rem;font-weight:500;flex-shrink:0;transition:background .12s,color .12s}.beni-workspace-back:hover{background:color-mix(in srgb,var(--accent-blue, #5a9ad9) 8%,transparent)}.beni-workspace-topbar-sep{color:var(--text-secondary, #64748b);opacity:.45;flex-shrink:0}.beni-workspace-topbar-class{color:var(--text-secondary, #64748b);text-transform:capitalize;flex-shrink:0}.beni-workspace-topbar-title{color:var(--text-primary, #1a1a1a);font-weight:600;letter-spacing:-.005em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}.beni-workspace-topbar-due{font-size:.72rem;color:var(--text-secondary, #64748b);background:var(--bg-secondary, #f8fafc);padding:.18rem .5rem;border-radius:999px;white-space:nowrap;flex-shrink:0}.beni-workspace-topbar-spacer{flex:1 1 auto}.beni-workspace-topbar-graded{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .7rem;background:#10b981;color:#fff;border-radius:6px;font-size:.72rem;font-weight:600;white-space:nowrap}.beni-workspace-topbar-btn{padding:.4rem .95rem;border:0;border-radius:6px;font:inherit;font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:filter .12s,background .12s}.beni-workspace-topbar-btn:disabled{cursor:not-allowed;opacity:.6}.beni-workspace-topbar-btn--submit{background:var(--accent-blue, #5a9ad9);color:#fff}.beni-workspace-topbar-btn--submit:hover:not(:disabled){filter:brightness(1.06)}.beni-workspace-topbar-btn--unsubmit{background:#f59e0b;color:#fff}.beni-workspace-topbar-btn--unsubmit:hover:not(:disabled){filter:brightness(1.06)}.beni-empty-recents{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1 1 auto;min-height:0;padding:3rem 2rem;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif}.beni-empty-recents-hd{text-align:center;max-width:540px;margin-bottom:2rem}.beni-empty-recents-hd h2{margin:0 0 .5rem;font-size:1.85rem;font-weight:600;letter-spacing:-.02em;text-transform:lowercase;color:var(--text-primary, #1a1a1a)}.beni-empty-recents-hd p{margin:0;font-size:.95rem;color:var(--text-secondary, #64748b);line-height:1.5}.beni-empty-recents-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;width:100%;max-width:800px;margin-bottom:1.5rem}.beni-empty-recents-card{display:flex;flex-direction:column;gap:.5rem;padding:1.25rem 1.25rem 1rem;background:#fff;border:1px solid var(--border-light, #e2e8f0);border-radius:12px;cursor:pointer;text-align:left;font:inherit;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.beni-empty-recents-card:hover{transform:translateY(-2px);border-color:var(--accent-blue, #5a9ad9);box-shadow:0 8px 20px #00000014;background:color-mix(in srgb,var(--accent-blue, #5a9ad9) 3%,#ffffff)}.beni-empty-recents-card.is-in-progress{border-left:3px solid var(--accent-blue, #5a9ad9);padding-left:calc(1.25rem - 2px)}.beni-empty-recents-card-class{font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary, #64748b)}.beni-empty-recents-card-title{font-size:1rem;font-weight:600;color:var(--text-primary, #1a1a1a);line-height:1.35;letter-spacing:-.005em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.beni-empty-recents-card-meta{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--text-secondary, #64748b);margin-top:.25rem}.beni-empty-recents-card-due{font-weight:500}.beni-empty-recents-card-status{font-style:italic}.beni-empty-recents-card.is-in-progress .beni-empty-recents-card-status{color:var(--accent-blue, #5a9ad9);font-weight:600;font-style:normal}.beni-empty-recents-browse{display:inline-flex;align-items:center;gap:.45rem;background:transparent;border:0;padding:.55rem .85rem;border-radius:8px;font:inherit;font-size:.85rem;color:var(--accent-blue, #5a9ad9);cursor:pointer;transition:background .15s ease;text-transform:lowercase;letter-spacing:.005em}.beni-empty-recents-browse:hover{background:color-mix(in srgb,var(--accent-blue, #5a9ad9) 8%,transparent)}.beni-settings-page{max-width:720px;width:100%;padding:2rem 0;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;color:var(--beni-rail-tx, #1e2124)}.beni-settings-hd{margin-bottom:2rem;padding-bottom:1.25rem;border-bottom:1px solid var(--beni-rail-bd, #e5e5e5)}.beni-settings-hd h2{margin:0 0 .35rem;font-size:1.75rem;font-weight:600;letter-spacing:-.02em;text-transform:lowercase}.beni-settings-hd p{margin:0;font-size:.85rem;color:var(--beni-rail-tx-l, #767676)}.beni-settings-section{margin-bottom:1.75rem;padding-bottom:1.75rem;border-bottom:1px solid var(--beni-rail-bd, #e5e5e5)}.beni-settings-section:last-child{border-bottom:0;padding-bottom:0}.beni-settings-eyebrow{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--beni-rail-tx-l, #767676);margin-bottom:.875rem}.beni-settings-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.beni-settings-row-info{flex:1;min-width:220px}.beni-settings-row-title{font-size:.95rem;font-weight:600;margin-bottom:.2rem;letter-spacing:-.005em}.beni-settings-row-desc{font-size:.8rem;color:var(--beni-rail-tx-m, #5a5a5a);line-height:1.5}.beni-settings-row-control{flex-shrink:0}.beni-settings-accent-row{display:flex;gap:.5rem}.beni-settings-accent-dot{width:28px;height:28px;border-radius:50%;border:1px solid rgba(0,0,0,.12);padding:0;cursor:pointer;flex-shrink:0;transition:transform .12s ease,border .12s ease,box-shadow .12s ease}.beni-settings-accent-dot:hover{transform:scale(1.08);box-shadow:0 2px 8px #0000001a}.beni-settings-accent-dot.is-on{border:2px solid var(--beni-rail-tx, #1e2124)}.beni-settings-theme-row{display:inline-flex;background:var(--beni-surface-2, #f3f4f6);border:1px solid var(--border-light, #e5e7eb);border-radius:999px;padding:3px;gap:2px}.beni-settings-theme-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .75rem;border:0;background:transparent;color:var(--text-secondary, #6b7280);font:inherit;font-size:.78rem;font-weight:500;border-radius:999px;cursor:pointer;text-transform:lowercase;transition:background .16s ease,color .16s ease}.beni-settings-theme-btn:hover{color:var(--text-primary, #1a1a1a)}.beni-settings-theme-btn.is-on{background:var(--accent-blue, #5a9ad9);color:#fff}.beni-settings-theme-btn.is-on:hover{color:#fff;filter:brightness(1.06)}.beni-settings-btn{padding:.5rem 1rem;border-radius:8px;border:1px solid var(--beni-rail-bd, #e5e5e5);background:#fff;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .12s,border-color .12s;font-family:inherit}.beni-settings-btn:hover{background:var(--beni-rail-bg, #f6f4f1)}.beni-settings-btn--danger{color:#b91c1c;border-color:#fecaca}.beni-settings-btn--danger:hover{background:#fee2e2;border-color:#ef4444}.beni-settings-coming-soon{list-style:none;margin:0;padding:0}.beni-settings-coming-soon li{padding:.6rem 0;border-bottom:1px dashed var(--beni-rail-bd, #e5e5e5);font-size:.85rem;color:var(--beni-rail-tx-m, #5a5a5a)}.beni-settings-coming-soon li:last-child{border-bottom:0}main{display:grid;grid-template-columns:1fr;margin-left:64px;padding:0;gap:0;height:100vh;overflow:hidden;transition:margin-left .3s cubic-bezier(.16,1,.3,1)}.student-dashboard.is-rail-pinned main{margin-left:260px}.student-dashboard{height:100vh;overflow:hidden}.main-content{display:flex;flex-direction:column;overflow-y:visible;overflow-x:hidden;height:100%;min-height:0;padding-bottom:0}.tagline{font-size:2.25rem;font-weight:400;color:var(--text-primary);margin-top:.5rem;margin-bottom:1.5rem;text-transform:lowercase;line-height:1.3;letter-spacing:-.02em}.tagline .highlight{color:var(--accent-blue);font-weight:500}.chat-display{flex:1;background:var(--bg-primary);border:1px solid var(--border-purple);border-radius:12px;padding:2rem;margin-bottom:1rem;min-height:400px;flex-shrink:0;position:relative}.response{padding:1rem;background:var(--bg-secondary);border-radius:8px;border-left:3px solid var(--accent-blue)}.response p{color:var(--text-primary);line-height:1.6;font-size:.95rem;margin-top:.5rem}.beni-grade-tracker{margin-top:.85rem;padding-top:.55rem;border-top:1px dashed var(--border-light)}.beni-grade-tracker-title{font-size:.72rem;font-weight:600;text-transform:lowercase;letter-spacing:.04em;color:var(--text-secondary);margin:0 0 .4rem}.beni-grade-tracker-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:.55rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:8px;position:relative}.beni-grade-tracker-letter{font-size:1.8rem;font-weight:700;line-height:1;min-width:2.5rem;text-align:center}.beni-grade-tracker-sub{font-size:.78rem;color:var(--text-secondary)}.beni-grade-tracker-lowest{font-size:.7rem;color:var(--text-secondary);padding:.25rem .5rem;background:var(--bg-primary);border-radius:4px;white-space:nowrap}.beni-grade-tracker-cta{padding:.4rem .85rem;background:var(--accent-blue);color:#fff;border:0;border-radius:6px;font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap}.beni-grade-tracker-cta:hover{opacity:.92}.beni-grade-tracker-suggestions{position:absolute;top:calc(100% + 6px);right:0;width:min(420px,90vw);padding:.85rem 1rem;background:var(--bg-primary);border:2px solid var(--accent-blue);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:100;max-height:320px;overflow-y:auto}.beni-grade-tracker-suggestions-title{font-weight:600;margin-bottom:.65rem;color:var(--accent-blue);font-size:.85rem}.beni-grade-tracker-suggestion{padding:.65rem;background:var(--bg-secondary);border-radius:6px;border:1px solid var(--border-light)}.beni-grade-tracker-suggestion-cat{font-weight:500;font-size:.82rem;margin-bottom:.2rem;color:var(--accent-blue)}.beni-grade-tracker-suggestion-text{font-size:.74rem;color:var(--text-secondary)}.beni-grade-tracker-suggestion-pts{font-size:.68rem;color:var(--text-secondary);margin-top:.2rem;font-style:italic}.beni-grade-tracker-guide{width:100%;padding:.65rem;background:var(--accent-blue);color:#fff;border:0;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;margin-bottom:.45rem}.beni-grade-tracker-close{margin-top:.65rem;width:100%;padding:.4rem;background:var(--button-gray);color:var(--text-primary);border:0;border-radius:6px;font-size:.7rem;cursor:pointer}.help-level-badge{display:inline-block;padding:.25rem .75rem;background:var(--accent-blue);color:var(--text-primary);border-radius:12px;font-size:.75rem;font-weight:500;text-transform:lowercase}.loading-indicator{z-index:10;pointer-events:none}.loading-spinner{display:inline-block;width:1rem;height:1rem;border:2px solid var(--accent-blue);border-right-color:transparent;border-radius:50%;animation:loading-spin .6s linear infinite}@keyframes loading-spin{to{transform:rotate(360deg)}}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.chat-input-container{display:flex;gap:.75rem}.chat-input-container form{display:flex;gap:.75rem;width:100%}.chat-input{flex:1;padding:.875rem 1.25rem;border:1px solid var(--border-purple);border-radius:24px;font-size:.95rem;font-family:inherit;color:var(--text-primary);background:var(--bg-primary);outline:none;transition:border-color .2s ease}.chat-input:focus{border-color:var(--accent-blue)}.chat-input::placeholder{color:var(--text-light);text-transform:lowercase}.chat-send-icon-btn{position:absolute;bottom:8px;right:10px;width:24px;height:24px;background:transparent;color:var(--text-primary);border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;border-radius:4px;transition:color .12s,transform .05s,background .12s;z-index:2}.chat-send-icon-btn svg{stroke-width:2.2}.chat-send-icon-btn:hover:not(:disabled){background:#0000000f}.chat-send-icon-btn:active:not(:disabled){transform:scale(.92)}.chat-send-icon-btn:disabled{color:var(--text-light);cursor:not-allowed;opacity:.5}.chat-action-row{display:flex;align-items:center;gap:.25rem;padding-left:4px}.chat-share-toggle{display:inline-flex;align-items:center;gap:.4rem;margin-left:auto;cursor:pointer;font-size:.72rem;color:var(--text-secondary);-webkit-user-select:none;user-select:none;white-space:nowrap}.chat-share-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.chat-share-toggle-track{position:relative;width:28px;height:16px;background:var(--border-light, #e2e8f0);border-radius:999px;transition:background .18s ease;flex-shrink:0}.chat-share-toggle-thumb{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0000001a;transition:transform .18s ease}.chat-share-toggle input:checked+.chat-share-toggle-track{background:var(--accent-blue, #5a9ad9)}.chat-share-toggle input:checked+.chat-share-toggle-track .chat-share-toggle-thumb{transform:translate(12px)}.chat-share-toggle-label{font-size:.72rem;line-height:1;text-transform:lowercase;letter-spacing:.01em}.chat-share-toggle:hover .chat-share-toggle-label{color:var(--text-primary)}.chat-share-toggle input:focus-visible+.chat-share-toggle-track{outline:2px solid var(--accent-blue, #5a9ad9);outline-offset:2px}.chat-help-btn{flex-shrink:0;width:28px;height:28px;background:transparent;border:0;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;border-radius:4px;transition:color .12s,transform .05s,background .12s}.beni-chat-column{border:0;border-radius:0;background:#f3f4f6;overflow:hidden;padding:.75rem;gap:.55rem;position:relative}.beni-chat-jump-bottom{position:absolute;z-index:20;bottom:110px;left:50%;transform:translate(-50%);width:36px;height:36px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--border-light, #e5e7eb);background:var(--bg-primary, #ffffff);color:var(--text-primary, #1e2124);cursor:pointer;box-shadow:0 4px 14px #00000038;animation:beni-chat-jump-in .22s cubic-bezier(.34,1.56,.64,1);transition:background .15s ease,transform .15s ease,box-shadow .15s ease}.beni-chat-jump-bottom:hover{background:color-mix(in srgb,var(--accent-blue, #5a9ad9) 8%,var(--bg-primary, #ffffff));transform:translate(-50%) translateY(-1px);box-shadow:0 6px 16px #00000029}.beni-chat-jump-bottom:active{transform:translate(-50%) translateY(0)}@keyframes beni-chat-jump-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}[data-theme=dark] .beni-chat-jump-bottom{background:var(--beni-surface, #1a1f24);border-color:var(--border-light, #2a3138);color:var(--accent-blue, #5a9ad9)}[data-theme=dark] .beni-chat-jump-bottom:hover{background:color-mix(in srgb,var(--accent-blue, #5a9ad9) 18%,var(--beni-surface, #1a1f24))}.beni-chat-column .chat-display{background:transparent;border:0;border-radius:0;padding:0;margin:0;flex:1;min-height:0}.beni-chat-column .chat-input{border:1px solid var(--border-light);border-radius:14px;background:var(--bg-primary);padding:.7rem .9rem;font-size:.92rem}.beni-chat-column .chat-input:focus{border-color:var(--accent-blue)}.beni-chat-column .chat-input-container{background:transparent;padding:0;border-top:0;gap:0}.beni-chat-column .chat-action-row{padding-left:2px;padding-top:2px}.beni-chat-resize-strip{position:absolute;top:0;width:8px;height:100%;margin-left:-4px;cursor:col-resize;background:transparent;z-index:10;transition:background .12s}.beni-chat-resize-strip:hover{background:#5a9ad940}.beni-chat-collapse-tab{position:absolute;top:50%;transform:translate(-50%,-50%);z-index:100;width:14px;height:40px;background:var(--border-light);color:var(--text-secondary);border:0;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;box-shadow:0 1px 3px #00000014;transition:background .12s,color .12s,width .12s,height .12s,box-shadow .12s}.beni-chat-collapse-tab:hover{background:var(--accent-blue);color:#fff;width:16px}.beni-chat-collapse-tab.is-collapsed{background:var(--accent-blue);color:#fff;width:20px;height:56px;border-radius:0 8px 8px 0;box-shadow:0 2px 8px #00000026}.beni-chat-collapse-tab.is-collapsed:hover{width:24px;background:var(--accent-blue)}.chat-help-btn:hover:not(:disabled){color:#f59e0b;background:#f59e0b14}.chat-help-btn:active:not(:disabled){transform:scale(.92)}.chat-help-btn:disabled{opacity:.4;cursor:not-allowed}.send-button{background:var(--accent-blue);color:var(--text-primary);border:1px solid var(--border-purple);padding:.875rem 1.5rem;border-radius:24px;font-size:.9rem;font-weight:400;cursor:pointer;display:flex;align-items:center;gap:.5rem;text-transform:lowercase;transition:background .2s ease;white-space:nowrap}.send-button:hover:not(:disabled){background:var(--accent-blue-light)}.send-button:disabled{opacity:.6;cursor:not-allowed}.send-icon{width:18px;height:18px;stroke:var(--bg-primary)}.sidebar{background:var(--bg-secondary);padding:1.5rem;border-left:1px solid var(--border-light);overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem}.user-profile{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.25rem}.user-info{flex:1}.user-name{font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:.25rem;text-transform:lowercase}.user-name .first-name{color:var(--text-primary)}.user-name .last-name{color:var(--accent-blue)}.user-details{font-size:.875rem;color:var(--text-secondary);margin-bottom:.125rem;text-transform:lowercase}.user-photo{width:56px;height:56px;border-radius:50%;object-fit:cover;flex-shrink:0}.sidebar-section{display:flex;flex-direction:column;gap:.5rem}.sidebar-title{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem;text-transform:lowercase}.sidebar-scrollable{max-height:180px;overflow-y:auto;padding-right:.5rem}.sidebar-item{font-size:.875rem;color:var(--text-light);padding:.5rem 0;text-transform:lowercase;cursor:default;transition:color .2s ease;word-break:break-word}.sidebar-item.clickable{cursor:pointer}.sidebar-item.clickable:hover{color:var(--text-primary)}.sidebar-empty{font-size:.875rem;color:var(--text-light);padding:.5rem 0;text-transform:lowercase;font-style:italic}.assignment-item{padding:.75rem 0;border-bottom:1px solid var(--border-light)}.assignment-item:last-child{border-bottom:none}.assignment-name{font-size:.875rem;color:var(--text-primary);margin-bottom:.25rem;font-weight:500}.assignment-due{font-size:.75rem;color:var(--text-secondary);text-transform:lowercase}.chat-display::-webkit-scrollbar,.sidebar::-webkit-scrollbar,.sidebar-scrollable::-webkit-scrollbar{width:4px}.chat-display::-webkit-scrollbar-track,.sidebar::-webkit-scrollbar-track,.sidebar-scrollable::-webkit-scrollbar-track{background:transparent}.chat-display::-webkit-scrollbar-thumb,.sidebar::-webkit-scrollbar-thumb,.sidebar-scrollable::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:2px}.chat-display::-webkit-scrollbar-thumb:hover,.sidebar::-webkit-scrollbar-thumb:hover,.sidebar-scrollable::-webkit-scrollbar-thumb:hover{background:var(--text-light)}.student-workspace .chat-display{padding:.6rem .65rem;margin-bottom:.35rem;min-height:0}.student-workspace+.chat-input-container{margin-top:.85rem;flex-wrap:wrap;align-items:flex-end}.student-workspace+.chat-input-container textarea.chat-input{line-height:1.35;border-radius:14px}@media (max-width: 1024px){main{grid-template-columns:1fr}.sidebar{border-left:none;border-top:1px solid var(--border-light)}}@media (max-width: 768px){header{flex-direction:column;gap:1rem;padding:1rem}.header-buttons{flex-wrap:wrap;justify-content:center}.tagline{font-size:1.75rem}.main-content{padding:1rem}}.admin-dashboard aside button:hover{background:#5a9ad914!important}.admin-dashboard aside button[style*="rgba(90, 154, 217, 0.12)"]:hover{background:#5a9ad92e!important}.admin-dashboard [data-quick-action]:hover{background:var(--accent-blue)!important;color:#fff!important;border-color:var(--accent-blue)!important}.teacher-dashboard aside button:hover{background:#5a9ad914!important}.teacher-dashboard aside button[style*="rgba(90, 154, 217, 0.12)"]:hover{background:#5a9ad92e!important}.stream-word{display:inline-block;opacity:0;transform:translateY(3px);transition:opacity .18s ease,transform .18s ease}.stream-word.in{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){.stream-word{transition:none!important;transform:none!important;opacity:1!important}}@media print{@page{size:letter;margin:0}html,body{background:#fff!important;margin:0!important;padding:0!important}body>*,.student-app-header,.student-chat-column,.student-resize-handle,.student-chat-collapse-tab,.beni-editor-tab-bar,.beni-editor-toolbar,.beni-editor-footer,.beni-editor-status,.beni-editor-zoom{visibility:hidden!important}.beni-editor-body,.beni-editor-body *{visibility:visible!important}.beni-editor-body{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;overflow:visible!important;background:#fff!important;padding:0!important}.beni-editor-body .ProseMirror{box-shadow:none!important;border:0!important;border-radius:0!important;zoom:1!important;max-width:none!important;width:100%!important;min-height:auto!important;margin:0!important}.beni-auto-page-break{page-break-before:always;break-before:page;height:0!important;margin:0!important;background:transparent!important}.beni-editor-body .ProseMirror h1,.beni-editor-body .ProseMirror h2,.beni-editor-body .ProseMirror h3{page-break-after:avoid;break-after:avoid}.beni-editor-body .ProseMirror img,.beni-editor-body .ProseMirror table{page-break-inside:avoid;break-inside:avoid}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.beni-md>*{margin:0}.beni-md>*+*{margin-top:.55rem}.beni-md p{line-height:1.55}.beni-md ul,.beni-md ol{padding-left:1.25rem;line-height:1.5}.beni-md ul{list-style:disc}.beni-md ol{list-style:decimal}.beni-md li+li{margin-top:.2rem}.beni-md h1,.beni-md h2,.beni-md h3{font-weight:600;line-height:1.3;margin-top:.4rem}.beni-md h1{font-size:1.05rem}.beni-md h2{font-size:1rem}.beni-md h3{font-size:.95rem}.beni-md strong{font-weight:600}.beni-md em{font-style:italic}.beni-md code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em;background:#0000000f;padding:.05em .35em;border-radius:4px}.beni-md pre{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em;background:#0000000d;padding:.6rem .75rem;border-radius:6px;overflow-x:auto}.beni-md pre code{background:transparent;padding:0}.beni-md a{color:var(--accent-blue);text-decoration:underline}.beni-md blockquote{border-left:3px solid var(--border-light);padding-left:.75rem;color:var(--text-secondary)}.beni-editor{display:flex;flex-direction:column;height:100%;width:100%;background:#fff;border-radius:0;overflow:hidden;border:1px solid var(--border-light)}.beni-editor[data-readonly=true]{background:var(--bg-secondary)}.beni-editor-tabs{display:flex;align-items:stretch;gap:.1rem;padding:0 .6rem;border-bottom:1px solid var(--border-light);background:#f3f3f1;flex-shrink:0}.beni-editor-tab{display:inline-flex;align-items:center;padding:.55rem .95rem;background:transparent;border:0;border-bottom:2px solid transparent;font:inherit;font-size:.86rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:color .12s ease,border-color .12s ease,background .12s ease;margin-bottom:-1px}.beni-editor-tab:hover{color:var(--text-primary);background:#0000000a}.beni-editor-tab.is-active{color:var(--accent-blue);border-bottom-color:var(--accent-blue);font-weight:600}.beni-editor-tab:focus-visible{outline:2px solid var(--accent-blue);outline-offset:-2px}.beni-editor-toolbar{display:flex;align-items:center;gap:.15rem;padding:.45rem .6rem;border-bottom:1px solid var(--border-light);background:#fafafa;flex-shrink:0;flex-wrap:wrap}.beni-editor-toolbar--placeholder{color:var(--text-secondary);font-size:.86rem;font-style:italic;padding:.7rem 1rem;justify-content:center}.beni-page-break{display:block;margin-top:2rem;margin-bottom:2rem;margin-left:calc(-1 * var(--beni-margin-left, 96px));margin-right:calc(-1 * var(--beni-margin-right, 96px));height:2.5rem;background:#f6f5f1;border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);position:relative;-webkit-user-select:none;user-select:none;page-break-after:always;break-after:page}.beni-smart-fix{border-bottom:1.5px dotted var(--beni-accent, var(--accent-blue));cursor:help;animation:beni-smart-fix-fade-in .35s ease-out}@keyframes beni-smart-fix-fade-in{0%{background:color-mix(in srgb,var(--beni-accent, var(--accent-blue)) 28%,transparent)}to{background:transparent}}.rm-page-header,.rm-page-footer,.rm-page-header-left,.rm-page-header-right,.rm-page-footer-left,.rm-page-footer-right,.rm-pagination-gap,.rm-page-break,.rm-first-page-header,.rm-page-number,.rm-page-number-plus,.breaker,[data-rm-pagination]{pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important;caret-color:transparent!important}.rm-with-pagination *:has(>br.ProseMirror-trailingBreak:only-child){display:block!important;width:auto!important;caret-color:var(--text-primary, #1a1a1a)!important}.rm-with-pagination .rm-br-decoration{display:block!important;width:auto!important;height:0!important;min-height:0!important;line-height:0!important;caret-color:transparent!important;pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}.beni-editor-body .ProseMirror [style*="display: table"],.beni-editor-body .ProseMirror [style*="display:table"]{display:block!important}.beni-editor-body .ProseMirror,.beni-editor-body .ProseMirror p,.beni-editor-body .ProseMirror h1,.beni-editor-body .ProseMirror h2,.beni-editor-body .ProseMirror h3,.beni-editor-body .ProseMirror h4,.beni-editor-body .ProseMirror h5,.beni-editor-body .ProseMirror h6,.beni-editor-body .ProseMirror li,.beni-editor-body .ProseMirror blockquote{line-height:1.5!important}.beni-tb-group-label{font-size:.78rem;color:var(--text-secondary);padding:0 .4rem 0 .2rem;font-weight:500;letter-spacing:.01em}.beni-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.beni-dialog{background:#fff;border-radius:8px;padding:1.5rem 1.75rem;min-width:360px;max-width:90vw;box-shadow:0 8px 32px #0000002e;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif}.beni-dialog h3{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:var(--text-primary)}.beni-dialog p{margin:0 0 1rem;font-size:.78rem;color:var(--text-secondary)}.beni-dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem;margin-bottom:1.25rem}.beni-dialog-field{display:flex;flex-direction:column;gap:.25rem;font-size:.82rem}.beni-dialog-field>span{color:var(--text-secondary);font-weight:500}.beni-dialog-field input{padding:.42rem .55rem;border:1px solid var(--border-light);border-radius:5px;font:inherit;font-size:.88rem;color:var(--text-primary);background:#fff}.beni-dialog-field input:focus{outline:2px solid var(--accent-blue);outline-offset:-1px;border-color:transparent}.beni-dialog-actions{display:flex;justify-content:flex-end;gap:.5rem}.beni-btn-primary,.beni-btn-secondary{padding:.45rem .95rem;border-radius:5px;font:inherit;font-size:.85rem;font-weight:500;cursor:pointer;border:1px solid transparent;transition:background .12s ease,opacity .12s ease}.beni-btn-secondary{background:transparent;color:var(--text-primary);border-color:var(--border-light)}.beni-btn-secondary:hover{background:#0000000a}.beni-btn-primary{background:var(--accent-blue);color:#fff}.beni-btn-primary:hover{opacity:.92}.beni-page-break:before{content:"— Page Break —";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.72rem;font-style:italic;letter-spacing:.08em;color:var(--text-secondary);text-transform:uppercase}.beni-page-break.ProseMirror-selectednode{background:#5a9ad91f;border-color:#5a9ad973}.beni-tb-btn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 .5rem;background:transparent;border:1px solid transparent;border-radius:6px;font:inherit;font-size:.92rem;color:var(--text-primary);cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease;-webkit-user-select:none;user-select:none}.beni-tb-btn:hover{background:#0000000d}.beni-tb-btn:active{background:#00000014}.beni-tb-btn.is-active{background:#5a9ad924;color:var(--accent-blue);border-color:#5a9ad940}.beni-tb-btn:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.beni-tb-btn:disabled{opacity:.4;cursor:not-allowed}.beni-tb-divider{width:1px;height:20px;background:var(--border-light);margin:0 .3rem;flex-shrink:0}.beni-editor-toolbar--home{align-items:stretch;padding:6px 8px;gap:4px;flex-wrap:nowrap;overflow-x:auto}.beni-tb-group{display:flex;flex-direction:column;gap:3px;padding:0 2px;flex-shrink:0}.beni-tb-row{display:flex;gap:2px;align-items:center}.beni-tb-group-sep{width:1px;background:var(--border-light);margin:2px 6px;align-self:stretch;flex-shrink:0}.beni-tb-group-sep--push{margin-left:auto}.beni-tb-dd-wrapper{position:relative;display:inline-flex}.beni-tb-dropdown-btn{display:inline-flex;align-items:center;height:26px;padding:0 6px 0 8px;background:#fff;border:1px solid var(--border-light);border-radius:4px;font:inherit;font-size:.82rem;color:var(--text-primary);cursor:pointer;transition:background .12s,border-color .12s;-webkit-user-select:none;user-select:none}.beni-tb-dropdown-btn:hover{background:#f6f6f6}.beni-tb-dropdown-btn--wide{min-width:140px}.beni-tb-dropdown-btn--narrow{min-width:50px}.beni-tb-dropdown-label{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.beni-tb-menu{position:fixed;z-index:1000;background:#fff;border:1px solid var(--border-light);border-radius:6px;box-shadow:0 6px 20px #0000001f;padding:4px;min-width:160px;max-height:320px;overflow-y:auto;display:flex;flex-direction:column}.beni-tb-menu--narrow{min-width:56px}.beni-tb-menu--grid{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;min-width:150px;padding:6px}.beni-tb-menu-item{display:block;padding:6px 10px;background:transparent;border:0;font:inherit;font-size:.85rem;color:var(--text-primary);text-align:left;cursor:pointer;border-radius:4px;white-space:nowrap}.beni-tb-menu-item:hover{background:#0000000f}.beni-tb-menu-item.is-active{background:#5a9ad924;color:var(--accent-blue);font-weight:500}.beni-tb-menu-item--full{grid-column:1 / -1;margin-top:4px;border-top:1px solid var(--border-light);padding-top:8px;font-size:.78rem;color:var(--text-secondary);text-align:center}.beni-tb-color-btn{position:relative;min-width:38px;height:30px;padding:0 4px 4px 6px;display:inline-flex;align-items:center;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;color:var(--text-primary);font:inherit;transition:background .12s}.beni-tb-color-btn:hover{background:#0000000d}.beni-tb-color-label{font-size:.88rem;line-height:1}.beni-tb-color-bar{position:absolute;bottom:4px;left:6px;right:14px;height:3px;border-radius:1px;border:1px solid rgba(0,0,0,.06)}.beni-tb-color-swatch{width:22px;height:22px;border:1px solid rgba(0,0,0,.18);border-radius:3px;cursor:pointer;padding:0;transition:transform .08s}.beni-tb-color-swatch:hover{transform:scale(1.12)}.beni-tb-color-swatch.is-active{outline:2px solid var(--accent-blue);outline-offset:2px}.beni-tb-group--styles{padding:0 4px}.beni-tb-styles-gallery{display:flex;align-items:stretch;gap:2px;max-width:360px;overflow-x:auto;scrollbar-width:thin}.beni-tb-style-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;min-width:64px;max-width:84px;padding:4px 8px 3px;background:#fff;border:1px solid var(--border-light);border-radius:4px;cursor:pointer;font:inherit;color:var(--text-primary);transition:background .12s,border-color .12s;flex-shrink:0}.beni-tb-style-card:hover{background:#f0f7ff;border-color:#5a9ad980}.beni-tb-style-card.is-active{background:#5a9ad924;border-color:var(--accent-blue)}.beni-tb-style-preview{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.1;font-family:Times New Roman,Times,serif}.beni-tb-style-label{font-size:.58rem;color:var(--text-secondary);margin-top:2px;letter-spacing:.02em;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif}.beni-show-marks .ProseMirror p:after,.beni-show-marks .ProseMirror h1:after,.beni-show-marks .ProseMirror h2:after,.beni-show-marks .ProseMirror h3:after{content:"¶";color:#0000002e;margin-left:.25em;font-family:Georgia,serif}.beni-painter-armed .ProseMirror,.beni-painter-armed .ProseMirror *{cursor:copy!important}.beni-editor-stage{flex:1;min-height:0;position:relative;overflow-y:auto;background:#f6f5f1}.beni-find-overlay{position:sticky;top:.5rem;margin-left:auto;margin-right:1rem;margin-top:.5rem;width:max-content;max-width:calc(100% - 2rem);background:#fff;border:1px solid var(--border-light);border-radius:8px;box-shadow:0 4px 12px #00000014;padding:.4rem .5rem;display:flex;flex-direction:column;gap:.35rem;z-index:5}.beni-find-row{display:flex;align-items:center;gap:.3rem}.beni-find-input{width:220px;padding:.35rem .55rem;border:1px solid var(--border-light);border-radius:6px;font-size:.85rem;background:#fafafa;outline:none;transition:border-color .15s ease,background .15s ease}.beni-find-input:focus{border-color:var(--accent-blue);background:#fff}.beni-find-stats{font-size:.72rem;color:var(--text-secondary);min-width:56px;text-align:right;padding-right:.2rem;font-variant-numeric:tabular-nums}.beni-find-btn{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:5px;color:var(--text-secondary);cursor:pointer;transition:background .12s ease,color .12s ease}.beni-find-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.beni-find-btn.is-active{background:color-mix(in srgb,var(--accent-blue) 14%,transparent);color:var(--accent-blue)}.beni-find-btn--close{margin-left:.15rem}.beni-find-action{padding:.35rem .7rem;font-size:.78rem;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:5px;cursor:pointer;color:var(--text-primary);transition:background .12s ease,border-color .12s ease}.beni-find-action:hover:not(:disabled){background:#fff;border-color:var(--accent-blue);color:var(--accent-blue)}.beni-find-action:disabled{opacity:.45;cursor:not-allowed}.beni-autosave-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .6rem;border-radius:999px;font-size:.72rem;font-weight:500;background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-light);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background .18s ease,color .18s ease,border-color .18s ease}.beni-autosave-pill--saved{background:color-mix(in srgb,#10b981 12%,transparent);color:#047857;border-color:color-mix(in srgb,#10b981 30%,transparent)}.beni-autosave-pill--offline{background:color-mix(in srgb,#f59e0b 14%,transparent);color:#b45309;border-color:color-mix(in srgb,#f59e0b 35%,transparent)}.beni-autosave-pill--error{background:color-mix(in srgb,#ef4444 12%,transparent);color:#b91c1c;border-color:color-mix(in srgb,#ef4444 35%,transparent)}.beni-autosave-spinner{width:10px;height:10px;border:1.5px solid currentColor;border-right-color:transparent;border-radius:50%;animation:beni-autosave-spin .8s linear infinite;opacity:.7}@keyframes beni-autosave-spin{to{transform:rotate(360deg)}}.beni-autosave-dot{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;flex-shrink:0;background:var(--bg-secondary, #f8fafc);color:var(--text-secondary, #64748b);border:1px solid var(--border-light, #e2e8f0);transition:background .2s ease,color .2s ease,border-color .2s ease;-webkit-user-select:none;user-select:none;cursor:default}.beni-autosave-dot--saving{background:var(--bg-secondary, #f8fafc);color:var(--text-secondary, #64748b)}.beni-autosave-dot--saved{background:color-mix(in srgb,#10b981 14%,transparent);color:#047857;border-color:color-mix(in srgb,#10b981 35%,transparent);animation:beni-autosave-pop .32s cubic-bezier(.34,1.56,.64,1)}.beni-autosave-dot--offline{background:color-mix(in srgb,#f59e0b 14%,transparent);color:#b45309;border-color:color-mix(in srgb,#f59e0b 35%,transparent)}.beni-autosave-dot--error{background:color-mix(in srgb,#ef4444 12%,transparent);color:#b91c1c;border-color:color-mix(in srgb,#ef4444 35%,transparent)}@keyframes beni-autosave-pop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.12);opacity:1}to{transform:scale(1);opacity:1}}.beni-search-match{background:#fff3a3;border-radius:2px}.beni-search-match.beni-search-match-current,.beni-search-match[class~=search-result-current]{background:#ffd54f}.beni-editor-stage>.beni-editor-body{overflow-y:visible;background:transparent}.beni-page-overlays{position:absolute;top:2rem;left:50%;transform:translate(-50%);width:100%;max-width:816px;pointer-events:none;z-index:5;font-family:Times New Roman,Times,"Liberation Serif",serif;font-size:.92rem;color:#1a1a1a}.beni-page-overlay{position:absolute;left:0;right:0;height:1056px}.beni-page-header-text{position:absolute;left:0;right:0;display:flex;justify-content:flex-end;gap:.5em;box-sizing:border-box}.beni-page-footer-text{position:absolute;left:0;right:0;display:flex;justify-content:center;gap:.5em;box-sizing:border-box}.beni-page-num{font-variant-numeric:tabular-nums}.beni-page-margin-clickzone{position:absolute;left:0;right:0;pointer-events:auto;cursor:text;z-index:4;transition:background .18s ease}.beni-page-margin-clickzone--top{top:0}.beni-page-margin-clickzone--top.is-active{background:linear-gradient(to bottom,color-mix(in srgb,var(--beni-accent, #5a9ad9) 18%,transparent),color-mix(in srgb,var(--beni-accent, #5a9ad9) 3%,transparent))}.beni-page-margin-clickzone--bottom.is-active{background:linear-gradient(to top,color-mix(in srgb,var(--beni-accent, #5a9ad9) 18%,transparent),color-mix(in srgb,var(--beni-accent, #5a9ad9) 3%,transparent))}.beni-page-header-text,.beni-page-footer-text{display:flex;align-items:baseline;gap:.25em;font-family:Times New Roman,Times,"Liberation Serif",serif;font-size:1rem;line-height:1.4}.beni-page-header-text.align-left,.beni-page-footer-text.align-left{justify-content:flex-start}.beni-page-header-text.align-center,.beni-page-footer-text.align-center{justify-content:center}.beni-page-header-text.align-right,.beni-page-footer-text.align-right{justify-content:flex-end}.beni-page-edit-input,.beni-page-header-display,.beni-page-footer-display{background:transparent;border:0;outline:0;padding:0;margin:0;font:inherit;color:inherit;pointer-events:auto;cursor:text;text-align:inherit}.beni-page-header-display,.beni-page-footer-display{color:#0006;min-height:1.4em;min-width:8px;transition:color .12s}.beni-page-header-display:hover,.beni-page-footer-display:hover{color:#000000a6}.beni-page-edit-input{color:var(--text-primary);width:auto;min-width:8em}.beni-page-header-text.align-left .beni-page-edit-input,.beni-page-footer-text.align-left .beni-page-edit-input{text-align:left}.beni-page-header-text.align-center .beni-page-edit-input,.beni-page-footer-text.align-center .beni-page-edit-input{text-align:center}.beni-page-header-text.align-right .beni-page-edit-input,.beni-page-footer-text.align-right .beni-page-edit-input{text-align:right}.beni-page-zone-divider{position:absolute;left:0;right:0;height:0;border-top:1px solid var(--beni-accent, var(--accent-blue));z-index:6;pointer-events:none}.beni-page-zone-label{position:absolute;top:-10px;left:16px;background:color-mix(in srgb,var(--beni-accent, var(--accent-blue)) 14%,transparent);color:var(--beni-accent, var(--accent-blue));font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;font-size:.78rem;font-weight:500;padding:1px 10px;border-radius:4px;letter-spacing:.02em;pointer-events:none}.beni-page-zone-divider--footer .beni-page-zone-label{top:2px}.beni-page-zone-align{position:absolute;top:-13px;right:16px;display:flex;gap:1px;background:#fff;border:1px solid var(--border-light);border-radius:4px;padding:1px;pointer-events:auto;box-shadow:0 1px 3px #00000014}.beni-page-zone-align button{background:transparent;border:0;padding:2px 7px;cursor:pointer;font-size:.85rem;border-radius:3px;color:var(--text-secondary);line-height:1.2;font-family:-apple-system,BlinkMacSystemFont,sans-serif}.beni-page-zone-align button:hover{background:#0000000d;color:var(--text-primary)}.beni-page-zone-align button.is-active{background:#5a9ad92e;color:var(--accent-blue)}.beni-page-zone-divider--footer .beni-page-zone-align{top:2px}.beni-math-block{position:relative;margin:.85rem 0;padding:0;width:100%}.beni-math-block.is-selected{padding-top:38px}.beni-math-palette{position:absolute;top:0;left:0;right:0;display:flex;flex-wrap:wrap;gap:2px;padding:4px;background:#fff;border:1px solid var(--border-light);border-radius:6px;box-shadow:0 2px 8px #00000014;z-index:20}.beni-math-palette-btn{background:transparent;border:1px solid transparent;border-radius:4px;padding:3px 8px;font-size:.85rem;cursor:pointer;font-family:Times New Roman,Times,serif;color:var(--text-primary);min-width:28px}.beni-math-palette-btn:hover{background:#5a9ad926;border-color:#5a9ad966}.beni-math-block math-field{display:block}.beni-math-block math-field:focus-within{outline:none}.beni-symbol-grid{display:grid;grid-template-columns:repeat(10,28px);gap:2px;padding:8px;min-width:auto}.beni-symbol-cell{width:28px;height:28px;background:transparent;border:1px solid transparent;border-radius:3px;cursor:pointer;font-family:Times New Roman,Times,serif;font-size:1rem;color:var(--text-primary);display:flex;align-items:center;justify-content:center;padding:0}.beni-symbol-cell:hover{background:#5a9ad91f;border-color:var(--accent-blue)}.beni-tb-grid-picker{padding:10px;min-width:260px}.beni-tb-grid-header{font-size:.78rem;font-weight:600;margin-bottom:8px;color:var(--text-primary);text-align:center}.beni-tb-grid{display:grid;grid-template-columns:repeat(10,18px);grid-template-rows:repeat(8,18px);gap:2px}.beni-tb-grid-cell{background:#fff;border:1px solid var(--border-light);border-radius:2px;cursor:pointer;padding:0;transition:background .08s,border-color .08s}.beni-tb-grid-cell:hover{border-color:var(--accent-blue)}.beni-tb-grid-cell.is-active{background:#5a9ad94d;border-color:var(--accent-blue)}.beni-img-search{width:600px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column}.beni-img-search-form{display:flex;gap:8px;margin-bottom:12px}.beni-img-search-form input[type=text]{flex:1;padding:.55rem .75rem;border:1px solid var(--border-light);border-radius:6px;font:inherit;font-size:.9rem}.beni-img-search-form input[type=text]:focus{outline:2px solid var(--accent-blue);outline-offset:-1px;border-color:transparent}.beni-img-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;overflow-y:auto;max-height:50vh;margin-bottom:12px;min-height:120px}.beni-img-results-empty{grid-column:1 / -1;text-align:center;color:var(--text-secondary);font-size:.85rem;padding:2rem 1rem;font-style:italic}.beni-img-result{background:none;border:1px solid var(--border-light);border-radius:4px;cursor:pointer;padding:0;overflow:hidden;aspect-ratio:1;display:flex;align-items:center;justify-content:center;transition:transform .1s,border-color .12s}.beni-img-result:hover{border-color:var(--accent-blue);transform:scale(1.03)}.beni-img-result img{width:100%;height:100%;object-fit:cover;display:block}.beni-editor-body .ProseMirror img{max-width:100%;height:auto;display:block;border-radius:4px;box-shadow:0 1px 3px #00000014}.beni-img-wrap{position:relative;display:block;max-width:100%}.beni-img-wrap--align-left{margin:.75rem 0;width:fit-content}.beni-img-wrap--align-center{margin:.75rem auto;width:fit-content}.beni-img-wrap--align-right{margin:.75rem 0 .75rem auto;width:fit-content}.beni-img-wrap--left{float:left;margin:.5rem 1rem .5rem 0;width:fit-content;max-width:50%}.beni-img-wrap--right{float:right;margin:.5rem 0 .5rem 1rem;width:fit-content;max-width:50%}.beni-img-wrap.is-selected>img{outline:2px solid var(--accent-blue);outline-offset:2px}.beni-img-handle{position:absolute;width:12px;height:12px;background:var(--accent-blue);border:2px solid #ffffff;border-radius:50%;z-index:10;box-shadow:0 1px 3px #00000040}.beni-img-handle--tl{top:-6px;left:-6px;cursor:nwse-resize}.beni-img-handle--tr{top:-6px;right:-6px;cursor:nesw-resize}.beni-img-handle--bl{bottom:-6px;left:-6px;cursor:nesw-resize}.beni-img-handle--br{bottom:-6px;right:-6px;cursor:nwse-resize}.beni-img-bubble{position:absolute;top:-42px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:1px;background:#fff;padding:3px;border:1px solid var(--border-light);border-radius:6px;box-shadow:0 4px 12px #0000001f;z-index:100;white-space:nowrap}.beni-img-bubble button{background:transparent;border:0;padding:4px 8px;font-size:.85rem;cursor:pointer;border-radius:4px;color:var(--text-primary);min-width:26px;line-height:1}.beni-img-bubble button:hover{background:#0000000f}.beni-img-bubble button.is-active{background:#5a9ad92e;color:var(--accent-blue)}.beni-img-bubble button.beni-img-bubble--danger{color:#c00}.beni-img-bubble button.beni-img-bubble--danger:hover{background:#cc000014}.beni-img-bubble-sep{display:inline-block;width:1px;height:16px;background:var(--border-light);margin:0 4px}.beni-editor-body .ProseMirror .beni-table,.beni-editor-body .ProseMirror table{border-collapse:collapse;width:100%;margin:.85rem 0;table-layout:fixed}.beni-editor-body .ProseMirror th,.beni-editor-body .ProseMirror td{border:1px solid var(--border-light);padding:.45rem .6rem;vertical-align:top;position:relative;min-width:60px}.beni-editor-body .ProseMirror th{background:var(--bg-secondary);font-weight:600;text-align:left}.beni-editor-body .ProseMirror .selectedCell{background:#5a9ad91f}.beni-editor-body .ProseMirror .column-resize-handle{position:absolute;right:-2px;top:0;bottom:0;width:4px;background:var(--accent-blue);pointer-events:none}.beni-editor-body .ProseMirror.resize-cursor{cursor:ew-resize}.beni-editor-body .ProseMirror ol{list-style-type:decimal}.beni-editor-body .ProseMirror ol ol{list-style-type:upper-alpha}.beni-editor-body .ProseMirror ol ol ol{list-style-type:decimal}.beni-editor-body .ProseMirror ol ol ol ol{list-style-type:lower-alpha}.beni-editor-body .ProseMirror ol ol ol ol ol{list-style-type:lower-roman}.beni-editor-body{flex:1;min-height:0;overflow-y:auto;padding:2rem 0;background:#f6f5f1;display:flex;justify-content:center}.beni-editor-body .ProseMirror{outline:none;width:816px;max-width:816px;margin:0 auto;background:#fff;border:0;border-radius:0;box-shadow:none;font-family:Times New Roman,Times,"Liberation Serif",serif;font-size:1rem;line-height:1.8;color:#1a1a1a;box-sizing:border-box;padding:0}.beni-editor-body .ProseMirror>*+*{margin-top:.85em}.beni-editor-body .ProseMirror p{margin:0}.beni-editor-body .ProseMirror h1,.beni-editor-body .ProseMirror h2,.beni-editor-body .ProseMirror h3{font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;font-weight:600;line-height:1.3;letter-spacing:-.005em}.beni-editor-body .ProseMirror h1{font-size:1.6rem}.beni-editor-body .ProseMirror h2{font-size:1.35rem}.beni-editor-body .ProseMirror h3{font-size:1.15rem}.beni-editor-body .ProseMirror ul,.beni-editor-body .ProseMirror ol{padding-left:1.5rem;margin:0}.beni-editor-body .ProseMirror ul{list-style:disc}.beni-editor-body .ProseMirror ol{list-style:decimal}.beni-editor-body .ProseMirror li+li{margin-top:.25em}.beni-editor-body .ProseMirror li>p{margin:0}.beni-editor-body .ProseMirror blockquote{border-left:3px solid var(--border-light);padding-left:1rem;color:var(--text-secondary);font-style:italic}.beni-editor-body .ProseMirror a{color:var(--accent-blue);text-decoration:underline;cursor:pointer}.beni-editor-body .ProseMirror code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;background:#0000000d;padding:.05em .35em;border-radius:4px}.beni-editor-body .ProseMirror pre{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;background:#0000000d;padding:.75rem 1rem;border-radius:6px;overflow-x:auto}.beni-editor-body .ProseMirror pre code{background:transparent;padding:0}.beni-editor-body .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--text-light);float:left;height:0;pointer-events:none}.beni-editor-footer{flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.35rem .85rem;border-top:1px solid var(--border-light);background:#fafafa;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;color:var(--text-secondary);letter-spacing:.02em}.beni-editor-footer-sep{opacity:.4}.beni-editor-footer-spacer{flex:1}.beni-editor-zoom{display:flex;align-items:center;gap:.4rem}.beni-zoom-btn{width:22px;height:22px;background:transparent;border:1px solid var(--border-light);border-radius:4px;color:var(--text-primary);font:inherit;font-size:.78rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;line-height:1;transition:background .12s,border-color .12s,opacity .12s}.beni-zoom-btn:hover:not(:disabled){background:#0000000d;border-color:var(--accent-blue)}.beni-zoom-btn:disabled{opacity:.35;cursor:not-allowed}.beni-zoom-slider{width:100px;height:14px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer;outline:none;padding:0;margin:0}.beni-zoom-slider::-webkit-slider-runnable-track{height:3px;background:var(--border-light);border-radius:2px}.beni-zoom-slider::-moz-range-track{height:3px;background:var(--border-light);border-radius:2px}.beni-zoom-slider::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--accent-blue);border:0;margin-top:-4.5px;cursor:pointer}.beni-zoom-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--accent-blue);border:0;cursor:pointer}.beni-zoom-value{min-width:40px;padding:0 4px;background:transparent;border:0;color:var(--text-secondary);font:inherit;font-size:.7rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;cursor:pointer;font-variant-numeric:tabular-nums;text-align:right;letter-spacing:.02em}.beni-zoom-value:hover{color:var(--accent-blue)}.beni-break-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e2124b8;backdrop-filter:blur(6px) saturate(120%);-webkit-backdrop-filter:blur(6px) saturate(120%);z-index:9998;animation:beni-break-scrim-in .5s cubic-bezier(.16,1,.3,1) both}@keyframes beni-break-scrim-in{0%{opacity:0}to{opacity:1}}.beni-break-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:grid;place-items:center;padding:24px;pointer-events:none}.beni-break-modal{pointer-events:auto;width:min(560px,100%);max-height:calc(100vh - 32px);overflow-y:auto;background:#fff;border-radius:6px;box-shadow:0 12px 48px #0003;color:#1e2124;font-family:Inter,system-ui,-apple-system,sans-serif;animation:beni-break-modal-in .55s cubic-bezier(.16,1,.3,1) both;position:relative;scrollbar-width:thin;scrollbar-color:#e5e5e5 transparent;--beni-batt-body: #0d0d55}.beni-break-modal::-webkit-scrollbar{width:6px}.beni-break-modal::-webkit-scrollbar-thumb{background:#e5e5e5;border-radius:3px}@keyframes beni-break-modal-in{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.beni-break-visual{position:relative;height:184px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(120% 90% at 50% 35%,rgba(173,213,212,.25) 0%,transparent 65%),linear-gradient(180deg,#fbfaf7,#fff)}.beni-break-visual>svg{max-height:168px;width:auto}.beni-break-content{padding:26px 32px 6px;text-align:center}.beni-break-title{font-family:Poppins,system-ui,sans-serif;font-weight:400;font-size:36px;line-height:1.08;letter-spacing:-.025em;color:#1e2124;margin:0 0 12px;text-wrap:balance}.beni-break-title-em{font-style:italic;font-weight:400;color:#0d0d55}.beni-break-body{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.5;color:#636363;margin:0 auto;max-width:36ch;text-wrap:pretty}.beni-break-body b{color:#1e2124;font-weight:600}.beni-break-actions{padding:16px 30px 10px;display:flex;justify-content:center}.beni-break-primary{flex:1;max-width:340px;background:#0d0d55;color:#fff;border:none;border-radius:4px;padding:13px 22px;font-size:14.5px;font-weight:600;font-family:Inter,system-ui,-apple-system,sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;letter-spacing:-.005em;transition:background .2s cubic-bezier(.25,.1,.25,1),transform .2s cubic-bezier(.25,.1,.25,1)}.beni-break-primary:hover{background:#1e2124;transform:translateY(-1px)}.beni-break-arrow{transition:transform .2s cubic-bezier(.25,.1,.25,1)}.beni-break-primary:hover .beni-break-arrow{transform:translate(3px)}.beni-break-foot{padding:4px 30px 18px;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:12px;line-height:1.4;color:#767676;text-align:center}.beni-break-foot i{font-family:Poppins,system-ui,sans-serif;font-style:normal;font-weight:500;color:#636363}.beni-break-close{position:absolute;top:10px;right:12px;width:26px;height:26px;background:#ffffffb3;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid #e5e5e5;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:#636363;z-index:2;transition:background .2s cubic-bezier(.25,.1,.25,1),color .2s cubic-bezier(.25,.1,.25,1)}.beni-break-close:hover{color:#1e2124;background:#fff}[data-theme=dark] .beni-break-modal{background:#1e2124;color:#ffffffeb;--beni-batt-body: #add5d4}[data-theme=dark] .beni-break-visual{background:radial-gradient(120% 90% at 50% 0%,rgba(173,213,212,.18) 0%,transparent 60%),linear-gradient(180deg,#25282b,#1e2124)}[data-theme=dark] .beni-break-title{color:#fff}[data-theme=dark] .beni-break-title-em{color:#add5d4}[data-theme=dark] .beni-break-body{color:#ffffffa6}[data-theme=dark] .beni-break-body b{color:#fff}[data-theme=dark] .beni-break-primary{background:#add5d4;color:#0d0d55}[data-theme=dark] .beni-break-primary:hover{background:#c3e2e1}[data-theme=dark] .beni-break-foot{color:#ffffff73}[data-theme=dark] .beni-break-foot i{color:#ffffffa6}[data-theme=dark] .beni-break-close{background:#2f3234b3;border-color:#2f3234;color:#ffffffa6}[data-theme=dark] .beni-break-close:hover{color:#fff}@media (max-width: 720px){.beni-break-content{padding:24px 22px 8px}.beni-break-actions{padding:16px 22px 20px}.beni-break-primary{width:100%;max-width:100%}.beni-break-title{font-size:30px}.beni-break-visual{height:180px}}.beni-landing main{display:block!important;grid-template-columns:unset!important;padding:0!important;gap:0!important;min-height:auto!important}.beni-landing header{padding:0!important;align-items:stretch!important}.beni-landing{--beni-bg: #ffffff;--beni-bg-soft: #fafafa;--beni-text: #111111;--beni-text-muted: #555555;--beni-border: #e8e8e8;--beni-blue: #1a4f8c;--beni-blue-dark: #153d6e;--beni-blue-soft: #e8f0fa;--beni-cobalt-soft: #d6e6fb;--beni-orange-soft: #fff3eb;--beni-orange-border: #e8c9a8;--beni-cobalt-border: #9ebce0;--beni-blue-soft-border: #b8cbe0;--beni-pastel-lavender: var(--beni-blue-soft);--beni-pastel-mint: var(--beni-cobalt-soft);--beni-pastel-blush: var(--beni-orange-soft);--beni-accent: var(--beni-blue);--beni-cta: var(--beni-blue);--beni-radius-lg: 16px;--beni-radius-md: 12px;--beni-shadow-soft: 0 4px 24px rgba(26, 79, 140, .06);font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--beni-bg);color:var(--beni-text);-webkit-font-smoothing:antialiased}.beni-header{position:sticky;top:0;z-index:100;background:#fffffff2;border-bottom:1px solid var(--beni-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.beni-header-inner{max-width:1120px;margin:0 auto;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.beni-logo-link{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--beni-text)}.beni-logo{width:40px;height:40px;border-radius:0;object-fit:contain}.beni-logo-text{font-size:1.35rem;font-weight:500;text-transform:lowercase;letter-spacing:-.02em}.beni-nav{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.beni-nav button{background:none;border:none;color:var(--beni-text-muted);font-size:.9rem;padding:.5rem .75rem;cursor:pointer;text-transform:lowercase;border-radius:6px;transition:color .15s,background .15s}.beni-nav button:hover{color:var(--beni-text);background:var(--beni-bg-soft)}.beni-nav-login-link{margin-left:.35rem;color:var(--beni-text);font-weight:600;font-size:.9rem;text-decoration:none;text-transform:lowercase;padding:.5rem .85rem;border-radius:8px;border:1px solid var(--beni-border);transition:background .15s,color .15s,border-color .15s}.beni-nav-login-link:hover{background:var(--beni-blue);color:#fff;border-color:var(--beni-blue)}.beni-nav-details{position:relative;margin-left:.15rem}.beni-nav-summary{list-style:none;cursor:pointer;font-size:.9rem;padding:.5rem .75rem;border-radius:6px;color:var(--beni-text-muted);text-transform:lowercase;transition:color .15s,background .15s}.beni-nav-summary::-webkit-details-marker{display:none}.beni-nav-summary:after{content:"▾";font-size:.65em;margin-left:.35rem;opacity:.7}.beni-nav-details[open] .beni-nav-summary{color:var(--beni-blue);background:var(--beni-blue-soft)}.beni-nav-details-panel{position:absolute;right:0;top:calc(100% + 6px);min-width:220px;padding:.5rem;background:var(--beni-bg);border:1px solid var(--beni-border);border-radius:var(--beni-radius-md);box-shadow:0 16px 40px #0000001a;z-index:150;display:flex;flex-direction:column;gap:.15rem}.beni-nav-details-link{display:block;padding:.5rem .65rem;font-size:.88rem;color:var(--beni-text);text-decoration:none;text-transform:lowercase;border-radius:8px;transition:background .12s}.beni-nav-details-link:hover{background:var(--beni-bg-soft);color:var(--beni-blue)}.beni-hero{position:relative;background:linear-gradient(165deg,#eef3fa 0%,#f8fafc 42%,var(--beni-bg) 100%);padding:2.75rem 1.5rem 4rem;text-align:center;overflow:hidden}.beni-hero-eyebrow{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--beni-blue);margin:0 0 1rem;padding:.35rem .75rem;background:#1a4f8c14;border-radius:999px}.beni-hero-shapes{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.beni-shape{position:absolute;border-radius:50%;opacity:.4}.beni-shape-1{width:320px;height:320px;background:var(--beni-pastel-lavender);top:-120px;right:-80px}.beni-shape-2{width:240px;height:240px;background:var(--beni-pastel-mint);bottom:-60px;left:-60px}.beni-shape-3{width:160px;height:160px;background:var(--beni-pastel-blush);top:50%;left:15%;transform:translateY(-50%)}.beni-hero-inner--wide{max-width:min(1040px,100%)}.beni-hero-screenshot-caption{margin:1.25rem auto 0;max-width:36rem;font-size:.9rem;color:var(--beni-text-muted);line-height:1.45}.beni-hero-mockup{margin-top:2rem;max-width:560px;margin-left:auto;margin-right:auto;background:var(--beni-bg);border:1px solid var(--beni-border);border-radius:12px;box-shadow:0 20px 50px #00000014;overflow:hidden}.beni-hero-mockup--screenshot{max-width:min(960px,100%)}.beni-hero-screenshot-wrap{line-height:0;background:#f3f4f6}.beni-hero-screenshot-img{width:100%;height:auto;display:block;vertical-align:top}.beni-mockup-bar{height:40px;background:var(--beni-bg-soft);border-bottom:1px solid var(--beni-border);display:flex;align-items:center;gap:8px;padding:0 14px}.beni-mockup-dot{width:10px;height:10px;border-radius:50%;background:var(--beni-border)}.beni-mockup-label{margin-left:auto;font-size:.75rem;color:var(--beni-text-muted);text-transform:lowercase}.beni-mockup-body{display:flex;min-height:200px}.beni-mockup-sidebar{width:56px;background:linear-gradient(180deg,var(--beni-bg-soft) 0%,var(--beni-border) 100%);opacity:.6}.beni-mockup-main{flex:1;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.beni-mockup-line{height:10px;background:var(--beni-border);border-radius:4px;width:100%;max-width:100%}.beni-mockup-line.short{max-width:45%}.beni-mockup-line.medium{max-width:70%}.beni-mockup-cards{display:flex;gap:.75rem;margin-top:.5rem}.beni-mockup-card{flex:1;height:64px;background:var(--beni-bg-soft);border:1px solid var(--beni-border);border-radius:8px}.beni-hero-inner{max-width:720px;margin:0 auto;position:relative;z-index:1}.beni-hero-title{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:600;line-height:1.25;margin:0 0 .5rem;color:var(--beni-text);letter-spacing:-.02em}.beni-hero-subtitle{font-size:1.1rem;color:var(--beni-text-muted);margin:0 0 1.5rem;letter-spacing:.08em;text-transform:uppercase}.beni-hero-desc{font-size:1.05rem;line-height:1.6;color:var(--beni-text-muted);margin:0 0 2rem}.beni-hero-ctas{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.beni-cta-primary{background:var(--beni-cta);color:#fff;border:none;padding:.85rem 1.75rem;font-size:.95rem;font-weight:500;text-transform:lowercase;border-radius:8px;cursor:pointer;transition:opacity .2s,transform .15s}.beni-cta-primary:hover{background:var(--beni-blue-dark);opacity:1;transform:translateY(-1px)}.beni-cta-secondary{background:transparent;color:var(--beni-text);border:1px solid var(--beni-border);padding:.85rem 1.75rem;font-size:.95rem;font-weight:500;text-transform:lowercase;border-radius:8px;cursor:pointer;transition:background .15s,border-color .15s}.beni-cta-secondary:hover{background:var(--beni-blue-soft);border-color:var(--beni-cobalt-border)}.beni-section{padding:clamp(2.75rem,6vw,4rem) 1.5rem}.beni-section--alt{background:linear-gradient(180deg,var(--beni-bg-soft) 0%,rgba(255,255,255,.65) 100%)}.beni-section-eyebrow{text-align:center;font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--beni-blue);margin:0 0 .65rem}.beni-container{max-width:1120px;margin:0 auto}.beni-section-title{font-size:clamp(1.55rem,3.2vw,2rem);font-weight:600;text-align:center;margin:0 0 .75rem;color:var(--beni-text);text-transform:lowercase;letter-spacing:-.03em;line-height:1.2}.beni-section-lead{text-align:center;color:var(--beni-text-muted);font-size:1.0625rem;line-height:1.65;max-width:640px;margin:0 auto 2.5rem}.beni-section-inline-cta{text-align:center;margin:1.15rem 0 0}.beni-text-link{font-size:.95rem;font-weight:600;color:var(--beni-blue);text-decoration:none;text-transform:lowercase}.beni-text-link:hover{text-decoration:underline;color:var(--beni-blue-dark)}.beni-platform{background:var(--beni-bg);border-top:1px solid var(--beni-border);border-bottom:1px solid var(--beni-border)}.beni-selling-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;max-width:960px;margin:0 auto}.beni-selling-card{text-align:left;padding:1.65rem 1.4rem;border-radius:var(--beni-radius-lg);border:1px solid var(--beni-border);background:var(--beni-bg);cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .15s;font:inherit;color:inherit;display:flex;flex-direction:column;align-items:flex-start;text-decoration:none;box-shadow:var(--beni-shadow-soft)}a.beni-selling-card{color:inherit}.beni-selling-card:hover{border-color:var(--beni-cobalt-border);box-shadow:0 12px 36px #1a4f8c1a;transform:translateY(-3px)}.beni-selling-card:focus-visible{outline:2px solid var(--beni-text);outline-offset:2px}.beni-selling-card--static{cursor:default;background:var(--beni-bg-soft);box-shadow:none}.beni-selling-card--static:hover{transform:none;box-shadow:none;border-color:var(--beni-border)}.beni-selling-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:10px;background:var(--beni-pastel-lavender);font-size:1.1rem;color:var(--beni-text);margin-bottom:.75rem}.beni-selling-icon--mint{background:var(--beni-pastel-mint)}.beni-selling-icon--blush{background:var(--beni-pastel-blush)}.beni-selling-card h3{font-size:1.1rem;font-weight:600;margin:0 0 .5rem;text-transform:lowercase}.beni-selling-card p{font-size:.9rem;line-height:1.55;color:var(--beni-text-muted);margin:0 0 .75rem;flex:1}.beni-selling-more{font-size:.85rem;font-weight:600;color:var(--beni-text);text-transform:lowercase}.beni-selling-inline-btn{margin-top:auto;background:var(--beni-bg-soft);border:1px solid var(--beni-border);padding:.45rem .9rem;border-radius:8px;font-size:.85rem;cursor:pointer;text-transform:lowercase;color:var(--beni-text)}.beni-selling-inline-btn:hover{background:var(--beni-cobalt-soft);border-color:var(--beni-cobalt-border)}.beni-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#00000073;display:flex;align-items:flex-start;justify-content:center;padding:1.5rem;overflow-y:auto}.beni-modal{position:relative;max-width:560px;width:100%;margin:2rem auto;background:var(--beni-bg);border-radius:14px;border:1px solid var(--beni-border);box-shadow:0 24px 60px #00000026;padding:1.75rem 1.5rem 1.5rem;text-align:left}.beni-modal--wide{max-width:640px}.beni-modal-close{position:absolute;top:.65rem;right:.65rem;width:2.25rem;height:2.25rem;border:none;background:var(--beni-bg-soft);border-radius:8px;font-size:1.35rem;line-height:1;cursor:pointer;color:var(--beni-text-muted)}.beni-modal-close:hover{background:var(--beni-border);color:var(--beni-text)}.beni-modal-title{font-size:1.35rem;font-weight:600;margin:0 0 .75rem;padding-right:2rem;text-transform:lowercase;letter-spacing:-.02em}.beni-modal-lead{font-size:1rem;line-height:1.55;color:var(--beni-text-muted);margin:0 0 1.25rem}.beni-modal-h3{font-size:.95rem;font-weight:600;margin:1.15rem 0 .45rem;text-transform:lowercase;color:var(--beni-text)}.beni-modal-p{font-size:.9rem;line-height:1.55;color:var(--beni-text-muted);margin:0 0 .35rem}.beni-modal-list{margin:0;padding-left:1.2rem;font-size:.9rem;line-height:1.55;color:var(--beni-text-muted)}.beni-modal-list li{margin-bottom:.35rem}.beni-modal-ol{margin:0 0 .5rem;padding-left:1.35rem;font-size:.9rem;line-height:1.55;color:var(--beni-text-muted)}.beni-modal-ol li{margin-bottom:.5rem}.beni-modal-ol li strong{color:var(--beni-text)}.beni-modal-note{font-size:.85rem;line-height:1.5;color:var(--beni-text-muted);margin:1rem 0 .75rem;padding:.85rem 1rem;background:var(--beni-bg-soft);border-radius:10px;border:1px solid var(--beni-border)}.beni-modal-link{color:var(--beni-text);font-weight:500}.beni-modal-link:hover{text-decoration:underline}.beni-modal-cta{width:100%;margin-top:.25rem}.beni-certifications{background:var(--beni-bg)}.beni-cert-teaser{display:block;width:100%;max-width:520px;margin:0 auto;padding:1.85rem 1.65rem;text-align:left;background:linear-gradient(135deg,var(--beni-blue-soft) 0%,var(--beni-bg) 55%);border:1px solid var(--beni-blue-soft-border);border-radius:var(--beni-radius-lg);cursor:pointer;font:inherit;color:inherit;transition:border-color .2s,box-shadow .2s,transform .15s;text-decoration:none;box-shadow:var(--beni-shadow-soft)}a.beni-cert-teaser{color:inherit}.beni-cert-teaser:hover{border-color:var(--beni-cobalt-border);box-shadow:0 14px 40px #1a4f8c1f;transform:translateY(-2px)}.beni-cert-teaser:focus{outline:2px solid var(--beni-text);outline-offset:3px}.beni-cert-teaser-badge{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin-bottom:.5rem;background:var(--beni-pastel-lavender);border-radius:10px;font-size:1rem;line-height:1}.beni-cert-teaser-label{display:block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--beni-text-muted);margin-bottom:.35rem}.beni-cert-teaser-title{font-size:1.15rem;font-weight:600;margin:0 0 .5rem;text-transform:lowercase;letter-spacing:-.02em}.beni-cert-teaser-desc{font-size:.9rem;line-height:1.55;color:var(--beni-text-muted);margin:0 0 1rem}.beni-cert-teaser-cta{font-size:.9rem;font-weight:600;color:var(--beni-text)}.beni-pain{background:var(--beni-bg-soft)}.beni-cards.three{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.beni-card{padding:1.75rem;border-radius:var(--beni-radius-lg);border:1px solid var(--beni-border);background:var(--beni-bg);box-shadow:var(--beni-shadow-soft)}.beni-pillar--lift,.beni-feature--lift,.beni-compliance-item--lift,.beni-pricing-card--lift{transition:transform .2s,box-shadow .2s}.beni-pillar--lift:hover,.beni-feature--lift:hover,.beni-compliance-item--lift:hover,.beni-pricing-card--lift:hover{transform:translateY(-2px);box-shadow:var(--beni-shadow-soft)}.beni-card h3{font-size:1.1rem;font-weight:600;margin:0 0 .75rem;text-transform:lowercase}.beni-card p{font-size:.95rem;line-height:1.55;color:var(--beni-text-muted);margin:0}.pastel-lavender{background:var(--beni-pastel-lavender);border-color:var(--beni-blue-soft-border)}.pastel-mint{background:var(--beni-pastel-mint);border-color:var(--beni-cobalt-border)}.pastel-blush{background:var(--beni-pastel-blush);border-color:var(--beni-orange-border)}.beni-pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.beni-pillar{padding:1.65rem;border:1px solid var(--beni-border);border-radius:var(--beni-radius-lg);background:var(--beni-bg);box-shadow:var(--beni-shadow-soft)}.beni-pillar-icon{display:block;margin-bottom:.75rem}.beni-icon-workspace{width:40px;height:40px;background:var(--beni-pastel-lavender);border-radius:10px;display:block}.beni-icon-govern{width:40px;height:40px;background:var(--beni-pastel-mint);border-radius:10px;display:block}.beni-icon-audit{width:40px;height:40px;background:var(--beni-pastel-blush);border-radius:10px;display:block}.beni-pillar h3{font-size:1.05rem;font-weight:600;margin:0 0 .5rem;text-transform:lowercase}.beni-pillar p{font-size:.9rem;line-height:1.55;color:var(--beni-text-muted);margin:0}.beni-features{background:var(--beni-bg-soft)}.beni-feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.25rem}.beni-feature{padding:1.6rem;background:var(--beni-bg);border:1px solid var(--beni-border);border-radius:var(--beni-radius-md);box-shadow:var(--beni-shadow-soft)}.beni-feature-emoji{display:block;font-size:1.5rem;margin-bottom:.5rem;line-height:1}.beni-feature h3{font-size:1rem;font-weight:600;margin:0 0 .5rem;text-transform:lowercase}.beni-feature p{font-size:.9rem;line-height:1.55;color:var(--beni-text-muted);margin:0}.beni-before-after{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:800px;margin:0 auto}@media (max-width: 640px){.beni-before-after{grid-template-columns:1fr}}.beni-ba-column{padding:1.5rem;border-radius:12px;border:1px solid var(--beni-border)}.beni-ba-column.before{background:#f5f5f5}.beni-ba-column.after{background:var(--beni-cobalt-soft);border-color:var(--beni-cobalt-border)}.beni-ba-column h3{font-size:1.1rem;font-weight:600;margin:0 0 1rem;text-transform:lowercase}.beni-ba-column ul{list-style:none;margin:0;padding:0}.beni-ba-column li{font-size:.9rem;line-height:1.5;color:var(--beni-text-muted);margin-bottom:.5rem;padding-left:1.25rem;position:relative}.beni-ba-column li:before{content:"·";position:absolute;left:0;color:var(--beni-text)}.beni-pricing{background:var(--beni-bg-soft)}.beni-pricing-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:900px;margin:0 auto}@media (max-width: 768px){.beni-pricing-cards{grid-template-columns:1fr}}.beni-pricing-card{padding:1.85rem;background:var(--beni-bg);border:1px solid var(--beni-border);border-radius:var(--beni-radius-lg);position:relative;display:flex;flex-direction:column;box-shadow:var(--beni-shadow-soft)}.beni-pricing-card.featured{border-color:var(--beni-blue);box-shadow:0 4px 24px #1a4f8c1f}.beni-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:var(--beni-blue);color:#fff;font-size:.7rem;padding:.25rem .6rem;border-radius:999px;text-transform:lowercase}.beni-pricing-card h3{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;text-transform:lowercase}.beni-price{font-size:1.1rem;color:var(--beni-text-muted);margin:0 0 1.25rem}.beni-pricing-card ul{list-style:none;margin:0 0 1.5rem;padding:0;flex:1}.beni-pricing-card li{font-size:.9rem;color:var(--beni-text-muted);margin-bottom:.4rem;padding-left:1rem;position:relative}.beni-pricing-card li:before{content:"—";position:absolute;left:0;color:var(--beni-text-muted)}.beni-pricing-cta{width:100%;padding:.75rem;background:var(--beni-cta);color:#fff;border:none;border-radius:8px;font-size:.9rem;text-transform:lowercase;cursor:pointer;transition:opacity .2s}.beni-pricing-cta:hover{background:var(--beni-blue-dark);opacity:1}.beni-pricing-card.featured .beni-pricing-cta{background:var(--beni-blue)}.beni-compliance{background:var(--beni-bg-soft)}.beni-compliance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;margin-top:.5rem}.beni-compliance-item{padding:1.65rem;background:var(--beni-bg);border:1px solid var(--beni-border);border-radius:var(--beni-radius-lg);box-shadow:var(--beni-shadow-soft)}.beni-compliance-item h3{font-size:1rem;font-weight:600;margin:0 0 .5rem;text-transform:lowercase}.beni-compliance-item p{font-size:.9rem;line-height:1.55;color:var(--beni-text-muted);margin:0}.beni-contact-inner{max-width:440px;margin:0 auto}.beni-contact-card{padding:1.75rem;background:var(--beni-bg-soft);border:1px solid var(--beni-border);border-radius:12px}.beni-contact-cta-question{font-size:1.1rem!important;font-weight:500!important;color:var(--beni-text)!important;margin:0 0 1.25rem!important;line-height:1.4}.beni-contact-list{margin:0;padding:0}.beni-contact-list dt{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--beni-text-muted);margin:1rem 0 .35rem}.beni-contact-list dt:first-of-type{margin-top:0}.beni-contact-list dd{margin:0;font-size:.95rem;line-height:1.5;color:var(--beni-text)}.beni-contact-list a{color:var(--beni-text);text-decoration:none;word-break:break-word}.beni-contact-list a:hover{text-decoration:underline}.beni-contact-privacy{display:block;margin-top:1.25rem;font-size:.875rem}.beni-link{display:inline-block;font-size:.875rem;color:var(--beni-text-muted);margin-top:.5rem;text-decoration:none}.beni-link:hover{text-decoration:underline}.beni-footer{border-top:1px solid var(--beni-border);padding:3rem 1.5rem 2rem;background:linear-gradient(180deg,var(--beni-bg-soft) 0%,#f0f3f8 100%)}.beni-footer-wide{max-width:1120px}.beni-footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:2rem 2.5rem;margin-bottom:2rem}@media (max-width: 768px){.beni-footer-grid{grid-template-columns:1fr}}.beni-footer-brand .beni-logo-text{font-size:1.25rem;font-weight:600;text-transform:lowercase;display:block;margin-bottom:.5rem}.beni-footer-brand p{font-size:.9rem;color:var(--beni-text-muted);line-height:1.5;margin:0 0 .75rem;max-width:280px}.beni-footer-login-link{font-size:.88rem;font-weight:600;color:var(--beni-blue);text-decoration:none;text-transform:lowercase}.beni-footer-login-link:hover{text-decoration:underline}.beni-footer-heading{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--beni-text-muted);margin:0 0 .85rem}.beni-footer-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.beni-footer-links a,.beni-footer-links button{font-size:.9rem;color:var(--beni-text);text-decoration:none;text-transform:lowercase;text-align:left;background:none;border:none;padding:0;cursor:pointer;font-family:inherit}.beni-footer-links a:hover,.beni-footer-links button:hover{color:var(--beni-blue)}.beni-footer-copy{font-size:.8rem;color:var(--beni-text-muted);margin:0;padding-top:1.5rem;border-top:1px solid var(--beni-border)}.beni-page-main{padding:2.5rem 1.5rem 4rem;min-height:50vh;background:var(--beni-bg)}.beni-page-inner{max-width:680px}.beni-page-inner--wide{max-width:min(1040px,100%)}.beni-breadcrumb{margin-bottom:1.5rem}.beni-back-link{font-size:.9rem;font-weight:500;color:var(--beni-blue);text-decoration:none;text-transform:lowercase}.beni-back-link:hover{text-decoration:underline}.beni-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--beni-blue);margin:0 0 .5rem}.beni-article h1{font-size:clamp(1.65rem,4vw,2.1rem);font-weight:600;margin:0 0 1rem;letter-spacing:-.03em;line-height:1.2;text-transform:lowercase;color:var(--beni-text)}.beni-article-lead{font-size:1.08rem;line-height:1.65;color:var(--beni-text-muted);margin:0 0 2rem}.beni-article h2{font-size:1.05rem;font-weight:600;margin:2rem 0 .6rem;text-transform:lowercase;color:var(--beni-text)}.beni-article-h2-flush{margin-top:.5rem}.beni-article p{font-size:.95rem;line-height:1.65;color:var(--beni-text-muted);margin:0 0 1rem}.beni-article ul,.beni-article ol{margin:0 0 1.25rem;padding-left:1.25rem;font-size:.95rem;line-height:1.65;color:var(--beni-text-muted)}.beni-article li{margin-bottom:.4rem}.beni-article-ol li strong{color:var(--beni-text)}.beni-article-callout{margin:2rem 0 0;padding:1rem 1.15rem;background:var(--beni-blue-soft);border:1px solid var(--beni-blue-soft-border);border-radius:var(--beni-radius-md);font-size:.9rem;line-height:1.55;color:var(--beni-text-muted)}.beni-article-callout a{color:var(--beni-blue);font-weight:600}.beni-article-cta{margin:2rem 0 0}.beni-article-cta-link{font-size:.95rem;font-weight:600;color:var(--beni-blue);text-decoration:none;text-transform:lowercase}.beni-article-cta-link:hover{text-decoration:underline}.beni-contact-card--accent{border-color:var(--beni-blue-soft-border);box-shadow:0 12px 40px #1a4f8c14;background:linear-gradient(135deg,var(--beni-bg) 0%,var(--beni-blue-soft) 100%)}.beni-policy-showcase{margin-top:2rem;max-width:min(960px,100%);margin-left:auto;margin-right:auto}.beni-neuro-showcase{margin-top:1.75rem;padding-top:1.75rem;border-top:1px solid rgba(184,203,224,.55);max-width:min(680px,100%);margin-left:auto;margin-right:auto}.beni-neuro-showcase--stacked .beni-neuro-showcase-intro{max-width:min(620px,100%);margin-left:auto;margin-right:auto;margin-bottom:1.35rem}.beni-neuro-showcase--stacked .beni-neuro-showcase-intro .beni-section-eyebrow{text-align:center}.beni-neuro-showcase--stacked .beni-neuro-showcase-intro .beni-neuro-showcase-lead{max-width:none;margin-bottom:0}.beni-neuro-showcase--stacked .beni-neuro-showcase-lead{margin-bottom:1.25rem}.beni-landing main .beni-neuro-showcase--stacked figure.beni-neuro-showcase-frame--stacked{width:fit-content;max-width:100%;margin-left:auto;margin-right:auto;border-radius:12px;box-shadow:0 3px 14px #1a4f8c0f;border-color:#e2e8f0f2}.beni-landing main .beni-neuro-showcase--stacked figure.beni-neuro-showcase-frame--stacked .beni-neuro-showcase-img--native{width:auto;max-width:min(620px,100%);height:auto;margin:0;display:block;transform:none;-webkit-backface-visibility:visible;backface-visibility:visible}.beni-neuro-showcase--stacked .beni-neuro-showcase-caption{text-align:center}.beni-showcase-split-eyebrow{margin-bottom:1.1rem}.beni-showcase-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,min(38vw,380px));gap:clamp(1.35rem,3.5vw,2.5rem);align-items:start}.beni-showcase-split--reverse .beni-showcase-split-text{order:2}.beni-showcase-split--reverse .beni-showcase-split-media{order:1}.beni-showcase-split-text{min-width:0}.beni-showcase-split-text .beni-neuro-showcase-title{text-align:left}.beni-showcase-split-text .beni-neuro-showcase-lead{text-align:left;margin-left:0;margin-right:0;margin-bottom:0;max-width:38rem}.beni-showcase-split-cta{margin-top:1.15rem;text-align:left}.beni-showcase-split-media{min-width:0}.beni-neuro-showcase-title{font-size:clamp(1.15rem,2.2vw,1.35rem);font-weight:600;text-align:center;text-transform:lowercase;letter-spacing:-.02em;margin:0 0 .6rem;color:var(--beni-text)}.beni-neuro-showcase-lead{text-align:center;max-width:32rem;margin:0 auto 1rem;font-size:.94rem;line-height:1.58;color:var(--beni-text-muted)}.beni-landing main .beni-showcase-split-media .beni-neuro-showcase-frame{max-width:100%;margin-left:auto;margin-right:auto;border-radius:12px;box-shadow:0 4px 18px #1a4f8c12;border-color:#e2e8f0}.beni-showcase-split-media .beni-neuro-showcase-caption{text-align:left}@media (min-width: 801px){.beni-policy-showcase .beni-showcase-split--policy{grid-template-columns:minmax(0,1fr) minmax(0,220px);gap:clamp(1.25rem,2.5vw,1.85rem);align-items:stretch}.beni-showcase-split-text--policy{display:flex;flex-direction:column;min-height:0;padding:1.5rem 1.65rem;background:linear-gradient(152deg,var(--beni-bg) 0%,var(--beni-blue-soft) 55%,rgba(255,255,255,.4) 100%);border:1px solid var(--beni-blue-soft-border);border-radius:14px;box-shadow:var(--beni-shadow-soft)}.beni-showcase-split-text--policy .beni-neuro-showcase-title{margin-top:0}.beni-policy-showcase .beni-showcase-split-text--policy .beni-showcase-split-cta{margin-top:auto;padding-top:1rem}.beni-policy-showcase .beni-showcase-split-media--policy{display:flex;flex-direction:column;justify-content:center}.beni-landing main .beni-policy-showcase .beni-showcase-split-media--policy .beni-policy-showcase-frame{max-width:220px;margin-left:auto;margin-right:0;border-radius:11px;box-shadow:0 4px 16px #1a4f8c12;border-color:#e2e8f0;background:var(--beni-bg)}.beni-landing main .beni-policy-showcase .beni-showcase-split-media--policy .beni-policy-showcase-img{width:100%;max-width:220px;height:auto;vertical-align:top;display:block}.beni-policy-showcase .beni-showcase-split-media--policy .beni-neuro-showcase-caption{font-size:.72rem;line-height:1.4;padding:.55rem .65rem .65rem;text-align:center}}@media (max-width: 800px){.beni-showcase-split{grid-template-columns:1fr;gap:1.35rem}.beni-showcase-split--reverse .beni-showcase-split-text,.beni-showcase-split--reverse .beni-showcase-split-media{order:unset}.beni-showcase-split-text .beni-neuro-showcase-title{text-align:center}.beni-showcase-split-text .beni-neuro-showcase-lead{text-align:center;margin-left:auto;margin-right:auto}.beni-showcase-split-cta{text-align:center}.beni-landing main .beni-showcase-split-media .beni-neuro-showcase-frame{max-width:min(360px,100%)}.beni-showcase-split-text--policy{padding:1.25rem 1.2rem;border-radius:12px;background:var(--beni-blue-soft);border:1px solid var(--beni-blue-soft-border)}.beni-landing main .beni-policy-showcase .beni-showcase-split-media--policy .beni-policy-showcase-frame{max-width:min(240px,86vw);margin-left:auto;margin-right:auto}.beni-landing main .beni-policy-showcase .beni-showcase-split-media--policy .beni-policy-showcase-img{width:100%;max-width:100%;height:auto}.beni-policy-showcase .beni-showcase-split-media--policy .beni-neuro-showcase-caption{text-align:center;font-size:.75rem}.beni-showcase-split-media .beni-neuro-showcase-caption{text-align:center}}.beni-neuro-showcase-frame{margin:0;border-radius:var(--beni-radius-lg);overflow:hidden;border:1px solid var(--beni-border);box-shadow:0 8px 28px #1a4f8c14;background:var(--beni-bg);line-height:normal}.beni-neuro-showcase-frame--article{margin:0 auto 1.5rem;max-width:min(850px,100%)}.beni-page-main .beni-policy-showcase-img{width:100%;max-width:min(560px,100%);height:auto;margin-left:auto;margin-right:auto;display:block}.beni-page-main .beni-neuro-showcase-img--native{width:auto;max-width:min(620px,100%);height:auto;margin-left:auto;margin-right:auto;display:block}.beni-neuro-showcase-img{width:100%;height:auto;display:block;vertical-align:top;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.beni-neuro-showcase-caption{margin:0;padding:.65rem .85rem .75rem;border-top:1px solid var(--beni-border);background:var(--beni-bg-soft);font-size:.78rem;line-height:1.45;color:var(--beni-text-muted);text-align:center}.beni-neuro-showcase-caption--article{text-align:left;font-size:.875rem;line-height:1.55;padding:.85rem 1rem .95rem}.assignment-rail{--rail-accent: var(--beni-rail-accent, var(--accent-blue));--rail-accent-tint-10: color-mix(in srgb, var(--rail-accent) 10%, transparent);--rail-accent-tint-04: color-mix(in srgb, var(--rail-accent) 4%, transparent);--rail-accent-tint-30: color-mix(in srgb, var(--rail-accent) 30%, transparent);--rail-text: var(--text-primary, #1a1a1a);--rail-text-m: var(--text-secondary, #475569);--rail-text-l: #767676;--rail-border: var(--border-light, #e2e8f0);--rail-success: #10b981;--rail-success-soft: color-mix(in srgb, #10b981 14%, transparent);--rail-warn: #f59e0b;--rail-surface: color-mix(in srgb, var(--rail-accent) 4%, #ffffff);--rail-surface-card: color-mix(in srgb, var(--rail-accent) 7%, #ffffff);display:flex;flex-direction:column;min-height:0;background:var(--rail-surface);border-left:1px solid var(--rail-border);font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;color:var(--rail-text);overflow:hidden;height:100%}.assignment-rail__head{padding:.75rem 1rem;border-bottom:1px solid var(--rail-border);display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-shrink:0}.assignment-rail__title{font-size:.86rem;font-weight:600;color:var(--rail-text);letter-spacing:.01em}.assignment-rail__close{width:26px;height:26px;border:0;background:transparent;border-radius:6px;color:var(--rail-text-m);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.assignment-rail__close:hover{background:var(--rail-accent-tint-10);color:var(--rail-accent)}.assignment-rail__tabs{display:flex;padding:0 .625rem;border-bottom:1px solid var(--rail-border);gap:.1rem;flex-shrink:0}.assignment-rail__tab{padding:.55rem .65rem;background:none;border:none;font:inherit;font-size:.78rem;color:var(--rail-text-l);cursor:pointer;border-bottom:2px solid transparent;letter-spacing:.01em;transition:color .15s ease,border-color .15s ease}.assignment-rail__tab:hover{color:var(--rail-text)}.assignment-rail__tab.is-active{color:var(--rail-text);border-bottom-color:var(--rail-accent);font-weight:600}.assignment-rail__body{flex:1;overflow-y:auto;padding:.75rem .875rem 1.5rem;min-height:0}.assignment-rail__section-label{font-size:.7rem;color:var(--rail-text-l);text-transform:lowercase;letter-spacing:.04em;font-weight:600;margin:.875rem 0 .5rem}.assignment-rail__hint{font-size:.72rem;color:var(--rail-text-m);margin-top:.5rem;line-height:1.5}.assignment-rail__empty{padding:1rem .25rem;font-size:.78rem;color:var(--rail-text-m);line-height:1.5}.assignment-rail__grade-card{background:linear-gradient(135deg,color-mix(in srgb,#0d0d55 4%,transparent),color-mix(in srgb,#add5d4 18%,transparent));border:1px solid var(--rail-border);border-radius:10px;padding:.75rem .875rem;margin-bottom:.875rem}.assignment-rail__grade-card--empty,.assignment-rail__grade-card--loading{background:var(--bg-secondary, #f8fafc)}.assignment-rail__grade-label{font-size:.7rem;color:var(--rail-text-l);text-transform:lowercase;letter-spacing:.04em;font-weight:600}.assignment-rail__grade-row{display:flex;align-items:baseline;gap:.5rem;margin-top:4px}.assignment-rail__grade-letter{font-size:1.85rem;font-weight:700;color:#0d0d55;letter-spacing:-.02em;line-height:1}.assignment-rail__grade-pct{font-size:.9rem;color:var(--rail-text-m)}.assignment-rail__grade-bar{height:6px;background:var(--rail-border);border-radius:999px;margin:.625rem 0 .4rem;overflow:hidden}.assignment-rail__grade-bar-fill{height:100%;background:linear-gradient(90deg,var(--rail-accent),#add5d4);border-radius:999px;transition:width .4s ease-out}.assignment-rail__grade-sub{font-size:.74rem;color:var(--rail-text-m);line-height:1.45}.assignment-rail__rubric-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.5rem}.assignment-rail__rubric-item{display:flex;gap:.625rem;padding:.55rem .625rem;border:1px solid var(--rail-border);border-radius:8px;cursor:pointer;position:relative;background:var(--rail-surface-card);transition:background .15s ease,border-color .15s ease}.assignment-rail__rubric-item:hover{border-color:var(--rail-accent-tint-30);background:var(--rail-accent-tint-04)}.assignment-rail__rubric-item.is-active{border-color:var(--rail-accent);background:var(--rail-accent-tint-10)}.assignment-rail__rubric-check{width:18px;height:18px;flex-shrink:0;border-radius:50%;background:var(--rail-surface);border:1.5px solid var(--rail-border);display:grid;place-items:center;color:#fff;margin-top:1px}.assignment-rail__rubric-item--met .assignment-rail__rubric-check{background:var(--rail-success);border-color:var(--rail-success)}.assignment-rail__rubric-item--partial .assignment-rail__rubric-check{background:var(--rail-warn);border-color:var(--rail-warn);color:#fff}.assignment-rail__rubric-body{flex:1;min-width:0}.assignment-rail__rubric-head{display:flex;justify-content:space-between;gap:.5rem;align-items:flex-start}.assignment-rail__rubric-title{font-size:.82rem;font-weight:600;color:var(--rail-text);line-height:1.3;text-transform:capitalize}.assignment-rail__rubric-pts{font-size:.7rem;color:var(--rail-text-l);font-weight:600;flex-shrink:0}.assignment-rail__rubric-desc{font-size:.72rem;color:var(--rail-text-m);line-height:1.45;margin-top:2px}.assignment-rail__rubric-bar{margin-top:6px;height:4px;border-radius:999px;background:var(--rail-border);overflow:hidden}.assignment-rail__rubric-bar-fill{height:100%;border-radius:999px;transition:width .4s ease-out}.assignment-rail__rubric-bar-fill.is-met{background:var(--rail-success)}.assignment-rail__rubric-bar-fill.is-partial{background:var(--rail-warn)}.assignment-rail__rubric-bar-fill.is-open{background:#c5c5c5}.assignment-rail__improvements{background:var(--rail-surface-card);border:1px solid var(--rail-border);border-radius:10px;padding:.75rem .875rem;margin-top:.75rem}.assignment-rail__improvements-title{font-size:.78rem;font-weight:600;margin-bottom:.4rem;text-transform:lowercase;color:var(--rail-text)}.assignment-rail__improvements-list{margin:0;padding-left:1.1rem;font-size:.8rem;color:var(--rail-text-m);line-height:1.5}.assignment-rail__improvements-list li{margin-bottom:.3rem}.assignment-rail__improvements-list li:last-child{margin-bottom:0}.assignment-rail__improvements-pts{color:var(--rail-accent);font-weight:600}.assignment-rail__help-cta{display:flex;align-items:center;gap:.625rem;width:100%;text-align:left;margin-top:.875rem;padding:.75rem .875rem;border:0;background:var(--rail-accent-tint-10);border-radius:10px;cursor:pointer;color:var(--rail-text);font:inherit;transition:background .15s ease}.assignment-rail__help-cta:hover{background:color-mix(in srgb,var(--rail-accent) 18%,transparent)}.assignment-rail__help-cta-icon{width:28px;height:28px;border-radius:50%;background:var(--rail-accent);display:grid;place-items:center;color:#fff;flex-shrink:0}.assignment-rail__help-cta-sub{display:block;font-size:.72rem;color:var(--rail-text-m);font-weight:400;margin-top:2px}.assignment-rail__outline{font-size:.82rem}.assignment-rail__outline-row{display:flex;gap:8px;align-items:center;padding:.35rem 0;color:var(--rail-text)}.assignment-rail__outline-row--todo{color:var(--rail-text-l)}.assignment-rail__outline-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;border:1.5px solid #ccc;background:transparent}.assignment-rail__outline-dot--complete{background:var(--rail-success);border-color:var(--rail-success)}.assignment-rail__outline-dot--in-progress{background:var(--rail-warn);border-color:var(--rail-warn)}.assignment-rail__versions{border-left:2px solid var(--rail-border);margin-left:6px;padding-left:12px}.assignment-rail__version-row{position:relative;padding:.55rem 0 .55rem .4rem}.assignment-rail__version-dot{position:absolute;left:-19px;top:13px;width:10px;height:10px;border-radius:50%;background:var(--rail-surface);border:2px solid var(--rail-border)}.assignment-rail__version-dot.is-current{background:var(--rail-accent);border-color:var(--rail-accent)}.assignment-rail__version-label{font-size:.78rem;font-weight:500;color:var(--rail-text)}.assignment-rail__version-row .assignment-rail__version-dot.is-current+div .assignment-rail__version-label{font-weight:600}.assignment-rail__version-time{font-size:.7rem;color:var(--rail-text-l)}.rubric-pulse{animation:rubric-pulse-anim 1.4s ease-out 1}@keyframes rubric-pulse-anim{0%{background-color:color-mix(in srgb,var(--accent-blue) 28%,transparent)}to{background-color:transparent}}.assignment-rail-collapsed{--rail-accent: var(--beni-rail-accent, var(--accent-blue));--rail-surface: color-mix(in srgb, var(--rail-accent) 4%, #ffffff);--rail-surface-card: color-mix(in srgb, var(--rail-accent) 7%, #ffffff);width:56px;flex-shrink:0;height:100%;background:var(--rail-surface);border-left:1px solid var(--border-light, #e2e8f0);display:flex;flex-direction:column;align-items:center;padding:.875rem 0;gap:.625rem;box-sizing:border-box}.assignment-rail-collapsed__btn{width:38px;height:38px;border-radius:50%;border:1px solid var(--border-light, #e2e8f0);background:var(--rail-surface-card);cursor:pointer;display:grid;place-items:center;color:var(--text-secondary, #475569);padding:0;transition:color .15s ease,border-color .15s ease,background .15s ease}.assignment-rail-collapsed__btn:hover{color:var(--beni-rail-accent, var(--accent-blue));border-color:color-mix(in srgb,var(--beni-rail-accent, var(--accent-blue)) 30%,transparent);background:color-mix(in srgb,var(--beni-rail-accent, var(--accent-blue)) 4%,transparent)}.assignment-rail-collapsed__label{font-size:.7rem;writing-mode:vertical-rl;text-orientation:mixed;color:#767676;letter-spacing:.04em;margin-top:.25rem;font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;-webkit-user-select:none;user-select:none}[data-theme=dark] .assignment-rail,[data-theme=dark] .assignment-rail-collapsed{--rail-surface: color-mix(in srgb, var(--rail-accent) 14%, #1a1f24);--rail-surface-card: color-mix(in srgb, var(--rail-accent) 22%, #1a1f24);--rail-text: var(--text-primary, #f1f5f9);--rail-text-m: var(--text-secondary, #a0aab6);--rail-text-l: #8b95a1;--rail-border: color-mix(in srgb, var(--rail-accent) 30%, #2a3138)}[data-theme=dark] .assignment-rail__grade-card--empty,[data-theme=dark] .assignment-rail__grade-card--loading{background:var(--rail-surface-card)}[data-theme=dark] .assignment-rail__grade-letter{color:var(--rail-accent)}[data-theme=dark] .assignment-rail__grade-card{background:linear-gradient(135deg,color-mix(in srgb,var(--rail-accent) 18%,transparent),color-mix(in srgb,var(--rail-accent) 6%,transparent))}[data-theme=dark] .assignment-rail-collapsed__label{color:var(--rail-text-l)}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors: active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;-moz-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors: active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;top:0;right:0;bottom:0;left:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;top:100%;right:0;bottom:0;left:0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}.teacher-assign-workspace{display:flex;flex-direction:column;gap:1rem;min-height:calc(100vh - 180px);max-width:100%}.teacher-assign-tabs{display:flex;flex-wrap:wrap;gap:.35rem;padding:.2rem;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-light)}.teacher-assign-tab{flex:1 1 auto;min-width:7.5rem;padding:.65rem 1rem;font-size:.875rem;font-weight:600;border:none;border-radius:10px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.teacher-assign-tab:hover{background:var(--bg-primary);color:var(--text-primary)}.teacher-assign-tab--active{background:var(--bg-primary);color:var(--accent-blue);box-shadow:0 1px 3px #0000000f}.teacher-assign-tab-panel{flex:1;min-height:0;display:flex;flex-direction:column}.teacher-assign-tab-panel>.teacher-assign-panel{flex:1;min-height:min(72vh,820px)}.teacher-assign-panel--full,.teacher-assign-panel--wide{max-width:min(1100px,100%);margin:0 auto;width:100%}.teacher-assign-panel__header--row{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:1rem}.teacher-assign-tab-new{padding:.55rem 1rem;font-size:.8125rem;font-weight:600;border-radius:10px;border:none;background:var(--accent-blue);color:#fff;cursor:pointer;white-space:nowrap;flex-shrink:0}.teacher-assign-tab-new:hover{filter:brightness(1.06)}@media (max-width: 520px){.teacher-assign-panel__header--row{flex-direction:column;align-items:stretch}}.teacher-assign-active-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.65rem}.teacher-assign-layout{display:grid;grid-template-columns:minmax(260px,1fr) minmax(380px,2.2fr) minmax(240px,.95fr);gap:1.25rem;align-items:stretch;min-height:calc(100vh - 180px);max-width:100%}.teacher-assign-layout>*{min-height:0}@media (max-width: 1180px){.teacher-assign-layout{grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;min-height:auto}.teacher-assign-panel--list{grid-column:1;grid-row:1}.teacher-assign-panel--archive{grid-column:2;grid-row:1}.teacher-assign-panel--main{grid-column:1 / -1;grid-row:2;min-height:min(70vh,720px)}}@media (max-width: 720px){.teacher-assign-layout{display:flex;flex-direction:column;gap:1rem}.teacher-assign-panel--main{order:-1;min-height:400px}}.teacher-assign-panel{background:var(--bg-primary);border-radius:14px;box-shadow:0 1px 3px #0000000f,0 4px 20px #0f172a0a;border:1px solid var(--border-light);display:flex;flex-direction:column;overflow:hidden;min-height:0}.teacher-assign-panel--main{box-shadow:0 1px 3px #00000014,0 8px 32px #2563eb0f;border-color:#3b82f62e}.teacher-assign-panel__header{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border-light);background:linear-gradient(180deg,var(--bg-secondary) 0%,var(--bg-primary) 100%);flex-shrink:0}.teacher-assign-panel__title{font-size:1rem;font-weight:700;margin:0 0 .2rem;letter-spacing:-.02em;color:var(--text-primary, #0f172a)}.teacher-assign-panel__meta{margin:0;font-size:.8125rem;color:var(--text-secondary);line-height:1.4}.teacher-assign-panel__body{flex:1;min-height:0;padding:.75rem 1rem 1rem;display:flex;flex-direction:column}.teacher-assign-panel__body--scroll{overflow-y:auto;padding-right:.35rem}.teacher-assign-panel__body--scroll::-webkit-scrollbar{width:6px}.teacher-assign-panel__body--scroll::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:4px}.teacher-assign-empty{padding:1.5rem 1rem;text-align:center;color:var(--text-secondary);font-size:.875rem;border:1px dashed var(--border-light);border-radius:10px;margin:.25rem 0;background:var(--bg-secondary)}.teacher-assign-list-card{padding:.875rem 1rem;background:var(--bg-primary);border-radius:10px;margin-bottom:.5rem;cursor:pointer;border:1px solid var(--border-light);transition:border-color .15s ease,box-shadow .15s ease,transform .12s ease}.teacher-assign-list-card:hover{border-color:#3b82f659;box-shadow:0 4px 14px #2563eb14}.teacher-assign-list-card__title{font-weight:600;font-size:.9rem;margin-bottom:.35rem;line-height:1.35;color:var(--text-primary, #0f172a)}.teacher-assign-list-card__due{font-size:.8125rem;color:var(--text-secondary);display:flex;align-items:center;gap:.35rem}.teacher-assign-list-card__due strong{font-weight:600;color:var(--accent-blue)}.teacher-assign-list-card__desc{font-size:.8125rem;color:var(--text-secondary);margin-top:.4rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.teacher-assign-list-card__actions{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;justify-content:flex-end;margin-top:.65rem;padding-top:.65rem;border-top:1px solid var(--border-light)}.teacher-assign-icon-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .55rem;font-size:.75rem;font-weight:600;border-radius:8px;border:1px solid transparent;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:background .12s,color .12s,border-color .12s}.teacher-assign-icon-btn:hover:not(:disabled){background:var(--bg-primary);border-color:var(--border-light)}.teacher-assign-icon-btn--edit{color:var(--accent-blue)}.teacher-assign-icon-btn--edit:hover:not(:disabled){background:#3b82f61a;border-color:#3b82f640}.teacher-assign-icon-btn--dup{color:#059669}.teacher-assign-icon-btn--dup:hover:not(:disabled){background:#10b9811a;border-color:#10b98140}.teacher-assign-icon-btn--del{color:#dc2626}.teacher-assign-icon-btn--del:hover:not(:disabled){background:#ef44441a;border-color:#ef444440}.teacher-assign-icon-btn:disabled{opacity:.45;cursor:not-allowed}.teacher-assign-form-header{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;padding:1.15rem 1.35rem 1.1rem;border-bottom:1px solid var(--border-light);background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-primary) 55%);flex-shrink:0}.teacher-assign-form-header h2{font-size:1.375rem;font-weight:700;margin:0;line-height:1.2;letter-spacing:-.03em;color:var(--text-primary, #0f172a)}.teacher-assign-form-header p{margin:0;font-size:.875rem;color:var(--text-secondary);line-height:1.5;max-width:100%}.teacher-assign-steps{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-top:.35rem;padding-top:.65rem;border-top:1px solid var(--border-light)}.teacher-assign-steps__item{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:600;color:var(--text-secondary)}.teacher-assign-steps__num{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;border-radius:999px;background:var(--border-light);color:var(--text-primary);font-size:.6875rem}.teacher-assign-steps__sep{color:var(--text-light, #9ca3af);font-size:.7rem;-webkit-user-select:none;user-select:none}.teacher-assign-form-scroll{flex:1;overflow-y:auto;padding:1.1rem 1.35rem 5.5rem;min-height:0}.teacher-assign-form-scroll::-webkit-scrollbar{width:8px}.teacher-assign-form-scroll::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:4px}.teacher-assign-section{margin-bottom:1.5rem;padding:1.1rem 1.15rem;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-light)}.teacher-assign-section:last-of-type{margin-bottom:.5rem}.teacher-assign-section__title{font-size:.9375rem;font-weight:700;text-transform:none;letter-spacing:-.02em;color:var(--text-primary, #0f172a);margin:0 0 .85rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-light)}.teacher-assign-field{margin-bottom:1rem}.teacher-assign-field:last-child{margin-bottom:0}.teacher-assign-label{display:block;font-size:.8125rem;font-weight:600;margin-bottom:.4rem;color:var(--text-primary, #0f172a)}.teacher-assign-input,.teacher-assign-textarea,.teacher-assign-select{width:100%;padding:.65rem .85rem;border:1px solid var(--border-light);border-radius:10px;font-size:.9rem;line-height:1.45;background:var(--bg-primary);color:var(--text-primary, #0f172a);transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.teacher-assign-input:focus,.teacher-assign-textarea:focus,.teacher-assign-select:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 3px #3b82f626}.teacher-assign-textarea{resize:vertical;min-height:4.5rem}.teacher-assign-hint{font-size:.75rem;color:var(--text-secondary);margin-top:.4rem;line-height:1.4}.teacher-assign-row-2{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}@media (min-width: 640px){.teacher-assign-split-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}.teacher-assign-split-2 .teacher-assign-field{margin-bottom:0}}@media (max-width: 520px){.teacher-assign-row-2{grid-template-columns:1fr}}.teacher-assign-datetime-row{display:flex;flex-wrap:wrap;gap:.65rem;align-items:flex-end}.teacher-assign-datetime-row .teacher-assign-input{flex:1 1 150px;min-width:140px}.teacher-assign-datetime-row .teacher-assign-input[type=time]{flex:0 0 auto;min-width:7.5rem}.teacher-assign-dropzone{border:2px dashed var(--border-light);border-radius:12px;padding:1.35rem;text-align:center;background:var(--bg-primary);transition:border-color .15s,background .15s}.teacher-assign-dropzone--filled{background:var(--bg-secondary);border-style:solid;border-color:#3b82f640}.teacher-assign-dropzone label{display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.25rem;background:var(--accent-blue);color:#fff;border-radius:10px;cursor:pointer;font-size:.875rem;font-weight:600;border:none;transition:filter .12s,transform .12s}.teacher-assign-dropzone label:hover{filter:brightness(1.05)}.teacher-assign-ai-box{margin-top:1rem;padding:1rem;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid rgba(59,130,246,.35);border-radius:10px}.teacher-assign-ai-box h4{margin:0 0 .5rem;font-size:.875rem;font-weight:700;color:#1e40af}.teacher-assign-rubric-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between;margin-bottom:.85rem}.teacher-assign-rubric-toolbar .teacher-assign-select{width:auto;min-width:10rem;flex:1 1 auto;max-width:16rem}.teacher-assign-btn-sm{padding:.45rem .75rem;font-size:.8125rem;font-weight:600;border-radius:8px;border:none;cursor:pointer;white-space:nowrap}.teacher-assign-btn-sm--primary{background:var(--accent-blue);color:#fff}.teacher-assign-btn-sm--primary:hover{filter:brightness(1.06)}.teacher-assign-btn-sm.teacher-assign-btn-ghost{padding:.4rem .65rem;font-size:.8125rem}.teacher-assign-rubric-card{padding:.9rem 1rem;background:var(--bg-primary);border-radius:10px;border:1px solid var(--border-light);margin-bottom:.65rem}.teacher-assign-rubric-card:last-child{margin-bottom:0}.teacher-assign-rubric-card__row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.5rem}.teacher-assign-checkbox-row{display:flex;gap:.65rem;align-items:flex-start}.teacher-assign-checkbox-row input[type=checkbox]{margin-top:.2rem;width:1.05rem;height:1.05rem;accent-color:var(--accent-blue);flex-shrink:0}.teacher-assign-checkbox-row label{font-size:.875rem;font-weight:600;cursor:pointer;line-height:1.4}.teacher-assign-footer{position:sticky;bottom:0;z-index:6;padding:.85rem 1.35rem;background:#ffffffeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--border-light);box-shadow:0 -10px 28px #0f172a12;flex-shrink:0;display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}.teacher-assign-footer__status{font-size:.8125rem;color:var(--text-secondary);margin-right:auto;min-width:0}.teacher-assign-btn-primary{padding:.65rem 1.35rem;font-size:.9rem;font-weight:700;border-radius:10px;border:none;cursor:pointer;transition:opacity .15s,filter .12s}.teacher-assign-btn-primary:disabled{opacity:.55;cursor:not-allowed}.teacher-assign-btn-primary:not(:disabled){background:var(--accent-blue);color:#fff}.teacher-assign-btn-primary:not(:disabled):hover{filter:brightness(1.06)}.teacher-assign-btn-ghost{padding:.65rem 1.15rem;font-size:.9rem;font-weight:600;border-radius:10px;border:1px solid var(--border-light);background:var(--bg-primary);color:var(--text-primary);cursor:pointer}.teacher-assign-btn-ghost:hover:not(:disabled){background:var(--bg-secondary)}.teacher-assign-archive{margin-bottom:.75rem}.teacher-assign-archive summary{padding:.75rem .9rem;background:var(--bg-secondary);border-radius:10px;cursor:pointer;font-weight:600;font-size:.875rem;list-style:none;border:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;gap:.5rem}.teacher-assign-archive summary::-webkit-details-marker{display:none}.teacher-assign-archive[open] summary{border-radius:10px 10px 0 0;border-bottom-color:transparent}.teacher-assign-archive .teacher-assign-archive__list{margin-top:0;padding:.5rem .5rem .75rem;border:1px solid var(--border-light);border-top:none;border-radius:0 0 10px 10px;background:var(--bg-primary);display:flex;flex-direction:column;gap:.45rem}.teacher-assign-archive-card{padding:.75rem .85rem;background:var(--bg-primary);border-radius:10px;border:1px solid var(--border-light);font-size:.8125rem;transition:border-color .15s ease}.teacher-assign-archive-card:hover{border-color:#6b728059}.teacher-assign-archive-card .teacher-assign-list-card__due{font-size:.75rem}.teacher-assign-archive-card__desc{-webkit-line-clamp:3;margin-top:.35rem}.teacher-assign-section--optional{background:var(--bg-primary);border-style:dashed}.teacher-settings-page{display:flex;flex-direction:column;gap:1.75rem;max-width:1240px}.teacher-settings-rules-uploads{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;align-items:start;margin-top:1.5rem}@media (min-width: 1060px){.teacher-settings-rules-uploads{grid-template-columns:minmax(0,1fr) minmax(300px,400px)}}.teacher-settings-teaching-sidebar{position:sticky;top:1rem}.teacher-settings-teaching-sidebar .teacher-settings-upload-stack{display:flex;flex-direction:column;gap:1rem}.teacher-settings-upload-card{min-width:0;display:flex;flex-direction:column;gap:.65rem;padding:1.25rem;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-light)}.teacher-settings-file-row{display:flex;flex-direction:column;gap:.5rem;min-width:0}.teacher-settings-file-row input[type=file]{width:100%;max-width:100%;font-size:.8rem;padding:.5rem;border:1px solid var(--border-light);border-radius:8px;background:var(--bg-primary);cursor:pointer;box-sizing:border-box}.teacher-settings-guardrails-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.grading-section__header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light)}.grading-section__title{margin:0 0 .25rem;font-size:1.35rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.grading-section__subtitle{margin:0;font-size:.875rem;color:var(--text-secondary);line-height:1.45}.grading-section__toolbar{display:flex;flex-wrap:wrap;gap:.5rem}.grading-toolbar-btn{padding:.45rem .9rem;border-radius:999px;border:1px solid var(--border-light);background:var(--bg-secondary);color:var(--text-primary);font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.grading-toolbar-btn:hover{border-color:var(--accent-blue);background:#5a9ad914}.grading-toolbar-btn--active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.grading-empty-pending{padding:1.25rem 1rem;text-align:center;color:var(--text-secondary);font-size:.9rem;background:var(--bg-secondary);border-radius:12px;border:1px dashed var(--border-light);margin-bottom:.5rem}.grading-pending-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.grading-pending-title{margin:0;font-size:1.05rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.grading-pending-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;padding:.15rem .5rem;border-radius:999px;font-size:.8rem;font-weight:700;background:#fef3c7;color:#b45309;border:1px solid #fcd34d}.grading-archived-details{border:1px solid var(--border-light);border-radius:12px;padding:.25rem 1rem 1rem;background:var(--bg-secondary)}.grading-archived-summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;padding:.65rem 0;font-size:1rem;font-weight:700;color:var(--accent-blue)}.grading-archived-summary::-webkit-details-marker{display:none}.grading-archived-count{font-size:.8rem;font-weight:600;background:#3b82f61f;color:var(--accent-blue);padding:.2rem .5rem;border-radius:999px}.grading-student-work-card{margin-bottom:1rem;padding:1rem 1.1rem;background:var(--bg-primary);border-radius:10px;border:1px solid var(--border-light);min-height:0}.grading-student-work-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:.65rem}.student-work-prose{font-size:.925rem;line-height:1.65;color:var(--text-primary);max-width:65ch}.student-work-prose p{margin:0 0 .75em}.student-work-prose p:last-child{margin-bottom:0}.student-work-prose br{line-height:inherit}.student-work-prose ul,.student-work-prose ol{margin:.5em 0 .75em 1.25rem;padding:0}.grading-grade-pill{padding:1rem 1.1rem;background:var(--accent-blue);color:#fff;border-radius:10px;margin-bottom:1rem}.grading-grade-pill a{color:inherit}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;color:#000}html{scroll-behavior:smooth}::selection{background:#5a9ad94d;color:inherit}
