.v2-app{--primary:#6576FF;--primary-50:#EBEDFF;--primary-600:#5060e8;--primary-dark:#2C3782;--success:#1EE0AC;--success-50:#E3FAF2;--online:#2BB673;--danger:#E85347;--danger-50:#FDEEEC;--warning:#F4BD0E;--warning-50:#FEF7DE;--success-600:#1EAB86;--success-700:#10795D;--warning-600:#D9A200;--warning-700:#7A5A00;--danger-600:#C43B2F;--info:#09C2DE;--info-50:#E2F8FC;--purple:#816BFF;--ink:#16243C;--text:#364A63;--muted:#5C6B80;--subtle:#B7C2D0;--line:#DBDFEA;--line-2:#EAECF0;--bg:#F5F6FA;--white:#fff;--shadow-sm:0 1px 2px 0 rgba(16,24,40,.05);--shadow:0 2px 4px rgba(43,55,72,.05),0 0 2px rgba(43,55,72,.05);--shadow-lg:0 8px 24px rgba(43,55,72,.1);background:var(--bg);color:var(--text);font-family:var(--font-roboto,Roboto,sans-serif);font-size:14px;line-height:1.65}.v2-app *,.v2-app :after,.v2-app :before{box-sizing:border-box}.v2-app button{font-family:inherit;cursor:pointer;border:0;background:transparent;color:inherit;padding:0}.v2-app input,.v2-app select,.v2-app textarea{font-family:inherit;color:var(--text)}.v2-app a{color:inherit;text-decoration:none}.v2-app .link-primary{color:var(--primary);text-decoration:underline}.v2-app .link-primary:hover{color:var(--primary-600)}.v2-app .link-primary:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:2px}.v2-app h1,.v2-app h2,.v2-app h3,.v2-app h4,.v2-app h5,.v2-app h6{font-family:var(--font-nunito,Nunito,sans-serif);color:var(--ink);margin:0;letter-spacing:-.02em}.v2-app ::-webkit-scrollbar{width:8px;height:8px}.v2-app ::-webkit-scrollbar-track{background:transparent}.v2-app ::-webkit-scrollbar-thumb{background:#dbdfea;border-radius:4px}.v2-app ::-webkit-scrollbar-thumb:hover{background:#b7c2d0}.v2-app.app{display:flex;min-height:100vh}.v2-app .sidebar{width:290px;background:#fff;border-right:1px solid var(--line);position:sticky;top:0;height:100vh;display:flex;flex-direction:column;z-index:20;transition:width .22s ease}.v2-app .sidebar.collapsed{width:78px}.v2-app .sidebar-head{height:64px;display:flex;align-items:center;justify-content:space-between;padding:14px 24px;border-bottom:1px solid var(--line-2);flex:none}.v2-app .sidebar.collapsed .sidebar-head{padding:14px 16px;justify-content:center}.v2-app .logo{display:inline-flex;align-items:center}.v2-app .hamburger{width:32px;height:32px;display:grid;place-items:center;cursor:pointer;color:#8091A7;border-radius:6px}.v2-app .hamburger:hover{background:var(--bg);color:var(--primary)}.v2-app .hamburger:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.v2-app .nav{padding:14px 18px 28px;overflow-y:auto;overflow-x:hidden;flex:1}.v2-app .sidebar.collapsed .nav{padding:14px 10px 28px}.v2-app .nav-item{align-items:center;gap:14px;padding:13px 10px;border-radius:6px;cursor:pointer;font-family:var(--font-nunito,Nunito,sans-serif);font-weight:700;font-size:15px;color:#364A63;-webkit-user-select:none;user-select:none;position:relative;letter-spacing:.01em}.v2-app .nav-item .label{flex:0 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-app .nav-item .chev{transition:transform .2s;color:#8091A7;flex:none;margin-inline-start:auto}.v2-app .nav-item.active,.v2-app .nav-item:hover,.v2-app .nav-item:hover .chev,.v2-app .nav-item:hover .icon{color:var(--primary)}.v2-app .nav-item.open .chev{transform:rotate(90deg)}.v2-app .nav-item:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:6px}.v2-app .nav-group{margin-bottom:6px}.v2-app .nav-sub{overflow:hidden;max-height:0;transition:max-height .25s ease}.v2-app .nav-sub.open{max-height:320px}.v2-app .nav-sub-item{display:flex;align-items:center;padding:9px 10px 9px 48px;cursor:pointer;font-family:var(--font-nunito,Nunito,sans-serif);font-weight:700;font-size:14px;color:#364A63;white-space:nowrap;border-radius:6px}.v2-app .nav-sub-item.active,.v2-app .nav-sub-item:hover{color:var(--primary)}.v2-app .nav-sub-item:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:6px}.v2-app .nav{display:flex;flex-direction:column}.v2-app .nav-group{display:block;width:100%}.v2-app .nav-item{display:flex;width:100%;box-sizing:border-box}.v2-app .nav-sub{display:block;width:100%}.v2-app .sidebar.collapsed .chev,.v2-app .sidebar.collapsed .label,.v2-app .sidebar.collapsed .nav-sub{display:none}.v2-app .sidebar.collapsed .nav-item{justify-content:center;padding:13px 0;position:relative}.v2-app .sidebar.collapsed .nav-item.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;background:var(--primary);border-radius:0 3px 3px 0}.v2-app .sidebar.collapsed .nav-item .tooltip{position:absolute;left:60px;top:50%;transform:translateY(-50%);background:#16243C;color:#fff;padding:6px 10px;border-radius:4px;font:700 12px Roboto;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s;z-index:30}.v2-app .sidebar.collapsed .nav-item:hover .tooltip{opacity:1}.v2-app .icon{width:22px;height:22px;display:inline-flex;flex:none;color:#8091A7}.v2-app .nav-item.active .icon{color:var(--primary)}.v2-app .main{flex:1;min-width:0;display:flex;flex-direction:column}.v2-app .topbar{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:10}.v2-app .search{display:flex;align-items:center;gap:10px;color:var(--subtle);font:500 13px Roboto}.v2-app .search input{border:0;outline:0;background:transparent;font:500 13px Roboto;color:var(--text);width:220px}.v2-app .search input::placeholder{color:var(--subtle)}.v2-app .top-right{display:flex;align-items:center;gap:22px}.v2-app .topbtn{display:flex;align-items:center;gap:4px;font:700 12px/1 Roboto;color:var(--text);cursor:pointer}.v2-app .topbtn:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.v2-app .bell{position:relative;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;cursor:pointer}.v2-app .bell:hover{background:var(--bg)}.v2-app .bell:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.v2-app .bell .dot{position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--info);border:2px solid #fff}.v2-app .user{display:flex;align-items:center;gap:12px;cursor:pointer;padding:4px;border-radius:6px}.v2-app .user:hover{background:var(--bg)}.v2-app .user:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px}.v2-app .avatar{width:32px;height:32px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center;font:700 12px Roboto;overflow:hidden;flex:none}.v2-app .user-text{line-height:1.1}.v2-app .user-text .role{font:500 11px Roboto;color:var(--primary)}.v2-app .user-text .name{font:700 12px Roboto;color:var(--text);display:flex;align-items:center;gap:4px}.v2-app .page{padding:32px;flex:1;min-width:0;max-width:100%}.v2-app .card{background:#fff;border:1px solid var(--line-2);border-radius:4px;box-shadow:var(--shadow-sm);width:100%;box-sizing:border-box}.v2-app .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:6px;font:700 13px Roboto;letter-spacing:-.01em;transition:all .15s;white-space:nowrap;height:36px;cursor:pointer}.v2-app .btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.v2-app .btn:disabled{opacity:.5;cursor:not-allowed}.v2-app .btn-primary{background:var(--primary-600);color:#fff;border:none}.v2-app .btn-primary:hover:not(:disabled){background:var(--primary-dark)}.v2-app .btn-secondary{background:#fff;color:var(--text);border:1px solid var(--line)}.v2-app .btn-secondary:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.v2-app .btn-light{background:#fff;color:var(--primary-dark);border:none}.v2-app .btn-danger{background:var(--danger);color:#fff;border:none}.v2-app .btn-danger:hover:not(:disabled){background:#d84638}.v2-app .btn-success{background:var(--success);color:#fff;border:none}.v2-app .btn-success:hover:not(:disabled){opacity:.9}.v2-app .btn-ghost{background:transparent;color:var(--text);border:1px solid var(--line)}.v2-app .btn-sm{height:30px;padding:4px 12px;font-size:12px}.v2-app .btn-xs{height:26px;padding:2px 10px;font-size:11px;border-radius:4px}.v2-app .iconbtn{width:32px;height:32px;display:grid;place-items:center;border-radius:4px;color:var(--muted);cursor:pointer;border:1px solid transparent}.v2-app .iconbtn:hover{background:var(--bg);color:var(--primary)}.v2-app .iconbtn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.v2-app .badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:12px;font:700 11px Roboto;height:20px;letter-spacing:.02em}.v2-app .badge-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;display:inline-block}.v2-app .b-success{background:var(--success-50);color:#1EAB86}.v2-app .b-danger{background:var(--danger-50);color:var(--danger)}.v2-app .b-warning{background:var(--warning-50);color:#D9A200}.v2-app .b-info{background:#E2F8FC;color:#047586}.v2-app .b-primary{background:var(--primary-50);color:var(--primary)}.v2-app .b-gray{background:#F5F6FA;color:var(--text)}.v2-app .b-purple{background:#ECE9FF;color:var(--purple)}.v2-app .table{width:100%;border-collapse:collapse;background:#fff}.v2-app .table th{font:700 11px Roboto;color:var(--text);letter-spacing:.04em;text-transform:uppercase;padding:12px 24px;text-align:left;background:#fff;border-top:1px solid var(--line-2);white-space:nowrap}.v2-app .table td,.v2-app .table th{border-bottom:1px solid var(--line-2)}.v2-app .table td{padding:16px 24px;font:400 14px Roboto;color:var(--muted);vertical-align:middle}.v2-app .table tr:last-child td{border-bottom:0}.v2-app .table tr:hover td{background:#fafbfd}.v2-app .table .u-name{color:var(--text);font-weight:500;display:flex;align-items:center;gap:12px}.v2-app .table tr.ledger-settlement-row td{background:#FBFAFF}.v2-app .table tr.ledger-settlement-row td:first-child{border-left:3px solid var(--purple)}.v2-app .table tr.ledger-settlement-row:hover td{background:#F5F3FF}.v2-app .input,.v2-app .select-input{width:100%;height:40px;border:1px solid var(--line);background:#fff;border-radius:4px;padding:0 14px;font:400 14px Roboto;color:var(--text);outline:0;transition:border-color .15s}.v2-app .input:focus,.v2-app .select-input:focus{border-color:var(--primary)}.v2-app .input:focus-visible,.v2-app .select-input:focus-visible{outline:2px solid var(--primary);outline-offset:0}.v2-app .field{display:flex;flex-direction:column;gap:6px}.v2-app .field label{font:700 12px Roboto;color:var(--text)}.v2-app .input-error{border-color:var(--danger)!important}.v2-app .field-msg{font:400 12px Roboto;color:var(--muted);margin-top:4px}.v2-app .field-msg.error{color:var(--danger-600)}.v2-app .page-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}.v2-app .page-title h2{font-family:var(--font-nunito,Nunito,sans-serif);font-weight:700;font-size:28px;line-height:1.1;color:var(--ink);margin-bottom:8px;letter-spacing:-.03em}.v2-app .page-title .subtitle{font:400 14px Roboto;color:var(--muted)}.v2-app .page-title-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.v2-app .toasts{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:10px;z-index:100}.v2-app .toast{background:#fff;border:1px solid var(--line-2);border-left:4px solid var(--success);border-radius:6px;padding:12px 18px 12px 14px;box-shadow:var(--shadow-lg);display:flex;align-items:flex-start;gap:10px;min-width:280px;animation:v2-slideIn .25s ease}.v2-app .toast.danger{border-left-color:var(--danger)}.v2-app .toast.info{border-left-color:var(--info)}.v2-app .toast h5{font:700 13px Roboto;color:var(--ink);margin:0 0 2px}.v2-app .toast p{margin:0;font:400 12px Roboto;color:var(--muted)}@keyframes v2-slideIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.v2-app .modal-backdrop{position:fixed;inset:0;background:rgba(22,36,60,.62);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:70;display:grid;place-items:center;padding:24px;animation:v2-fadeIn .15s ease}[data-modal-layer=below]{background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}[data-attention=a]{animation:v2-attention-a .42s ease!important}[data-attention=a],[data-attention=b]{box-shadow:0 0 0 3px var(--primary,#6576FF),var(--shadow-lg)!important}[data-attention=b]{animation:v2-attention-b .42s ease!important}@keyframes v2-attention-a{0%,to{transform:translateX(0)}20%{transform:translateX(-7px)}40%{transform:translateX(7px)}60%{transform:translateX(-4px)}80%{transform:translateX(4px)}}@keyframes v2-attention-b{0%,to{transform:translateX(0)}20%{transform:translateX(-7px)}40%{transform:translateX(7px)}60%{transform:translateX(-4px)}80%{transform:translateX(4px)}}@media (prefers-reduced-motion:reduce){[data-attention]{animation:none!important}}.modal-attention-hint{flex:none;padding:10px 24px;background:var(--primary-50,#EBEDFF);color:var(--primary-dark,#2C3782);border-bottom:1px solid var(--line-2);font:600 13px Roboto,sans-serif}.v2-app .modal{background:#fff;border-radius:6px;max-width:640px;width:100%;box-shadow:var(--shadow-lg);max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:v2-pop .2s ease}.v2-app .modal-lg{max-width:880px}.v2-app .modal-head{padding:20px 24px;border-bottom:1px solid var(--line-2);display:flex;align-items:center;justify-content:space-between}.v2-app .modal-head h3{font-family:var(--font-nunito,Nunito,sans-serif);font-weight:700;font-size:18px;color:var(--ink)}.v2-app .modal-body{padding:24px;overflow-y:auto;flex:1}.v2-app .modal-foot{padding:16px 24px;border-top:1px solid var(--line-2);display:flex;justify-content:flex-end;gap:10px;background:#fafbfd}@keyframes v2-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes v2-pop{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.v2-app .drawer-backdrop{position:fixed;inset:0;background:rgba(22,36,60,.32);z-index:50;animation:v2-fadeIn .15s ease}.v2-app .drawer{position:fixed;top:0;left:0;bottom:0;width:520px;max-width:100vw;background:#fff;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;z-index:51;animation:v2-slideLeft .22s ease}.v2-app .drawer-head{padding:20px 24px;border-bottom:1px solid var(--line-2);display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex:none}.v2-app .drawer-head h3{font-family:var(--font-nunito,Nunito,sans-serif);font-weight:700;font-size:18px;color:var(--ink);margin-top:2px}.v2-app .drawer-crumb{font:700 10.5px Roboto;color:var(--primary);letter-spacing:.04em;text-transform:uppercase}.v2-app .drawer-meta{font:500 12px Roboto;color:var(--muted);margin-top:4px}.v2-app .drawer-body{padding:24px;overflow-y:auto;flex:1}.v2-app .drawer-foot{padding:16px 24px;border-top:1px solid var(--line-2);display:flex;justify-content:flex-end;gap:10px;background:#fafbfd;flex:none}.v2-app .drawer-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-2);border:1px solid var(--line-2);border-radius:6px;overflow:hidden;margin-bottom:20px}.v2-app .drawer-stats>div{background:#fff;padding:11px 14px;display:flex;flex-direction:column;gap:1px}.v2-app .drawer-stats b{font:800 18px var(--font-nunito,Nunito,sans-serif);color:var(--ink)}.v2-app .drawer-stats em{font:500 11px Roboto;font-style:normal;color:var(--muted)}.v2-app .drawer-stats .hot b{color:var(--warning-700)}@media (max-width:640px){.v2-app .drawer-stats{grid-template-columns:repeat(2,1fr)}}.v2-app .roster-list{display:flex;flex-direction:column;gap:2px}.v2-app .sr{border-radius:8px;border:1px solid transparent}.v2-app .sr.open{border-color:var(--line);box-shadow:var(--shadow-sm);margin:4px 0}.v2-app .sr-head{width:100%;display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;text-align:left;background:transparent}.v2-app .sr-head:hover:not(:disabled){background:#f8f9fc}.v2-app .sr-head:disabled{cursor:default;opacity:.7}.v2-app .sr.open .sr-head{background:#fbfcfe;border-bottom:1px solid var(--line-2);border-radius:8px 8px 0 0}.v2-app .sr-txt{flex:1;min-width:0;display:flex;flex-direction:column}.v2-app .sr-txt b{font:700 13px Roboto;color:var(--ink)}.v2-app .sr-txt b,.v2-app .sr-txt em{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-app .sr-txt em{font:500 11px Roboto;font-style:normal;color:var(--muted)}.v2-app .sr-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;flex:none}.v2-app .sr-score{font:700 14px var(--font-nunito,Nunito,sans-serif);color:var(--ink);min-width:52px;text-align:right;flex:none}.v2-app .sr-score i{font:500 10.5px Roboto;font-style:normal;color:var(--muted)}.v2-app .sr-chev{color:var(--muted);flex:none;transition:transform .18s}.v2-app .sr-actions{display:flex;gap:6px;flex-wrap:wrap;padding:0 10px 10px 52px}.v2-app .sr-avatar-submitted{background:var(--primary)!important}.v2-app .sr-avatar-notsubmitted{background:var(--subtle)!important}.v2-app .sr-body{padding:14px;display:flex;flex-direction:column;gap:11px}.v2-app .sr-note{margin:0;font:500 12.5px Roboto;color:var(--muted)}.v2-app .sr-files{display:flex;flex-direction:column;gap:6px}.v2-app .sr-file{display:flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid var(--line-2);border-radius:7px;font:500 12.5px Roboto;color:var(--text);text-align:left;background:transparent}.v2-app .sr-file:hover:not([aria-disabled=true]){border-color:var(--primary);color:var(--primary)}.v2-app .sr-file span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2-app .sr-file em{font:700 11px Roboto;font-style:normal;color:var(--primary)}.v2-app .sr-ai{background:var(--primary-50);border-radius:7px;padding:9px 11px;font:500 12px Roboto;color:var(--primary-dark)}.v2-app .sr-review{width:100%;display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid var(--primary);border-radius:7px;background:var(--primary-50);color:var(--primary);font:700 12.5px Roboto;text-align:left}.v2-app .sr-review:hover{background:#e2e6ff}.v2-app .sr-review span{flex:1}.v2-app .sr-review em{font-style:normal;font-size:11px;opacity:.8}.v2-app .sr-grade{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.v2-app .sr-grade label{font:700 12px Roboto;color:var(--text)}.v2-app .input.sm{width:78px;height:36px;font:700 14px Roboto;text-align:center;padding:0 8px}.v2-app .sr-out{font:500 12px Roboto;color:var(--muted)}.v2-app .sr-quick{display:flex;gap:5px;margin-left:auto}.v2-app .sr-quick button{height:26px;padding:0 10px;border-radius:5px;border:none;background:var(--bg);font:700 11px Roboto;color:var(--muted)}.v2-app .sr-quick button:hover:not(:disabled){background:var(--primary-50);color:var(--primary)}.v2-app .sr-quick button:disabled{opacity:.6;cursor:default}.v2-app .sr-ta{width:100%;height:72px;padding:10px 12px;resize:vertical;font:500 12.5px/1.6 Roboto}.v2-app .sr-acts{display:flex;gap:8px;flex-wrap:wrap}.v2-app .roster-empty{padding:40px 16px;text-align:center;color:var(--muted)}.v2-app .roster-empty p{font:500 12px Roboto;margin-top:8px}.v2-app .drawer.right{left:auto;right:0;animation:v2-slideRight .22s ease}@keyframes v2-slideRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.v2-app .drawer.bottom{top:auto;left:0;right:0;bottom:0;width:100%;max-width:100vw;max-height:85vh;border-radius:16px 16px 0 0;animation:v2-slideUp .22s ease}@keyframes v2-slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.v2-app .ai-review-split{position:fixed;top:0;right:0;bottom:0;width:1040px;max-width:100vw;z-index:70;background:#fff;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:v2-slideRight .22s ease}.v2-app .ai-review-split-head{flex:none;display:flex;align-items:center;gap:16px;padding:14px 24px;border-bottom:1px solid var(--line-2);background:#fff}.v2-app .ai-review-split-title{display:flex;flex-direction:column;flex:1;min-width:0}.v2-app .ai-review-split-name{font:700 15px var(--font-nunito,Nunito,sans-serif);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2-app .ai-review-split-badges{display:flex;gap:6px;align-items:center;flex:none}.v2-app .ai-review-split-body{flex:1;display:flex;flex-direction:column;min-height:0}.v2-app .ai-review-split-marks{flex:1;min-width:0;width:100%;max-width:none;margin:0;overflow-y:auto;padding:20px 24px;background:#fff}.v2-app .ai-review-label{font:600 12px Roboto;color:var(--muted);display:block;margin-bottom:6px;text-transform:uppercase;letter-spacing:.4px}.v2-app .ai-review-banner{background:var(--warning-50);border-left:3px solid var(--warning);border-radius:4px;padding:10px 14px;font:600 13px Roboto;color:var(--warning-700);margin-bottom:18px}.v2-app .ai-review-banner.positive{background:var(--primary-50);border-left:none;color:var(--primary-dark)}.v2-app .ai-review-questions{display:flex;flex-direction:column;gap:12px}.v2-app .ai-review-card{border:1px solid var(--line-2);border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:9px}.v2-app .ai-review-card-top{display:flex;align-items:flex-start;gap:12px}.v2-app .ai-review-card-q{flex:1;min-width:0}.v2-app .ai-review-card-label{font:600 13px Roboto;color:var(--ink)}.v2-app .ai-review-card-tags{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.v2-app .ai-review-card-score{display:flex;align-items:center;gap:8px;flex:none}.v2-app .ai-review-card-score .iconbtn{width:26px;height:26px;border-radius:4px;display:grid;place-items:center;font:700 14px Roboto;color:var(--text);background:var(--bg);border:1px solid var(--line)}.v2-app .ai-review-card-score .iconbtn:hover:not(:disabled){background:var(--line-2)}.v2-app .ai-review-card-score .iconbtn:disabled{opacity:.4;cursor:not-allowed}.v2-app .ai-review-card-note{padding:9px 11px;font:500 12px/1.6 Roboto}.v2-app .ai-review-strengths{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}.v2-app .ai-review-ins-col{border:1px solid var(--line-2);border-radius:8px;padding:11px 12px;display:flex;flex-direction:column;gap:7px;min-width:0}.v2-app .ai-review-ins-col.good{background:var(--success-50);border-color:rgb(191,227,205)}.v2-app .ai-review-ins-col.bad{background:var(--warning-50);border-color:rgb(243,223,164)}.v2-app .ai-review-ins-lab{display:flex;align-items:center;gap:6px;font:700 10.5px Roboto;letter-spacing:.05em;text-transform:uppercase}.v2-app .ai-review-ins-col.good .ai-review-ins-lab{color:var(--success-700)}.v2-app .ai-review-ins-col.bad .ai-review-ins-lab{color:var(--warning-700)}.v2-app .ai-review-ins-lab em{font-style:normal;font-size:10px;background:#fff;border-radius:9px;padding:1px 6px;color:inherit}.v2-app .ai-review-ins-empty{font:500 12px Roboto;color:var(--muted);margin:0}.v2-app .ai-review-ins-item{position:relative;background:#fff;border-radius:7px;display:flex;align-items:flex-start;gap:2px;padding-right:4px}.v2-app .ai-review-ins-item:focus-within{box-shadow:0 0 0 2px var(--primary-50);outline:1px solid var(--primary)}.v2-app .ai-review-ins-ta{flex:1;min-width:0;padding:8px 4px 8px 10px;font:500 11.5px/1.55 Roboto;color:var(--ink);background:transparent;border:0}.v2-app .ai-review-ins-x{flex:none;margin-top:6px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;color:var(--muted);background:transparent;border:0}.v2-app .ai-review-ins-x:hover:not(:disabled){background:var(--bg);color:var(--danger-600)}.v2-app .ai-review-ins-x:disabled{opacity:.4;cursor:not-allowed}.v2-app .ai-review-ins-add{display:flex;align-items:center;gap:5px;align-self:flex-start;font:700 11px Roboto;color:var(--text);padding:4px 8px;border-radius:6px;background:rgba(255,255,255,.7);border:0}.v2-app .ai-review-ins-add:hover:not(:disabled){background:#fff;color:var(--ink)}.v2-app .ai-review-ins-add:disabled{opacity:.5;cursor:default}@media (max-width:860px){.v2-app .ai-review-strengths{grid-template-columns:1fr}}.v2-app .ai-review-fb{border:1px solid var(--line-2);border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:8px;margin-bottom:20px;max-width:640px}.v2-app .ai-review-fb-lab{display:flex;align-items:center;justify-content:space-between;gap:10px}.v2-app .ai-review-fb-lab em{font:700 10.5px Roboto;font-style:normal;color:var(--muted);letter-spacing:.05em;text-transform:uppercase}.v2-app .ai-review-fb-ta{width:100%;padding:10px 12px;font:500 12.5px/1.65 Roboto}.v2-app .ai-review-reset{align-self:flex-start;font:700 11px Roboto;color:var(--primary);background:none;border:none;padding:0}.v2-app .ai-review-reset:hover:not(:disabled){text-decoration:underline}.v2-app .ai-review-reset:disabled{opacity:.5;cursor:default}.v2-app .auto-ta{height:auto;overflow:hidden;resize:none}.v2-app .ai-review-split-foot{flex:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 24px;border-top:1px solid var(--line-2);background:#fafbfd}@media (max-width:480px){.v2-app .ai-review-split-head{padding:10px 14px;gap:10px;flex-wrap:wrap}.v2-app .ai-review-split-badges{order:3;width:100%}.v2-app .ai-review-split-marks{padding:16px}.v2-app .ai-review-split-foot{flex-wrap:wrap}.v2-app .ai-review-split-foot>div{width:100%}.v2-app .ai-review-split-foot .btn{flex:1}}.v2-app .banner{position:relative;border-radius:12px;overflow:hidden;padding:32px 40px;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:40px;min-height:239px;box-sizing:border-box}.v2-app .banner h3{font:800 32px/1.1 var(--font-nunito,Nunito,sans-serif);letter-spacing:-.02em;color:#fff;margin:0 0 12px;max-width:420px}.v2-app .banner p{font:400 16px/1.5 Roboto;color:rgba(255,255,255,.92);margin:0 0 20px;max-width:420px}.v2-app .banner .banner-body{position:relative;z-index:2}.v2-app .metric{background:#fff;border:1px solid var(--line-2);border-radius:4px;padding:20px 24px;display:flex;align-items:center;gap:16px;flex:1;min-width:0;box-shadow:var(--shadow-sm)}.v2-app .metric-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;flex:none}.v2-app .metric-label{font:500 13px Roboto;color:var(--muted)}.v2-app .metric-sub{font:500 12px Roboto;color:var(--primary);display:flex;align-items:center;gap:4px}.v2-app .metric-val{font:700 28px/1.2 var(--font-nunito,Nunito,sans-serif);color:var(--ink);letter-spacing:-.02em}.v2-app .metric-val .trend{font:700 12px Roboto;color:var(--success);margin-left:8px}.v2-app .prog{height:6px;background:#EFF0F4;border-radius:3px;overflow:hidden;flex:1}.v2-app .prog span{display:block;height:100%;background:var(--primary);border-radius:3px}.v2-app .prog.success span{background:var(--success)}.v2-app .prog.warning span{background:var(--warning)}.v2-app .prog.danger span{background:var(--danger)}.v2-app .sub-cell{display:flex;flex-direction:column;gap:6px;min-width:160px}.v2-app .mini-bar{height:7px;border-radius:4px;background:#EDF0F5;overflow:hidden;display:flex}.v2-app .mini-bar .g{background:var(--success)}.v2-app .mini-bar .w{background:var(--warning)}.v2-app .sub-txt{display:flex;align-items:center;gap:8px;font:500 12px Roboto;color:var(--text)}.v2-app .sub-txt em{font:700 11px Roboto;font-style:normal;color:var(--warning-700);background:var(--warning-50);padding:1px 7px;border-radius:10px}.v2-app .tabs{display:flex;border-bottom:1px solid var(--line-2);margin-bottom:24px;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.v2-app .tabs::-webkit-scrollbar{display:none}.v2-app .tab{padding:14px 20px;font:700 14px Roboto;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:all .15s;letter-spacing:-.01em;white-space:nowrap;flex-shrink:0}.v2-app .tab:hover{color:var(--text)}.v2-app .tab.active{color:var(--primary);border-bottom-color:var(--primary)}.v2-app .tab:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.v2-app .tabs.segmented{display:flex;border-bottom:0;margin-bottom:16px;gap:3px;background:var(--bg);padding:3px;border-radius:7px;overflow-x:auto}.v2-app .tabs.segmented .tab{flex:1 1 0;height:28px;padding:0 10px;border-radius:5px;font:700 11.5px Roboto;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:4px;border-bottom:0;letter-spacing:normal}.v2-app .tabs.segmented .tab:hover{color:var(--ink)}.v2-app .tabs.segmented .tab.active{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm);border-bottom-color:transparent}.v2-app .tabs.segmented .tab em{font-style:normal;opacity:.7}.v2-app .filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.v2-app .search-box{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:0 12px;height:36px;min-width:260px}.v2-app .search-box input{border:0;outline:0;font:400 13px Roboto;color:var(--text);flex:1;background:transparent}.v2-app .search-box input:focus-visible{outline:2px solid var(--primary);outline-offset:0}.v2-app .pagination{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;border-top:1px solid var(--line-2);font:400 13px Roboto;color:var(--text)}.v2-app .pager{display:flex;align-items:center;gap:4px}.v2-app .pager button{width:30px;height:30px;border-radius:4px;display:grid;place-items:center;font:500 12px Roboto;color:var(--text);border:1px solid transparent;cursor:pointer;background:transparent}.v2-app .pager button:hover{background:var(--bg)}.v2-app .pager button.active{background:var(--primary);color:#fff}.v2-app .pager button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.v2-app .pager .next,.v2-app .pager .prev{display:flex;align-items:center;gap:4px;padding:0 10px;width:auto;color:var(--muted)}.v2-app .popover{position:absolute;top:52px;right:0;width:380px;background:#fff;border:1px solid var(--line-2);border-radius:6px;box-shadow:var(--shadow-lg);z-index:30;max-height:480px;display:flex;flex-direction:column;overflow:hidden}.v2-app .user-popover{width:280px;max-height:none;padding:0}.v2-app .user-popover-head{display:flex;align-items:center;gap:12px;padding:18px 20px;background:var(--bg);border-bottom:1px solid var(--line-2)}.v2-app .user-popover-name{font:700 15px var(--font-nunito,Nunito,sans-serif);color:var(--ink)}.v2-app .user-popover-email,.v2-app .user-popover-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-app .user-popover-email{font:500 13px Roboto;color:var(--muted)}.v2-app .user-popover-list{padding:10px 0}.v2-app .user-popover-foot{border-top:1px solid var(--line-2);padding:10px 0}.v2-app .user-popover-item{display:flex;align-items:center;gap:14px;padding:10px 22px;cursor:pointer;font:600 14px var(--font-nunito,Nunito,sans-serif);color:var(--text);transition:color .12s}.v2-app .user-popover-item svg{color:var(--muted);flex:none}.v2-app .user-popover-item:hover,.v2-app .user-popover-item:hover svg{color:var(--primary)}.v2-app .user-popover-item:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.v2-app .popover-head{padding:16px;border-bottom:1px solid var(--line-2);display:flex;justify-content:space-between;align-items:center}.v2-app .popover-head h4{font:700 14px var(--font-nunito,Nunito,sans-serif);color:var(--ink)}.v2-app .popover-head a{font:500 12px Roboto;color:var(--primary);cursor:pointer}.v2-app .popover-body{overflow-y:auto;flex:1}.v2-app .notif{display:flex;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line-2);cursor:pointer;position:relative}.v2-app .notif:hover{background:var(--bg)}.v2-app .notif.unread{background:#F9FAFE}.v2-app .notif.unread:before{content:"";position:absolute;top:18px;left:6px;width:6px;height:6px;border-radius:50%;background:var(--primary)}.v2-app .notif-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--primary-50);color:var(--primary)}.v2-app .notif p{margin:0;font:400 13px Roboto;color:var(--text);line-height:1.4}.v2-app .notif p b{color:var(--ink);font-weight:700}.v2-app .notif time{font:500 11px Roboto;color:var(--muted)}.v2-app .tweaks{position:fixed;bottom:20px;left:20px;width:280px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-lg);z-index:40;overflow:hidden;animation:v2-pop .2s ease}.v2-app .tweaks-head{padding:12px 16px;border-bottom:1px solid var(--line-2);display:flex;justify-content:space-between;align-items:center;background:#fafbfd}.v2-app .tweaks-head h5{font:700 13px var(--font-nunito,Nunito,sans-serif);color:var(--ink)}.v2-app .tweaks-body{padding:16px;display:flex;flex-direction:column;gap:14px}.v2-app .tweaks-body .field label{font:700 11px Roboto;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.v2-app .swatches{display:flex;gap:8px}.v2-app .sw{width:26px;height:26px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:all .15s}.v2-app .sw.on{border-color:#fff;outline:2px solid var(--ink)}.v2-app .sw:focus-visible{outline:2px solid var(--primary)}.v2-app .empty{padding:60px 20px;text-align:center}.v2-app .empty-icon{width:80px;height:80px;margin:0 auto 16px;border-radius:50%;background:var(--primary-50);display:grid;place-items:center;color:var(--primary)}.v2-app .empty h4{font:700 18px var(--font-nunito,Nunito,sans-serif);color:var(--ink);margin-bottom:4px}.v2-app .empty p{color:var(--muted);font:400 14px Roboto;margin:0 0 20px}.v2-app .chipset{display:flex;gap:8px;flex-wrap:wrap}.v2-app .chip{padding:6px 14px;border-radius:20px;font:700 12px Roboto;color:var(--muted);cursor:pointer;border:1px solid var(--line);background:#fff;transition:all .15s}.v2-app .chip.active{background:var(--primary);color:#fff;border-color:var(--primary)}.v2-app .chip:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.v2-app .segmented{display:flex;gap:4px;padding:4px;background:var(--bg);border-radius:8px;border:1px solid var(--line-2)}.v2-app .segmented button{flex:1;height:34px;border-radius:6px;font:700 12px Roboto;color:var(--muted);background:transparent;transition:all .15s}.v2-app .segmented button.active{background:var(--primary);color:#fff}.v2-app .segmented button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.v2-app .check{width:18px;height:18px;border:1.5px solid #b7c2d0;border-radius:3px;display:inline-grid;place-items:center;cursor:pointer;flex:none;background:#fff;color:#fff}.v2-app .check.on{background:var(--primary);border-color:var(--primary)}.v2-app .check.on:after{content:"";width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);margin-bottom:2px}.v2-app .topbar-menu-toggle{display:none;width:36px;height:36px;border-radius:6px;align-items:center;justify-content:center;color:var(--text);background:transparent;cursor:pointer;margin-right:4px;flex:none;border:none}.v2-app .topbar-menu-toggle:hover{background:var(--bg);color:var(--primary)}.v2-app .topbar-menu-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.v2-app .sidebar-backdrop{position:fixed;inset:0;background:rgba(22,36,60,.45);z-index:19;animation:v2-fadeIn .15s ease}@media (max-width:1280px){.v2-app .page{padding:24px}}@media (max-width:1024px){.v2-app .sidebar{position:fixed;left:0;top:0;bottom:0;z-index:60;transform:translateX(-100%);transition:transform .22s ease;box-shadow:0 0 24px rgba(22,36,60,.18)}.v2-app.app.mobile-nav-open .sidebar{transform:translateX(0)}.v2-app .sidebar.collapsed{transform:translateX(-100%)}.v2-app.app.mobile-nav-open .sidebar.collapsed{transform:translateX(0);width:290px}.v2-app.app.mobile-nav-open .sidebar.collapsed .chev,.v2-app.app.mobile-nav-open .sidebar.collapsed .label{display:inline-flex}.v2-app.app.mobile-nav-open .sidebar.collapsed .nav-sub{display:block}.v2-app .sidebar+.main,.v2-app .sidebar.collapsed+.main{margin-inline-start:0}.v2-app .main{width:100%}.v2-app .topbar-menu-toggle{display:inline-flex}.v2-app .topbar{padding:0 18px;gap:8px}.v2-app .search input{width:140px}[dir=rtl] .v2-app .sidebar,[dir=rtl] .v2-app .sidebar.collapsed{transform:translateX(100%)}}@media (max-width:768px){.v2-app{font-size:13.5px}.v2-app .page{padding:16px}.v2-app .topbar{padding:0 12px;gap:6px;height:60px}.v2-app .topbar>.search{display:none}.v2-app .top-right{gap:10px}.v2-app .user-text{display:none}.v2-app .page-title h2{font-size:22px}.v2-app .page-title{margin-bottom:18px}.v2-app .modal-backdrop{padding:0;align-items:flex-end}.v2-app .modal{max-width:none;width:100%;max-height:94vh;border-radius:12px 12px 0 0}.v2-app .modal-foot{flex-wrap:wrap}.v2-app .modal-foot .btn{flex:1;min-width:120px}.v2-app .drawer{width:100vw}.v2-app .toasts{left:12px;right:12px;bottom:12px}.v2-app .toast{min-width:0}.v2-app .tweaks{width:calc(100% - 24px);left:12px;right:12px;bottom:12px;max-width:340px}.v2-app .empty{padding:40px 16px}.v2-app .popover{width:calc(100vw - 32px);right:-16px;max-width:380px}.v2-app .user-popover{width:280px;right:-8px}}@media (max-width:480px){.v2-app .page{padding:12px}.v2-app .topbar{padding:0 10px}.v2-app .topbtn{display:none}.v2-app .bell{width:32px;height:32px}.v2-app .page-title h2{font-size:20px}}@media (max-width:860px){.v2-app .page [style*=grid-template-columns]:not(.grid-no-collapse){grid-template-columns:1fr!important}.v2-app .page [style*=grid-template-columns]:not(.grid-no-collapse)>*{min-width:0}.v2-app .page-title{flex-direction:column;align-items:flex-start}.v2-app .page-title-actions{width:100%}.v2-app .page-title-actions .btn{flex:1}.v2-app .ann-composer{position:static!important;top:auto!important}.v2-app .table{min-width:600px}}.v2-app .card:has(.table){overflow-x:auto}.v2-app .page div:has(>table.table){overflow-x:auto}.v2-app .inline-grade-body{position:sticky;left:0;box-sizing:border-box;max-width:100vw}@media (max-width:560px){.v2-app .metric{flex:1 1 100%!important}}@media (max-width:768px){.v2-app .messages-shell{height:calc(100vh - 190px)!important;min-height:420px!important}.v2-app .messages-shell aside{width:100%!important;flex:1 1 auto!important}.v2-app .messages-shell.has-thread aside,.v2-app .messages-shell:not(.has-thread)>section{display:none!important}.v2-app .msg-back{display:inline-flex!important}}.v2-app .msg-back{display:none}.v2-app .msg-row:not(.msg-row-active):hover{background:var(--bg)!important}@media (max-width:768px){.v2-app [role=dialog] [style*="100px 1fr 280px 36px"]{grid-template-columns:1fr!important;gap:6px!important}}.v2-app .cc-modal-backdrop{position:fixed;inset:0;background:rgba(22,36,60,.45);z-index:50;display:grid;align-items:center;justify-items:center;padding:16px}.v2-app .cc-modal{background:#fff;border-radius:8px;width:100%;max-width:880px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 60px rgba(22,36,60,.25)}.v2-app .cc-modal-body{padding:28px;overflow-y:auto;flex:1}.v2-app .teacher-tx-cards{display:none}@media (max-width:860px){.v2-app .teacher-tx-table-wrap{display:none}.v2-app .teacher-tx-cards{display:block}}.v2-app .teacher-tx-card{padding:14px 16px;border-bottom:1px solid var(--line-2)}.v2-app .teacher-tx-card:last-child{border-bottom:0}.v2-app .teacher-tx-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.v2-app .teacher-tx-card-amount{font:700 18px Nunito}.v2-app .teacher-tx-card-course{font:600 13px Roboto;color:var(--ink)}.v2-app .teacher-tx-card-sub{font:500 12px Roboto;color:var(--muted);margin-top:2px}.v2-app .teacher-tx-card-meta{display:flex;justify-content:space-between;gap:8px;margin-top:8px;font:500 11px Roboto;color:var(--muted)}.v2-app .teacher-tx-card-meta+.badge{margin-top:10px}.v2-app .rtbl-cards{display:none}@media (max-width:860px){.v2-app .rtbl-table-wrap{display:none}.v2-app .rtbl-cards{display:flex;flex-direction:column}}.v2-app .rtbl-card{padding:14px 16px;border-bottom:1px solid var(--line-2)}.v2-app .rtbl-card:last-child{border-bottom:0}.v2-app .rtbl-card-title{font:700 14px Nunito;color:var(--ink);margin-bottom:6px}.v2-app .rtbl-card-highlights{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.v2-app .rtbl-card-highlight{font:700 15px Nunito}.v2-app .rtbl-card-field{font:500 12px Roboto;color:var(--muted);margin-top:4px;display:flex;justify-content:space-between;gap:8px}.v2-app .rtbl-card-field:first-of-type{margin-top:0}.v2-app .rtbl-card-label{font:500 12px Roboto;color:var(--muted);flex-shrink:0}.v2-app .rtbl-card-highlight .rtbl-card-label,.v2-app .rtbl-card-title .rtbl-card-label{display:block;margin-bottom:2px;text-transform:uppercase;letter-spacing:.04em;font-size:10px}.v2-app .rtbl-bordered .rtbl-table-wrap{border:1px solid var(--line-2)}.v2-app .cc-steps{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-bottom:24px;border-bottom:1px solid var(--line-2)}.v2-app .cc-steps::-webkit-scrollbar{display:none}.v2-app .cc-step{flex-shrink:0;white-space:nowrap;display:flex;align-items:center;gap:8px;padding:12px 16px;font:700 13px Roboto;color:var(--muted);border-bottom:2px solid transparent}.v2-app .cc-step.active{color:var(--primary);border-bottom-color:var(--primary)}@media (max-width:768px){.v2-app .cc-modal-backdrop{padding:0;align-items:flex-end}.v2-app .cc-modal{max-width:none;max-height:92vh;border-radius:12px 12px 0 0}.v2-app .cc-modal-body{padding:20px}.v2-app .cc-modal [style*="grid-template-columns: 1fr 1fr"]{grid-template-columns:1fr!important}}[dir=rtl] .v2-app .sidebar{border-right:none;border-left:1px solid var(--line);left:auto;right:0}[dir=rtl] .v2-app .sidebar.collapsed .nav-item.active:before{left:auto;right:0;border-radius:3px 0 0 3px}[dir=rtl] .v2-app .sidebar.collapsed .nav-item .tooltip{left:auto;right:60px}[dir=rtl] .v2-app .nav-item .chev{transform:scaleX(-1)}[dir=rtl] .v2-app .nav-item.open .chev{transform:scaleX(-1) rotate(90deg)}[dir=rtl] .v2-app .drawer{left:auto;right:0;animation:v2-slideRight .22s ease}[dir=rtl] .v2-app .drawer.right{right:auto;left:0;animation:v2-slideLeft .22s ease}[dir=rtl] .v2-app .drawer.bottom{right:0;left:0;animation:v2-slideUp .22s ease}[dir=rtl] .v2-app .toasts{right:auto;left:24px}[dir=rtl] .v2-app .toast{animation:v2-slideInRtl .25s ease}[dir=rtl] .v2-app .tweaks{left:auto;right:20px}[dir=rtl] .v2-app .table td,[dir=rtl] .v2-app .table th{text-align:right}[dir=rtl] .v2-app .nav-sub-item{padding:9px 48px 9px 10px}@keyframes v2-slideLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes v2-slideInRtl{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes spin{to{transform:rotate(1turn)}}.spin{animation:spin .75s linear infinite;transform-origin:center}.v2-app .cal{background:#fff;border:1px solid var(--line-2);border-radius:4px;overflow:hidden}.v2-app .cal-head{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--line-2)}.v2-app .cal-head h3{font:700 16px var(--font-nunito,Nunito,sans-serif);color:var(--ink);margin:0}.v2-app .cal-grid{display:grid;grid-template-columns:70px repeat(7,1fr);font:400 12px Roboto}.v2-app .cal-colhead{padding:12px 0 14px;text-align:center;font:500 12px Roboto;color:var(--muted);border-bottom:1px solid var(--line-2);border-right:1px solid var(--line-2)}.v2-app .cal-colhead b{display:block;font:700 18px var(--font-nunito,Nunito,sans-serif);color:var(--ink);margin-bottom:2px}.v2-app .cal-hour{height:54px;padding:4px 8px;font:500 11px Roboto;color:var(--muted);text-align:end;border-bottom:1px solid var(--line-2);border-inline-end:1px solid var(--line-2);background:#fafbfd}.v2-app .cal-cell{height:54px;border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2);position:relative}.v2-app .cal-event{position:absolute;left:4px;right:4px;border-radius:4px;padding:6px 8px;font:500 11px/1.2 Roboto;color:#fff;cursor:pointer;overflow:hidden}.v2-app .cal-event b{display:block;font:700 11px Roboto;margin-bottom:2px}.v2-app .cal-event.future{background:var(--primary)}.v2-app .cal-event.past{background:#9aa6d8;opacity:.6}.v2-app .cal-event.ongoing{background:var(--success)}.v2-app .cal-event.hybrid{background:var(--info)}.v2-app .course-card{background:#fff;border:1px solid var(--line-2);border-radius:8px;overflow:hidden;transition:all .2s;cursor:pointer}.v2-app .course-card:hover{border-color:var(--primary);box-shadow:0 4px 12px rgba(101,118,255,.1);transform:translateY(-2px)}.v2-app .course-thumb{height:140px;background:linear-gradient(135deg,#6576FF,#816BFF);position:relative;display:grid;place-items:center;color:#fff;font:800 28px var(--font-nunito,Nunito,sans-serif);letter-spacing:-.02em;padding:20px;text-align:center}.v2-app .course-body{padding:18px 20px}.v2-app .course-body h4{font:700 16px var(--font-nunito,Nunito,sans-serif);color:var(--ink);margin:0 0 4px;letter-spacing:-.02em}.v2-app .course-meta{font:400 13px Roboto;color:var(--muted);display:flex;gap:14px;flex-wrap:wrap;margin-top:10px}.v2-app .course-meta span{display:inline-flex;align-items:center;gap:4px}.v2-app .kind-tile{padding:14px 16px;border:1px solid var(--line);border-radius:6px;cursor:pointer;background:#fff;transition:all .15s}.v2-app .kind-tile.active,.v2-app .kind-tile:hover{border-color:var(--primary)}.v2-app .kind-tile.active{background:rgba(101,118,255,.04);box-shadow:0 0 0 3px rgba(101,118,255,.12)}.v2-app .input-money{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:4px;padding:0 12px;height:36px;background:#fff}.v2-app .input-money span{font:700 11px Roboto;color:var(--muted)}.v2-app .input-money input{flex:1;border:0;outline:0;font:600 13px Roboto;color:var(--ink);padding:0;background:transparent;min-width:0}.v2-app .input-money input:focus-visible{outline:2px solid var(--primary);outline-offset:0}.v2-app .billing-plan-row{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center}@media (max-width:680px){.v2-app .billing-plan-row{grid-template-columns:1fr;gap:12px}.v2-app .billing-plan-row>*{min-width:0!important}.v2-app .billing-plan-actions{justify-content:flex-start!important}.v2-app .billing-plan-actions .btn{width:100%}}.upload-dropzone:focus-visible{outline:2px solid var(--primary);outline-offset:2px}