:root{--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "PingFang SC", system-ui, "Helvetica Neue", "Segoe UI Variable", "Segoe UI", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;--primary:#5856d6;--primary-hover:#4a49c4;--primary-active:#3f3dae;--primary-soft:#5856d61a;--primary-100:#5856d629;--primary-300:#a5a1ee;--success:#34c759;--success-soft:#34c7591f;--warning:#dd8300;--warning-soft:#ff95001f;--danger:#ff3b30;--danger-soft:#ff3b301a;--info:#007aff;--info-soft:#007aff1a;--bg:#f2f2f7;--paper:#fff;--ink:#1c1c1e;--ink-soft:#48484a;--muted:#8e8e93;--line:#3c3c431a;--line-strong:#3c3c432b;--sidebar-bg:#fafafdc7;--sidebar-bg-deep:#f7f7fbb8;--sidebar-text:#3a3a3c;--sidebar-muted:#8e8e93;--navy:#5856d6;--navy-700:#4a49c4;--navy-50:#5856d61a;--mint:#8f8bea;--amber:#ff9500;--rust:#ff3b30;--green:#34c759;--red:#ff3b30;--blue:#007aff;--radius-sm:10px;--radius:12px;--radius-lg:16px;--shadow-sm:0 .5px 1px #00000008, 0 3px 10px #0000000a;--shadow:0 4px 16px #0000000f, 0 12px 32px #0000000f;--shadow-lg:0 12px 40px #0000001f, 0 32px 80px #0000001a;--sidebar-w:244px;--ease:cubic-bezier(.32, .72, 0, 1);--glass-blur:saturate(180%) blur(20px);--focus-ring:0 0 0 3.5px #5856d638}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--ink);letter-spacing:0;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:14px;line-height:1.6}a{color:var(--primary);text-decoration:none;transition:color .15s,opacity .15s}a:hover{color:var(--primary-hover);text-decoration:none}a:active{opacity:.65}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:14px}::selection{background:#5856d62e}:focus-visible{box-shadow:var(--focus-ring);outline:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#3c3c4338 padding-box padding-box;border:2px solid #0000;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#3c3c435c padding-box padding-box;border:2px solid #0000}::-webkit-scrollbar-track{background:0 0}.app-shell{--active-sidebar-w:var(--sidebar-w);min-height:100vh;display:flex}.sidebar{width:var(--active-sidebar-w);background:var(--sidebar-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-right:.5px solid var(--line-strong);color:var(--sidebar-text);z-index:120;transition:width .2s var(--ease), transform .26s var(--ease);flex-direction:column;flex-shrink:0;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar .brand{color:var(--ink);letter-spacing:0;align-items:center;gap:11px;padding:20px 20px 14px;font-size:15.5px;font-weight:700;display:flex}.sidebar .brand-home-link{border-radius:50%;flex:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.sidebar .brand-home-link:focus-visible{outline:3px solid var(--primary-100);outline-offset:3px}.sidebar .brand-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar .brand .brand-logo{object-fit:contain;background:#fff;border-radius:50%;flex:none;width:38px;height:38px;box-shadow:0 2px 8px #0000001a,0 0 0 .5px #0000000a}.sidebar nav{scrollbar-width:thin;scrollbar-color:#3c3c4333 transparent;flex:1;padding:6px 12px 12px;overflow-y:auto}.sidebar nav::-webkit-scrollbar{width:5px}.sidebar nav::-webkit-scrollbar-thumb{background:#3c3c4329;border:none}.sidebar .nav-section{padding:4px 0}.sidebar .nav-workspace-section{border-bottom:.5px solid var(--line);margin-bottom:4px;padding-bottom:8px}.sidebar-collapse-btn{width:30px;height:30px;color:var(--ink-soft);background:#7676801a;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;margin-left:auto;padding:0;transition:background .15s,color .15s,transform .15s;display:inline-flex}.sidebar-collapse-btn:hover,.sidebar-collapse-btn:focus-visible{color:var(--ink);background:#7676802e;outline:none}.sidebar-collapse-btn:active{transform:scale(.92)}.nav-group-toggle{width:100%;color:var(--sidebar-text);letter-spacing:0;text-align:left;border-radius:var(--radius-sm);background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;margin:0;padding:10px;font-size:13.5px;font-weight:600;display:flex}.nav-group-toggle:hover,.nav-group-toggle:focus-visible{color:var(--ink);box-shadow:none;outline:none}.nav-group-leading{align-items:center;gap:11px;min-width:0;display:inline-flex}.nav-group-icon{opacity:.78;flex:none;justify-content:center;align-items:center;width:20px;display:inline-flex}.nav-group-chevron{transition:transform .2s var(--ease);display:inline-flex}.nav-group-chevron.collapsed{transform:rotate(-90deg)}.nav-item-list{gap:1px;display:grid}.nav-subgroup{border-left:1px solid #3c3c4329;margin:3px 0 7px 31px;padding:4px 0 5px 11px}.nav-subgroup-label{color:var(--sidebar-muted);letter-spacing:.05em;text-transform:uppercase;padding:3px 10px 5px 0;font-size:10.5px;font-weight:600}.sidebar .nav-group-items .nav-item{padding-left:40px}.sidebar .nav-finance-subitems .nav-item{padding-left:9px}.sidebar a.nav-item{color:var(--sidebar-text);border-radius:var(--radius-sm);transition:background .18s var(--ease), color .18s var(--ease), transform .1s var(--ease);align-items:center;gap:11px;margin:1px 0;padding:8.5px 10px;font-size:13.5px;text-decoration:none;display:flex}.sidebar a.nav-item:hover{color:var(--ink);background:#76768017;text-decoration:none}.sidebar a.nav-item:active{transform:scale(.98)}.sidebar a.nav-item.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.sidebar .nav-item .icon{opacity:.75;flex-shrink:0;justify-content:center;align-items:center;width:18px;transition:color .18s,opacity .18s;display:inline-flex}.sidebar a.nav-item.active .icon{opacity:1;color:var(--primary)}.sidebar .nav-badge{background:var(--danger);color:#fff;border-radius:999px;margin-left:auto;padding:0 7px;font-size:11px;font-weight:600;line-height:17px}.sidebar .user-box{border:.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#ffffffa8;margin:0 12px 14px;padding:14px 16px;font-size:12px}.sidebar .user-box .name{color:var(--ink);font-size:13px;font-weight:600}.sidebar .user-box .role{color:var(--muted);margin-top:1px}.sidebar .user-box button{width:100%;color:var(--ink-soft);background:#7676801a;border:none;border-radius:9px;justify-content:center;align-items:center;gap:6px;margin-top:10px;padding:6px 10px;font-size:12px;font-weight:500;transition:background .15s,color .15s,transform .1s;display:inline-flex}.sidebar .user-box button:hover{color:var(--ink);background:#7676802b}.sidebar .user-box button:active{transform:scale(.97)}.sidebar-mask{display:none}.main{margin-left:var(--active-sidebar-w);min-width:0;transition:margin-left .2s var(--ease), margin-right .18s var(--ease);flex-direction:column;flex:1;display:flex}.app-shell.has-agent-dock .main{margin-right:var(--agent-dock-w)}.topbar{height:58px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-bottom:.5px solid var(--line-strong);z-index:100;background:#ffffffb8;align-items:center;gap:14px;padding:0 24px;display:flex;position:sticky;top:0}.topbar .title{letter-spacing:0;font-size:16px;font-weight:700}.topbar-logo-link{border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.topbar-logo-link:focus-visible{outline:3px solid var(--primary-100);outline-offset:3px}.topbar-logo{object-fit:contain;flex:none;width:34px;height:34px}.top-primary-nav{scrollbar-width:none;align-items:center;gap:3px;min-width:0;max-width:min(46vw,520px);display:inline-flex;overflow-x:auto}.top-primary-nav::-webkit-scrollbar{display:none}.top-primary-link{color:var(--ink-soft);white-space:nowrap;border-radius:9px;flex:none;align-items:center;gap:5px;padding:7px 9px;font-size:12px;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.top-primary-link:hover,.top-primary-link:focus-visible{color:var(--ink);background:#7676801a;outline:none}.top-primary-link.active{background:var(--primary-soft);color:var(--primary)}.top-primary-icon{align-items:center;display:inline-flex}.topbar .spacer{flex:1}.menu-btn{width:36px;height:36px;color:var(--ink-soft);background:#7676801a;border:none;border-radius:9px;justify-content:center;align-items:center;display:none}.topbar .bell{cursor:pointer;width:38px;height:38px;color:var(--ink-soft);border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .15s,color .15s,transform .1s;display:inline-flex;position:relative}.topbar .bell:hover{color:var(--primary);background:#7676801a}.topbar .bell:active{transform:scale(.92)}.topbar .bell .count{background:var(--danger);color:#fff;text-align:center;border-radius:999px;min-width:17px;height:17px;padding:0 5px;font-size:10px;font-weight:700;line-height:17px;position:absolute;top:1px;right:0;box-shadow:0 0 0 2px #ffffffe6}.topbar .avatar{transition:box-shadow .15s,transform .1s}.topbar .avatar:hover{box-shadow:0 0 0 3px var(--primary-100)}.topbar .avatar:active{transform:scale(.94)}.topbar-profile{flex:none;position:relative}.topbar-profile-trigger{color:var(--ink);background:0 0;border:0;border-radius:999px;align-items:center;gap:8px;padding:3px 5px 3px 3px;display:inline-flex}.topbar-profile-trigger:hover,.topbar-profile-trigger:focus-visible{background:#7676801a;outline:none}.topbar-profile-trigger .avatar{cursor:pointer}.topbar-profile-name{text-overflow:ellipsis;white-space:nowrap;max-width:110px;font-size:12px;font-weight:600;overflow:hidden}.topbar-profile-menu{background:var(--paper);border:.5px solid var(--line-strong);width:190px;box-shadow:var(--shadow);z-index:140;border-radius:13px;padding:7px;position:absolute;top:calc(100% + 9px);right:0}.topbar-profile-summary{border-bottom:.5px solid var(--line);flex-direction:column;gap:2px;padding:8px 10px 10px;display:flex}.topbar-profile-summary strong{font-size:13px}.topbar-profile-summary span{color:var(--muted);font-size:11px}.topbar-profile-menu-item{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;margin-top:4px;padding:9px 10px;font-size:12px;text-decoration:none;display:flex}.topbar-profile-menu-item:hover,.topbar-profile-menu-item:focus-visible{background:var(--primary-50);color:var(--primary);outline:none}.topbar-action{min-width:38px;min-height:34px;color:var(--ink-soft);white-space:nowrap;background:#7676801a;border:none;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:5px 12px;font-size:12px;font-weight:600;transition:background .15s,color .15s,transform .1s;display:inline-flex}.topbar-action:hover,.topbar-action:focus-visible{color:var(--ink);background:#7676802b;outline:none}.topbar-action:active{transform:scale(.96)}.topbar-back{min-width:34px;min-height:34px;color:var(--primary);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:9px;flex:none;justify-content:center;align-items:center;gap:1px;padding:5px 10px 5px 6px;font-size:13px;font-weight:600;transition:background .15s,color .15s,transform .1s;display:inline-flex}.topbar-back:hover,.topbar-back:focus-visible{background:#7676801a;outline:none}.topbar-back:active{transform:scale(.96)}.topbar-language{white-space:nowrap;align-items:center;gap:7px;min-width:0;display:inline-flex}.topbar-language-label{color:var(--muted);font-size:11px;font-weight:600}.global-search{z-index:110;width:min(360px,30vw);min-width:180px;position:relative}.global-search-input{border:.5px solid var(--line-strong);width:100%;height:34px;color:var(--ink);background:#76768014;border-radius:999px;outline:none;padding:0 12px 0 32px;font-size:12px;transition:border-color .15s,background .15s,box-shadow .15s}.global-search-input:focus{border-color:var(--primary-300);background:var(--paper);box-shadow:0 0 0 3px var(--primary-50)}.global-search-icon{color:var(--muted);pointer-events:none;font-size:17px;line-height:17px;position:absolute;top:8px;left:12px}.global-search-popover{background:var(--paper);border:.5px solid var(--line-strong);max-height:440px;box-shadow:var(--shadow);border-radius:12px;padding:7px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:auto}.global-search-group+.global-search-group{border-top:.5px solid var(--line);margin-top:6px;padding-top:6px}.global-search-group-title{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:5px 8px;font-size:10px;font-weight:750}.global-search-result{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;align-items:flex-start;gap:2px;padding:8px;display:flex}.global-search-result:hover,.global-search-result:focus-visible{background:var(--primary-50);outline:none}.global-search-result strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}.global-search-result span{text-overflow:ellipsis;white-space:nowrap;width:100%;color:var(--muted);font-size:11px;overflow:hidden}.global-search-empty{color:var(--muted);text-align:center;padding:16px 10px;font-size:12px}.global-search-all{border:0;border-top:.5px solid var(--line);width:100%;color:var(--primary);cursor:pointer;background:0 0;margin-top:5px;padding:8px;font-size:11px}.search-toolbar{margin-bottom:16px}.search-toolbar .input{flex:1;min-width:240px}.search-results{gap:14px;display:grid}.search-result-list{padding:0}.search-result-item{border-bottom:.5px solid var(--line);color:var(--ink);flex-direction:column;gap:4px;padding:14px 18px;text-decoration:none;display:flex}.search-result-item:last-child{border-bottom:0}.search-result-item:hover{background:var(--primary-50)}.search-result-item span{color:var(--muted);font-size:12px;line-height:1.6}.chemicals-table{min-width:1080px}.chemicals-table td{vertical-align:top}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}.text-success{color:var(--success)}.rsvp-actions{flex-wrap:wrap;gap:10px;margin:16px 0 4px;display:flex}.rsvp-actions .btn{flex:140px;min-height:42px;font-weight:600}.rsvp-actions .btn.rsvp-active{box-shadow:0 0 0 3px var(--primary-soft), 0 2px 8px #0000001f}.rsvp-list{flex-direction:column;gap:6px;display:flex}.rsvp-person{border-radius:var(--radius);background:#76768012;align-items:center;gap:10px;padding:7px 10px;display:flex}.rsvp-person .rsvp-name{font-size:13.5px;font-weight:550}.content{width:100%;max-width:none;padding:24px 28px 40px}.content-centered>.page-enter{width:min(100%,1280px);margin-inline:auto}.content-wide>.page-enter{width:100%;max-width:1800px;margin-inline:auto}.content-loading{min-height:260px;color:var(--muted);align-content:center;justify-items:center;gap:12px;font-size:12px;display:grid}.content-loading-title,.content-loading-line{width:min(100%,560px);height:18px}.content-loading-title{border-radius:12px;height:34px}.content-loading-line{width:min(100%,720px)}@media (width>=769px){.app-shell.sidebar-collapsed{--active-sidebar-w:74px}.sidebar-collapsed .sidebar .brand{justify-content:center;gap:5px;padding-inline:12px}.sidebar-collapsed .sidebar .brand-label,.sidebar-collapsed .sidebar .nav-label,.sidebar-collapsed .sidebar .user-details,.sidebar-collapsed .sidebar .logout-label{display:none}.sidebar-collapsed .sidebar .brand-logo{width:34px;height:34px}.sidebar-collapsed .sidebar .sidebar-collapse-btn{width:26px;margin-left:0}.sidebar-collapsed .sidebar .nav-group-toggle,.sidebar-collapsed .sidebar .nav-subgroup-label{display:none}.sidebar-collapsed .sidebar .nav-group-items .nav-item,.sidebar-collapsed .sidebar .nav-finance-subitems .nav-item{padding-inline:10px}.sidebar-collapsed .sidebar .nav-subgroup{border-left:0;margin:0;padding:0}.sidebar-collapsed .sidebar a.nav-item{justify-content:center;gap:0;padding-inline:10px}.sidebar-collapsed .sidebar a.nav-item .icon{width:22px}.sidebar-collapsed .sidebar .user-box{margin-inline:8px;padding:10px 7px}.sidebar-collapsed .sidebar .user-box>.flex{justify-content:center}.sidebar-collapsed .sidebar .user-box button{width:36px;min-height:32px;margin:9px auto 0;padding:5px}}.card{background:var(--paper);border:.5px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card+.card{margin-top:16px}.card-header{border-bottom:.5px solid var(--line);align-items:center;gap:10px;padding:15px 20px;display:flex}.card-header h3{letter-spacing:0;margin:0;font-size:15.5px;font-weight:700}.card-header .spacer{flex:1}.card-body{padding:20px}.labs-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-auto-rows:1fr;align-items:stretch;gap:16px;display:grid}.labs-grid .labs-card{flex-direction:column;min-width:0;height:100%;margin-top:0;display:flex}.labs-grid .labs-card .card-body{flex-direction:column;flex:1;min-width:0;display:flex}.labs-card-desc{-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;min-height:42px;margin-top:12px;margin-bottom:0;display:-webkit-box;overflow:hidden}.labs-card-foot{margin-top:auto;padding-top:12px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-auto-rows:minmax(132px,auto);align-items:stretch;gap:16px;margin-bottom:20px;display:grid}.stat-card{background:var(--paper);border:.5px solid var(--line);border-radius:var(--radius-lg);height:100%;min-height:132px;box-shadow:var(--shadow-sm);transition:box-shadow .25s var(--ease), transform .25s var(--ease);padding:18px 20px}.stat-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.stat-card:active{transform:translateY(0)scale(.99)}.stat-card .label{color:var(--muted);font-size:12.5px;font-weight:500}.stat-card .value{color:var(--ink);letter-spacing:0;font-variant-numeric:tabular-nums;margin-top:6px;font-size:28px;font-weight:700}.stat-card .sub{color:var(--ink-soft);margin-top:5px;font-size:12px}.stat-card .value.warn{color:var(--warning)}.stat-card .value.ok{color:var(--success)}.stat-icon{background:var(--primary-soft);width:42px;height:42px;color:var(--primary);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.stat-icon.warn{background:var(--warning-soft);color:var(--warning)}.stat-icon.ok{background:var(--success-soft);color:var(--success)}.stat-icon.info{background:var(--info-soft);color:var(--info)}.library-inventory-stat{border-top:3px solid var(--primary)}.library-inventory-stat.library-total{border-top-color:var(--info)}.library-inventory-stat.library-borrowed{border-top-color:var(--warning)}.library-inventory-stat.library-available{border-top-color:var(--success)}.table{border-collapse:collapse;width:100%;font-size:13.5px}.table th{text-align:left;color:var(--ink-soft);border-bottom:.5px solid var(--line-strong);white-space:nowrap;letter-spacing:.045em;background:#7676800d;padding:11px 16px;font-size:11.5px;font-weight:650}.table td{border-bottom:.5px solid var(--line);vertical-align:middle;font-variant-numeric:tabular-nums;padding:14px 16px}.table tr{transition:background .15s var(--ease)}.table tr:hover td{background:#7676800d}.table tr:last-child td{border-bottom:none}.tag{white-space:nowrap;letter-spacing:0;border-radius:999px;align-items:center;padding:2px 10px;font-size:12px;font-weight:600;line-height:18px;display:inline-flex}.tag.dot:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px;margin-right:6px}.tag.tag-wrap{white-space:normal;overflow-wrap:anywhere;word-break:break-word;text-align:left;max-width:100%}.btn{border-radius:var(--radius-sm);color:var(--ink);transition:background .15s var(--ease), color .15s, opacity .15s, transform .1s var(--ease);background:#7676801c;border:none;justify-content:center;align-items:center;gap:6px;padding:7px 15px;font-size:13.5px;font-weight:550;display:inline-flex}.btn:hover{background:#7676802b}.btn:active{opacity:.8;transform:scale(.97)}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 2px 8px #5856d647,inset 0 .5px #ffffff29}.btn-primary:hover{background:var(--primary-hover);color:#fff}.btn-success{background:var(--success);color:#fff;box-shadow:0 2px 8px #34c75942}.btn-success:hover{background:#2da94e}.btn-danger{background:var(--danger);color:#fff;box-shadow:0 2px 8px #ff3b303d}.btn-danger:hover{background:#e0342a}.btn-warning{background:var(--warning);color:#fff;box-shadow:0 2px 8px #dd830042}.btn-warning:hover{color:#fff;background:#c47600}.btn-ghost{color:var(--primary);box-shadow:none;background:0 0;font-weight:500}.btn-ghost:hover{background:var(--primary-soft)}.btn-sm{border-radius:8px;padding:4px 11px;font-size:12.5px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:disabled:active{opacity:.45;transform:none}.form-row{margin-bottom:18px}.form-row label{color:var(--ink-soft);letter-spacing:.01em;margin-bottom:7px;font-size:12.5px;font-weight:600;display:block}.form-row label .req{color:var(--danger);margin-left:2px}.input,.textarea,.select{border-radius:var(--radius);width:100%;color:var(--ink);background-color:#76768014;border:1px solid #0000;padding:10px 14px;transition:background-color .15s,border-color .15s,box-shadow .15s}.input,.select{min-height:42px}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238e8e93' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 13px center;background-repeat:no-repeat;padding-right:38px}.input::placeholder,.textarea::placeholder{color:var(--muted)}.input:hover,.textarea:hover,.select:hover{background-color:#7676801f}.input:focus,.textarea:focus,.select:focus{background-color:var(--paper);border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.input:disabled,.select:disabled{color:var(--muted);cursor:not-allowed;background-color:#7676800d}.confirmed-date-trigger{text-align:left;min-height:42px;font:inherit;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;display:inline-flex}.confirmed-date-trigger:disabled{cursor:not-allowed}.confirmed-date-placeholder{color:var(--muted)}.confirmed-date-icon{color:var(--muted);flex:none;font-size:15px}.modal.modal-confirmed-date{width:min(420px,100vw - 32px)}.modal-confirmed-date .modal-body{padding-bottom:8px}.confirmed-date-editor{font-size:16px}.textarea{resize:vertical;min-height:84px;line-height:1.7}.form-grid{grid-template-columns:1fr 1fr;gap:2px 16px;display:grid}.form-grid .full{grid-column:1/-1}input[type=range]{accent-color:var(--primary)}input[type=checkbox],input[type=radio]{accent-color:var(--primary);width:15px;height:15px}.modal-backdrop{-webkit-backdrop-filter:blur(10px)saturate(160%);backdrop-filter:blur(10px)saturate(160%);z-index:1000;background:#00000052;justify-content:center;align-items:flex-start;padding:48px 16px;animation:.2s backdrop-in;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--paper);width:100%;max-width:600px;box-shadow:var(--shadow-lg);animation:modal-in .34s var(--ease);border:.5px solid #ffffff80;border-radius:20px}.modal.wide{max-width:820px}.modal-header{border-bottom:.5px solid var(--line);align-items:center;gap:10px;padding:17px 22px;display:flex}.modal-header h3{letter-spacing:0;flex:1;margin:0;font-size:16px;font-weight:700}.modal-header .modal-close{width:30px;height:30px;color:var(--muted);background:#7676801a;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .15s,color .15s,transform .1s;display:inline-flex}.modal-header .modal-close:hover{color:var(--ink);background:#7676802e}.modal-header .modal-close:active{transform:scale(.9)}.modal-body{padding:22px}.modal-footer{border-top:.5px solid var(--line);justify-content:flex-end;gap:10px;padding:15px 22px;display:flex}@keyframes backdrop-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(18px)scale(.96)}}.toast-stack{z-index:3000;pointer-events:none;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed;top:18px;right:18px}.toast{pointer-events:auto;color:var(--ink);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:.5px solid var(--line);box-shadow:var(--shadow-lg);cursor:pointer;min-width:220px;max-width:380px;animation:toast-in .34s var(--ease);transition:transform .15s var(--ease);background:#ffffffdb;border-radius:16px;align-items:center;gap:10px;padding:11px 16px 11px 12px;font-size:13.5px;font-weight:500;display:flex}.toast:hover{transform:scale(1.015)}.toast .toast-icon{background:var(--info-soft);width:28px;height:28px;color:var(--info);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.toast.success .toast-icon{background:var(--success-soft);color:var(--success)}.toast.error .toast-icon{background:var(--danger-soft);color:var(--danger)}.toast.leaving{animation:.22s forwards toast-out}@keyframes toast-in{0%{opacity:0;transform:translate(28px)scale(.97)}}@keyframes toast-out{to{opacity:0;transform:translate(28px)scale(.97)}}.empty{text-align:center;color:var(--muted);padding:44px 20px;font-size:13.5px}.empty .icon{width:60px;height:60px;color:var(--muted);opacity:1;background:#7676801a;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 12px;font-size:26px;display:flex}.muted{color:var(--muted)}.flex{align-items:center;display:flex}.flex.between{justify-content:space-between}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.wrap{flex-wrap:wrap}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-20{margin-top:20px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.text-sm{font-size:12.5px}.text-right{text-align:right}.progress{background:#76768024;border-radius:999px;height:6px;overflow:hidden}.progress>div{background:var(--primary);height:100%;transition:width .45s var(--ease);border-radius:999px}.section-title{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;border-bottom:none;margin:22px 0 10px;padding-bottom:0;font-size:12px;font-weight:600}.detail-row{border-bottom:.5px solid var(--line);padding:9px 0;display:flex}.detail-row .k{width:110px;color:var(--muted);flex-shrink:0;font-size:13px}.detail-row .v{flex:1;min-width:0}.kv{align-items:center;gap:6px;display:flex}.avatar{background:linear-gradient(135deg, var(--primary) 0%, #8f8bea 100%);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:13.5px;font-weight:700;display:inline-flex;box-shadow:inset 0 .5px #ffffff38}.avatar-img{object-fit:cover;background:var(--navy-50);color:#0000;border:none;padding:0}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.toolbar .spacer{flex:1}.toolbar .input,.toolbar .select{width:auto}.list-item{border-bottom:.5px solid var(--line);transition:background .15s var(--ease);align-items:flex-start;gap:14px;padding:15px 20px;display:flex}.list-item:last-child{border-bottom:none}.list-item:hover{background:#7676800d}.list-item .main-col{flex:1;min-width:0}.list-item h4{letter-spacing:0;margin:0 0 5px;font-size:14px;font-weight:600}.list-item .meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;font-size:12px;display:flex}.pinned-pin{color:var(--amber)}.task-deadline-panel{margin-bottom:16px;overflow:hidden}.task-deadline-panel.has-urgent{border-color:#ff3b3040;box-shadow:0 7px 24px #ff3b3014}.task-deadline-panel.has-urgent .card-header{background:linear-gradient(90deg,#ff3b300f 0%,#fff0 72%)}.task-deadline-summary{color:var(--muted);background:#7676801a;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:700}.task-deadline-summary.urgent{background:var(--danger-soft);color:var(--danger)}.task-deadline-list{max-height:390px;overflow:auto}.task-deadline-group{border-bottom:.5px solid var(--line)}.task-deadline-group:last-child{border-bottom:none}.task-deadline-group-header{cursor:default;color:var(--ink-soft);-webkit-user-select:none;user-select:none;background:#76768008;align-items:center;gap:8px;padding:8px 20px;font-size:13px;font-weight:600;display:flex}.task-deadline-group-header[role=button]{cursor:pointer}.task-deadline-group-header[role=button]:hover{background:#76768012}.task-deadline-group-label{flex:1}.task-deadline-group-count{color:var(--muted);background:#7676801f;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700}.task-deadline-group-toggle{color:var(--muted);font-size:11px}.task-deadline-item{color:inherit;border-bottom:.5px solid var(--line);transition:background .15s var(--ease), border-color .15s;align-items:center;gap:12px;padding:13px 20px;text-decoration:none;display:flex}.task-deadline-item:last-child{border-bottom:none}.task-deadline-item:hover{background:#7676800d}.task-deadline-item.urgent{background:#ff3b300a;border-bottom-color:#ff3b301a}.task-deadline-item.urgent:hover{background:#ff3b3012}.task-deadline-main-link{min-width:0;color:inherit;flex:1;align-items:center;gap:12px;text-decoration:none;display:flex}.task-urge-btn{flex:none;padding:4px 12px;font-size:12px}.task-deadline-indicator{width:26px;height:26px;color:var(--muted);background:#7676801a;border-radius:50%;flex:0 0 26px;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.task-deadline-item.urgent .task-deadline-indicator{color:#fff;background:var(--danger)}.task-deadline-item .main-col{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.task-deadline-item .main-col>strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.task-deadline-item.urgent .main-col>strong{color:var(--danger)}.task-deadline-item .meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;display:flex}.task-deadline-countdown{min-width:116px;color:var(--ink-soft);text-align:right;flex-direction:column;align-items:flex-end;gap:2px;display:flex}.task-deadline-countdown strong{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:14px}.task-deadline-countdown small{color:var(--muted)}.task-deadline-item.urgent .task-deadline-countdown strong,.task-deadline-item.urgent .task-deadline-countdown small{color:var(--danger)}.task-reminder-actions{border-color:#ff3b3040;margin-bottom:16px;overflow:hidden;box-shadow:0 7px 24px #ff3b3014}.task-reminder-actions .card-header{background:linear-gradient(90deg,#ff3b300f 0%,#fff0 72%)}.task-dependency-alert{border-color:#ff3b3040;margin-bottom:16px;overflow:hidden;box-shadow:0 7px 24px #ff3b3014}.task-dependency-alert .card-header{background:linear-gradient(90deg,#ff3b300f 0%,#fff0 72%)}.task-dependency-alert-list{max-height:240px;overflow:auto}.task-dependency-alert-row{color:inherit;border-bottom:.5px solid #ff3b301a;align-items:center;gap:12px;padding:12px 20px;text-decoration:none;display:flex}.task-dependency-alert-row:last-child{border-bottom:none}.task-dependency-alert-row:hover{background:#ff3b300a}.task-dependency-alert-row .main-col{min-width:0}.task-dependency-alert-row strong{color:var(--danger);font-size:14px}.task-dependency-alert-row .meta{color:var(--muted);flex-wrap:wrap;gap:10px;margin-top:4px;font-size:12px;display:flex}.task-reminder-action-row{border-bottom:.5px solid var(--line);align-items:center;gap:16px;padding:13px 20px;display:flex}.task-reminder-action-row:last-child{border-bottom:none}.task-reminder-action-row.active{background:#ff3b3008}.task-reminder-action-row .main-col{flex:1;min-width:0}.task-reminder-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;text-decoration:none;display:block;overflow:hidden}.task-reminder-title:hover{color:var(--primary)}.task-reminder-action-row .meta{color:var(--muted);flex-wrap:wrap;gap:12px;margin-top:5px;font-size:12px;display:flex}.task-reminder-buttons{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.task-reminder-buttons .select{width:auto;min-width:106px;padding:6px 28px 6px 9px;font-size:12px}.check-row{color:var(--ink-soft);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.check-row input{accent-color:var(--primary)}.purge-category-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:14px 0 8px;display:flex}.purge-category-actions{gap:8px;display:flex}.purge-category-card{box-shadow:none}.purge-category-item{border-bottom:.5px solid var(--line);width:100%;color:var(--ink);align-items:center;gap:9px;padding:9px 0;font-size:14px;display:flex}.purge-category-item:last-child{border-bottom:none}.purge-category-item input{flex:none}.purge-category-name{flex:1;min-width:0}.card-help{color:var(--muted);margin:4px 0 0;font-size:12.5px;font-weight:400;line-height:1.5}.stipend-batch-total{color:var(--muted);text-align:right;flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:5px;margin-left:auto;font-size:12px;display:flex}.stipend-batch-total strong{color:var(--ink);font-size:15px}.stipend-recurring-control{color:var(--ink-soft);margin-top:1px;font-weight:600}.stipend-batch-card .form-hint{color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.55}.stipend-payout-groups{gap:12px;margin-top:14px;display:grid}.stipend-payout-group{border:.5px solid var(--line);border-radius:var(--radius);background:#76768009;padding:14px}.stipend-payout-group-header{color:var(--ink);justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;font-size:13.5px;display:flex}.stipend-student-picker-head{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin:11px 0 7px;font-size:12px;display:flex}.stipend-student-picker{grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:7px;display:grid}.stipend-student-option{border:.5px solid var(--line);min-width:0;color:var(--ink-soft);cursor:pointer;border-radius:9px;align-items:center;gap:7px;padding:8px 9px;font-size:12.5px;display:flex}.stipend-student-option:hover{border-color:color-mix(in srgb, var(--primary) 35%, var(--line))}.stipend-student-option.selected{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.stipend-student-option.assigned{color:var(--muted)}.stipend-student-option span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.stipend-student-option small{color:var(--muted)}.stipend-student-option em{color:var(--primary);white-space:nowrap;margin-left:auto;font-size:10.5px;font-style:normal}.task-governance-block{border:.5px solid var(--line);border-radius:var(--radius);background:#7676800a;margin-top:12px;padding:13px 14px}.task-request-row{border-bottom:.5px solid var(--line);align-items:center;gap:12px;padding:12px 0;font-size:13px;display:flex}.task-request-row:last-child{border-bottom:none}.task-request-row .main-col{flex:1;min-width:0}.task-request-status{color:var(--muted);background:#7676801a;border-radius:999px;margin-left:8px;padding:2px 7px;font-size:11px;font-weight:600}.task-request-status.pending{background:var(--warning-soft);color:var(--warning)}.task-request-status.approved{background:var(--success-soft);color:var(--success)}.task-request-status.rejected,.task-request-status.cancelled{background:var(--danger-soft);color:var(--danger)}.task-request-review{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.task-request-review .input{width:190px}.task-dependency-options{border:.5px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:7px 12px;max-height:180px;padding:9px;display:grid;overflow:auto}.task-template-form{margin-bottom:16px}.dependency-risk-row{border-left:3px solid var(--danger)}.dependency-risk-row h4 a{color:var(--ink);text-decoration:none}.dependency-risk-row h4 a:hover{color:var(--primary)}.risk-pill{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:2px 7px;font-weight:700}.risk-pill.warning{background:var(--warning-soft);color:var(--warning)}.risk-pill.danger{background:var(--danger-soft);color:var(--danger)}.dependency-blockers{flex-wrap:wrap;gap:7px;margin-top:9px;display:flex}.dependency-blockers a{color:var(--ink-soft);background:#76768017;border:none;border-radius:8px;padding:5px 8px;font-size:12px;text-decoration:none;transition:background .15s,color .15s}.dependency-blockers a:hover{background:var(--primary-soft);color:var(--primary)}.workload-card{overflow:hidden}.workload-heatmap{border-collapse:separate;border-spacing:4px;width:100%;min-width:760px;padding:12px}.workload-heatmap th{min-width:38px;color:var(--muted);text-align:center;padding:4px;font-size:11px;font-weight:600}.workload-heatmap tbody th{z-index:1;background:var(--paper);min-width:76px;color:var(--ink-soft);text-align:left;position:sticky;left:0}.workload-heatmap td{text-align:center;padding:0}.heat-cell{border:.5px solid var(--line);width:30px;height:30px;color:var(--ink-soft);font-variant-numeric:tabular-nums;background:#7676800f;border-radius:8px;justify-content:center;align-items:center;font-size:11px;font-style:normal;font-weight:800;display:inline-flex}.heat-cell.level-1{color:#0065d1;background:#007aff1a;border-color:#007aff38}.heat-cell.level-2{color:#c07400;background:#ff95001f;border-color:#ff950042}.heat-cell.level-3{color:#d70015;background:#ff3b301a;border-color:#ff3b3042}.heat-cell.overdue{box-shadow:inset 0 0 0 2px var(--danger)}.workload-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;font-size:12px;display:flex}.workload-legend span{align-items:center;gap:5px;display:inline-flex}.workload-legend .heat-cell{width:18px;height:18px}.filter-tabs{border-bottom:.5px solid var(--line-strong);gap:2px;margin-bottom:18px;display:flex}.filter-tabs button{color:var(--ink-soft);transition:color .18s var(--ease), border-color .18s var(--ease);background:0 0;border:none;border-bottom:2.5px solid #0000;margin-bottom:-.5px;padding:9px 15px;font-size:13.5px;font-weight:500}.filter-tabs button:hover{color:var(--primary)}.filter-tabs button.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:700}.timeline-item{border-left:2px solid var(--line-strong);margin-left:6px;padding-bottom:14px;padding-left:20px;position:relative}.timeline-item:before{content:"";background:var(--primary);width:10px;height:10px;box-shadow:0 0 0 3.5px var(--primary-soft);border-radius:50%;position:absolute;top:4px;left:-6px}.timeline-item .t{color:var(--muted);font-size:12px}.timeline-item .c{margin-top:3px;font-size:13px}.login-page{background:linear-gradient(180deg, #5856d621 0, #007aff0d 240px, transparent 440px), var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:22px;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.login-card{z-index:1;width:min(100%,480px);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);animation:modal-in .4s var(--ease);background:#ffffffc7;border:.5px solid #ffffffa6;border-radius:28px;padding:44px 40px 40px;position:relative;overflow:hidden;box-shadow:0 24px 64px -12px #5856d638,0 8px 24px #0000000f}.login-card.profile-completion-card{width:min(100%,760px)}.login-mobile-brand{color:var(--ink);letter-spacing:0;text-align:center;flex-direction:column;align-items:center;gap:14px;margin-bottom:30px;font-size:17px;font-weight:700;display:flex}.login-logo{letter-spacing:0;align-items:center;gap:13px;font-size:17px;font-weight:700;display:flex}.login-form-side{flex-direction:column;justify-content:center;width:100%;display:flex}.login-form-side h2{letter-spacing:0;text-align:center;margin:0 0 6px;font-size:23px;font-weight:800}.login-form-side .sub{color:var(--muted);text-align:center;margin:0 0 30px;font-size:13px}.login-form-side .btn-primary{border-radius:14px;justify-content:center;width:100%;min-height:48px;margin-top:8px;padding:12px;font-size:15px;font-weight:600}.login-form-side form .muted{text-align:center}.login-form-side .login-field,.login-form-side .profile-field,.login-form-side .secret-input-wrap>.login-field,.login-form-side .secret-input-wrap>.profile-field{min-height:52px;padding:13px 16px;font-size:16px}.login-form-side .profile-field{min-height:50px}.login-form-side .flex>.profile-field{flex:1 1 0;min-width:0}.demo-box{border:.5px solid var(--line);border-radius:var(--radius);background:#7676800f;margin-top:26px;padding:15px 16px}.demo-box .demo-title{color:var(--ink-soft);margin-bottom:9px;font-size:12px;font-weight:600}.demo-box .demo-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.demo-box .btn{background:var(--paper);border:.5px solid var(--line);justify-content:flex-start}@media (width<=768px){.sidebar{transition:transform .26s var(--ease);background:#fafafdeb;width:254px;transform:translate(-100%)}.sidebar.open{box-shadow:var(--shadow-lg);transform:none}.sidebar-mask{z-index:110;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000004d;animation:.2s backdrop-in;display:block;position:fixed;inset:0}.main{margin-left:0}.menu-btn{display:inline-flex}.topbar{padding:0 14px}.top-primary-nav{gap:1px;max-width:42vw}.top-primary-link{padding:7px}.top-primary-label{display:none}.form-grid{grid-template-columns:1fr}.content{padding:16px 14px 32px}.modal-backdrop{padding:20px 10px}.stats-grid{gap:12px}.detail-row .k{width:88px}}@keyframes page-in{0%{opacity:.92;transform:translateY(8px)}to{opacity:1;transform:none}}.page-enter{animation:page-in .32s var(--ease)}.page-enter-editor{animation:none;transform:none}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.stats-grid>*,.card-body>.list-item{animation:rise-in .42s var(--ease) backwards}.stats-grid>:nth-child(2),.card-body>.list-item:nth-child(2){animation-delay:50ms}.stats-grid>:nth-child(3),.card-body>.list-item:nth-child(3){animation-delay:.1s}.stats-grid>:nth-child(4),.card-body>.list-item:nth-child(4){animation-delay:.15s}.stats-grid>:nth-child(5),.card-body>.list-item:nth-child(5){animation-delay:.2s}.stats-grid>:nth-child(6),.card-body>.list-item:nth-child(6){animation-delay:.25s}.stats-grid>:nth-child(7),.card-body>.list-item:nth-child(7){animation-delay:.3s}.stats-grid>:nth-child(8),.card-body>.list-item:nth-child(8){animation-delay:.35s}.skeleton{background:#7676801f;border-radius:10px;min-height:8px;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffffb8,#0000);animation:1.3s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}.progress.striped>div{background-image:linear-gradient(45deg,#ffffff38 25%,#0000 25% 50%,#ffffff38 50% 75%,#0000 75%);background-size:14px 14px;animation:.9s linear infinite stripes}@keyframes stripes{to{background-position:14px 0}}input.switch{appearance:none;cursor:pointer;width:46px;height:28px;transition:background .25s var(--ease);background:#78788052;border:none;border-radius:999px;flex-shrink:0;margin:0;position:relative}input.switch:after{content:"";width:24px;height:24px;transition:transform .25s var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 2px 5px #00000038,0 0 1px #00000014}input.switch:checked{background:var(--success)}input.switch:checked:after{transform:translate(18px)}input.switch:focus-visible{box-shadow:var(--focus-ring);outline:none}input.switch:active:after{width:27px}input.switch:checked:active:after{transform:translate(15px)}.switch-row{border-bottom:.5px solid var(--line);cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:11px 0;display:flex}.switch-row:last-child{border-bottom:none}.cal-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-head{text-align:center;color:var(--muted);padding:6px 0 8px;font-size:12px;font-weight:600}.cal-cell{border-radius:var(--radius);min-height:64px;transition:background .15s var(--ease), border-color .15s, transform .1s;background:0 0;border:1px solid #0000;flex-direction:column;align-items:center;gap:4px;padding:6px 4px 5px;display:flex}.cal-cell:hover{background:var(--primary-soft)}.cal-cell:active{transform:scale(.96)}.cal-cell .cal-day{color:var(--ink);font-variant-numeric:tabular-nums;border-radius:50%;width:26px;height:26px;font-size:13px;font-weight:500;line-height:26px}.cal-cell.dim .cal-day{color:var(--muted);opacity:.55}.cal-cell.dim:hover{background:#7676800f}.cal-cell.today .cal-day{background:var(--primary);color:#fff;font-weight:700;box-shadow:0 2px 6px #5856d659}.cal-cell.selected{border-color:var(--primary);background:var(--primary-soft)}.cal-dots{align-items:center;gap:3px;min-height:6px;display:flex}.cal-dots i{border-radius:50%;width:6px;height:6px;display:block}.cal-dots em{color:var(--muted);font-size:10px;font-style:normal;line-height:1}.cal-legend{border-top:.5px solid var(--line);flex-wrap:wrap;gap:14px;margin-top:14px;padding-top:12px;display:flex}.cal-legend-item{color:var(--ink-soft);align-items:center;gap:6px;font-size:12px;display:inline-flex}.cal-legend-item i{border-radius:50%;width:8px;height:8px;display:inline-block}.mobile-tabbar{display:none}@media (width<=768px){.mobile-tabbar{z-index:105;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-top:.5px solid var(--line-strong);padding:4px 6px calc(4px + env(safe-area-inset-bottom));background:#f9f9f9d9;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-tabbar .tab-item{color:var(--muted);border-radius:var(--radius-sm);flex-direction:column;flex:1;align-items:center;gap:2px;padding:5px 0 3px;font-size:11px;transition:color .15s,transform .1s;display:flex}.mobile-tabbar .tab-item:hover{color:var(--primary);text-decoration:none}.mobile-tabbar .tab-item:active{transform:scale(.94)}.mobile-tabbar .tab-item.active{color:var(--primary);font-weight:600}.mobile-tabbar .tab-icon{justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex;position:relative}.mobile-tabbar .tab-badge{background:var(--danger);color:#fff;text-align:center;border-radius:999px;min-width:15px;height:15px;padding:0 4px;font-size:9px;font-weight:700;line-height:15px;position:absolute;top:-4px;right:-11px;box-shadow:0 0 0 2px #f9f9f9e6}.content{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.topbar .avatar{display:none}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-card{padding:14px 15px}.stat-card .value{font-size:22px}.stat-icon{border-radius:11px;width:34px;height:34px}.task-deadline-panel .card-header{flex-wrap:wrap}.task-deadline-panel .card-header .spacer{display:none}.task-deadline-panel .card-header .btn{margin-left:auto}.task-deadline-item{flex-wrap:wrap;align-items:flex-start;padding:13px 15px}.task-deadline-countdown{text-align:left;flex:0 0 calc(100% - 38px);align-items:flex-start;min-width:0;margin-left:38px}.task-reminder-action-row{flex-direction:column;align-items:flex-start}.task-reminder-buttons{justify-content:flex-start;width:100%}.task-request-row{flex-direction:column;align-items:flex-start}.task-request-review{justify-content:flex-start;width:100%}.task-request-review .input{width:100%}.modal-backdrop{align-items:stretch;padding:0}.modal,.modal.wide{width:100%;max-width:none;min-height:100%;animation:sheet-in .3s var(--ease);border:none;border-radius:0;flex-direction:column;display:flex}.modal-body{flex:1}.filter-tabs{white-space:nowrap;scrollbar-width:none;overflow-x:auto}.filter-tabs::-webkit-scrollbar{display:none}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.table-wrap .table{min-width:620px}.cal-layout{grid-template-columns:1fr}.cal-cell{min-height:50px}.toolbar .input,.toolbar .select{flex:120px;min-width:0}}@keyframes sheet-in{0%{opacity:.6;transform:translateY(48px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.page-enter,.stats-grid>*,.card-body>.list-item,.skeleton:after,.progress.striped>div{animation:none!important}*{transition-duration:.01ms!important}}.proj-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-auto-rows:1fr;align-items:stretch;gap:16px;display:grid}.proj-card{background:var(--paper);border:.5px solid var(--line);border-radius:var(--radius-lg);height:100%;min-height:164px;box-shadow:var(--shadow-sm);cursor:pointer;transition:box-shadow .25s var(--ease), transform .25s var(--ease);flex-direction:column;padding:18px 20px;display:flex}.proj-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.proj-card:active{transform:translateY(0)scale(.99)}.proj-card h4{letter-spacing:0;margin:0 0 6px;font-size:15px;font-weight:700}.proj-card .meta{color:var(--muted);flex-wrap:wrap;gap:12px;margin-top:8px;font-size:12px;display:flex}.project-member-grid{grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));align-items:stretch;gap:16px;display:grid}.project-member-grid>.project-member-card{flex-direction:column;min-width:0;height:100%;min-height:224px;margin-top:0;display:flex;overflow:hidden}.project-member-card .card-header{justify-content:space-between}.project-member-card .card-body{flex:1;padding:0}.project-member-row{align-items:center;min-height:76px}.project-member-name{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.project-member-name h4{overflow-wrap:anywhere;min-width:0;margin:0}.project-member-role-tag{background:var(--primary-soft);color:var(--primary);flex:none}.sop-library-grid{grid-auto-rows:minmax(188px,1fr)}.sop-library-card .sop-card-summary{flex:1}.sop-library-card .sop-card-actions{margin-top:auto}.resource-server-card{flex-direction:column;min-height:168px;display:flex}.resource-server-card .resource-card-actions{margin-top:auto}.kb-board{align-items:flex-start;gap:14px;padding-bottom:10px;display:flex;overflow-x:auto}.kb-col{border:.5px solid var(--line);border-radius:var(--radius-lg);background:#7676800f;flex-shrink:0;width:252px;min-width:252px}.kb-col .kb-head{padding:12px 14px 8px}.kb-col .kb-head .kb-title{align-items:center;gap:7px;font-size:13.5px;font-weight:700;display:flex}.kb-col .kb-head .kb-count{color:var(--muted);font-size:11.5px;font-weight:500}.kb-cards{flex-direction:column;gap:9px;min-height:40px;padding:4px 10px 12px;display:flex}.kb-card{background:var(--paper);border:.5px solid var(--line);border-radius:var(--radius);cursor:pointer;box-shadow:var(--shadow-sm);transition:box-shadow .18s var(--ease), border-color .18s, transform .18s var(--ease);padding:11px 13px}.kb-card:hover{box-shadow:var(--shadow);border-color:var(--primary-300);transform:translateY(-1px)}.kb-card:active{transform:scale(.98)}.kb-card .kb-name{font-size:13px;font-weight:600;line-height:1.5}.kb-card .kb-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:7px;font-size:11.5px;display:flex}.kb-prio{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.gantt-wrap{border:.5px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);overflow-x:auto}.gantt-inner{min-width:720px;position:relative}.gantt-months{border-bottom:.5px solid var(--line);height:34px;margin-left:190px;display:flex;position:relative}.gantt-months .gm-tick{color:var(--muted);border-left:.5px solid var(--line);box-sizing:border-box;flex-shrink:0;padding:8px 0 0 6px;font-size:11px}.gantt-months .gm-tick.day{text-align:center;font-variant-numeric:tabular-nums;padding-left:0}.gantt-row{border-bottom:.5px solid var(--line);align-items:center;height:44px;display:flex;position:relative}.gantt-row:last-child{border-bottom:none}.gantt-label{border-right:.5px solid var(--line);background:var(--paper);z-index:3;white-space:nowrap;flex-direction:column;flex-shrink:0;justify-content:center;align-self:stretch;width:190px;padding:0 12px;font-size:12.5px;line-height:1.35;display:flex;position:sticky;left:0;overflow:hidden}.gantt-label>div{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gantt-stage-bar{opacity:.9;border-radius:7px;height:14px;position:absolute;top:15px}.gantt-track{flex:1;height:100%;position:relative}.gantt-bar{background:var(--primary-100);cursor:default;border:none;border-radius:999px;height:22px;position:absolute;top:11px;overflow:hidden}.gantt-bar .fill{background:var(--primary);opacity:.9;border-radius:999px;width:0;position:absolute;top:0;bottom:0;left:0}.gantt-bar.status-open{background:#7676801f}.gantt-bar.status-open .fill{background:var(--muted)}.gantt-bar.status-overdue{background:var(--danger-soft)}.gantt-bar.status-overdue .fill{background:var(--danger)}.gantt-bar.status-review{background:var(--warning-soft)}.gantt-bar.status-review .fill{background:var(--warning)}.gantt-bar.done{background:var(--success-soft)}.gantt-bar.done .fill{background:var(--success)}.gantt-bar .gantt-bar-text{color:var(--ink);white-space:nowrap;z-index:2;align-items:center;padding:0 8px;font-size:11px;display:flex;position:absolute;top:0;bottom:0;left:0;overflow:visible}.gantt-ms{z-index:2;border-radius:3px;width:12px;height:12px;position:absolute;top:50%;transform:translate(-50%,-50%)rotate(45deg)}.gantt-today{background:var(--danger);opacity:.75;z-index:2;width:2px;position:absolute;top:0;bottom:0}.gantt-today:before{content:"今日";color:var(--danger);font-size:10px;font-weight:700;position:absolute;top:2px;left:4px}.gantt-legend{color:var(--ink-soft);flex-wrap:wrap;gap:16px;padding:10px 2px 0;font-size:12px;display:flex}.gantt-legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:5px;display:inline-block}.ring-wrap{flex-shrink:0;width:64px;height:64px;position:relative}.ring-wrap svg{transform:rotate(-90deg)}.ring-wrap .ring-text{color:var(--ink);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;font-size:14px;font-weight:800;display:flex;position:absolute;inset:0}.grad-item{border:.5px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow-sm);margin-bottom:10px;padding:13px 16px}.tag.warning{color:var(--warning);background:var(--warning-soft)}.archive-warning{border-left:3px solid var(--warning);background:var(--warning-soft);color:var(--ink-soft);gap:4px;margin-bottom:18px;padding:13px 15px;display:grid}.archive-warning strong{color:var(--ink)}.archive-upload-grid{gap:10px;display:grid}.archive-upload-row{border-bottom:.5px solid var(--line);grid-template-columns:minmax(150px,.7fr) minmax(180px,1fr) minmax(220px,1.3fr);align-items:center;gap:10px;padding:11px 0;display:grid}.archive-upload-row:last-child{border-bottom:0}.archive-upload-label{gap:3px;min-width:0;display:grid}.archive-file-input{min-width:0;padding:7px 9px}.archive-toolbar>.input{width:min(320px,100%)}.archive-toolbar>.archive-year-input{width:118px}.archive-layout{grid-template-columns:minmax(220px,270px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.archive-student-list{border:.5px solid var(--line);background:var(--paper);border-radius:8px;min-width:0;max-height:min(72vh,760px);overflow-y:auto}.archive-student-row{border:0;border-bottom:.5px solid var(--line);width:100%;min-height:68px;color:var(--ink);text-align:left;background:0 0;border-left:3px solid #0000;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;display:flex}.archive-student-row:last-child{border-bottom:0}.archive-student-row:hover{background:var(--bg)}.archive-student-row.active{border-left-color:var(--primary);background:var(--primary-soft)}.archive-student-main,.archive-student-meta{gap:4px;min-width:0;display:grid}.archive-student-main strong,.archive-student-main span{overflow-wrap:anywhere}.archive-student-main span,.archive-student-meta{color:var(--muted);font-size:12px}.archive-student-meta{text-align:right;flex-shrink:0}.archive-list-empty{text-align:center;padding:22px 16px}.archive-detail-panel{border:.5px solid var(--line);background:var(--paper);border-radius:8px;min-width:0;padding:18px}.archive-detail-head,.archive-section-head,.archive-history-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.archive-detail-head h3,.archive-section-head h4{margin:0}.archive-section{border-top:.5px solid var(--line);margin-top:22px;padding-top:18px}.archive-section-empty{padding:20px 0 4px}.archive-doc-table{min-width:720px}.archive-history-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.archive-history-section{border:.5px solid var(--line);border-radius:8px;min-width:0;overflow:hidden}.archive-history-head{background:var(--bg);border-bottom:.5px solid var(--line);padding:10px 12px}.archive-history-row{border-bottom:.5px solid var(--line);min-width:0;padding:10px 12px}.archive-history-row:last-child{border-bottom:0}.archive-history-title{overflow-wrap:anywhere;font-weight:650}.archive-history-body{color:var(--ink-soft);overflow-wrap:anywhere;margin-top:5px;line-height:1.55}.archive-history-empty{padding:18px 12px}@media (width<=900px){.archive-layout{grid-template-columns:1fr}.archive-student-list{max-height:280px}}@media (width<=600px){.archive-upload-row{grid-template-columns:1fr}.archive-toolbar>.input,.archive-toolbar>.archive-year-input{width:100%}.archive-detail-panel{padding:15px}.archive-detail-head{flex-direction:column}.archive-detail-head>.btn{justify-content:center;width:100%}.archive-history-grid{grid-template-columns:1fr}}.agent-fab{z-index:900;background:linear-gradient(135deg, var(--primary) 0%, #8f8bea 100%);color:#fff;width:52px;height:52px;transition:transform .2s var(--ease), box-shadow .2s;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 22px #5856d661,inset 0 .5px #ffffff4d}.agent-fab:hover{transform:translateY(-2px)scale(1.05);box-shadow:0 12px 28px #5856d675,inset 0 .5px #ffffff4d}.agent-fab:active{transform:scale(.93)}.agent-panel{z-index:901;width:380px;max-width:calc(100vw - 32px);height:540px;max-height:calc(100vh - 130px);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:.5px solid var(--line);box-shadow:var(--shadow-lg);animation:agent-in .32s var(--ease);background:#ffffffeb;border-radius:20px;flex-direction:column;display:flex;position:fixed;bottom:84px;right:22px;overflow:hidden}@keyframes agent-in{0%{opacity:0;transform:translateY(20px)scale(.96)}}.agent-head{background:linear-gradient(135deg, var(--primary) 0%, #7a78ea 100%);color:#fff;border-bottom:.5px solid #ffffff40;align-items:center;gap:10px;padding:13px 16px;display:flex}.agent-head .agent-title{letter-spacing:0;flex:1;font-size:14.5px;font-weight:700}.agent-head button{color:#fff;background:#ffffff2e;border:none;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;transition:background .15s,transform .1s;display:inline-flex}.agent-head button:hover{background:#ffffff52}.agent-head button:active{transform:scale(.9)}.agent-head button.agent-newchat-btn{white-space:nowrap;border-radius:15px;gap:5px;width:auto;padding:0 11px;font-size:12.5px;font-weight:600}.agent-panel.viewport-mobile .agent-newchat-btn{width:30px;padding:0}.agent-panel.viewport-mobile .agent-newchat-btn span{display:none}.agent-guide{background:var(--warning-soft);color:var(--warning);border-bottom:.5px solid var(--line);align-items:center;gap:8px;padding:9px 14px;font-size:12.5px;display:flex}.agent-msgs{flex-direction:column;flex:1;gap:10px;padding:14px 14px 8px;display:flex;overflow-y:auto}.agent-msgs>*{flex-shrink:0}.agent-msg{display:flex}.agent-msg.user{justify-content:flex-end}.agent-msg-stack{flex-direction:column;align-items:flex-start;gap:7px;width:88%;min-width:0;display:flex}.agent-msg.user .agent-msg-stack{align-items:flex-end}.agent-msg .bubble{white-space:pre-wrap;word-break:break-word;border-radius:18px;max-width:82%;padding:9px 13px;font-size:13.5px;line-height:1.65}.agent-msg .agent-msg-stack .bubble{max-width:100%}.agent-msg.user .bubble{background:var(--primary);color:#fff;border-bottom-right-radius:5px;box-shadow:0 1px 3px #5856d640}.agent-msg.assistant .bubble{color:var(--ink);background:#7676801c;border-bottom-left-radius:5px}.agent-message-blocks{flex-direction:column;gap:9px;display:flex;white-space:normal!important}.agent-message-blocks p,.agent-message-blocks h3,.agent-message-blocks h4,.agent-message-blocks h5,.agent-message-blocks ul,.agent-message-blocks ol,.agent-message-blocks blockquote{margin:0}.agent-message-blocks h3{font-size:16px;line-height:1.4}.agent-message-blocks h4{font-size:14.5px;line-height:1.4}.agent-message-blocks h5{font-size:13.5px;line-height:1.4}.agent-message-blocks p,.agent-message-blocks li,.agent-message-blocks blockquote{white-space:pre-wrap;overflow-wrap:anywhere}.agent-message-blocks ul,.agent-message-blocks ol{padding-left:20px}.agent-message-blocks li+li{margin-top:4px}.agent-message-blocks blockquote{border-left:3px solid var(--primary-300);color:var(--muted);background:#ffffffa6;border-radius:0 8px 8px 0;padding:7px 10px}.agent-block-table-wrap{border:.5px solid var(--line);background:var(--paper);border-radius:10px;max-width:100%;overflow-x:auto}.agent-block-table{border-collapse:collapse;width:100%;min-width:320px;font-size:12px}.agent-block-table th,.agent-block-table td{border-bottom:.5px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:anywhere;padding:7px 8px}.agent-block-table th{background:var(--primary-soft);color:var(--primary-active);font-weight:600}.agent-block-table tr:last-child td{border-bottom:none}.agent-block-notice{color:#0057b8;background:#007aff12;border:.5px solid #007aff38;border-radius:10px;gap:3px;padding:8px 10px;display:grid}.agent-block-notice.success{color:#1f8a3d;background:#34c75914;border-color:#34c75942}.agent-block-notice.warning{color:#a86100;background:#ff950014;border-color:#ff950047}.agent-block-notice.error{color:#d70015;background:#ff3b3012;border-color:#ff3b3042}.agent-block-notice.question{color:var(--primary-active);background:#5856d612;border-color:#5856d642}.agent-block-sources{border-top:.5px solid var(--line);padding-top:7px;font-size:12px}.agent-code{color:var(--ink);border:.5px solid var(--line);white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;background:#7676801a;border-radius:10px;max-height:260px;margin:0;padding:10px 12px;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.6;overflow-y:auto}.agent-block-sources ul{margin-top:4px}.agent-block-sources a{color:var(--primary);overflow-wrap:anywhere}.agent-block-data{border:.5px solid var(--line);background:var(--paper);border-radius:10px;padding:9px}.agent-block-action{background:var(--primary-soft);color:var(--primary-active);border:.5px solid #5856d647;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.agent-block-action.executed{color:#1f8a3d;background:#34c75914;border-color:#34c7594d}.agent-block-action.cancelled,.agent-block-action.expired{border-color:var(--line);color:var(--muted);background:#76768012}.agent-block-action.failed{color:#d70015;background:#ff3b3012;border-color:#ff3b3042}.agent-dots{align-items:center;gap:4px;padding:4px 2px;display:inline-flex}.agent-dots i{background:var(--muted);border-radius:50%;width:7px;height:7px;animation:1.2s infinite agent-blink}.agent-dots i:nth-child(2){animation-delay:.2s}.agent-dots i:nth-child(3){animation-delay:.4s}@keyframes agent-blink{0%,80%,to{opacity:.28}40%{opacity:1}}.agent-input{border-top:.5px solid var(--line);align-items:flex-end;gap:8px;padding:11px 12px;display:flex}.agent-input textarea{resize:none;background:#7676801a;border:1px solid #0000;border-radius:12px;flex:1;min-height:38px;max-height:96px;padding:8px 11px;font-size:13.5px;line-height:1.5;transition:background .15s,border-color .15s,box-shadow .15s}.agent-input textarea:focus{background:var(--paper);border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.agent-input .send-btn{background:var(--primary);color:#fff;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:background .15s,transform .1s;display:inline-flex;box-shadow:0 2px 8px #5856d64d}.agent-input .send-btn:hover{background:var(--primary-hover)}.agent-input .send-btn:active{transform:scale(.9)}.agent-input .send-btn:disabled{opacity:.45;cursor:not-allowed}.agent-action-card{border:.5px solid var(--line-strong);border-left:4px solid var(--warning);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow-sm);padding:12px;font-size:12.5px}.agent-action-title{margin-bottom:4px;font-weight:700}.agent-action-card pre{white-space:pre-wrap;word-break:break-word;background:#76768012;border-radius:8px;max-height:220px;margin:10px 0;padding:10px;overflow:auto}.agent-action-editor{min-height:190px;margin:10px 0;font-family:ui-monospace,SF Mono,monospace}.agent-starters,.agent-prompt-card{border:.5px solid var(--line);border-radius:var(--radius);background:#7676800d;padding:10px}.agent-prompt-card{border-left:4px solid var(--primary)}.agent-prompt-question{color:var(--ink);margin-bottom:8px;font-size:13px;font-weight:650;line-height:1.55}.agent-prompt-field{background:var(--primary-soft);color:var(--primary);vertical-align:1px;border-radius:999px;margin-right:6px;padding:1px 6px;font-size:11px;font-weight:700;display:inline-block}.agent-prompt-progress{color:var(--muted);margin-right:6px;font-size:11px;font-weight:600;display:inline-block}.agent-prompt-options{flex-wrap:wrap;gap:6px;margin-top:7px;margin-bottom:7px;display:flex}.agent-prompt-options button{max-width:100%;color:var(--ink);text-align:left;background:#7676801a;border:none;border-radius:999px;padding:5px 9px;font-size:12px;line-height:1.35;transition:background .15s,color .15s,transform .1s}.agent-prompt-options button:hover{background:var(--primary-soft);color:var(--primary)}.agent-prompt-options button:active{transform:scale(.96)}.agent-prompt-options button.is-default{box-shadow:inset 0 0 0 1px var(--primary-300);color:var(--primary);background:0 0}.agent-prompt-options button:disabled{opacity:.5;cursor:not-allowed}.agent-capabilities{border:.5px solid var(--line);border-radius:var(--radius);background:var(--paper);overflow:hidden}.agent-capability-toggle{width:100%;color:var(--ink);text-align:left;background:#7676800f;border:none;justify-content:space-between;gap:10px;padding:8px 10px;font-size:12px;display:flex}.agent-capability-toggle span:last-child{color:var(--primary);flex-shrink:0}.agent-capability-body{border-top:.5px solid var(--line);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;max-height:min(320px,48dvh);padding:9px 10px 10px;overflow-y:auto}.agent-capability-title{margin:3px 0 6px;font-size:12px;font-weight:700}.agent-capability-chips{flex-wrap:wrap;gap:5px;margin-bottom:9px;display:flex}.agent-capability-chips button{color:var(--ink);text-align:left;background:#76768017;border:none;border-radius:8px;padding:4px 7px;font-size:11px;line-height:1.35;transition:background .15s,color .15s}.agent-capability-chips button:hover{color:var(--primary);background:var(--primary-soft)}.agent-capability-chips button:disabled{opacity:.5;cursor:not-allowed}.agent-result-card{border:.5px solid var(--line);border-radius:var(--radius);background:var(--paper);width:100%;padding:9px;font-size:11.5px}.agent-result-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;display:flex}.agent-result-head span{color:var(--muted)}.agent-result-summary,.agent-result-item dl{margin:0}.agent-result-summary>div,.agent-result-item dl>div{grid-template-columns:minmax(76px,.8fr) minmax(0,1.6fr);gap:7px;padding:3px 0;display:grid}.agent-result-summary dt,.agent-result-item dt{color:var(--muted)}.agent-result-summary dd,.agent-result-item dd{overflow-wrap:anywhere;min-width:0;margin:0}.agent-result-item{border-top:.5px solid var(--line);padding:7px 0}.agent-result-item>strong{margin-bottom:3px;font-size:12px;display:block}.agent-result-calendar-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:11px;display:flex}.agent-result-tag{background:var(--chip,#78788029);color:var(--text);border-radius:999px;padding:1px 7px}.agent-result-toggle{width:100%;color:var(--primary);background:#76768012;border:none;border-radius:8px;margin-top:5px;padding:6px;font-size:11.5px;transition:background .15s}.agent-result-toggle:hover{background:var(--primary-soft)}.agent-result-details-toggle{border:.5px solid var(--line);color:var(--primary);cursor:pointer;background:0 0;border-radius:8px;align-self:flex-start;margin-top:4px;padding:5px 10px;font-size:12.5px}.agent-result-details-toggle:hover{background:var(--primary-soft)}.ops-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.ops-grid>.card{flex-direction:column;margin-top:0;display:flex}.ops-grid>.card:only-child{grid-column:1/-1}.ops-grid>.card .card-body{flex:1}.ops-row{border-bottom:.5px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:13px;display:flex}.ops-row:last-child{border-bottom:none}.ops-row>span:first-child{min-width:0}.ops-row small{color:var(--muted);margin-top:3px;line-height:1.45;display:block}@media (width<=768px){.agent-panel{width:calc(100vw - 20px);height:min(520px,100vh - 160px);bottom:74px;right:10px}.agent-fab{bottom:74px;right:14px}.kb-col{width:232px;min-width:232px}.gantt-label{width:130px}.gantt-months{margin-left:130px}.ops-grid{grid-template-columns:1fr}}html{-webkit-text-size-adjust:100%}.topbar .title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dashboard-main-grid{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));align-items:stretch;gap:16px;display:grid}.dashboard-main-grid>.card{flex-direction:column;margin-top:0;display:flex}.dashboard-main-grid>.card>.card-body{flex:1}.dashboard-navigation-card{cursor:pointer}.dashboard-navigation-card:focus-visible{outline:3px solid var(--primary-100);outline-offset:2px}.dashboard-date-hero{-webkit-user-select:none;user-select:none;margin-bottom:14px;padding:6px 4px 0}.dashboard-date-hero-weekday{letter-spacing:.08em;color:var(--danger);text-transform:uppercase;font-size:14px;font-weight:600}.dashboard-date-hero-date{letter-spacing:0;color:var(--ink);font-variant-numeric:tabular-nums;margin-top:2px;font-size:clamp(30px,5vw,40px);font-weight:700;line-height:1.12}.dashboard-date-hero-week{color:var(--muted);margin-top:4px;font-size:14px;font-weight:500}.login-error{color:#d70015;overflow-wrap:anywhere;background:#ff3b3012;border:.5px solid #ff3b3040;border-radius:10px;margin-top:12px;padding:10px 12px;font-size:13px;line-height:1.55}@media (width<=768px){.app-shell{min-height:100dvh}.sidebar{width:min(86vw,300px);padding-top:env(safe-area-inset-top)}.topbar{height:calc(56px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);gap:10px}.topbar .title{max-width:18vw;font-size:15px}.topbar-profile{display:block}.topbar-profile-name{display:none}.topbar-profile-menu{left:auto;right:0}.global-search{width:min(300px,42vw);min-width:120px}.content{padding:14px 12px calc(78px + env(safe-area-inset-bottom));min-width:0;max-width:100vw}.card,.card-body,.list-item,.main-col{min-width:0}.card-header{min-width:0;padding:13px 14px}.card-header h3{overflow-wrap:anywhere;min-width:0}.card-body{padding:16px 14px}.list-item{gap:10px;padding:13px 14px}.list-item h4{overflow-wrap:anywhere}.input,.textarea,.select,.agent-input textarea{font-size:16px}.input,.select{min-height:42px}.btn{min-height:40px}.btn-sm{min-height:36px}.toolbar{gap:8px}.toolbar .spacer{display:none}.toolbar>.btn-primary{margin-left:auto}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card{min-width:0;padding:14px 13px}.stat-card .sub{overflow-wrap:anywhere}.dashboard-main-grid{grid-template-columns:minmax(0,1fr);gap:12px}.table-wrap{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}:is(.card-body:has(>table.table),.modal-body:has(>table.table)){overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;overflow-x:auto}.card-body>table.table,.modal-body>table.table{width:max-content;min-width:100%}.modal-backdrop{height:100dvh;min-height:0;overflow:hidden}.modal,.modal.wide{height:100dvh;min-height:0;max-height:100dvh}.modal-header{padding:calc(13px + env(safe-area-inset-top)) 15px 13px;flex:none}.modal-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:18px 14px;overflow:auto}.modal-footer{padding:12px 14px calc(12px + env(safe-area-inset-bottom));flex-wrap:wrap;flex:none}.modal-footer .btn{flex:120px;justify-content:center}.modal.modal-confirm{border-radius:20px;width:calc(100% - 24px);height:auto;min-height:0;max-height:calc(100dvh - 24px);margin:auto}.modal-confirm .modal-body{padding:22px 18px!important}.toast-stack{top:calc(10px + env(safe-area-inset-top));align-items:stretch;left:12px;right:12px}.toast{overflow-wrap:anywhere;width:100%;min-width:0;max-width:none}.cal-layout{gap:12px}.cal-layout>.card:first-child .card-body{padding:12px 8px}.cal-grid{gap:2px}.cal-cell{min-height:48px;padding:5px 2px 4px}.cal-cell .cal-day{width:28px;height:28px;line-height:28px}.cal-legend{gap:8px 12px;margin-top:10px}.cal-side .card-header{flex-wrap:wrap}.cal-side .card-header .spacer{display:none}.cal-side .card-header .btn-primary{flex:1 0 100%;justify-content:center}.agent-panel{top:calc(8px + env(safe-area-inset-top));right:8px;bottom:calc(66px + env(safe-area-inset-bottom));width:auto;max-width:none;height:auto;max-height:none;left:8px}.agent-fab{right:12px;bottom:calc(68px + env(safe-area-inset-bottom))}.agent-guide{flex-wrap:wrap}.agent-guide .btn{margin-left:0!important}.agent-msgs{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0}.agent-capability-body{max-height:min(300px, calc(46dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom)))}.agent-msg-stack{width:94%}.agent-prompt-options button,.agent-capability-chips button{min-height:36px}.agent-input{padding-bottom:max(11px, env(safe-area-inset-bottom));flex:none}.mobile-tabbar .tab-item{justify-content:center;min-height:50px}}@media (width<=430px){.login-page{min-height:100dvh;padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));overflow-y:auto}.login-card{border-radius:22px;max-width:406px;padding:34px 24px 32px}.login-mobile-brand{gap:12px;margin-bottom:24px;font-size:16px}.login-mobile-brand .lab-logo{width:64px;height:64px}.login-form-side .sub{margin-bottom:22px}.content{padding-inline:10px}.card{border-radius:14px}.stat-icon{width:32px;height:32px}.task-deadline-summary{white-space:normal}.task-reminder-buttons .select{font-size:16px}}@media (width<=370px){.topbar{padding-inline:10px}.content{padding-inline:8px}.stat-card{padding-inline:11px}.stat-icon{width:30px;height:30px}.cal-head{font-size:11px}.cal-cell{min-height:45px}}@media (width<=768px) and (height<=600px){.login-page{align-items:flex-start}}.locale-select{width:auto;min-width:104px}.topbar-locale{text-align:center;background-image:none;min-width:76px;height:34px;padding:4px 10px}.secret-input-wrap{width:100%;position:relative}.secret-input-wrap>.input{width:100%;padding-right:46px}.secret-toggle{width:40px;height:38px;color:var(--muted);background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex;position:absolute;top:50%;right:3px;transform:translateY(-50%)}.secret-toggle:hover,.secret-toggle:focus-visible{color:var(--primary);background:var(--primary-soft);box-shadow:none;outline:none}.login-language{z-index:4;color:var(--ink-soft);align-items:center;gap:8px;font-size:12px;display:flex;position:fixed;top:18px;right:20px}.login-language .select{background-color:#ffffffd1;border-color:#fff9}.login-logo .lab-logo{object-fit:contain;background:#fff;border-radius:50%;width:56px;height:56px;box-shadow:0 5px 18px #00000029}.login-mobile-brand .lab-logo{object-fit:contain;background:#fff;border-radius:50%;width:76px;height:76px;box-shadow:0 8px 24px #5856d633,0 0 0 .5px #0000000a}.page-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.page-heading h2{letter-spacing:0;margin:0 0 5px;font-size:22px;font-weight:700}.page-heading p{margin:0}.tabs{background:#7676801a;border:none;border-radius:10px;gap:2px;margin-bottom:16px;padding:2px;display:inline-flex}.tabs>button{color:var(--ink-soft);min-height:32px;transition:background .2s var(--ease), color .2s var(--ease), box-shadow .2s var(--ease);background:0 0;border:0;border-radius:8px;padding:5px 15px;font-size:13px;font-weight:500}.tabs>button.active{color:var(--ink);background:var(--paper);font-weight:600;box-shadow:0 1px 4px #0000001a,0 .5px 1px #0000000f}.release-card+.release-card{margin-top:14px}.release-card .card-header>div{min-width:0}.release-card p{margin:0;line-height:1.7}.release-changes{margin:14px 0 0;padding-left:20px;line-height:1.75}.log-filters{margin-bottom:16px}.log-filters .toolbar{margin:0}.log-filters .toolbar .input{flex:160px;min-width:130px}.log-filters .toolbar .select{min-width:140px}.system-log-table{min-width:1060px}.system-log-table .nowrap{white-space:nowrap}.system-log-table .log-summary{overflow-wrap:anywhere;max-width:380px}.log-outcome.success,.tag.success{color:var(--success);background:var(--success-soft)}.log-outcome.failure,.tag.danger{color:var(--danger);background:var(--danger-soft)}.users-toolbar>.input{width:min(260px,100%)}.users-toolbar>.select{width:150px}.users-toolbar>.users-entry-year{width:118px}.user-status.active{color:var(--success);background:var(--success-soft)}.user-status.disabled{color:var(--muted);background:var(--navy-50)}.user-status.graduated{color:var(--info);background:var(--info-soft)}.user-status.pending{color:var(--warning);background:var(--warning-soft)}.form-checkbox{padding-top:8px;margin:0!important;font-weight:400!important}.capability-switches{gap:6px;min-width:160px;display:grid}.capability-switch{color:var(--ink-soft);white-space:nowrap;align-items:center;gap:7px;font-size:12px;display:flex}.member-picker{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;max-height:260px;padding:2px;display:grid;overflow:auto}.member-picker-item{border:.5px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);grid-template-columns:auto 1fr;align-items:center;column-gap:8px;padding:9px 10px;display:grid}.member-picker-item small{color:var(--muted);grid-column:2}.cohort-member-list{border-top:.5px solid var(--line)}.cohort-member-row{border-bottom:.5px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:11px 2px;display:flex}.topic-groups-toolbar .input{width:min(320px,100%)}.topic-group-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:16px;display:grid}.topic-group-card{background:var(--paper);border:.5px solid var(--line);min-width:0;min-height:210px;box-shadow:var(--shadow-sm);transition:box-shadow .2s var(--ease), transform .2s var(--ease);border-radius:8px;flex-direction:column;padding:18px;display:flex}.topic-group-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.topic-group-card-clickable{cursor:pointer}.research-intro{background:var(--paper);border:.5px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:16px 18px;display:flex}.research-intro-text{flex:1;gap:4px;min-width:min(100%,420px);display:grid}.research-intro-text strong{letter-spacing:0;font-size:15px}.research-intro-text span{color:var(--ink-soft);font-size:13px;line-height:1.7}.research-intro-cta{border-radius:12px;flex-shrink:0;min-height:44px;padding:10px 18px;font-weight:600}.topic-group-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.topic-group-card-title{min-width:0;color:var(--ink);overflow-wrap:anywhere;letter-spacing:0;font-size:17px;font-weight:700;line-height:1.35}.topic-group-card-summary{color:var(--ink-soft);overflow-wrap:anywhere;flex:1;margin:14px 0;line-height:1.75}.topic-group-card-meta{color:var(--muted);flex-wrap:wrap;gap:8px 14px;font-size:12px;display:flex}.topic-group-card-actions{gap:8px;margin-top:16px;display:flex}.topic-group-detail-head{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:14px;display:flex}.topic-group-detail-head h2{letter-spacing:0;overflow-wrap:anywhere;margin:8px 0 10px;font-size:25px}.topic-group-detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.topic-group-summary{color:var(--ink-soft);margin:0 0 18px;font-size:15px}.topic-group-intro{border-top:.5px solid var(--line);border-bottom:.5px solid var(--line);padding:18px 0 22px}.topic-group-intro h3{letter-spacing:0;margin:0 0 10px;font-size:16px}.topic-group-intro>div{white-space:pre-wrap;overflow-wrap:anywhere;max-width:900px;line-height:1.85}.topic-group-locked{background:var(--paper);border:.5px solid var(--line);color:var(--ink-soft);border-radius:8px;flex-direction:column;gap:4px;margin-top:22px;padding:18px 20px;display:flex}.topic-group-tabs{margin-top:22px}.topic-group-tabs button{align-items:center;gap:6px;display:inline-flex}.topic-group-tab-count{background:var(--navy-50);min-width:20px;height:20px;color:var(--ink-soft);font-variant-numeric:tabular-nums;border-radius:10px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;display:inline-flex}.topic-group-content-panel{background:var(--paper);border:.5px solid var(--line);border-radius:8px;min-height:220px;overflow:hidden}.topic-group-content-list{padding:0 18px}.topic-group-content-row{border-bottom:.5px solid var(--line);align-items:center;gap:14px;min-width:0;padding:15px 0;display:flex}.topic-group-content-row:last-child{border-bottom:0}.topic-group-content-main{flex:1;min-width:0}.topic-group-content-main strong{overflow-wrap:anywhere;letter-spacing:0;display:block}.topic-group-clamp{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.topic-group-project-progress-list{padding:0 18px}.topic-group-project-progress{border-bottom:.5px solid var(--line);padding:16px 0}.topic-group-project-progress:last-child{border-bottom:0}.topic-group-project-progress-head{align-items:flex-start;gap:12px;display:flex}.topic-group-module-link{justify-content:flex-end;margin-top:12px;display:flex}.topic-group-member-add{border-bottom:.5px solid var(--line);grid-template-columns:minmax(180px,1fr) 130px auto;gap:8px;padding:16px;display:grid}@media (width<=700px){.topic-group-detail-head{flex-direction:column}.topic-group-detail-actions{justify-content:flex-start;width:100%}.topic-group-member-add{grid-template-columns:1fr}.topic-group-content-row{flex-wrap:wrap;align-items:flex-start}}.import-description{margin-top:0;line-height:1.7}.import-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.import-file-button{position:relative;overflow:hidden}.import-file-button input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.import-file-name{color:var(--ink-soft);overflow-wrap:anywhere;background:#76768014;border-radius:10px;margin-top:12px;padding:9px 12px}.import-preview{margin-top:20px}.import-preview h4{margin:0 0 10px}.import-summary{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.import-ready{background:var(--success-soft);color:var(--success);border-radius:10px;margin-top:10px;padding:10px 12px}.import-table-wrap{border:.5px solid var(--line);border-radius:12px;max-height:min(44vh,420px);margin-top:12px;overflow:auto}.import-table-wrap .table{min-width:880px}.import-row-error{background:var(--danger-soft)}.masked-email{overflow-wrap:anywhere;max-width:220px}.activation-page{background:radial-gradient(circle at 15% 20%, #5856d624, transparent 38%), radial-gradient(circle at 88% 85%, #007aff1a, transparent 40%), var(--bg);place-items:center;min-height:100dvh;padding:24px;display:grid}.activation-card{width:min(100%,560px);overflow:hidden}.activation-brand{background:linear-gradient(135deg, var(--primary-active), var(--info));color:#fff;align-items:center;gap:12px;min-height:72px;padding:12px 18px;font-weight:750;display:flex}.activation-brand img{object-fit:contain;background:#fff;border-radius:50%;width:50px;height:50px}.activation-brand .locale-select{margin-left:auto}.activation-card h1{letter-spacing:0;margin:0 0 8px;font-size:22px}.activation-card p{margin:0 0 20px;line-height:1.7}.activation-submit{justify-content:center;width:100%;margin-top:8px}.agent-panel.docked{border-block:0;min-width:360px;max-width:640px;height:100dvh;max-height:none;animation:agent-dock-in .24s var(--ease);border-right:0;border-radius:0;inset:0 0 0 auto}@keyframes agent-dock-in{0%{opacity:0;transform:translate(24px)}}.agent-panel.floating{min-width:360px;min-height:420px}.agent-panel.floating.viewport-medium{resize:both;width:min(480px,100vw - 40px);max-width:min(680px,100vw - 24px);height:min(640px,100dvh - 120px);max-height:calc(100dvh - 92px)}.agent-resizer{z-index:5;cursor:col-resize;touch-action:none;width:10px;position:absolute;top:0;bottom:0;left:-5px}.agent-resizer:after{content:"";background:var(--line-strong);border-radius:2px;width:2px;min-height:40px;position:absolute;top:45%;bottom:45%;left:4px}.agent-resizer:hover:after,.agent-resizer:focus-visible:after{background:var(--primary)}.agent-head button.active{background:#ffffff57}.agent-fab.hidden-when-docked{display:none}body.agent-resizing,body.agent-resizing *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}@media (width<=1199px){.app-shell.has-agent-dock .main{margin-right:0}}@media (width<=768px){.topbar-logo{width:30px;height:30px}.sidebar-collapse-btn,.topbar-language-label{display:none}.topbar-temporary-files{width:36px;min-width:36px;padding-inline:7px}.topbar-temporary-files>span{display:none}.topbar-language{gap:0}.topbar-locale{min-width:64px;max-width:72px}.login-language{position:absolute;top:12px;right:14px}.secret-toggle{width:44px;min-height:42px}.users-toolbar>.input,.users-toolbar>.select{width:100%}.users-toolbar>.btn{flex:132px;justify-content:center}.page-heading h2{font-size:19px}.log-filters .toolbar>*{flex-basis:100%;width:100%}.activation-page{padding:0}.activation-card{border:0;border-radius:0;width:100%;min-height:100dvh}.activation-brand{padding-top:max(12px, env(safe-area-inset-top))}.agent-panel.viewport-mobile{resize:none;border:0;border-radius:0;width:100vw;min-width:0;max-width:none;height:100dvh;min-height:0;max-height:none;inset:0}.agent-panel.viewport-mobile .agent-head{padding-top:max(13px, env(safe-area-inset-top))}.agent-panel.viewport-mobile .agent-input{padding-bottom:max(11px, env(safe-area-inset-bottom))}.agent-fab.open{display:none}}@media (width<=430px){.topbar-logo{display:none}.topbar{gap:7px}}.docs-workspace,.feedback-workspace{border:.5px solid var(--line-strong);background:var(--paper);border-radius:8px;grid-template-columns:minmax(250px,320px) minmax(0,1fr);min-height:calc(100dvh - 110px);display:grid;overflow:hidden}.docs-directory,.feedback-inbox{border-right:.5px solid var(--line-strong);background:#f8f8fb;min-width:0}.docs-directory-toolbar,.feedback-toolbar{border-bottom:.5px solid var(--line);background:#ffffffd1;gap:8px;padding:14px;display:grid}.feedback-toolbar{grid-template-columns:minmax(0,1fr) 130px 120px}.feedback-toolbar .btn{grid-column:1/-1;justify-content:center}.docs-tree,.feedback-list{max-height:calc(100dvh - 226px);overflow-y:auto}.docs-tree-group{padding:12px 8px 4px}.docs-tree-group h3{color:var(--muted);text-transform:uppercase;margin:0 8px 6px;font-size:11px;font-weight:700}.docs-tree-item,.feedback-list-item{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:6px;transition:background .15s,color .15s}.docs-tree-item{gap:2px;padding:9px 10px;display:grid}.docs-tree-item span{overflow-wrap:anywhere}.docs-tree-item small,.feedback-list-item small{color:var(--muted);font-size:11px}.docs-tree-item:hover,.feedback-list-item:hover{background:#3c3c430f}.docs-tree-item.active,.feedback-list-item.active{background:var(--primary-soft);color:var(--primary-active)}.docs-reader,.feedback-detail{min-width:0;max-height:calc(100dvh - 110px);padding:clamp(22px,4vw,52px);overflow-y:auto}.docs-reader-head,.feedback-detail-head{border-bottom:.5px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:20px;display:flex}.docs-reader-head h1,.feedback-detail-head h1{overflow-wrap:anywhere;margin:5px 0 8px;font-size:clamp(23px,3vw,32px);line-height:1.25}.docs-category-label,.feedback-reply-label{color:#3d6b57;text-transform:uppercase;font-size:12px;font-weight:700}.docs-editor{min-height:420px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.safe-markdown{color:var(--ink-soft);overflow-wrap:anywhere;padding-top:18px;line-height:1.78}.safe-markdown h1,.safe-markdown h2,.safe-markdown h3,.safe-markdown h4,.safe-markdown h5,.safe-markdown h6{color:var(--ink);line-height:1.35}.safe-markdown h1{margin:28px 0 12px;font-size:26px}.safe-markdown h2{margin:30px 0 10px;font-size:21px}.safe-markdown h3{margin:24px 0 8px;font-size:17px}.safe-markdown h4,.safe-markdown h5,.safe-markdown h6{margin:20px 0 8px;font-size:15px}.safe-markdown p{margin:0 0 14px}.safe-markdown ul,.safe-markdown ol{margin:0 0 16px;padding-left:24px}.safe-markdown li{margin:5px 0}.safe-markdown blockquote{color:#3f4f56;background:#f3f7f8;border-left:3px solid #6c8aa5;margin:16px 0;padding:10px 14px}.safe-markdown pre{color:#f7f9fb;background:#1f2933;border-radius:6px;max-width:100%;margin:16px 0;padding:14px;overflow-x:auto}.safe-markdown code{background:#3c3c4314;border-radius:4px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.92em}.safe-markdown pre code{color:inherit;background:0 0;padding:0}.safe-markdown hr{border:0;border-top:.5px solid var(--line-strong);margin:24px 0}.feedback-list-item{border-bottom:.5px solid var(--line);border-radius:0;gap:5px;padding:12px 14px;display:grid}.feedback-list-title{overflow-wrap:anywhere;font-weight:650}.feedback-list-meta{color:var(--muted);flex-wrap:wrap;gap:8px;font-size:12px;display:flex}.feedback-status-select{flex-shrink:0;width:140px}.feedback-message,.feedback-reply-view{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:20px;line-height:1.75}.feedback-message{color:var(--ink)}.feedback-reply-view{border-left:3px solid var(--success);background:#f2f8f4;padding:16px}.feedback-reply-view small{color:var(--muted);margin-top:10px;display:block}.feedback-reply-editor{border-top:.5px solid var(--line);margin-top:24px;padding-top:18px}.feedback-reply-editor .textarea{min-height:150px}.feedback-reply-editor .flex{justify-content:flex-end}.feedback-compose{min-height:220px}@media (width<=900px){.docs-workspace,.feedback-workspace{grid-template-columns:1fr;min-height:0;overflow:visible}.docs-directory,.feedback-inbox{border-right:0;border-bottom:.5px solid var(--line-strong)}.docs-tree,.feedback-list{max-height:320px}.docs-reader,.feedback-detail{min-height:420px;max-height:none;padding:24px 20px}}@media (width<=600px){.feedback-toolbar{grid-template-columns:1fr 1fr}.feedback-toolbar .input{grid-column:1/-1}.docs-reader-head,.feedback-detail-head{flex-direction:column}.docs-reader-head>.flex,.feedback-status-select{width:100%}.docs-reader-head .btn{flex:1}}.training-student-list,.mentoring-log-list{gap:16px;display:grid}.training-student{overflow:hidden}.training-student-head,.mentoring-log-head{align-items:flex-start}.training-progress-summary{font-variant-numeric:tabular-nums;justify-items:end;gap:2px;display:grid}.training-progress-summary strong{color:var(--primary);font-size:21px}.training-progress-summary span{color:var(--muted);font-size:12px}.training-stage-grid{grid-template-columns:repeat(4,minmax(0,1fr));min-height:190px;display:grid}.training-stage{border-right:.5px solid var(--line);background:#fff;align-items:flex-start;gap:10px;min-width:0;padding:18px 14px 16px;display:flex;position:relative}.training-stage:last-child{border-right:0}.training-stage:after{content:"";background:var(--line-strong);z-index:0;height:2px;position:absolute;top:31px;left:38px;right:-7px}.training-stage:last-child:after{display:none}.training-stage.status-completed:after{background:var(--success)}.training-stage-index{z-index:1;border:2px solid var(--line-strong);width:28px;height:28px;color:var(--muted);background:#fff;border-radius:50%;flex:0 0 28px;place-items:center;font-size:12px;font-weight:800;display:grid;position:relative}.status-completed .training-stage-index{border-color:var(--success);background:var(--success);color:#fff}.status-overdue .training-stage-index{border-color:var(--danger);background:var(--danger);color:#fff}.status-pending .training-stage-index{border-color:var(--primary);color:var(--primary)}.training-stage-main{z-index:1;gap:8px;min-width:0;padding-top:2px;display:grid;position:relative}.training-stage-title{flex-wrap:wrap;align-items:center;gap:6px;min-height:26px;display:flex}.training-stage-title strong{overflow-wrap:anywhere}.training-stage-notes{color:var(--ink-soft);white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.55}.training-status.status-completed{color:var(--success);background:var(--success-soft)}.training-status.status-overdue{color:var(--danger);background:var(--danger-soft)}.training-status.status-pending{color:var(--primary);background:var(--primary-soft)}.training-status.status-skipped,.training-status.status-not_scheduled{color:var(--muted);background:var(--navy-50)}.training-edit{z-index:1;position:absolute;bottom:10px;right:10px}.training-danger{color:var(--danger)!important}.mentoring-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.mentoring-date{font-size:18px!important}.mentoring-date-label{color:var(--primary);font-size:12px;font-weight:750}.mentoring-section{border-top:.5px solid var(--line);padding:18px 20px}.mentoring-section-label{color:var(--muted);text-transform:uppercase;margin-bottom:7px;font-size:12px;font-weight:700}.mentoring-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.72}.mentoring-actions{border-left:3px solid var(--primary);background:#f5f8fb}.mentoring-next{border-top:.5px solid var(--line);color:var(--ink-soft);padding:12px 20px;font-size:13px}.mentoring-editor{min-height:190px}@media (width<=980px){.training-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.training-stage:nth-child(2){border-right:0}.training-stage:nth-child(-n+2){border-bottom:.5px solid var(--line)}.training-stage:nth-child(2):after{display:none}}@media (width<=600px){.training-stage-grid,.mentoring-stats{grid-template-columns:1fr}.training-stage{border-right:0;border-bottom:.5px solid var(--line);min-height:132px}.training-stage:last-child{border-bottom:0}.training-stage:after{width:2px;height:auto;inset:45px auto -8px 27px}.training-stage:nth-child(2):after{display:block}.training-stage:last-child:after{display:none}.training-student-head,.mentoring-log-head{flex-direction:column}.training-progress-summary{justify-items:start}.mentoring-log-head>.flex{justify-content:space-between;width:100%}}.rotation-workspace{gap:18px;display:grid}.rotation-editor,.skill-editor{border:.5px solid var(--line);background:var(--paper);box-shadow:var(--shadow-sm);border-radius:8px;padding:18px 20px}.rotation-editor-head,.skill-editor-head,.academic-group-title{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.rotation-editor-head h3,.skill-editor-head h3{margin:0 0 5px;font-size:16px}.rotation-editor-head p,.skill-editor-head p{margin:0}.rotation-rule-controls{grid-template-columns:minmax(220px,1fr) minmax(150px,220px);gap:14px;margin-top:16px;display:grid}.rotation-member-list{gap:7px;margin-top:14px;display:grid}.rotation-member-row{border-bottom:.5px solid var(--line);grid-template-columns:28px minmax(0,1fr) 34px 34px 34px;align-items:center;gap:6px;min-height:46px;padding:6px 8px;display:grid}.rotation-member-row:last-child{border-bottom:0}.rotation-member-row small{overflow-wrap:anywhere;margin-top:2px;display:block}.rotation-sequence{background:var(--navy-50);width:24px;height:24px;color:var(--ink-soft);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.btn-icon{width:32px;min-width:32px;padding:0}.rotation-add-row,.skill-custom-row{gap:8px;margin-top:14px;display:flex}.rotation-add-row .select,.skill-custom-row .input{flex:auto;min-width:0}.rotation-table{min-width:760px}.rotation-skipped td{color:var(--muted);background:#7676800d}.rotation-task-card{border-color:var(--primary-100);margin-bottom:16px}.rotation-task-card h3{margin:4px 0;font-size:17px}.rotation-task-card .eyebrow{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.rotation-preview-list{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.badge-muted{color:var(--ink-soft);background:var(--navy-50)}.rotation-queue-editor{border-color:var(--primary-100)}.rotation-queue-editor .rotation-member-row{grid-template-columns:28px minmax(0,1fr) 34px 34px 34px}.rotation-member-index{background:var(--primary-soft);width:24px;height:24px;color:var(--primary);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.academic-overview-head,.skill-matrix-head{align-items:flex-end}.academic-filters{gap:8px;display:flex}.academic-filters .select{min-width:140px}.academic-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.academic-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;margin-bottom:16px;display:grid}.academic-chart-grid>.academic-chart-panel{flex-direction:column;min-width:0;margin-top:0;display:flex}.academic-chart-panel:last-child{grid-column:1/-1}.academic-chart-body{flex:1 0 310px;height:310px;padding:8px 12px 14px}.academic-group-list{display:grid}.academic-group-block{border-top:.5px solid var(--line);padding:18px 20px}.academic-group-block:first-child{border-top:0}.academic-group-title{align-items:center;margin-bottom:10px}.academic-detail-table{min-width:680px}.skill-matrix-head>.input{width:min(300px,100%)}.skill-preset-list,.skill-selected-list{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.skill-preset-toggle{border:.5px solid var(--line-strong);background:var(--paper);min-height:34px;color:var(--ink-soft);border-radius:7px;padding:6px 11px;font-size:13px}.skill-preset-toggle.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);font-weight:650}.skill-selected-tag{border:.5px solid var(--line);background:var(--navy-50);border-radius:7px;align-items:center;gap:6px;min-height:30px;padding:4px 6px 4px 10px;font-size:12px;display:inline-flex}.skill-selected-tag button{width:22px;height:22px;color:var(--muted);background:0 0;border:0;border-radius:50%;padding:0}.skill-matrix-panel{margin-top:16px}.skill-matrix-scroll{max-height:68vh}.skill-matrix-table{min-width:max-content}.skill-matrix-table th{z-index:2;background:var(--paper);position:sticky;top:0}.skill-name-column{z-index:1;width:160px;min-width:160px;position:sticky;left:0;background:var(--paper)!important}.skill-count-column{text-align:center;width:64px;min-width:64px}.skill-person-column{text-align:center;width:112px;min-width:112px;max-width:112px}.skill-person-column span,.skill-person-column small{overflow-wrap:anywhere;display:block}.skill-person-column small{color:var(--muted);margin-top:3px;font-weight:400}.skill-cell{text-align:center;width:112px;min-width:112px;color:var(--line-strong);font-size:18px}.skill-cell.has-skill{color:var(--success);background:var(--success-soft);font-weight:800}@media (width<=900px){.academic-chart-grid{grid-template-columns:1fr}.academic-chart-panel:last-child{grid-column:auto}.academic-stats{grid-template-columns:repeat(3,minmax(140px,1fr));overflow-x:auto}}@media (width<=600px){.academic-overview-head,.skill-matrix-head,.rotation-editor-head,.skill-editor-head{flex-direction:column;align-items:stretch}.academic-filters{width:100%}.academic-filters .select{flex:1 1 0;min-width:0}.rotation-rule-controls{grid-template-columns:1fr}.rotation-editor,.skill-editor{padding:15px 14px}.rotation-member-row{grid-template-columns:24px minmax(0,1fr) 32px 32px 32px;padding-inline:0}.rotation-add-row,.skill-custom-row{flex-direction:column;align-items:stretch}.academic-chart-body{flex-basis:280px;height:280px;padding-inline:4px}.skill-matrix-head>.input{width:100%}}.finance-overview-head{align-items:flex-end}.finance-filter-panel{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.finance-period-tabs{margin:0}.finance-date-range{align-items:center;gap:7px;display:flex}.finance-date-range .input{width:150px}.finance-overview-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.finance-overview-stats .value{overflow-wrap:anywhere;font-size:22px}.finance-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.finance-chart-body{height:300px;padding:8px 10px 14px}.finance-table-panel{margin-bottom:16px}.finance-progress-cell{font-variant-numeric:tabular-nums;grid-template-columns:minmax(90px,1fr) 48px;align-items:center;gap:8px;min-width:150px;display:grid}.finance-alert-row{background:var(--warning-soft)}.finance-alert-badge{color:var(--warning);background:#d9770621;margin-left:8px}.exports-panel{max-width:760px}.exports-form{grid-template-columns:minmax(240px,2fr) minmax(150px,1fr) auto;align-items:end;gap:14px;display:grid}.exports-form .form-row{min-width:0;margin:0}.exports-command{align-items:flex-end;display:flex}.exports-command .btn{justify-content:center;min-width:112px;min-height:42px}@media (width<=900px){.finance-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-chart-grid{grid-template-columns:1fr}}@media (width<=600px){.finance-overview-head{flex-direction:column;align-items:stretch}.finance-filter-panel{justify-content:stretch;width:100%}.finance-period-tabs{width:100%}.finance-period-tabs button{flex:1}.finance-filter-panel>.select,.finance-filter-panel>.btn{flex:132px}.finance-date-range{width:100%}.finance-date-range .input{flex:1;width:auto;min-width:0}.finance-overview-stats{grid-template-columns:1fr}.finance-chart-body{height:270px;padding-inline:2px}.exports-panel{max-width:none}.exports-form{grid-template-columns:1fr}.exports-command .btn{width:100%}}.workspace-tabs{border:.5px solid var(--line-strong);background:#7676800f;border-radius:12px;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:16px;padding:4px;display:flex}.workspace-tab{min-height:34px;color:var(--ink-soft);white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;padding:7px 13px;font-size:12.5px;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.workspace-tab:hover,.workspace-tab:focus-visible{color:var(--ink);background:#7676801a;outline:none}.workspace-tab.active{color:var(--primary);background:var(--paper);box-shadow:var(--shadow-sm)}.member-directory-table{min-width:780px}.member-directory-person{align-items:center;gap:9px;min-width:150px;display:flex}.member-directory-avatar{object-fit:cover;background:var(--navy-50);border-radius:50%;width:32px;height:32px}.status-dot{vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.simple-finance-bars{gap:12px;margin-top:16px;padding:14px 2px 4px;display:grid}.simple-finance-bar-row{grid-template-columns:66px minmax(120px,1fr) minmax(82px,auto);align-items:center;gap:10px;font-size:12px;display:grid}.simple-finance-bar-label{color:var(--ink-soft)}.simple-finance-bar-track{background:var(--navy-50);border-radius:999px;height:12px;overflow:hidden}.simple-finance-bar-fill{border-radius:inherit;background:linear-gradient(90deg, var(--primary), var(--primary-300));height:100%;display:block}.simple-finance-bar-row strong{text-align:right;font-variant-numeric:tabular-nums}.server-booking-week{margin-bottom:16px;overflow:hidden}.server-booking-week-header{align-items:flex-start}.server-booking-week-header h3{margin-bottom:3px}.server-booking-toolbar,.server-booking-week-nav{align-items:center;gap:8px;display:flex}.server-booking-server-select{min-width:184px}.server-booking-week-nav{border:.5px solid var(--line);background:#7676800e;border-radius:10px;padding:3px}.server-booking-week-nav .btn{min-width:30px;padding-inline:8px}.server-booking-board-toolbar{border-top:.5px solid var(--line);border-bottom:.5px solid var(--line);background:linear-gradient(#76768009,#0000);align-items:center;gap:12px;min-height:42px;padding:9px 14px;font-size:12px;display:flex}.server-booking-board-toolbar strong{color:var(--ink);font-variant-numeric:tabular-nums}.server-booking-selection-state{color:var(--ink-soft)}.server-booking-legend{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;margin-left:auto;display:inline-flex}.server-booking-legend i{border:.5px solid var(--line);border-radius:3px;width:10px;height:10px;display:inline-block}.server-booking-legend .available{background:#7676800f}.server-booking-legend .booked{background:var(--warning-soft);border-color:#b873334d;margin-left:4px}.server-week-scroll{overscroll-behavior:contain;background:var(--paper);max-height:min(68vh,760px);overflow:auto}.server-week-grid{grid-template-columns:72px repeat(var(--week-days), minmax(118px, 1fr));grid-template-rows:46px repeat(var(--week-slots), 24px);border-left:.5px solid var(--line);background:var(--paper);min-width:900px;display:grid}.server-week-time-head,.server-week-day-head,.server-week-time-label,.server-week-slot{border-right:.5px solid var(--line);border-bottom:.5px solid var(--line)}.server-week-time-head,.server-week-day-head{z-index:3;background:#fffffff7;position:sticky;top:0}.server-week-time-head{z-index:5;color:var(--muted);padding:14px 9px;font-size:11px;left:0}.server-week-day-head{color:var(--ink-soft);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:11px;display:flex}.server-week-day-head strong{color:var(--ink);font-size:12px}.server-week-time-label{z-index:2;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;background:#fffffff7;padding:5px 9px;font-size:10px;position:sticky;left:0}.server-week-time-label.hour{color:var(--ink-soft);border-top:.5px solid #3c3c432e;font-weight:700}.server-week-slot{min-width:0;color:var(--ink-soft);text-align:left;cursor:crosshair;background:#76768005;border-top:0;border-left:0;border-radius:0;padding:1px 4px}.server-week-slot.hour{border-top:.5px solid #3c3c432e}.server-week-slot:hover,.server-week-slot:focus-visible{background:var(--primary-50);outline:2px solid var(--primary-100);outline-offset:-2px}.server-week-slot.past{cursor:not-allowed;background:#76768013}.server-week-slot.booked{background:var(--warning-soft);color:var(--warning);cursor:not-allowed}.server-week-slot.booked.pending{background:repeating-linear-gradient(-45deg, var(--warning-soft), var(--warning-soft) 5px, #db9e4a30 5px, #db9e4a30 10px)}.server-week-slot.selected{background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary-300)}.server-week-booking-label{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:650;line-height:1.5;display:block;overflow:hidden}.server-week-loading{grid-column:1/-1;grid-row:2 / span var(--week-slots);pointer-events:none;color:var(--muted);background:#ffffff94;place-items:center;font-size:12px;display:grid}.server-booking-selection-summary{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-size:12px;display:flex}@media (width<=768px){.workspace-tabs{scrollbar-width:thin;flex-wrap:nowrap;overflow-x:auto}.workspace-tab{flex:none;padding-inline:10px}.server-booking-week-header{flex-wrap:wrap}.server-booking-week-header .spacer{display:none}.server-booking-toolbar{flex-wrap:wrap;width:100%}.server-booking-server-select{flex:180px;min-width:0}.server-booking-board-toolbar{flex-wrap:wrap;align-items:flex-start}.server-booking-legend{margin-left:0}.simple-finance-bar-row{grid-template-columns:58px minmax(80px,1fr) minmax(72px,auto);gap:7px}}.topbar,.topbar>*{min-width:0}.topbar .title{flex:0 180px;max-width:180px}.top-primary-nav{flex:0 min(46vw,520px);min-width:0}.global-search{flex:0 min(360px,30vw);width:auto}.topbar .spacer{flex:1 1 0;min-width:0}.topbar .bell,.topbar-temporary-files{flex:none}@media (width<=1199px){.topbar{gap:8px;padding-inline:14px}.topbar .title{flex-basis:140px;max-width:140px}.top-primary-nav{flex:260px;max-width:min(38vw,380px)}.global-search{flex:0 240px;min-width:150px}.topbar-language-label,.topbar-temporary-files>span{display:none}.topbar-temporary-files{width:36px;min-width:36px;padding-inline:7px}.topbar-back>span{display:none}.topbar-back{padding-inline:6px}.topbar-profile-name{max-width:80px}}@media (width<=900px) and (width>=769px){.topbar .title{flex-basis:100px;max-width:100px;font-size:14px}.top-primary-nav{flex:1 1 0;max-width:min(34vw,300px)}.global-search{flex:1 1 0;min-width:140px}.topbar-profile-name{display:none}}@media (width<=768px){.topbar{height:auto;min-height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 10px 6px;flex-wrap:wrap;align-content:center;row-gap:4px}.topbar .title{flex:0 auto;max-width:20vw;font-size:14px}.global-search{flex:1 1 0;width:auto;min-width:120px;max-width:none}.topbar .spacer{display:none}.top-primary-nav{border-top:.5px solid var(--line);flex:0 0 100%;order:10;justify-content:space-around;width:100%;max-width:none;padding:2px 0}.top-primary-link{flex:1 0 auto;justify-content:center;min-width:72px}}@media (width<=600px){.topbar .title{display:none}}html,body,#root{max-width:100%;overflow-x:clip}.app-shell,.main,.content{min-width:0;max-width:100%}@media (width<=1199px){.users-table{table-layout:fixed;width:100%;min-width:0}.users-table th:nth-child(3),.users-table td:nth-child(3),.users-table th:nth-child(6),.users-table td:nth-child(6),.users-table th:nth-child(7),.users-table td:nth-child(7),.users-table th:nth-child(9),.users-table td:nth-child(9),.users-table th:nth-child(10),.users-table td:nth-child(10),.users-table th:nth-child(11),.users-table td:nth-child(11){display:none}.users-table th,.users-table td{overflow-wrap:anywhere}}@media (width<=900px) and (width>=769px){.topbar-profile-name{max-width:64px;font-size:11px;display:inline-block}}@media (width<=768px){.topbar-profile{flex:none}.topbar-profile-trigger{gap:4px;min-width:40px;min-height:34px;padding-inline:3px}.topbar-profile-name{max-width:72px;font-size:11px;display:inline-block}.table-wrap>.table:not(.chemicals-table):not(.member-directory-table):not(.skill-matrix-table):not(.import-table):not(.stipend-dashboard-table){table-layout:fixed;width:100%;min-width:0}.table-wrap>.table:not(.chemicals-table):not(.member-directory-table):not(.skill-matrix-table):not(.import-table):not(.stipend-dashboard-table) th,.table-wrap>.table:not(.chemicals-table):not(.member-directory-table):not(.skill-matrix-table):not(.import-table):not(.stipend-dashboard-table) td{white-space:normal;overflow-wrap:anywhere}}@media (width<=430px){.topbar{gap:4px;padding-inline:8px}.global-search{min-width:104px}.topbar-temporary-files{width:30px;min-width:30px;padding-inline:5px}.topbar-locale{min-width:52px;max-width:56px;padding-inline:6px}.topbar .bell{width:32px;height:32px}.topbar-profile-name{max-width:58px}.topbar-profile-trigger{padding-inline:2px}}@media (width<=370px){.global-search{min-width:96px}.topbar-locale{min-width:50px;max-width:52px}.topbar-profile-name{max-width:52px}}@media (width<=340px){.topbar{gap:2px;padding-inline:6px}.global-search{min-width:88px}.topbar-temporary-files{width:26px;min-width:26px;padding-inline:3px}.topbar-locale{min-width:48px;max-width:50px;padding-inline:4px}.topbar .bell{width:30px;height:30px}.topbar-profile-trigger{min-width:38px}.topbar-profile-name{max-width:46px}}.stipend-heading-actions,.stipend-dashboard-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.stipend-heading-actions .input{width:150px}.stipend-dashboard-controls .filter-tabs{margin:0}.stipend-dashboard-wrap{max-width:100%}.stipend-dashboard-table{min-width:920px}.stipend-dashboard-table th small,.stipend-dashboard-table td small,.stipend-monthly-table td small,.server-access-table td small{color:var(--muted);margin-top:3px;font-size:10.5px;font-weight:400;display:block}.stipend-dashboard-cell{border:.5px solid var(--line);width:100%;min-height:72px;color:var(--ink);text-align:left;cursor:pointer;background:#76768009;border-radius:8px;padding:7px}.stipend-dashboard-cell:not(:disabled):hover,.stipend-dashboard-cell:not(:disabled):focus-visible{border-color:var(--primary-300);background:var(--primary-50);outline:none}.stipend-dashboard-cell:disabled{cursor:default;opacity:.7}.stipend-dashboard-cell strong,.stipend-dashboard-cell span{font-variant-numeric:tabular-nums;display:block}.stipend-dashboard-cell span{color:var(--success);font-size:12px}.stipend-modal-summary{border:.5px solid var(--line);background:var(--primary-50);color:var(--ink-soft);border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.stipend-modal-summary strong{color:var(--ink);font-variant-numeric:tabular-nums}.server-booking-capacity{color:var(--muted);font-variant-numeric:tabular-nums}.server-access-needed{border-bottom:.5px solid var(--line);background:var(--warning-soft);color:var(--ink-soft);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-size:12px;display:flex}.resource-card-capacity{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-size:11px;display:flex}.access-granted{color:var(--success);font-weight:650}.access-missing{color:var(--warning);font-weight:650}.server-guidance-summary{border:.5px solid var(--line);background:#7676800a;border-radius:9px;gap:9px;margin:13px 0;padding:12px 14px;display:grid}.server-guidance-summary p{white-space:pre-wrap;color:var(--ink-soft);margin:3px 0 0;font-size:12px;line-height:1.55}.server-access-page .page-heading{align-items:flex-start}.server-access-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.server-access-reason{white-space:pre-wrap;word-break:break-word;max-width:300px}.server-access-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.server-guidance-editor{gap:10px;display:grid}@media (width<=768px){.stipend-heading-actions{justify-content:flex-start;width:100%}.stipend-heading-actions .input{flex:140px}.stipend-modal-summary{flex-direction:column;align-items:flex-start}.server-booking-capacity{width:100%}.server-access-needed{flex-direction:column;align-items:flex-start}.server-access-stats{grid-template-columns:1fr}}:root{--primary-50:#5856d60e}.table-wrap{border:.5px solid var(--line);border-radius:var(--radius);background:var(--paper);-webkit-overflow-scrolling:touch;overflow:auto hidden}.table .num{text-align:right;font-variant-numeric:tabular-nums}.table th.num{text-align:right}.table tfoot th,.table tfoot td{border-top:1px solid var(--line-strong);font-variant-numeric:tabular-nums;background:#7676800a;border-bottom:none;font-weight:650}.table .tag{letter-spacing:.01em;padding:3px 10px;font-size:11.5px;font-weight:600;line-height:17px}.tag.info{color:var(--info);background:var(--info-soft)}.stipend-dashboard-table thead th{text-align:center}.stipend-dashboard-table thead th:first-child{text-align:left}.stipend-dashboard-table td{text-align:center;padding:8px}.stipend-dashboard-table td:first-child{text-align:left;padding-left:16px}.stipend-dashboard-table tfoot th{text-align:center}.stipend-dashboard-table tfoot th:first-child{text-align:left}.stipend-dashboard-table tfoot th:last-child{text-align:right}.stipend-dashboard-cell{border-radius:var(--radius-sm);text-align:center}.segmented{background:#7676801a;border-radius:10px;gap:2px;max-width:100%;padding:2px;display:inline-flex}.segmented button{color:var(--ink-soft);white-space:nowrap;cursor:pointer;transition:background .18s var(--ease), color .18s, box-shadow .18s;background:0 0;border:none;border-radius:8px;padding:5px 14px;font-size:12.5px;font-weight:500}.segmented button:hover{color:var(--ink)}.segmented button.active{background:var(--paper);color:var(--ink);font-weight:600;box-shadow:0 1px 3px #0000001a,0 .5px 1px #0000000f}.message-list{flex-direction:column;gap:22px;display:flex}.message-card{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:var(--paper);border:none;border-left:3px solid var(--primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow .18s var(--ease), transform .18s var(--ease), background .18s;align-items:flex-start;gap:12px;padding:13px 16px;display:flex}.message-card.kind-cohort{border-left-color:var(--success)}.message-card.kind-broadcast{border-left-color:var(--warning)}.message-card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.message-card:active{transform:scale(.99)}.message-card.unread{background:linear-gradient(var(--info-soft), var(--info-soft)), var(--paper)}.message-avatar{width:36px;height:36px;margin-top:1px;font-size:14px}.message-card-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.message-card-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.message-card-title{text-overflow:ellipsis;white-space:nowrap;letter-spacing:0;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.message-card.unread .message-card-title{font-weight:700}.message-card-time{color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11.5px}.message-card-meta{align-items:center;gap:8px;display:flex}.message-kind-pill{letter-spacing:.02em;background:var(--primary-soft);color:var(--primary);border-radius:999px;align-items:center;padding:1px 8px;font-size:10.5px;font-weight:650;line-height:16px;display:inline-flex}.message-kind-pill.cohort{background:var(--success-soft);color:var(--success)}.message-kind-pill.broadcast{background:var(--warning-soft);color:var(--warning)}.message-card-preview{color:var(--ink-soft);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:12.5px;line-height:1.5;display:-webkit-box;overflow:hidden}.message-unread-dot{background:var(--info);border-radius:50%;flex-shrink:0;width:9px;height:9px;margin-top:7px}@media (width<=768px){.segmented{scrollbar-width:none;overflow-x:auto}.segmented::-webkit-scrollbar{display:none}.message-card{padding:12px 13px}}.discussion-detail-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.discussion-title{letter-spacing:0;flex:1;min-width:200px;margin:0;font-size:18px;font-weight:700}.discussion-floor-list{background:var(--paper);border:.5px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.discussion-floor{border-bottom:.5px solid var(--line);padding:15px 20px}.discussion-floor:last-child{border-bottom:none}.discussion-floor.louzhu-floor{background:linear-gradient(var(--primary-soft), var(--primary-soft)), var(--paper)}.discussion-floor-head{align-items:center;gap:10px;display:flex}.floor-avatar{width:36px;height:36px;font-size:14px}.floor-head-main{min-width:0}.floor-author-row{align-items:center;gap:7px;display:flex}.floor-author{font-size:13.5px;font-weight:600}.louzhu-badge{background:var(--primary-soft);color:var(--primary);letter-spacing:.02em;border-radius:999px;align-items:center;padding:1px 7px;font-size:10.5px;font-weight:700;line-height:15px;display:inline-flex}.floor-time{color:var(--muted);margin-top:1px;font-size:11.5px}.floor-no{color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:auto;font-size:11.5px;font-weight:600}.floor-content{white-space:pre-wrap;overflow-wrap:anywhere;margin:9px 0 0 46px;font-size:14px;line-height:1.75}.floor-actions{margin:6px 0 0 46px}.floor-reply-btn{color:var(--primary);transition:background .15s var(--ease);background:0 0;border:none;border-radius:8px;padding:4px 9px;font-size:12.5px;font-weight:500}.floor-reply-btn:hover{background:var(--primary-soft)}.floor-children{flex-direction:column;gap:8px;margin:10px 0 0 46px;display:flex}.floor-child{border-radius:var(--radius);background:#7676800f;padding:10px 13px}.floor-child-head{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:8px;font-size:12px;display:flex}.floor-child-head strong{color:var(--ink-soft);font-size:12.5px}.floor-quote{color:var(--primary)}.floor-child-head .floor-reply-btn{margin-left:auto;padding:1px 7px;font-size:11.5px}.floor-child-content{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:5px;font-size:13px;line-height:1.7}.discussion-reply-bar{z-index:20;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:.5px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:#ffffffdb;align-items:center;gap:8px;margin-top:14px;padding:10px 12px;display:flex;position:sticky;bottom:0}.discussion-reply-bar .input{flex:1;min-width:0}.reply-target-pill{background:var(--primary-soft);color:var(--primary);white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:4px 6px 4px 11px;font-size:12px;font-weight:600;display:inline-flex}.reply-target-pill button{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:50%;padding:1px 4px;font-size:14px;line-height:1}@media (width<=768px){.floor-content,.floor-actions,.floor-children{margin-left:0}.discussion-floor{padding:13px 15px}.discussion-reply-bar{bottom:calc(64px + env(safe-area-inset-bottom));padding-bottom:calc(10px + env(safe-area-inset-bottom))}}.message-group{flex-direction:column;gap:8px;display:flex}.message-group-title{letter-spacing:.03em;color:var(--muted);align-items:center;gap:10px;padding:0 6px;font-size:12px;font-weight:650;display:flex}.message-group-title:after{content:"";background:var(--line);flex:1;height:.5px}.task-item-done{opacity:.55;filter:saturate(.45);transition:opacity .18s var(--ease), filter .18s var(--ease)}.task-item-done:hover{opacity:.85;filter:none}.task-done-pill{background:var(--success-soft);color:var(--success);letter-spacing:.02em;vertical-align:2px;border-radius:999px;align-items:center;gap:4px;margin-left:8px;padding:1px 8px;font-size:10.5px;font-weight:700;line-height:16px;display:inline-flex}.discussion-card-list{flex-direction:column;gap:10px;display:flex}.discussion-card{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow .18s var(--ease), transform .18s var(--ease), background .18s;border:none;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.discussion-card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.discussion-card:active{transform:scale(.99)}.discussion-card.pinned{background:linear-gradient(var(--warning-soft), var(--warning-soft)), var(--paper)}.discussion-card-avatar{flex-shrink:0;width:38px;height:38px;margin-top:2px;font-size:14.5px}.discussion-card-main{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.discussion-card-top{align-items:center;gap:8px;min-width:0;display:flex}.discussion-card-title{text-overflow:ellipsis;white-space:nowrap;letter-spacing:0;min-width:0;font-size:14.5px;font-weight:650;overflow:hidden}.discussion-flag-pill{letter-spacing:.02em;border-radius:999px;flex-shrink:0;align-items:center;padding:1px 8px;font-size:10.5px;font-weight:700;line-height:16px;display:inline-flex}.discussion-flag-pill.pinned{background:var(--warning-soft);color:var(--warning)}.discussion-card-preview{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;line-height:1.55;display:-webkit-box;overflow:hidden}.discussion-card-meta{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:10px;font-size:11.5px;display:flex}.discussion-card-side{min-width:44px;color:var(--muted);flex-direction:column;flex-shrink:0;align-items:center;gap:2px;padding-top:2px;display:flex}.discussion-card-side .count-num{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:17px;font-weight:700;line-height:1.2}.discussion-card-side .count-label{font-size:10.5px}.discussion-card-actions{flex-shrink:0;align-self:center}@media (width<=768px){.discussion-card{padding:12px 13px}.discussion-card-side{display:none}}.icp-footer{color:var(--muted);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;margin-top:auto;padding:20px 16px 14px;font-size:11.5px;display:flex}.icp-footer .record-link{min-width:0;color:inherit;justify-content:center;align-items:center;gap:5px;text-decoration:none;transition:color .15s;display:inline-flex}.icp-footer .record-link:hover{color:var(--ink-soft)}.icp-footer .record-divider{color:var(--line-strong)}.icp-footer .public-security-record img{object-fit:contain;flex:none;width:16px;height:16px}.login-page .icp-footer{z-index:1;margin-top:0;padding:0 0 4px;position:relative}@media (width<=768px){.main .icp-footer{padding-bottom:calc(66px + env(safe-area-inset-bottom))}}@media (width<=430px){.icp-footer{flex-direction:column;gap:6px}.icp-footer .record-divider{display:none}}.campaign-banner{color:#0057b8;background:#007aff12;border:.5px solid #007aff38;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;display:flex}.campaign-banner strong{color:var(--ink)}.campaign-banner .muted{color:var(--muted)}@media (width<=768px){.campaign-banner{gap:8px;padding:10px 12px}}.clamp-2{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.record-card-list{display:none}.record-card{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:9px;padding:13px 15px;display:flex}.record-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.record-card-head-main{min-width:0}.record-card-title{letter-spacing:0;font-size:14px;font-weight:600;line-height:1.4}.record-card-sub{color:var(--muted);margin-top:2px;font-size:11.5px}.record-card-head .tag{flex-shrink:0}.record-card-rows{flex-direction:column;gap:5px;display:flex}.record-card-row{justify-content:space-between;align-items:baseline;gap:14px;font-size:12.5px;display:flex}.record-card-row .k{color:var(--muted);flex-shrink:0}.record-card-row .v{text-align:right;overflow-wrap:anywhere;min-width:0}.record-card-row .v.num{font-variant-numeric:tabular-nums}.record-card-amount{font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.record-card-actions{flex-wrap:wrap;gap:8px;display:flex}.record-card-actions .btn{flex:110px;justify-content:center}.record-card-hint{color:var(--muted);font-size:11.5px}@media (width<=768px){.record-card-list{flex-direction:column;gap:10px;display:flex}.table-wrap.hide-mobile{display:none}.stipend-dashboard-table{border-collapse:separate;border-spacing:0}.stipend-dashboard-table thead th:first-child,.stipend-dashboard-table tbody td:first-child,.stipend-dashboard-table tfoot th:first-child{z-index:2;background:var(--paper);box-shadow:1px 0 0 var(--line);position:sticky;left:0}.stipend-dashboard-table thead th:first-child{background:#f8f8fafa}.stipend-dashboard-table tfoot th:first-child{background:#f4f4f6fa}.stipend-dashboard-cell{min-height:60px;padding:6px}}.notification-filter{scrollbar-width:none;margin-bottom:12px;overflow-x:auto}.notification-filter::-webkit-scrollbar{display:none}.notification-filter .segmented{width:max-content;min-width:100%;display:flex}.kv-text{overflow-wrap:anywhere;word-break:break-word}.kv-chip-list{flex-wrap:wrap;gap:4px;max-width:100%;display:inline-flex}.kv-chip{max-width:100%;color:var(--ink-soft);white-space:normal;overflow-wrap:anywhere;word-break:break-word;background:#7676801a;border-radius:6px;align-items:baseline;gap:4px;padding:1px 8px;font-size:12px;line-height:18px;display:inline-flex}.kv-chip em{color:var(--ink);font-style:normal;font-weight:600}.kv-chip em:after{content:": "}.kv-chip-more{background:0 0}.structured-kv{gap:4px;margin:8px 0;font-size:12.5px;display:grid}.structured-kv-row{align-items:baseline;gap:10px;min-width:0;display:flex}.structured-kv-row>dt{max-width:45%;color:var(--ink);overflow-wrap:anywhere;word-break:break-word;flex:none;font-weight:600}.structured-kv-row>dd{min-width:0;color:var(--ink-soft);overflow-wrap:anywhere;word-break:break-word;flex:auto;margin:0}.structured-kv-row .structured-kv{border-left:2px solid var(--line);margin:0 0 4px;padding-left:8px}.structured-kv-items{gap:8px;margin:8px 0;display:grid}.structured-kv-item{border:.5px solid var(--line);border-radius:8px;min-width:0;padding:8px 10px}.structured-kv-item-title{margin-bottom:2px;font-size:12px;font-weight:650}.agent-action-payload{background:#76768012;border-radius:8px;max-height:260px;margin:10px 0;padding:10px;overflow:auto}.audit-detail-cell{max-width:420px}.audit-detail-cell .kv-chip-list{gap:3px}@media (width<=768px){.audit-detail-cell{max-width:62vw}.structured-kv-row{flex-direction:column;gap:0}.structured-kv-row>dt{max-width:100%}}.audit-timeline{margin:8px 0 0;padding:0;list-style:none;display:grid}.audit-timeline-item{min-width:0;padding:2px 0 14px 20px;position:relative}.audit-timeline-item:before{content:"";background:var(--navy);width:8px;height:8px;box-shadow:0 0 0 3px var(--navy-50);border-radius:50%;position:absolute;top:8px;left:2px}.audit-timeline-item:after{content:"";background:var(--line-strong);width:1px;position:absolute;top:22px;bottom:0;left:5.5px}.audit-timeline-item:last-child{padding-bottom:4px}.audit-timeline-item:last-child:after{display:none}.audit-timeline-head{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.audit-timeline-action{color:var(--ink);overflow-wrap:anywhere;word-break:break-word;font-size:13.5px;font-weight:650}.audit-timeline-time{color:var(--ink-soft);opacity:.75;font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:11.5px}.audit-timeline-actor{color:var(--ink-soft);margin-top:1px;font-size:12px}.audit-timeline-detail{gap:3px;margin-top:6px;display:grid}.audit-timeline-line{color:var(--ink);overflow-wrap:anywhere;word-break:break-word;font-size:12.5px;line-height:18px}.audit-timeline-line .k{color:var(--ink-soft);opacity:.8;margin-right:4px}.audit-timeline-line .k:after{content:"："}@media (width>=769px){.audit-timeline-item{padding-bottom:16px;padding-left:24px}.audit-timeline-action{font-size:14px}}.toast-alert-backdrop{justify-content:center;align-items:center;display:flex}.toast-alert{text-align:center;flex-direction:column;align-items:center;gap:14px;width:min(420px,100vw - 48px);padding:26px 24px 20px;display:flex}.toast-alert-icon{border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.toast-alert-icon svg{width:24px;height:24px}.toast-alert-error .toast-alert-icon{color:var(--danger,#d33);background:var(--danger-soft,#dd33331f)}.toast-alert-warning .toast-alert-icon{color:var(--warning,#b26a00);background:var(--warning-soft,#b26a0024)}.toast-alert-message{word-break:break-word;white-space:pre-wrap;font-size:15px;line-height:1.65}.toast-alert-actions{justify-content:center;margin-top:4px;display:flex}.toast-alert-actions .btn{min-width:120px}.cdp-dialog{width:min(360px,100vw - 32px);padding:0 0 12px;overflow:hidden}.cdp-dialog .modal-header{padding:16px 20px 4px}.cdp-dialog .modal-header h3{font-size:16px}.cdp-body{padding:8px 16px 0}.cdp-month-nav{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.cdp-month-title{font-size:15px;font-weight:600}.cdp-nav-btn{width:36px;height:36px;min-height:36px;color:var(--accent,#0a84ff);cursor:pointer;background:0 0;border:none;border-radius:50%;font-size:20px;line-height:1}.cdp-nav-btn:hover{background:#7676801f}.cdp-weekdays,.cdp-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.cdp-weekday{text-align:center;color:var(--muted);padding:4px 0;font-size:12px}.cdp-day,.cdp-day-blank{aspect-ratio:1;justify-content:center;align-items:center;min-height:40px;display:flex}.cdp-day{cursor:pointer;color:inherit;background:0 0;border:none;border-radius:50%;font-size:15px}.cdp-day:hover:not(:disabled){background:#76768029}.cdp-day.today{color:var(--accent,#0a84ff);font-weight:700}.cdp-day.selected,.cdp-day.selected:hover:not(:disabled){background:var(--accent,#0a84ff);color:#fff}.cdp-day:disabled{color:var(--muted);opacity:.35;cursor:not-allowed}.cdp-wheels{gap:12px;margin-top:12px;display:flex}.cdp-wheel-col{flex:1;min-width:0}.cdp-wheel-label{text-align:center;color:var(--muted);margin-bottom:4px;font-size:12px}.cdp-wheel{background:#76768014;border-radius:12px;max-height:172px;padding:4px;overflow-y:auto}.cdp-wheel button{cursor:pointer;width:100%;min-height:36px;color:inherit;background:0 0;border:none;border-radius:10px;padding:8px 0;font-size:15px;display:block}.cdp-wheel button:hover{background:#76768029}.cdp-wheel button.selected,.cdp-wheel button.selected:hover{background:var(--accent,#0a84ff);color:#fff}.cdp-shortcuts{justify-content:center;gap:8px;margin-top:12px;display:flex}.cdp-error{color:var(--danger,#d33);text-align:center;min-height:18px;margin-top:6px;font-size:13px}@media (width<=480px){.cdp-dialog{width:calc(100vw - 24px)}.cdp-day,.cdp-day-blank{min-height:44px}}.payout-batch-list{flex-direction:column;gap:12px;display:flex}.payout-batch-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.payout-batch-card.is-done{opacity:.85}.payout-batch-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.payout-batch-head-main{min-width:0}.payout-batch-title{letter-spacing:0;font-size:14px;font-weight:600}.payout-batch-sub{color:var(--muted);margin-top:2px;font-size:11.5px}.payout-batch-head .tag{flex-shrink:0}.payout-batch-table td,.payout-batch-table th{font-size:12.5px}.payout-batch-items{display:none}.payout-batch-foot{justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;display:flex}.payout-batch-docs{flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;display:flex}.payout-batch-docs .k{color:var(--muted)}.payout-batch-complete{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding-top:10px;display:flex}.payout-batch-complete .form-hint{flex-basis:100%;margin:0}.payout-unbatched-title{color:var(--muted);margin:14px 0 8px;font-size:13px}.batch-delegate-bar{background:var(--navy-50);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:center;gap:8px;margin:0 16px 12px;padding:10px 12px;display:flex}.batch-delegate-count{font-size:12.5px;font-weight:600}.batch-delegate-bar .select{min-width:150px}@media (width<=768px){.payout-batch-items{flex-direction:column;gap:6px;display:flex}.payout-batch-item{justify-content:space-between;align-items:baseline;gap:12px;font-size:12.5px;display:flex}.payout-batch-item .n{overflow-wrap:anywhere;min-width:0}.payout-batch-item .n small{color:var(--muted);font-size:11px;display:block}.payout-batch-item .a{font-variant-numeric:tabular-nums;font-weight:700}.batch-delegate-bar{margin:0 12px 10px}}.revision-group-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.revision-group-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:inherit;flex-direction:column;gap:8px;padding:14px 16px;text-decoration:none;transition:box-shadow .15s,transform .15s;display:flex}.revision-group-card:hover{box-shadow:var(--shadow-md,var(--shadow-sm));transform:translateY(-1px)}.revision-group-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.revision-group-card-title{letter-spacing:0;min-width:0;font-size:14.5px;font-weight:600;line-height:1.4}.revision-group-card-head .tag{flex-shrink:0}.revision-group-card-meta{color:var(--muted);font-size:12px}.revision-group-card-latest{flex-direction:column;gap:4px;display:flex}.revision-group-card-comment{color:var(--ink-soft);font-size:12.5px}.revision-member-list{flex-wrap:wrap;gap:8px;display:flex}.revision-member-chip{background:var(--navy-50);border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12.5px;display:inline-flex}.revision-member-chip small{color:var(--muted);font-size:11px}.revision-member-remove{cursor:pointer;color:var(--muted);background:0 0;border:none;padding:0 2px;font-size:14px;line-height:1}.revision-member-remove:hover{color:var(--danger)}.revision-version-tag{background:var(--navy-100,var(--navy-50));color:var(--navy-700,var(--ink-soft));font-variant-numeric:tabular-nums;font-weight:700}.revision-latest-body{flex-direction:column;gap:10px;display:flex}.revision-latest-file{flex-direction:column;gap:3px;font-size:14px;display:flex}.revision-node-comment{background:var(--navy-50);border-radius:var(--radius-lg);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;padding:8px 12px;font-size:13px;line-height:1.6}.revision-composer-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.revision-timeline{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.revision-timeline-item{border-left:2px solid var(--line);flex-direction:column;align-items:flex-start;gap:6px;padding:12px 0 12px 22px;display:flex;position:relative}.revision-timeline-item:before{content:"";background:var(--navy-300,var(--line));border-radius:50%;width:10px;height:10px;position:absolute;top:18px;left:-6px}.revision-timeline-head{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}@media (width<=768px){.revision-group-grid{grid-template-columns:1fr}.revision-composer-row{flex-direction:column;align-items:stretch}}.revision-split-layout{align-items:flex-start;gap:16px;display:flex}.revision-timeline-panel{flex:0 0 300px;min-width:0;max-height:calc(100vh - 180px);position:sticky;top:16px;overflow-y:auto}.revision-detail-panel{flex-direction:column;flex:auto;gap:16px;min-width:0;display:flex}.revision-timeline-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.revision-timeline-entry{border-left:3px solid var(--line);cursor:pointer;flex-direction:column;gap:3px;padding:10px 12px 10px 18px;transition:background .12s,border-color .12s;display:flex;position:relative}.revision-timeline-entry:hover{background:var(--navy-50)}.revision-timeline-entry-active{border-left-color:var(--navy-600,var(--primary,#1d4ed8));background:var(--navy-50)}.revision-timeline-entry-active:before{content:"";background:var(--navy-600,var(--primary,#1d4ed8));width:11px;height:11px;box-shadow:0 0 0 3px var(--paper,#fff);border-radius:50%;position:absolute;top:14px;left:-7px}.revision-timeline-entry-row{flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.revision-timeline-entry-row strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.revision-timeline-download-btn{opacity:.6;flex-shrink:0;padding:2px 8px;font-size:12px;line-height:1.4;transition:opacity .12s}.revision-timeline-entry:hover .revision-timeline-download-btn{opacity:1}.revision-timeline-entry-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.revision-timeline-entry-comment{color:var(--ink-soft);background:var(--bg-alt,#f5f5f7);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word;margin-top:4px;padding:4px 8px;font-size:12px;line-height:1.5}.revision-timeline-upload-btn{width:100%;margin-top:12px}.revision-selected-detail{flex-direction:column;gap:10px;display:flex}.revision-selected-detail-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.revision-selected-file-info{flex-direction:column;gap:4px;font-size:13.5px;display:flex}.revision-selected-file-info strong{font-size:15px}.revision-selected-file-meta{color:var(--muted);flex-wrap:wrap;gap:6px;font-size:12px;display:flex}.revision-selected-actions{flex-wrap:wrap;gap:8px;display:flex}.revision-discussion{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);flex-direction:column;display:flex;overflow:hidden}.revision-discussion-head{border-bottom:1px solid var(--line);background:var(--navy-50);justify-content:space-between;align-items:center;padding:10px 14px;font-size:14px;font-weight:600;display:flex}.revision-discussion-status{color:var(--muted);align-items:center;gap:4px;font-size:11px;font-weight:400;display:flex}.revision-discussion-status-dot{background:var(--success,#34c759);border-radius:50%;width:7px;height:7px}.revision-discussion-status-dot.offline{background:var(--muted)}.revision-discussion-messages{flex-direction:column;flex:auto;gap:8px;min-height:180px;max-height:320px;padding:12px 14px;display:flex;overflow-y:auto}.revision-discussion-msg{border-radius:var(--radius-lg);overflow-wrap:anywhere;white-space:pre-wrap;align-items:flex-start;gap:8px;max-width:80%;padding:7px 11px;font-size:13px;line-height:1.5;display:flex;position:relative}.revision-discussion-msg-body{flex:1;min-width:0}.revision-discussion-msg-mine{background:var(--navy-100,var(--navy-50));border-bottom-right-radius:4px;flex-direction:row-reverse;align-self:flex-end}.revision-discussion-msg-other{background:var(--bg-alt,#f5f5f7);border-bottom-left-radius:4px;align-self:flex-start}.revision-discussion-msg-head{color:var(--muted);align-items:center;gap:6px;margin-bottom:3px;font-size:11px;display:flex}.revision-discussion-msg-name{color:var(--ink-soft);font-weight:600}.revision-discussion-msg-delete{cursor:pointer;color:var(--muted);opacity:0;background:0 0;border:none;padding:0 2px;font-size:11px;transition:opacity .12s}.revision-discussion-msg:hover .revision-discussion-msg-delete{opacity:.7}.revision-discussion-msg-delete:hover{color:var(--danger);opacity:1}.revision-discussion-empty{text-align:center;color:var(--muted);padding:24px 0;font-size:13px}.revision-discussion-input{border-top:1px solid var(--line);align-items:flex-end;gap:8px;padding:10px 14px;display:flex}.revision-discussion-input textarea{resize:none;border:1px solid var(--line);border-radius:var(--radius-md,8px);background:var(--paper);min-height:38px;max-height:120px;color:var(--ink);flex:auto;padding:8px 10px;font-family:inherit;font-size:13px;line-height:1.5}.revision-discussion-input textarea:focus{border-color:var(--navy-500,var(--primary,#1d4ed8));outline:none}.revision-discussion-input-count{color:var(--muted);text-align:right;padding-right:2px;font-size:11px}@media (width<=900px){.revision-split-layout{flex-direction:column}.revision-timeline-panel{flex:none;width:100%;max-height:none;position:static}.revision-detail-panel{width:100%}}.annotation-split-layout{grid-template-columns:minmax(780px,1fr) minmax(300px,380px);align-items:flex-start;gap:16px;display:grid}.annotation-doc-panel{flex-direction:column;min-width:0;display:flex}.annotation-side-panel{flex-direction:column;gap:12px;min-width:0;max-height:calc(100vh - 180px);display:flex;overflow-y:auto}.annotation-doc-content{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-user-select:text;user-select:text;flex:auto;max-width:800px;min-height:400px;margin:0 auto;padding:40px 60px;font-family:Times New Roman,SimSun,serif;font-size:14pt;line-height:1.8;overflow-y:auto}.annotation-doc-content h1,.annotation-doc-content h2,.annotation-doc-content h3,.annotation-doc-content h4{margin:20px 0 10px;font-weight:700;line-height:1.4}.annotation-doc-content h1{text-align:center;font-size:18pt}.annotation-doc-content h2{font-size:16pt}.annotation-doc-content h3{font-size:14pt}.annotation-doc-content h4{font-size:13pt}.annotation-doc-content p{text-indent:2em;margin:6px 0}.annotation-doc-content p:first-child,.annotation-doc-content h1+p,.annotation-doc-content h2+p,.annotation-doc-content h3+p{text-indent:2em}.annotation-doc-content blockquote{border-left:3px solid var(--line);color:var(--ink-soft);margin:10px 20px;padding:8px 16px;font-style:italic}.annotation-doc-content ul,.annotation-doc-content ol{margin:6px 0;padding-left:28px}.annotation-doc-content li{margin:3px 0}.annotation-doc-content strong{font-weight:700}.annotation-doc-content em{font-style:italic}.annotation-doc-content table{border-collapse:collapse;width:100%;margin:12px 0;font-size:12pt}.annotation-doc-content td,.annotation-doc-content th{border:1px solid #999;padding:4px 8px;font-size:14px}.annotation-doc-content img{max-width:100%;height:auto}.annotation-doc-content .docx-content,.annotation-doc-content .docx-wrapper{width:100%;box-shadow:none;background:0 0;padding:0}.annotation-doc-content .docx-wrapper>section.docx{width:100%;box-shadow:none;margin-bottom:16px;padding:0}.annotation-doc-toolbar-row{background:var(--navy-50);border:1px solid var(--line);border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:none;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;display:flex}.annotation-doc-toolbar-row .annotation-doc-title{align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.annotation-doc-toolbar-row .annotation-doc-actions{flex-wrap:wrap;gap:8px;display:flex}.annotation-doc-content-wrap{flex-direction:column;flex:1;min-height:600px;display:flex}.onlyoffice-workspace,.onlyoffice-workspace:hover,.onlyoffice-workspace:active{filter:none;-webkit-backdrop-filter:none;contain:none;overflow:hidden;transform:none}.onlyoffice-workspace>.card-body,.onlyoffice-editor-shell,.onlyoffice-editor-host{min-width:0;min-height:0}.onlyoffice-workspace>.card-body,.onlyoffice-editor-shell{flex-direction:column;display:flex}.onlyoffice-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.onlyoffice-editor-shell{flex:1;position:relative}.onlyoffice-editor-host,#onlyoffice-editor{background:#fff;border:0;min-height:720px;display:block;width:100%!important;height:clamp(720px,100vh - 230px,1120px)!important}:is(.onlyoffice-workspace:fullscreen,.onlyoffice-workspace.onlyoffice-workspace-fullscreen){z-index:10050;background:var(--paper,#fff);border:0;border-radius:0;flex-direction:column;width:100vw;height:100vh;margin:0;display:flex;position:fixed;inset:0}:is(.onlyoffice-workspace:fullscreen>.card-header,.onlyoffice-workspace.onlyoffice-workspace-fullscreen>.card-header){flex:none;padding-block:9px}:is(.onlyoffice-workspace:fullscreen>.card-body,.onlyoffice-workspace.onlyoffice-workspace-fullscreen>.card-body,.onlyoffice-workspace:fullscreen .annotation-doc-content-wrap,.onlyoffice-workspace.onlyoffice-workspace-fullscreen .annotation-doc-content-wrap,.onlyoffice-workspace:fullscreen .onlyoffice-editor-shell,.onlyoffice-workspace.onlyoffice-workspace-fullscreen .onlyoffice-editor-shell){flex-direction:column;flex:auto;height:auto;min-height:0;display:flex}:is(.onlyoffice-workspace:fullscreen #onlyoffice-editor,.onlyoffice-workspace.onlyoffice-workspace-fullscreen #onlyoffice-editor){flex:auto;min-height:0;height:100%!important}body.onlyoffice-fullscreen-open{overflow:hidden}.annotation-toolbar{z-index:9999;background:var(--ink,#1a1a2e);border-radius:8px;gap:4px;padding:4px;animation:.12s annotation-toolbar-in;display:flex;position:fixed;box-shadow:0 4px 16px #00000040}@keyframes annotation-toolbar-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.annotation-toolbar button{color:#fff;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:5px;padding:5px 12px;font-size:12.5px;transition:background .12s}.annotation-toolbar button:hover{background:#fff3}.annotation-highlight{cursor:pointer;border-radius:2px;padding:1px 0;transition:filter .12s}.annotation-highlight:hover{filter:brightness(.92)}.annotation-highlight-accepted{background:#34c7594d;border-bottom:2px solid #34c759}.annotation-highlight-rejected{background:#8e8e9340;border-bottom:2px solid #8e8e93;-webkit-text-decoration:line-through #8e8e9380;text-decoration:line-through #8e8e9380}.annotation-tabs{border-bottom:1px solid var(--line);gap:0;margin-bottom:12px;display:flex}.annotation-tab{cursor:pointer;color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 18px;font-size:14px;font-weight:500;transition:color .12s,border-color .12s}.annotation-tab:hover{color:var(--ink-soft)}.annotation-tab.active{color:var(--navy-600,var(--primary,#1d4ed8));border-bottom-color:var(--navy-600,var(--primary,#1d4ed8))}.annotation-tab-count{color:var(--muted);margin-left:4px;font-size:11px}.annotation-list{flex-direction:column;gap:10px;display:flex}.annotation-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);flex-direction:column;gap:8px;padding:12px 14px;transition:border-color .12s,box-shadow .12s;display:flex}.annotation-card:hover{border-color:var(--navy-300,var(--line));box-shadow:0 2px 8px #0000000f}.annotation-card-head{align-items:center;gap:8px;display:flex}.annotation-card-author{color:var(--ink-soft);flex:1;min-width:0;font-size:13px;font-weight:600}.annotation-card-time{color:var(--muted);white-space:nowrap;font-size:11px}.annotation-card-quote{color:var(--muted);background:var(--bg-alt,#f5f5f7);border-radius:var(--radius-sm);border-left:3px solid var(--line);overflow-wrap:anywhere;padding:6px 10px;font-size:12.5px;font-style:italic;line-height:1.5}.annotation-card-body{color:var(--ink);overflow-wrap:anywhere;white-space:pre-wrap;font-size:13.5px;line-height:1.6}.annotation-card-suggestion{border-radius:var(--radius-sm);overflow-wrap:anywhere;background:#007aff14;border-left:3px solid #007aff;padding:6px 10px;font-size:13.5px;line-height:1.6}.annotation-card-actions{align-items:center;gap:8px;display:flex}.annotation-card-status{border-radius:10px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.annotation-card-status-pending{color:#ff9500;background:#ff950026}.annotation-card-status-accepted{color:#28a745;background:#34c75926}.annotation-card-status-rejected{color:#8e8e93;background:#8e8e9326}.annotation-card-type{border-radius:8px;padding:1px 7px;font-size:11px;font-weight:500}.annotation-card-type-comment{background:var(--navy-50);color:var(--ink-soft)}.annotation-card-type-suggestion{color:#007aff;background:#007aff1a}.annotation-form-overlay{z-index:10000;position:fixed}.annotation-form{z-index:10000;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;gap:10px;width:320px;padding:14px;display:flex;position:fixed;box-shadow:0 8px 32px #00000026}.annotation-form textarea{resize:vertical;border:1px solid var(--line);border-radius:var(--radius-md,8px);background:var(--paper);width:100%;min-height:72px;max-height:200px;color:var(--ink);padding:8px 10px;font-family:inherit;font-size:13px;line-height:1.5}.annotation-form textarea:focus{border-color:var(--navy-500,var(--primary,#1d4ed8));outline:none}.annotation-form-actions{justify-content:flex-end;gap:8px;display:flex}.annotation-empty{text-align:center;color:var(--muted);padding:32px 16px;font-size:13px}.annotation-upload-hint{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.5}@media (width<=900px){.annotation-split-layout{grid-template-columns:minmax(0,1fr)}.annotation-doc-panel{width:100%;max-height:none;position:static}.annotation-side-panel{width:100%;max-height:none}.annotation-doc-content{padding:16px;font-size:14px}.annotation-form{width:calc(100vw - 32px);max-width:320px}}@media (width>=901px) and (width<=1280px){.annotation-split-layout{grid-template-columns:minmax(0,1fr)}.annotation-side-panel{width:100%;max-height:none}}@media (width<=900px){.onlyoffice-editor-host,#onlyoffice-editor{min-height:640px;height:max(640px,100vh - 180px)!important}:is(.onlyoffice-workspace:fullscreen #onlyoffice-editor,.onlyoffice-workspace.onlyoffice-workspace-fullscreen #onlyoffice-editor){min-height:0;height:100%!important}}.collaborative-kind-filter{width:fit-content;margin-bottom:16px}.revision-unread-tag{background:var(--rust);color:#fff;width:fit-content;margin-top:8px}.collaborative-document-body{min-height:640px;padding:0;overflow:hidden}.collaborative-static-preview{background:#eef1f4;min-height:640px;max-height:calc(100vh - 230px);overflow:auto}.document-preview-loading,.document-preview-error,.document-preview-empty{color:var(--ink-soft);text-align:center;padding:24px}.document-preview-error{color:var(--danger,#a32d2d);background:#fff3f2}.docx-static-preview{min-width:0;padding:24px}.docx-static-preview .docx-wrapper{background:0 0;padding:0}.docx-static-preview .docx-wrapper>section.docx{margin:0 auto 20px;box-shadow:0 2px 12px #1f29371f}.document-preview-toolbar{z-index:2;border-bottom:1px solid var(--line);background:var(--paper);align-items:center;gap:8px;min-height:48px;padding:8px 12px;display:flex;position:sticky;top:0}.document-preview-toolbar-spacer{flex:1}.pdf-preview-canvas-wrap{width:100%;min-width:0;padding:24px;display:block;overflow:auto}.pdf-preview-canvas-wrap canvas{background:#fff;max-width:none;margin:0 auto;display:block;box-shadow:0 2px 12px #1f293724}.local-file-preview-page{background:#eef1f5;flex-direction:column;width:100%;min-width:0;height:100%;display:flex}.local-file-preview-header{z-index:5;border-bottom:1px solid var(--line-strong);background:var(--paper);flex:none;justify-content:space-between;align-items:center;gap:16px;min-height:62px;padding:10px 18px;display:flex;position:relative}.local-file-preview-heading{min-width:0;display:grid}.local-file-preview-heading strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.local-file-preview-heading span{color:var(--muted);font-size:12px}.local-file-preview-header>.btn{flex:none}.local-file-preview-body{flex:auto;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:relative;overflow:auto}.local-file-preview-renderer{align-self:stretch;width:100%;min-width:0;min-height:100%}.local-file-preview-waiting{width:100%;min-height:100%;color:var(--ink-soft);text-align:center;place-items:center;padding:28px;display:grid}.local-file-preview-image{object-fit:contain;max-width:100%;max-height:calc(100vh - 63px);margin:auto;display:block}.local-file-preview-document,.local-ooxml-preview,.local-legacy-office-preview{width:100%;min-width:0;min-height:calc(100vh - 63px)}.local-ooxml-preview{height:calc(100vh - 63px);overflow:auto}.local-legacy-office-preview{background:var(--paper);display:block}.local-legacy-office-frame{border:0;border-top:1px solid var(--line);background:var(--paper);width:100%;min-height:60vh;display:block}.local-file-preview-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);width:min(620px,100% - 32px);box-shadow:var(--shadow-sm);margin:32px auto;padding:28px}.local-file-preview-card h2{margin-top:0}.local-file-preview-error{color:var(--danger)}.local-file-preview-page .pdf-preview{background:#eef1f5;min-height:calc(100vh - 63px)}.local-file-preview-page .docx-static-preview{min-height:calc(100vh - 63px);overflow:auto}.local-file-preview-page .docx-wrapper{min-height:100%}a.btn[aria-disabled=true]{cursor:wait;opacity:.45}.onlyoffice-loading-overlay{z-index:3;background:var(--paper);place-items:center;display:grid;position:absolute;inset:0}.collaborative-editor-error{justify-content:center;align-items:center;gap:10px;min-height:52px;display:flex}.collaborative-side-panel{flex-direction:column;min-height:640px;display:flex;overflow:hidden}.collaborative-side-tabs{border-radius:0;flex:none;width:100%}.collaborative-side-tabs button{flex:1}.revision-discussion-connection{border-bottom:1px solid var(--line);padding:8px 12px}.collaborative-side-panel .revision-discussion-messages{flex:auto;min-height:420px;max-height:calc(100vh - 430px);overflow:auto}.collaborative-version-list{flex:auto;min-height:0;padding:12px;overflow:auto}.collaborative-version-item{border-bottom:1px solid var(--line);gap:6px;padding:12px 0;display:grid}.collaborative-version-item>div:first-child,.collaborative-version-actions{align-items:center;gap:8px;display:flex}.collaborative-version-actions{justify-content:flex-end}@media (width<=900px){.collaborative-kind-filter{width:100%}.collaborative-kind-filter button{flex:1}.collaborative-document-body,.collaborative-static-preview,.collaborative-side-panel{min-height:520px}.collaborative-static-preview{max-height:72vh}.docx-static-preview,.pdf-preview-canvas-wrap{padding:10px}.local-file-preview-header{align-items:flex-start;gap:8px;min-height:58px;padding:8px 10px}.local-file-preview-heading span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.local-file-preview-image{max-height:calc(100vh - 59px)}.local-file-preview-document,.local-ooxml-preview,.local-legacy-office-preview,.local-file-preview-page .pdf-preview,.local-file-preview-page .docx-static-preview{min-height:calc(100vh - 59px)}.local-ooxml-preview{height:calc(100vh - 59px)}.local-file-preview-page .docx-wrapper{align-items:flex-start;padding:0!important}.collaborative-side-panel .revision-discussion-messages{min-height:360px;max-height:60vh}}.selected-files-list{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.selected-files-list li{border:1px solid var(--border,#dce1e8);background:var(--surface-soft,#f7f9fb);border-radius:7px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:7px 9px;display:grid}.selected-files-list li>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.selected-files-list li>small{color:var(--text-muted,#667085)}
