:root{--ink:#182525;--muted:#687473;--paper:#f5f4ef;--white:#fffefa;--line:#dde2dc;--navy:#193a39;--navy-2:#244b49;--teal:#2f8176;--teal-soft:#dceee9;--red:#d96352;--red-soft:#f9e4df;--amber:#c99037;--amber-soft:#f6ead3;--green:#3c8a67;--green-soft:#e1f0e8;--shadow:0 18px 48px #1e363117;--paper-bg:#f1ece2;--paper-sheet:#fffdf7;--paper-sheet-warm:#faf3e5;--paper-line:#ded6c8;--paper-line-soft:#ece6dc;--paper-ink:#343b35;--paper-muted:#777267;--paper-moss:#36584d;--paper-moss-soft:#e4ece5;--paper-brass:#ab8250;--paper-brass-soft:#f1e3ca;--paper-clay:#a86e5e;--paper-shadow:0 1px 2px #45361f09, 0 6px 20px -10px #45361f1f;--font-song:"Songti SC", "STSong", SimSun, serif;--font-kai:"Kaiti SC", KaiTi, "STKaiti", serif;--paper-fold:linear-gradient(135deg, transparent 46%, #7b603924 49%, #fffdf6eb 53%, #ece2cd 58%, #f6efdf 100%);--paper-crease:linear-gradient(116deg, transparent 70%, #8b755006 70.5%, #ffffff61 71%, transparent 72%), linear-gradient(24deg, transparent 23%, #8b755005 23.5%, #ffffff42 24%, transparent 25%);--paperclip-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 58'%3E%3Cg fill='none' stroke='%23a58a5c' stroke-width='3.4'%3E%3Crect x='3' y='11' width='16' height='44' rx='8'/%3E%3Crect x='8.5' y='4' width='13' height='36' rx='6.5'/%3E%3C/g%3E%3C/svg%3E");--paperclip-metal-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 58'%3E%3Cdefs%3E%3ClinearGradient id='c1' x1='0' y1='0' x2='1' y2='0'%3E%3Cstop offset='0' stop-color='%23cfbf9c'/%3E%3Cstop offset='.45' stop-color='%23a28c65'/%3E%3Cstop offset='1' stop-color='%23c5b38b'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' stroke='url(%23c1)' stroke-width='2.4'%3E%3Crect x='2.2' y='10' width='14.6' height='45' rx='7.3'/%3E%3Crect x='7.2' y='3' width='12.4' height='39' rx='6.2'/%3E%3C/g%3E%3C/svg%3E");--surface:var(--paper);--surface-raised:var(--white);--surface-sunken:var(--paper-sheet-warm);--text:var(--ink);--text-muted:var(--muted);--border:var(--line);--border-strong:var(--paper-line);--accent:var(--teal);--accent-soft:var(--teal-soft);--accent-ink:var(--navy);--danger:var(--red);--danger-soft:var(--red-soft);--warn:var(--amber);--warn-soft:var(--amber-soft);--ok:var(--green);--ok-soft:var(--green-soft);--focus-ring:0 0 0 3px #2f81762e;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-sm:5px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--font-xs:10px;--font-sm:12px;--font-md:13px;--font-lg:16px;--font-xl:20px;--font-2xl:26px;--shadow-raise:0 1px 2px #45361f0a, 0 6px 18px -12px #45361f2e;--shadow-float:var(--shadow);--topbar-height:92px;--bottombar-height:0px}@media (width<=760px){:root{--topbar-height:76px;--bottombar-height:68px}}*{box-sizing:border-box}html{background:var(--paper)}body{color:var(--ink);background:var(--paper);margin:0;font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.page-shell{height:calc(calc(100 * var(--vh1)) - var(--topbar-height) - var(--bottombar-height));flex-direction:column;min-height:0;display:flex;overflow:hidden}.page-shell>.page-shell-head{flex:none}.page-shell>.page-shell-body{flex-direction:column;flex:auto;min-height:0;display:flex}.page-shell>.page-shell-foot{flex:none}.page-shell--scroll>.page-shell-body{scrollbar-width:thin;overflow-y:auto}@media (width<=760px){.page-shell{height:auto;min-height:calc(calc(100 * var(--vh1)) - var(--topbar-height) - var(--bottombar-height));overflow:visible}.page-shell--scroll>.page-shell-body{overflow:visible}}.picker{gap:var(--space-2);flex-direction:column;min-height:0;display:flex}.picker .picker-bar{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.picker .picker-bar .search-box{flex:180px;min-width:0}.picker .picker-scope{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.picker .picker-scope button{border:1px solid var(--border);border-radius:var(--radius-pill);padding:4px var(--space-3);color:var(--text-muted);background:var(--surface-raised);font-size:var(--font-sm)}.picker .picker-scope button.is-active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.picker .picker-count{color:var(--text-muted);font-size:var(--font-sm);white-space:nowrap}.picker .picker-list{scrollbar-width:thin;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);max-height:224px;overflow-y:auto}.picker .picker-row{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);cursor:pointer;display:flex}.picker .picker-row:last-child{border-bottom:0}.picker .picker-row:hover{background:var(--accent-soft)}.picker .picker-row.is-active{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.picker .picker-row input{box-sizing:border-box;flex:none;width:auto;height:auto;min-height:0;margin:0;padding:0}.picker .picker-row span{flex:auto;gap:1px;min-width:0;display:grid}.picker .picker-row strong{font-size:var(--font-md);font-weight:650}.picker .picker-row small{color:var(--text-muted);font-size:var(--font-xs)}.picker .picker-empty{padding:var(--space-5) var(--space-3);color:var(--text-muted);font-size:var(--font-sm);text-align:center}.picker .picker-chips{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.picker .picker-chip{align-items:center;gap:var(--space-1);border:1px solid var(--accent);border-radius:var(--radius-pill);padding:2px var(--space-2);color:var(--accent);background:var(--accent-soft);font-size:var(--font-sm);display:inline-flex}.picker .picker-chip button{color:inherit;font-size:var(--font-md);background:0 0;border:0;line-height:1}.picker .picker-hint{color:var(--text-muted);font-size:var(--font-xs)}.picker.is-dropdown{position:relative}.picker.is-dropdown .picker-trigger{align-items:center;gap:var(--space-2);border:1px solid var(--border);background:var(--surface-raised);width:100%;min-height:40px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:7px;padding:8px 11px;display:flex}.picker.is-dropdown .picker-trigger:hover{border-color:var(--accent)}.picker.is-dropdown .picker-trigger-placeholder{color:var(--text-muted)}.picker.is-dropdown .picker-trigger-value{align-items:baseline;gap:var(--space-2);flex:auto;min-width:0;display:flex}.picker.is-dropdown .picker-trigger-value strong{font-weight:650}.picker.is-dropdown .picker-trigger-value small{color:var(--text-muted);font-size:var(--font-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker.is-dropdown .picker-caret{color:var(--text-muted);font-size:var(--font-xs);margin-left:auto}.picker.is-dropdown .picker-panel{z-index:40;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);gap:8px;padding:10px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 18px 44px #2c3a2f26}.picker.is-dropdown .picker-panel .picker-list{max-height:264px}.picker .picker-locked-card{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);display:flex}.picker .picker-locked-avatar{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);font-size:var(--font-sm);border-radius:50%;flex:none;place-items:center;display:grid}.picker .picker-locked-card>div{gap:1px;min-width:0;display:grid}.picker .picker-locked-card strong{font-size:var(--font-md);font-weight:650}.picker .picker-locked-card small{color:var(--text-muted);font-size:var(--font-xs);overflow-wrap:anywhere}.picker .picker-locked-card button{color:var(--accent);font:inherit;font-size:var(--font-xs);padding:var(--space-1);cursor:pointer;background:0 0;border:0;flex:none;margin-left:auto}.picker .picker-locked-empty{color:var(--text-muted);font-size:var(--font-sm);margin:0}.page-action-bar{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.picker-field{grid-column:1/-1;gap:5px;min-width:0;display:grid}.picker-field>span{color:var(--text-muted);font-size:var(--font-xs);font-weight:800}.picker-field-locked{color:var(--text-muted);font-size:var(--font-sm);margin:0;font-weight:500;line-height:1.6}.picker-field .picker-list{max-height:180px}.page-pager-inline{margin-top:var(--space-3);border-top:1px solid var(--border)}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-sm:.25rem;--radius-md:.375rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.row-1{grid-row:1}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-1{height:calc(var(--spacing) * 1)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}html{zoom:var(--app-scale,1)}:root{--vh1:calc(100vh / var(--app-scale,1) / 100)}.ui-icon{flex:none;display:block}.icon-button-label{justify-content:center;align-items:center;gap:7px;display:inline-flex!important}.icon-badge{color:#28796b;background:#e2f2ec;border-radius:11px;flex:none;place-items:center;width:38px;height:38px;display:grid}.icon-badge.tone-amber{color:#c47618;background:#fff0d8}.icon-badge.tone-red{color:#d55255;background:#fde4e7}.icon-badge.tone-blue{color:#3679ca;background:#e4effd}.icon-badge.tone-purple{color:#6853b8;background:#ece8fb}.icon-badge.tone-slate{color:#63736e;background:#edf0ee}.calendar-page .calendar-workspace{display:block}.column-filter-row th{background:#fff!important;padding:6px!important}.column-filter-row input,.column-filter-row select{color:#53615d;background:#fff;border:1px solid #d9e0db;border-radius:5px;outline:0;width:100%;min-width:70px;padding:6px;font-size:8px}.column-filter-row input:focus,.column-filter-row select:focus{border-color:var(--teal);box-shadow:0 0 0 2px #2f817617}.column-filter-row th:first-child button{width:25px;height:25px;color:var(--teal);background:#fff;border:1px solid #d8dfda;border-radius:5px;font-weight:900}.account-avatar img,.account-menu-head>span img{border-radius:inherit;object-fit:cover;width:100%;height:100%;display:block}.day-date-meta{flex-wrap:wrap;gap:5px;display:flex}.day-date-meta em,.day-date-meta b,.day-date-meta i{color:#d5e5e1;background:#ffffff1a;border-radius:999px;padding:4px 7px;font-size:8px;font-style:normal}.day-date-meta i{color:#173c36;background:#f0c477}.dorm-floor article button em.leave{color:#9a6b21}.dorm-status-student{color:var(--muted);margin:-6px 0 18px}.dorm-status-options{border:0;grid-template-columns:repeat(5,1fr);gap:8px;margin:0;padding:0;display:grid}.dorm-status-options legend{color:#53635f;grid-column:1/-1;margin-bottom:7px;font-size:10px;font-weight:800}.dorm-status-options label{cursor:pointer;background:#fff;border:1px solid #d9e0db;border-radius:8px;place-items:center;min-height:44px;font-weight:800;display:grid}.dorm-status-options label.active{border-color:var(--teal);color:var(--teal);background:#e8f2ee;box-shadow:0 0 0 2px #2f817617}.dorm-status-options input{opacity:0;position:absolute}.multi-class-picker{border:1px solid #dfe4df;border-radius:9px;padding:12px}.multi-class-picker legend{color:#53635f;padding:0 5px;font-size:10px;font-weight:800}.multi-class-picker>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.multi-class-picker label{background:#fff;border:1px solid #e0e5e1;border-radius:7px;align-items:center;gap:7px;padding:8px;display:flex}.multi-class-picker label input{width:auto}.multi-class-picker>input{width:100%;margin-top:9px}.basic-settings-section .secondary-button{color:var(--teal);background:#fff;border:1px solid #bfd0ca;border-radius:8px;padding:8px 11px;font-weight:800}.basic-settings-body{grid-template-columns:90px minmax(0,1fr);align-items:start;gap:18px;margin-top:16px;display:grid}.basic-settings-body .settings-form-grid{margin-top:0}.basic-avatar-picker{cursor:pointer;color:var(--teal);justify-items:center;gap:7px;font-size:9px;display:grid}.basic-avatar-picker>span{color:#fff;background:var(--teal);border-radius:22px;place-items:center;width:72px;height:72px;font-size:25px;font-weight:900;display:grid;overflow:hidden}.basic-avatar-picker img{object-fit:cover;width:100%;height:100%}.basic-avatar-picker input{display:none}.app-shell{min-height:calc(100 * var(--vh1));grid-template-columns:232px minmax(0,1fr);display:grid}.sidebar{background:var(--navy);color:#fff;z-index:20;flex-direction:column;width:232px;padding:28px 18px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid #ffffff1f;align-items:center;gap:14px;padding:0 9px 26px;display:flex}.brand-mark{color:#173634;background:#e7b562;border-radius:12px 12px 4px;place-items:center;width:42px;height:42px;font-family:Georgia,serif;font-size:23px;font-weight:900;display:grid}.brand-mark-image{background:#fff;border:1px solid #ffffff6b;border-radius:13px;flex:none;padding:2px;overflow:hidden;box-shadow:0 7px 18px #04181633}.brand-mark-image img{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:126%;max-width:none;height:126%}.brand strong{color:#f8fffd;letter-spacing:.12em;font-size:22px;line-height:1.15;display:block}.brand .brand-tagline{color:#b7cfcb;letter-spacing:.035em;white-space:nowrap;width:136px;margin-top:9px;font-size:11px;line-height:1.75;display:block}.sidebar nav{gap:7px;margin-top:28px;display:grid}.sidebar nav button{color:#b8cdca;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:13px;padding:12px;transition:all .18s;display:flex}.sidebar nav button:hover{color:#fff;background:#ffffff12}.sidebar nav button.active{color:var(--navy);background:#f7f5ed;box-shadow:0 12px 30px #02121133}.nav-index{letter-spacing:.08em;opacity:.68;font-size:9px;font-weight:800}.sidebar nav button span:last-child{font-size:14px;font-weight:650}.sidebar-foot{border-top:1px solid #ffffff1f;align-items:flex-start;gap:10px;margin-top:10px;padding:14px 11px 0;display:flex}.system-settings-entry{color:#d5e2df;text-align:left;background:#ffffff0e;border:1px solid #ffffff1f;border-radius:9px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:9px;width:100%;margin-top:auto;padding:10px;display:grid}.system-settings-entry:hover{color:#fff;background:#ffffff1a}.system-settings-entry>span{color:#f0c477;background:#ffffff14;border-radius:8px;place-items:center;width:28px;height:28px;font-size:15px;display:grid}.system-settings-entry strong,.system-settings-entry small{display:block}.system-settings-entry strong{font-size:11px}.system-settings-entry small{color:#91b2ad;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8px;overflow:hidden}.privacy-icon{color:#6fd4a3;filter:drop-shadow(0 0 5px #6fd4a34d);margin-top:1px}.privacy-dot{background:#6fd4a3;border-radius:50%;width:8px;height:8px;margin-top:5px;box-shadow:0 0 0 4px #6fd4a31f}.sidebar-foot strong,.sidebar-foot span{display:block}.sidebar-foot strong{font-size:11px}.sidebar-foot span{color:#96b5b0;margin-top:4px;font-size:9px;line-height:1.5}.main-panel{grid-column:2;min-width:0}.topbar{z-index:10;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#f5f4efe6;border-bottom:1px solid #e5e7e1;justify-content:space-between;align-items:center;height:92px;padding:18px 34px;display:flex;position:sticky;top:0}.eyebrow{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin:0 0 5px;font-size:10px;font-weight:700}.eyebrow.light{color:#a7c6c1}.topbar h1{letter-spacing:-.03em;margin:0;font-size:24px}.top-actions{align-items:center;gap:10px;display:flex}.primary-button,.ghost-button{border:0;border-radius:8px;padding:10px 16px;font-size:12px;font-weight:700}.primary-button{color:#fff;background:var(--teal);box-shadow:0 8px 20px #2f817638}.ghost-button{color:#53605e;border:1px solid var(--line);background:0 0}.avatar{background:var(--navy);color:#fff;border-radius:50%;place-items:center;width:38px;height:38px;margin-left:4px;font-size:13px;display:grid}.page-content{max-width:1500px;margin:0 auto;padding:28px 34px 44px}.panel{background:var(--white);border:1px solid #e1e4de;border-radius:13px 13px 4px;box-shadow:0 7px 20px #1c312c0a}.section-kicker{color:var(--teal);letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:800}.search-box{background:#f5f6f2;border:1px solid #e1e4df;border-radius:7px;flex:1;align-items:center;padding:0 10px;display:flex}.search-box span{color:#788481;font-size:17px}.search-box input{background:0 0;border:0;outline:0;flex:1;padding:9px;font-size:10px}.calendar-view-switch{background:#eef1ed;border-radius:7px;flex:none;padding:3px;display:flex}.calendar-view-switch button{color:#64716d;background:0 0;border:0;border-radius:6px;padding:7px 10px;font-weight:700}.calendar-view-switch button.active{color:#fff;background:var(--navy)}.calendar-workspace{grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);align-items:start;gap:14px;display:grid}.resource-sidebar h3{margin:5px 0 14px;font-size:17px}.resource-sidebar nav{gap:4px;display:grid}.resource-sidebar nav button{color:#53625e;text-align:left;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;padding:9px 10px;display:flex}.resource-sidebar nav button b{color:#77817e;text-align:center;background:#edf0ed;border-radius:999px;min-width:24px;padding:2px 5px;font-size:8px}.resource-sidebar nav button.active{color:var(--teal);background:#e6f1ed;font-weight:800}.resource-result-head{justify-content:space-between;align-items:flex-end;padding:2px 3px 11px;display:flex}.resource-result-head h3{margin:4px 0 0;font-size:19px}.resource-result-head>span{color:var(--muted)}.resource-card-list{gap:9px;display:grid}.resource-card-list>article{background:#fff;border:1px solid #e0e4de;border-radius:10px 10px 3px;grid-template-columns:52px minmax(0,1fr) 112px;align-items:center;gap:14px;padding:16px;display:grid}.resource-card-meta>span{color:var(--teal);font-size:8px;font-weight:800}.resource-card-meta small{color:#8b9592}.resource-card-body h3{margin:5px 0 4px;font-size:14px}.resource-card-body p{color:#5a6965;margin:0;line-height:1.55}.resource-tags span{color:#60706c;background:#f0f2ef;border-radius:4px;padding:3px 5px;font-size:7px}.resource-tags em{color:#8a9491;margin-left:3px;font-size:7px;font-style:normal}.resource-card-actions{gap:7px;display:grid}.resource-card-actions button{border-radius:6px;padding:7px 8px;font-weight:750}.resource-card-actions .favorite{color:#6f7b77;background:#fff;border:1px solid #d8dfda}.resource-card-actions .favorite.active{color:#9a6c26;background:#fbf2df;border-color:#e2c78f}.resource-empty{text-align:center;background:#fafbf9;border:1px dashed #cad4cf;padding:45px}.resource-empty p{color:var(--muted)}.drawer-backdrop,.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0d1b1a7a;position:fixed;inset:0}.student-drawer{background:#fbfaf6;width:min(520px,94vw);padding:26px;position:absolute;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-18px 0 55px #0b1b1938}.drawer-close{color:#596461;background:#edf0eb;border:0;border-radius:50%;width:32px;height:32px;font-size:20px;position:absolute;top:17px;right:18px}.profile-head{border-bottom:1px solid #e2e5df;align-items:center;gap:15px;padding-bottom:21px;display:flex}.profile-avatar{background:var(--navy);color:#f0c57a;border-radius:18px 18px 5px;place-items:center;width:66px;height:66px;font-size:22px;font-weight:800;display:grid}.profile-head h2{margin:7px 0 3px;font-size:22px}.profile-head p{color:var(--muted);margin:0;font-size:9px}.ai-summary{border-left:3px solid var(--teal);background:#e5f0ec;margin:19px 0;padding:16px}.ai-summary span{color:var(--teal);font-size:9px;font-weight:800}.ai-summary p{color:#40514d;margin:8px 0 0;font-size:11px;line-height:1.75}.profile-grid,.score-grid{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.profile-grid div,.score-grid div{background:#fff;border:1px solid #e4e7e1;border-radius:7px;padding:12px}.profile-grid span,.score-grid span{color:var(--muted);font-size:8px;display:block}.profile-grid strong{margin-top:5px;font-size:10px;display:block}.score-grid strong{margin-top:5px;font-family:Georgia,serif;font-size:20px;display:block}.evidence-section,.score-section{margin-top:22px}.drawer-section-title{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.drawer-section-title span{font-size:12px;font-weight:800}.drawer-section-title small{color:var(--muted);font-size:8px}.evidence-row{border-top:1px solid #e5e8e2;gap:10px;padding:11px 0;display:flex}.evidence-row>span{width:24px;height:24px;color:var(--red);background:var(--red-soft);border-radius:6px;place-items:center;font-size:8px;font-weight:800;display:grid}.evidence-row strong,.evidence-row small{display:block}.evidence-row strong{font-size:10px}.evidence-row small{color:var(--muted);margin-top:4px;font-size:8px}.drawer-actions{background:#fbfaf6f5;border-top:1px solid #e1e4de;gap:9px;margin:25px -26px -26px;padding:16px 26px 20px;display:flex;position:sticky;bottom:-26px}.drawer-actions button{border:1px solid var(--teal);color:var(--teal);background:#fff;border-radius:7px;flex:1;padding:10px;font-size:9px;font-weight:700}.drawer-actions button:first-child{color:#fff;background:var(--teal)}.modal-backdrop{place-items:center;display:grid}.action-modal{background:#fbfaf6;border-radius:17px 17px 5px;width:min(530px,92vw);padding:28px;position:relative;box-shadow:0 30px 80px #0b1b194d}.action-modal h2{margin:7px 0;font-size:21px}.action-modal>p{color:var(--muted);font-size:10px}.action-choice{grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;display:grid}.action-choice button{text-align:left;background:#fff;border:1px solid #dce1db;border-radius:10px;align-items:center;gap:12px;padding:16px;display:flex}.action-choice button:hover{border-color:var(--teal);background:#eff6f3}.action-choice b{width:36px;height:36px;color:var(--teal);background:#e3efeb;border-radius:9px;place-items:center;display:grid}.action-choice strong,.action-choice small{display:block}.action-choice strong{font-size:11px}.action-choice small{color:var(--muted);margin-top:4px;font-size:8px}.toast{z-index:80;background:var(--navy);color:#fff;border-left:4px solid #6ed3a3;border-radius:8px;padding:13px 17px;font-size:10px;position:fixed;bottom:24px;right:24px;box-shadow:0 15px 35px #0e272440}.profile-backdrop{padding:18px 24px}.student-profile-page{background:#f7f7f3;border-radius:16px 16px 5px;max-width:1280px;height:100%;margin:0 auto;overflow-y:auto;box-shadow:0 30px 80px #081b1859}.profile-page-header{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fafaf6f7;border-bottom:1px solid #dfe4dd;justify-content:space-between;align-items:center;gap:22px;min-height:116px;padding:20px 26px 17px;display:flex;position:sticky;top:0}.profile-identity{align-items:center;gap:15px;min-width:0;display:flex}.profile-name-line{align-items:center;gap:10px;display:flex}.profile-name-line h2{letter-spacing:-.04em;margin:0;font-size:24px}.profile-identity p{color:var(--muted);margin:4px 0 8px;font-size:9px}.profile-avatar-button{cursor:pointer;background:0 0;border:0;border-radius:18px 18px 5px;flex:none;padding:0}.profile-avatar-button.editable .profile-avatar{box-shadow:0 0 0 3px #2f81763d}.profile-avatar-button:hover .profile-avatar{box-shadow:0 0 0 3px #2f817629}.profile-avatar img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.profile-avatar-input{display:none}.profile-avatar-tools{align-content:center;gap:5px;max-width:150px;display:grid}.profile-avatar-tools small{color:#83938c;font-size:8px;line-height:1.4}.profile-avatar-tools .v2-link{justify-self:start;font-size:8px}.profile-tags{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.profile-tags>button{color:#2b7466;background:#e4f0ec;border:1px solid #bcd7ce;border-radius:999px;padding:4px 8px;font-size:8px}.profile-tags>button i{opacity:.55;margin-left:5px;font-style:normal}.tag-picker-wrap{position:relative}.add-tag-button{color:#65736f;background:0 0;border:1px dashed #aebbb6;border-radius:999px;padding:4px 8px;font-size:8px}.tag-picker{z-index:10;background:#fff;border:1px solid #dbe1db;border-radius:8px;width:150px;padding:6px;position:absolute;top:calc(100% + 7px);left:0;box-shadow:0 12px 30px #0a231f24}.tag-picker button{text-align:left;background:0 0;border:0;border-radius:5px;width:100%;padding:8px;font-size:8px}.tag-picker button:hover{background:#edf5f2}.tag-picker button:disabled{opacity:.35}.profile-header-actions{align-items:center;gap:9px;display:flex}.profile-action-primary{background:var(--teal);color:#fff;border:0;border-radius:7px;padding:10px 14px;font-size:9px;font-weight:700}.profile-close{color:#52615d;background:#e9ece7;border:0;border-radius:50%;width:36px;height:36px;font-size:21px}.profile-tabs{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fafaf6f7;border-bottom:1px solid #dfe4dd;gap:4px;padding:0 26px;display:flex;position:sticky;top:116px;overflow-x:auto}.profile-tabs button{color:#687570;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:13px 18px 11px;font-size:9px;font-weight:700}.profile-tabs button.active{color:var(--teal);border-bottom-color:var(--teal)}.profile-tab-content{padding:22px 26px 28px}.profile-overview-layout{grid-template-columns:minmax(0,1.8fr) minmax(280px,.7fr);gap:15px;display:grid}.profile-main-column,.profile-side-column,.profile-detail-stack{flex-direction:column;gap:14px;display:flex}.profile-summary{border-radius:8px;margin:0}.profile-section{background:#fff;border:1px solid #e0e4dd;border-radius:10px;padding:17px}.profile-section-title{justify-content:space-between;align-items:center;gap:14px;margin-bottom:11px;display:flex}.profile-section-title span,.profile-section-title small{display:block}.profile-section-title span{font-size:11px;font-weight:800}.profile-section-title small{color:var(--muted);margin-top:3px;font-size:8px}.profile-section-title>b{color:var(--red);font:700 20px Georgia,serif}.profile-section-title>a{color:var(--teal);font-size:8px;font-weight:800;text-decoration:none}.profile-info-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.profile-info-grid div{background:#fbfcfa;border:1px solid #eaede8;border-radius:7px;min-height:59px;padding:10px}.profile-info-grid span,.profile-info-grid strong{display:block}.profile-info-grid span{color:var(--muted);font-size:8px}.profile-info-grid strong{margin-top:6px;font-size:9px;line-height:1.4}.profile-evidence-list .evidence-row:first-child{border-top:0}.profile-avatar img,.profile-photo-picker img,.profile-photo-preview,.directory-student>i img,.student-quick-drawer>header>i img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.profile-photo-field{align-content:start;display:grid}.profile-photo-picker{color:var(--teal);cursor:pointer;align-items:center;gap:8px;margin-top:6px;display:flex}.profile-photo-picker>span{color:#8aa39b;text-align:center;background:#f2faf7;border:1px dashed #b8d4cb;border-radius:8px;place-items:center;width:42px;height:42px;font-size:8px;display:grid;overflow:hidden}.profile-photo-picker b{font-size:9px}.profile-photo-picker input{display:none}.profile-photo-preview{border-radius:8px;width:42px;height:42px;margin-top:6px}.profile-section-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.profile-section-actions button{border-radius:6px;padding:7px 10px;font-size:9px;font-weight:750}.profile-edit-button,.profile-cancel-button{color:#53635f;background:#fff;border:1px solid #cfd8d3}.profile-save-button{border:1px solid var(--teal);background:var(--teal);color:#fff}.profile-filled-toggle{color:#34776a;background:#f3faf7;border:1px solid #b9d7cd}.profile-filled-toggle:hover,.profile-filled-toggle.active{border-color:var(--teal);color:#fff;background:var(--teal)}.profile-field-button{color:#2d7569;background:#edf6f3;border:1px dashed #77a99f}.profile-info-grid.editing{grid-template-columns:repeat(2,1fr)}.profile-info-grid.editing>div{min-height:82px}.profile-info-grid input{width:100%;color:var(--ink);background:#fff;border:1px solid #d7dfda;border-radius:6px;outline:0;margin-top:7px;padding:9px 10px;font-size:10px}.profile-info-grid input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f81761a}.profile-readonly-field{background:#f0f2ef!important}.profile-readonly-field small{color:#919a97;margin-top:4px;font-size:7px;display:block}.custom-profile-field span i{color:var(--teal);background:#e2efeb;border-radius:999px;margin-left:5px;padding:2px 4px;font-size:6px;font-style:normal;display:inline-block}.profile-clubs-editor{grid-column:1/-1;gap:7px;display:grid}.profile-clubs-editor>span{color:var(--muted);font-size:8px}.profile-clubs-editor textarea{resize:vertical;min-height:68px;color:var(--ink);background:#fff;border:1px solid #d7dfda;border-radius:6px;outline:0;padding:9px 10px;font-size:10px}.profile-clubs-editor textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f81761a}.housing-ai-dialog{gap:13px;display:grid}.housing-ai-intro{color:#667772;margin:0;font-size:12px;line-height:1.6}.housing-ai-list{max-height:calc(56 * var(--vh1));gap:9px;display:grid;overflow:auto}.housing-ai-list article{background:#fbfdfb;border:1px solid #dce5df;border-radius:10px;gap:8px;padding:12px;display:grid}.housing-ai-list article>header{justify-content:space-between;align-items:center;gap:8px;display:flex}.housing-ai-list article>header label{color:#2c4c43;font-size:13px;font-weight:750}.housing-ai-list article>header span{color:#7d8e88;font-size:10px}.housing-ai-list article>small{color:#7a8984;font-size:11px}.housing-ai-fields{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.housing-ai-fields label{color:#75847e;gap:4px;font-size:10px;display:grid}.housing-ai-fields input,.housing-ai-fields select{box-sizing:border-box;color:#314b44;background:#fff;border:1px solid #d5e0da;border-radius:6px;outline:0;width:100%;padding:7px 8px;font-size:11px}.housing-ai-fields input:disabled{color:#9ba7a3;background:#f1f4f2}.housing-ai-note{color:#aa721d;margin:0;font-size:10px}.housing-ai-footer{border-top:1px solid #e3e9e4;justify-content:space-between;align-items:center;gap:12px;padding-top:13px;display:flex}.housing-ai-footer>span{color:#7d8b86;font-size:10px}.housing-ai-footer>div{gap:8px;display:flex}.housing-ai-refine-message{color:#2f6b57;font-size:10px;font-style:normal;line-height:1.5}.profile-edit-form{gap:14px;display:grid}.profile-readonly-section{margin-top:14px}.profile-edit-error{color:#ad4b40;margin:10px 0 0;font-size:9px}.profile-delete-button{color:#ab4d42;background:#fff5f2;border:1px solid #e2bbb5}.profile-add-event-button{color:var(--teal);background:#f2faf7;border:1px solid #b8d4cb;border-radius:6px;align-items:center;gap:4px;padding:6px 8px;font-size:9px;font-weight:800;display:inline-flex}.profile-add-event-button:hover{background:#e6f4ef}.student-event-form{background:#f7fbf9;border:1px solid #d9e8e1;border-radius:8px;gap:9px;margin:0 0 13px;padding:11px;display:grid}.student-event-form label{gap:4px;display:grid}.student-event-form label>span{color:#6f8079;font-size:8px;font-weight:800}.student-event-form input,.student-event-form select,.student-event-form textarea{color:#39534a;width:100%;font:inherit;background:#fff;border:1px solid #d3e0da;border-radius:5px;outline:0;padding:7px 8px;font-size:9px}.student-event-form textarea{resize:vertical;line-height:1.45}.student-event-form input:focus,.student-event-form select:focus,.student-event-form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 2px #2f81761a}.student-event-form-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.student-event-form-actions{justify-content:flex-end;gap:6px;display:flex}.student-event-form-actions>button:not(.primary-button){color:#70817b;background:0 0;border:0;padding:7px 9px;font-size:9px}.student-event-form-actions .primary-button{min-height:auto;padding:7px 10px;font-size:9px}.student-event-list{gap:0;display:grid}.student-event-list>article{grid-template-columns:43px 25px minmax(0,1fr);align-items:start;gap:8px;padding:0 0 15px;display:grid;position:relative}.student-event-list>article:not(:last-child):after{content:"";background:#dce9e3;width:1px;position:absolute;top:19px;bottom:0;left:55px}.student-event-list>article>time{color:#7d8d87;white-space:nowrap;padding-top:2px;font-size:9px}.student-event-list>article>i{z-index:1;width:25px;height:25px;color:var(--teal);background:#edf8f3;border:1px solid #cbe4d9;border-radius:50%;place-items:center;font-style:normal;display:grid}.student-event-list>article>div{min-width:0}.student-event-list strong,.student-event-list p,.student-event-list small{display:block}.student-event-list strong{color:#34534a;font-size:10px;line-height:1.35}.student-event-list p{color:#63766f;margin:3px 0 0;font-size:9px;line-height:1.45}.student-event-list small{color:#93a19c;margin-top:4px;font-size:8px}.timeline-list>div{gap:10px;padding:0 0 17px;display:flex;position:relative}.timeline-list>div:not(:last-child):before{content:"";background:#d7e2dc;width:1px;position:absolute;top:11px;bottom:2px;left:4px}.timeline-list>div>i{background:var(--teal);border-radius:50%;flex:0 0 9px;width:9px;height:9px;margin-top:3px;box-shadow:0 0 0 3px #e6f0ec}.timeline-list strong,.timeline-list small,.timeline-list time{display:block}.timeline-list strong{font-size:9px}.timeline-list small{color:#61706c;word-break:break-all;margin-top:3px;font-size:7.5px;line-height:1.45}.timeline-list time{color:#949d9a;margin-top:4px;font-size:7px}.profile-followup-card{background:var(--navy);color:#fff}.profile-followup-card>span{color:#a8c0ba;font-size:8px}.profile-followup-card>strong{color:#f0c57a;margin-top:5px;font:700 32px Georgia,serif;display:block}.profile-followup-card>strong small{margin-left:3px;font:700 9px sans-serif}.profile-followup-card p{color:#b6c6c2;margin:5px 0 0;font-size:8px}.profile-score-grid{grid-template-columns:repeat(4,1fr)}.profile-score-grid div{min-height:76px}.profile-table-wrap{overflow-x:auto}.profile-data-table{border-collapse:collapse;width:100%;min-width:720px}.profile-data-table th{color:#74807d;text-align:left;background:#f1f4f0;padding:9px 10px;font-size:7.5px}.profile-data-table td{color:#4c5a56;border-bottom:1px solid #e9ece7;padding:11px 10px;font-size:8px}.profile-data-table td strong{color:#1d2f2c}.record-status{border-radius:999px;padding:4px 7px;font-size:7px;font-weight:800;display:inline-block}.record-status.normal{color:#267058;background:#dff0e8}.record-status.abnormal{color:#a64a3d;background:#f6e1dc}.profile-empty-box{text-align:center;background:#fafbf9;border:1px dashed #cbd4cf;border-radius:8px;padding:28px}.profile-empty-box strong{font-size:10px}.profile-empty-box p,.profile-empty{color:var(--muted);margin:6px 0 0;font-size:8px;line-height:1.55}.profile-action-header{border-radius:10px}.profile-action-header h2{font-size:18px}.profile-task-panel{padding:8px 17px}.source-overview{color:#fff;background:var(--navy);border-radius:11px 11px 3px;grid-template-columns:180px 1fr;align-items:center;gap:20px;padding:20px;display:grid}.source-overview span,.source-overview strong{display:block}.source-overview span{color:#a9c0ba;font-size:8px}.source-overview strong{color:#f0c57a;margin-top:4px;font:700 34px Georgia,serif}.source-overview strong small{margin-left:3px;font:700 9px sans-serif}.source-overview p{color:#b8c8c4;margin:0;font-size:9px;line-height:1.6}.source-list{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.source-list article{background:#fbfcfa;border:1px solid #e4e8e2;border-radius:8px;gap:11px;padding:13px;display:flex}.source-list article>b{width:32px;height:32px;color:var(--teal);background:#e3efeb;border-radius:8px;flex:0 0 32px;place-items:center;display:grid}.source-list strong,.source-list p,.source-list small{display:block}.source-list strong{font-size:9px}.source-list p{color:#50615d;word-break:break-all;margin:3px 0;font-size:8px}.source-list small{color:var(--muted);font-size:7px}.auth-loading{min-height:calc(100 * var(--vh1));color:var(--navy);justify-content:center;align-items:center;gap:13px;display:flex}.auth-loading strong{font-size:13px}.login-page{min-height:calc(100 * var(--vh1));background:#f8f7f2;grid-template-columns:minmax(360px,.9fr) minmax(480px,1.1fr);display:grid}.login-brand-panel{min-height:calc(100 * var(--vh1));color:#fff;background:linear-gradient(145deg,#163735,#215a55 68%,#2f8176);flex-direction:column;padding:42px 48px;display:flex;position:relative;overflow:hidden}.login-brand-panel:before{content:"";border:1px solid #ffffff1f;border-radius:50%;width:460px;height:460px;position:absolute;top:-190px;right:-250px;box-shadow:0 0 0 70px #ffffff09,0 0 0 140px #ffffff06}.login-brand{z-index:1;align-items:center;gap:13px;display:flex;position:relative}.login-brand strong,.login-brand span{display:block}.login-brand strong{color:#fff;letter-spacing:.08em;font-size:22px}.login-brand span{color:#b5ceca;margin-top:4px;font-size:9px}.login-brand.compact strong{color:var(--navy);font-size:18px}.login-brand.compact span{color:var(--muted)}.login-message{z-index:1;max-width:520px;margin:auto 0;position:relative}.login-message>span{color:#efbd69;letter-spacing:.16em;font-size:9px;font-weight:800}.login-message h1{letter-spacing:-.055em;margin:14px 0;font-size:clamp(34px,4vw,58px);line-height:1.13}.login-message p{color:#c1d6d2;max-width:460px;font-size:12px;line-height:1.8}.login-privacy{z-index:1;color:#a9c5c0;align-items:center;gap:9px;font-size:9px;display:flex;position:relative}.login-privacy i{background:#6fd4a3;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #6fd4a31f}.login-form-panel{place-items:center;padding:40px;display:grid}.login-card{width:min(430px,100%)}.login-card h2{letter-spacing:-.04em;margin:8px 0;font-size:28px}.login-card>p{color:var(--muted);margin:0 0 24px;font-size:10px}.login-card label,.password-modal label{margin-top:14px;display:block}.login-card label span,.password-modal label span{color:#52615d;margin-bottom:6px;font-size:9px;font-weight:700;display:block}.login-card input,.password-modal input{background:#fff;border:1px solid #d9dfd9;border-radius:8px;outline:0;width:100%;padding:12px 13px;font-size:11px}.login-card input:focus,.password-modal input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f81761a}.login-submit{background:var(--navy);color:#fff;border:0;border-radius:8px;justify-content:space-between;width:100%;margin-top:18px;padding:13px 15px;font-size:11px;font-weight:800;display:flex}.form-notice{color:#23685f;background:var(--teal-soft);border-radius:6px;margin-top:11px;padding:9px 10px;font-size:9px}.form-error{color:#ae4b3e;background:var(--red-soft);border-radius:6px;margin-top:11px;padding:9px 10px;font-size:9px}.test-accounts{background:#eeefe9;border:1px solid #e0e3dc;border-radius:8px;margin-top:22px;padding:14px}.test-accounts>strong{font-size:9px}.test-accounts p{color:#40504c;margin:7px 0;font-size:9px}.test-accounts p b{width:48px;color:var(--teal);display:inline-block}.test-accounts small{color:var(--muted);border-top:1px solid #dce0da;padding-top:7px;font-size:7.5px;line-height:1.5;display:block}.account-wrap,.student-account-wrap{position:relative}.account-avatar{border:0}.account-menu{z-index:30;background:#fff;border:1px solid #dce1db;border-radius:11px;width:245px;padding:7px;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 18px 50px #0a231f2e}.account-menu-head{border-bottom:1px solid #e7eae5;align-items:center;gap:10px;margin-bottom:4px;padding:10px;display:flex}.account-menu-head>span{background:var(--navy);color:#fff;border-radius:50%;place-items:center;width:35px;height:35px;font-size:11px;display:grid}.account-menu-head strong,.account-menu-head small{display:block}.account-menu-head strong{font-size:10px}.account-menu-head small{color:var(--muted);margin-top:3px;font-size:7.5px}.account-menu>button{color:#45534f;text-align:left;background:0 0;border:0;border-radius:6px;justify-content:space-between;width:100%;padding:9px 10px;font-size:9px;display:flex}.account-menu>button:hover{background:#edf4f1}.account-menu>button i{color:#929b98;font-style:normal}.account-menu>button.account-logout{color:var(--red);border-top:1px solid #e7eae5;border-radius:0 0 6px 6px;margin-top:4px}.password-modal{background:#fbfaf6;border-radius:14px 14px 4px;width:min(440px,92vw);padding:27px;position:relative;box-shadow:0 30px 80px #0b1b194d}.password-modal h2{margin:7px 0;font-size:21px}.password-modal>p{color:var(--muted);font-size:9px;line-height:1.55}.password-modal>.primary-button{width:100%;margin-top:18px}.custom-field-modal{background:#fbfaf6;border-radius:15px 15px 5px;width:min(520px,92vw);padding:28px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 30px 80px #0b1b194d}.custom-field-modal h2{margin:7px 0;font-size:23px}.custom-field-modal>p{color:var(--muted);font-size:10px;line-height:1.65}.custom-field-modal label{margin-top:17px;display:block}.custom-field-modal label>span{color:#52615d;margin-bottom:7px;font-size:9px;font-weight:800;display:block}.custom-field-modal textarea{resize:vertical;border:1px solid #d8dfda;border-radius:8px;outline:0;width:100%;min-height:126px;padding:12px;font-size:11px;line-height:1.6}.custom-field-modal textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f81761a}.custom-field-modal>.primary-button{width:100%;margin-top:18px}.system-clock{text-align:right;border-right:1px solid #d8ded9;min-width:104px;padding-right:12px}.system-clock time,.system-clock small{display:block}.system-clock time{color:var(--navy);letter-spacing:.04em;font:800 16px Georgia,serif}.system-clock small{color:var(--muted);margin-top:3px;font-size:9px}.student-state-cell{min-width:145px}.student-state-cell small{max-width:190px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:8px;display:block;overflow:hidden}.month-cell.today{background:#fff8e8;position:relative;box-shadow:inset 0 0 0 2px #d9a64f}.month-cell.today>b{color:#fff;background:#c88c30;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.calendar-detail-modal{background:#fbfaf6;border-radius:18px 18px 6px;width:min(650px,100vw - 34px);padding:28px;position:relative;overflow:hidden;box-shadow:0 25px 70px #0f282447}.calendar-detail-date{align-items:center;gap:12px;margin-bottom:18px;display:flex}.calendar-detail-date>strong{color:#f4ce86;background:var(--navy);border-radius:14px 14px 4px;place-items:center;width:58px;height:58px;font:800 30px Georgia,serif;display:grid}.calendar-detail-date>span,.calendar-detail-date small{display:block}.calendar-detail-date>span{color:var(--navy);font-weight:800}.calendar-detail-date small{color:var(--muted);margin-top:4px;font-size:10px}.calendar-detail-heading h2{margin:5px 35px 8px 0;font-size:24px}.calendar-detail-heading p{color:#586763;margin:0;line-height:1.75}.calendar-detail-modal dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:22px 0;display:grid}.calendar-detail-modal dl div{background:#edf3f0;border-radius:8px;padding:11px}.calendar-detail-modal dt{color:var(--muted);font-size:9px}.calendar-detail-modal dd{color:var(--navy);margin:5px 0 0;font-weight:800}.calendar-detail-status{background:#e4eee9;border-radius:999px;padding:4px 7px;display:inline-flex}.calendar-detail-status.priority-高{color:#b5483c;background:#f8dfda}.calendar-detail-status.priority-中{color:#94651d;background:#f5e7cc}.calendar-detail-actions{border-top:1px solid #dde3de;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:16px;display:flex}.calendar-detail-actions button{color:var(--teal);background:#fff;border:1px solid #bfd1ca;border-radius:7px;padding:9px 12px;font-weight:800}.calendar-detail-actions .primary-button{color:#fff;background:var(--teal)}.calendar-detail-actions .danger-button{color:#ae4f42;background:#fff5f2;border-color:#e0b9b2;margin-right:auto}.course-detail-modal>p{color:var(--teal);font-weight:800}.task-detail-actions{border-top:1px solid #dde3de;justify-content:flex-end;gap:8px;margin-top:18px;padding-top:16px;display:flex}.task-detail-actions button{color:var(--teal);background:#fff;border:1px solid #bfd1ca;border-radius:7px;padding:9px 12px;font-weight:800}.task-detail-actions .danger-button{color:#ae4f42;background:#fff5f2;border-color:#e0b9b2;margin-right:auto}.task-detail-actions .primary-button{color:#fff;background:var(--teal)}@media (width<=1080px){.app-shell{grid-template-columns:82px minmax(0,1fr)}.sidebar{width:82px;padding:22px 11px}.brand{justify-content:center;padding:0 0 22px}.brand>div:last-child,.sidebar nav button span:last-child,.sidebar-foot div:last-child,.system-settings-entry div{display:none}.sidebar nav button{justify-content:center;padding:13px}.nav-index{font-size:10px}.sidebar-foot{justify-content:center;padding-left:0;padding-right:0}.system-settings-entry{grid-template-columns:1fr;justify-items:center;padding:8px}.main-panel{grid-column:2}.calendar-workspace,.profile-overview-layout{grid-template-columns:1fr}.profile-score-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.app-shell{padding-bottom:68px;display:block}.sidebar{z-index:40;flex-direction:row;align-items:center;width:auto;height:62px;padding:7px;position:fixed;inset:auto 0 0}.brand,.sidebar-foot,.system-settings-entry{display:none}.sidebar nav{justify-content:space-around;gap:2px;width:100%;margin:0;display:flex}.sidebar nav button{min-width:47px;padding:8px}.nav-index{font-size:9px}.sidebar nav button span:last-child{display:none}.main-panel{display:block}.topbar{height:76px;padding:13px 17px}.topbar h1{font-size:20px}.ghost-button{display:none}.primary-button{padding:9px 11px}.avatar{width:34px;height:34px}.page-content{padding:18px 14px 30px}.search-box{flex-basis:100%}.rule-strip{display:block}.rule-strip small{margin-top:9px;display:block}.resource-workspace{grid-template-columns:1fr}.resource-sidebar{position:static}.resource-sidebar nav{grid-template-columns:repeat(2,1fr)}.resource-card-list>article{grid-template-columns:48px minmax(0,1fr)}.resource-card-actions{grid-column:1/-1;grid-template-columns:repeat(2,1fr)}.action-choice{grid-template-columns:1fr}.profile-backdrop{padding:0}.student-profile-page{border-radius:0}.profile-page-header{align-items:flex-start;min-height:132px;padding:17px}.profile-avatar{border-radius:13px;width:48px;height:48px;font-size:17px}.profile-name-line h2{font-size:19px}.profile-action-primary{display:none}.profile-tabs{padding:0 12px;top:132px}.profile-tabs button{padding:12px 11px 10px}.profile-tab-content{padding:16px 13px 22px}.profile-info-grid{grid-template-columns:repeat(2,1fr)}.source-overview,.source-list,.template-grid,.login-page{grid-template-columns:1fr}.login-brand-panel{min-height:270px;padding:28px 25px}.login-message{margin:auto 0 0}.login-message h1{margin:9px 0;font-size:29px}.login-message p,.login-privacy{display:none}.login-form-panel{padding:32px 22px}.login-card h2{font-size:24px}}body{font-size:14px;line-height:1.5}.app-shell :is(p,small,button,input,select,textarea,td,th),.login-page :is(p,small,button,input,select,textarea){font-size:12px!important}.app-shell :is(.section-kicker,.eyebrow,.nav-index,.record-status),.login-page :is(.section-kicker,.form-error,.form-notice){font-size:11px!important}.app-shell :is(.profile-section-title>div>span,.profile-info-grid strong,.timeline-list strong,.source-list strong){font-size:13px!important}.app-shell :is(.profile-info-grid span,.timeline-list time,.profile-followup-card>span,.source-overview span){font-size:11px!important}.app-shell .profile-data-table td{font-size:12px!important}.app-shell .profile-data-table th{font-size:11px!important}.login-brand span,.login-privacy,.test-accounts>strong,.login-card label span,.password-modal label span,.custom-field-modal label>span{font-size:12px!important}.login-card input,.password-modal input,.custom-field-modal textarea{font-size:14px!important}.account-menu-head strong,.account-trigger strong{font-size:12px!important}.account-menu-head small,.account-trigger small{font-size:11px!important}@media (width<=760px){.profile-edit-title{flex-direction:column;align-items:flex-start}.profile-section-actions{justify-content:flex-start;width:100%}.profile-info-grid.editing{grid-template-columns:1fr}}.login-card.form{background:#171717;border:1px solid #0000;border-radius:25px;flex-direction:column;gap:10px;width:min(420px,100%);padding:27px 32px 18px;transition:transform .4s ease-in-out,border-color .4s ease-in-out;display:flex;box-shadow:0 24px 65px #0817152e}.login-form-heading{text-align:center;margin:0 0 7px}.login-form-heading .section-kicker{color:#78cbb8}.login-card.form #heading{color:#fff;letter-spacing:-.04em;margin:12px 0 7px;font-size:22px}.login-form-heading p{color:#9c9c9c;margin:0;line-height:1.55}.login-card.form .field{color:#fff;background:#171717;border:0;border-radius:25px;outline:0;justify-content:center;align-items:center;gap:.5em;min-height:42px;margin:0;padding:.6em .75em;display:flex;box-shadow:inset 2px 5px 10px #050505}.login-card.form .field:focus-within{box-shadow:inset 2px 5px 10px #050505,0 0 0 1px #4c9b8a}.login-card.form .input-icon{color:#fff;stroke:#fff;flex:none}.login-card.form .input-field{color:#d3d3d3;background:0 0;border:0;outline:0;width:100%;min-width:0;margin:0;padding:0;font-size:13px!important}.login-card.form .input-field::placeholder{color:#777}.login-account-list{color:#9c9c9c;background:#1e1e1e;border:1px solid #2e2e2e;border-radius:12px;padding:8px 10px}.login-account-list>small{color:#9c9c9c;margin-bottom:6px;display:block}.login-account-list>div{flex-wrap:wrap;gap:5px;display:flex}.login-account-list button{color:#eee;cursor:pointer;background:#252525;border:1px solid #383838;border-radius:7px;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 8px;display:inline-flex;font-size:11px!important}.login-account-list button:hover{background:#000}.login-account-list button span{color:#9c9c9c;font-size:9px}.login-card.form .btn{flex-direction:row;justify-content:center;gap:8px;margin-top:14px;display:flex}.login-card.form .button1,.login-card.form .button2,.login-card.form .button3{color:#fff;cursor:pointer;background:#252525;border:none;border-radius:5px;outline:none;transition:background .4s ease-in-out,color .4s ease-in-out}.login-card.form .button1{margin:0;padding:.7em 1.1em}.login-card.form .button2{flex:1;padding:.7em 2.3em}.login-card.form .button3{color:#9c9c9c;background:0 0;align-self:center;margin:8px 0 6px;padding:.55em 1.1em}.login-card.form .login-guest-button{color:#356e62;margin-top:2px}.login-card.form .button1:hover,.login-card.form .button2:hover{color:#fff;background:#000}.login-card.form .button3:hover{color:#fff;background:#252525}.login-card.form .form-error,.login-card.form .form-notice{border-radius:7px;margin:0;font-size:11px!important}.login-card.form .form-error{color:#ffc0b8;background:#40221f}.login-card.form .form-notice{color:#a8ebd7;background:#18372f}.account-settings-section{overflow:hidden}.settings-account-status{color:#287157;background:#dff0e8;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800}.account-current-card{background:#f8faf7;border:1px solid #e0e6e0;border-radius:10px;align-items:center;gap:11px;padding:14px;display:flex}.account-current-avatar{color:#efbd69;background:var(--navy);border-radius:12px;flex:0 0 40px;place-items:center;width:40px;height:40px;font-size:16px;font-weight:900;display:grid}.account-current-card>div:nth-child(2){flex:1;min-width:0}.account-current-card strong,.account-current-card small{display:block}.account-current-card strong{color:var(--navy);font-size:13px}.account-current-card small{color:var(--muted);margin-top:3px;font-size:11px}.account-current-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.account-current-actions button{padding:7px 10px;font-size:11px!important}.account-current-actions .danger-button{color:#ab4d42;cursor:pointer;background:#fff5f2;border:1px solid #e2bbb5;border-radius:6px}.account-list{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px;display:grid}.account-list>span{color:var(--muted);grid-column:1/-1;font-size:11px}.account-list>div{background:#fff;border:1px solid #e6ebe5;border-radius:7px;padding:9px 10px}.account-list b,.account-list small{display:block}.account-list b{color:#314b43;font-size:11px}.account-list small{color:var(--muted);margin-top:3px;font-size:10px}.account-security-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.account-security-card{background:#fbfcfa;border:1px solid #e1e7e1;border-radius:9px;padding:14px}.account-security-card h3{color:#263b35;margin:0;font-size:13px}.account-security-card>p{color:var(--muted);margin:4px 0 10px;font-size:11px}.account-security-card label{margin:8px 0 0;display:block}.account-security-card label span{color:#68766f;margin-bottom:4px;font-size:11px;display:block}.account-security-card input{box-sizing:border-box;background:#fff;border:1px solid #d9e0da;border-radius:6px;outline:0;width:100%;padding:8px 9px;font-size:12px!important}.account-security-card input:focus{border-color:var(--teal);box-shadow:0 0 0 2px #2f81761a}.account-security-card>.primary-button,.account-security-card>.secondary-button{margin-top:11px;font-size:11px!important}.settings-inline-actions{justify-content:flex-end;gap:6px;margin-top:11px;display:flex}.settings-inline-actions button{font-size:11px!important}.account-settings-section>.form-error,.account-settings-section>.form-notice{margin:10px 0 0}@media (width<=760px){.login-card.form{padding:24px 21px 16px}.login-card.form:hover{transform:none}.account-current-card{flex-wrap:wrap;align-items:flex-start}.account-current-actions{justify-content:flex-start;width:100%;margin-left:51px}.account-list,.account-security-grid{grid-template-columns:1fr}}.calendar-page .calendar-workspace{grid-template-columns:310px minmax(0,1fr);gap:15px}.work-calendar-panel{min-width:0;overflow:hidden}.day-agenda{align-content:start;gap:10px;display:grid}.day-agenda article{background:#fbfcfa;border:1px solid #e1e6e0;border-radius:9px;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px;display:grid}.day-agenda h4{margin:4px 0;font-size:14px}.day-agenda p,.day-agenda span{color:var(--muted);margin:0}.day-agenda button{color:var(--teal);background:#fff;border:1px solid #bad4cb;border-radius:6px;padding:7px 10px;font-weight:800}.week-calendar-view{grid-template-columns:repeat(7,minmax(105px,1fr));min-height:500px;display:grid;overflow-x:auto}.week-calendar-view>section{background:#fbfcfa;border-right:1px solid #e4e7e2;min-width:105px}.week-calendar-view>section.selected{background:#f0f6f3}.week-calendar-view header{border-bottom:1px solid #e4e7e2;justify-content:space-between;align-items:center;padding:14px 10px;display:flex}.week-calendar-view header span{color:var(--muted)}.week-calendar-view header strong{color:var(--navy);font:700 21px Georgia,serif}.week-calendar-view section>div{gap:8px;padding:9px;display:grid}.week-calendar-view section>div>button{border:0;border-left:3px solid var(--teal);min-height:94px;color:inherit;text-align:left;background:#e5f0ec;border-radius:5px;padding:9px;display:block}.week-calendar-view section>div>button em,.week-calendar-view section>div>button strong{display:block}.week-calendar-view section>div>button em{color:var(--teal);font-size:10px;font-style:normal}.week-calendar-view section>div>button strong{margin-top:6px;line-height:1.45}.week-empty{color:#c2c9c5;place-items:center;min-height:80px;display:grid}.semester-calendar-view{padding:14px 17px 19px}.month-weekdays,.month-grid{grid-template-columns:repeat(7,1fr);display:grid}.month-weekdays span{color:#74807c;text-align:center;padding:8px;font-weight:800}.month-cell{background:#fff;border-top:1px solid #e3e7e1;border-right:1px solid #e3e7e1;min-height:92px;padding:7px}.month-cell:nth-child(7n+1){border-left:1px solid #e3e7e1}.month-cell:nth-last-child(-n+7){border-bottom:1px solid #e3e7e1}.month-cell.empty{background:#f7f8f5}.month-cell>b{color:#687570;font:700 13px Georgia,serif;display:block}.month-cell>button{color:#24685e;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:#e3efeb;border:0;border-radius:4px;width:100%;margin-top:5px;padding:5px;overflow:hidden}.resource-page .resource-workspace{margin-top:0}.resource-card-list.simple>article{grid-template-columns:52px minmax(0,1fr) auto}.resource-card-list.simple .resource-card-body p{max-width:820px}.resource-open-link{color:var(--teal);white-space:nowrap;background:#fff;border:1px solid #bfd3cc;border-radius:7px;align-self:center;padding:8px 11px;font-weight:800;text-decoration:none}.calendar-head-actions{align-items:center;gap:9px;display:flex}.calendar-head-actions .secondary-button{color:var(--teal);background:#fff;border:1px solid #cad7d1;border-radius:7px;padding:8px 10px;font-weight:800}.week-calendar-view header{cursor:pointer}.week-calendar-view header i{color:var(--teal);font-style:normal;font-weight:900}.month-cell:not(.empty){cursor:pointer}.month-cell:not(.empty):hover{background:#f4f8f5}.system-settings-modal{width:min(720px,100vw - 34px);max-height:calc(calc(100 * var(--vh1)) - 40px);color:var(--ink);background:#fbfaf6;border-radius:17px;padding:27px;position:relative;overflow-y:auto;box-shadow:0 28px 80px #0a231f4d}.system-settings-modal h2{margin:5px 0 7px;font-size:25px}.settings-intro{color:var(--muted);margin:0 0 20px;line-height:1.65}.settings-section{background:#fff;border:1px solid #dfe4df;border-radius:11px;margin-top:12px;padding:17px}.settings-section.disabled{opacity:.58}.settings-section-head{justify-content:space-between;align-items:center;gap:18px;display:flex}.settings-section-head strong,.settings-section-head small{display:block}.settings-section-head strong{font-size:14px}.settings-section-head small{color:var(--muted);margin-top:4px}.settings-switch{cursor:pointer;align-items:center;gap:8px;display:flex}.settings-switch input{opacity:0;pointer-events:none;position:absolute}.settings-switch i{background:#c8d0cc;border-radius:999px;width:40px;height:22px;transition:all .2s;position:relative}.settings-switch i:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:all .2s;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #0000002e}.settings-switch input:checked+i{background:var(--teal)}.settings-switch input:checked+i:after{transform:translate(18px)}.settings-switch span{min-width:37px;color:var(--muted);font-size:10px;font-weight:800}.api-status{border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800}.api-status.ready{color:#2b765d;background:#e2f0e8}.api-status.waiting{color:#8a6a33;background:#f5ead4}.settings-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.settings-form-grid label{gap:6px;display:grid}.settings-form-grid label.wide{grid-column:1/-1}.settings-form-grid input,.settings-form-grid select{width:100%;min-width:0;color:var(--ink);background:#fff;border:1px solid #d4dcd6;border-radius:7px;outline:0;padding:10px 11px}.settings-form-grid input:focus,.settings-form-grid select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f81761a}.settings-form-grid input:read-only{color:#687571;background:#f1f4f1}.settings-form-grid label>small{color:var(--muted);line-height:1.5}.api-key-input{position:relative}.api-key-input input{padding-right:145px}.api-key-input b{color:#6e6148;background:#f3ead7;border-radius:5px;padding:4px 7px;font-size:8px;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.configured-api-summary{color:#55706a;background:#edf4f1;border-radius:7px;justify-content:space-between;gap:10px;margin-top:12px;padding:9px 10px;font-size:9px;display:flex}.settings-message{color:#a04e42;background:#fff0ed;border-radius:7px;margin-top:10px;padding:9px 10px;line-height:1.5}.settings-message.success{color:#2c725b;background:#e8f3ed}.settings-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:18px;display:flex}.settings-actions button{min-height:38px}.settings-actions .secondary-button{color:var(--teal);background:#fff;border:1px solid #bfd0ca;border-radius:8px;padding:9px 13px;font-weight:800}.settings-actions .text-danger{color:#ae5044;background:0 0;border:0;margin-right:auto;font-weight:800}.settings-actions button:disabled{cursor:not-allowed;opacity:.45}.backup-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}@media (width<=760px){.backup-settings-grid{grid-template-columns:1fr}}.backup-settings-card{background:#fbfaf6;border:1px solid #dfe4df;border-radius:9px;align-content:start;gap:10px;padding:13px;display:grid}.backup-settings-card h3{margin:0;font-size:13px}.backup-settings-card p{color:var(--muted);margin:0;font-size:10px;line-height:1.65}.backup-settings-card .primary-button{justify-self:start}.backup-restore-button{min-height:38px;color:var(--teal);cursor:pointer;background:#fff;border:1px solid #bfd0ca;border-radius:8px;justify-content:start;align-items:center;gap:6px;padding:9px 13px;font-weight:800;display:inline-flex;position:relative;overflow:hidden}.backup-restore-button:hover{border-color:var(--teal)}.backup-restore-button input[type=file]{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.system-settings-page>.section-kicker{display:block}.system-settings-page>h2{color:var(--navy);letter-spacing:-.04em;margin:6px 0 18px;font-size:28px}.system-settings-page>.settings-section{margin-top:14px;box-shadow:0 7px 22px #1c312c09}.system-settings-page>.settings-section:first-of-type{margin-top:0}.data-clear-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:15px;display:grid}.data-clear-grid article{background:#fafbf9;border:1px solid #e1e5e1;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:12px;display:flex}.data-clear-grid article:last-child{grid-column:1/-1}.data-clear-grid article div{min-width:0}.data-clear-grid article strong,.data-clear-grid article span,.data-clear-grid article small{display:block}.data-clear-grid article strong{font-size:12px}.data-clear-grid article span{color:var(--navy);margin-top:3px;font-size:15px;font-weight:850}.data-clear-grid article small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;overflow:hidden}.data-clear-grid article button{color:#b44f43;background:#fff6f3;border:1px solid #e1b4ad;border-radius:7px;flex:none;padding:7px 10px;font-size:10px;font-weight:800}.data-clear-grid article button:hover{color:#fff;background:#b95448}.data-clear-grid article button:disabled{cursor:not-allowed;opacity:.45}.data-clear-footer{color:#5b6d68;background:#edf4f1;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:10px 11px;font-size:9px;display:flex}.data-clear-footer button{color:var(--teal);background:0 0;border:0;flex:none;font-weight:850}.dashboard-page{grid-template-rows:auto;grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;align-content:start;gap:16px;height:auto;min-height:0;padding-top:18px;padding-bottom:32px;display:grid;overflow:visible}.dashboard-data-hero{color:#fff;background:linear-gradient(112deg,#123f3a 0%,#075e4b 58%,#08745b 100%);border-radius:14px 14px 5px;grid-template-columns:minmax(230px,.95fr) minmax(620px,1.9fr) auto;align-items:center;gap:22px;min-width:0;padding:18px 22px;display:grid;overflow:hidden;box-shadow:0 13px 32px #0e433929}.dashboard-greeting h2{letter-spacing:-.025em;margin:0;font-size:23px;font-weight:650}.dashboard-greeting p{color:#c3ddd6;margin:8px 0 0;font-size:13px!important}.dashboard-hero-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0;display:grid}.dashboard-hero-metrics article{background:#ffffff13;border:1px solid #ffffff0a;border-radius:12px;grid-template-columns:34px auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;min-height:76px;padding:12px 14px;display:grid}.dashboard-hero-metrics article>.ui-icon{color:#d8ebe6;border:1px solid #ffffff6b;border-radius:10px;width:32px;height:32px;padding:6px}.dashboard-hero-metrics article>strong{font:650 29px/1 Georgia,Times New Roman,serif}.dashboard-hero-metrics article>span,.dashboard-hero-metrics article small{min-width:0;display:block}.dashboard-hero-metrics article>span{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;overflow:hidden}.dashboard-hero-metrics article small{color:#b9d5ce;margin-top:5px;font-weight:500;font-size:11px!important}.dashboard-hero-action{color:#fff;white-space:nowrap;background:#ffffff0f;border:1px solid #ffffff47;border-radius:9px;justify-self:end;align-items:center;gap:10px;padding:12px 15px;font-size:12px;font-weight:750;display:inline-flex}.dashboard-hero-action:hover{background:#ffffff1f}.dashboard-hero-action span{margin-left:11px}.dashboard-primary-grid{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:16px;min-height:0;display:grid}.dashboard-course-panel,.dashboard-agenda-panel{grid-template-rows:58px auto;min-width:0;display:grid;overflow:hidden}.dashboard-course-panel>header,.dashboard-agenda-panel>header{border-bottom:1px solid #e6e9e4;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.dashboard-course-panel h3,.dashboard-agenda-panel h3{color:var(--navy);margin:0;font-size:18px;font-weight:650}.dashboard-secondary-action{color:#256f64;background:#fff;border:1px solid #cbd9d4;border-radius:7px;padding:7px 11px;font-size:12px;font-weight:700}.dashboard-secondary-action:hover{border-color:var(--teal);background:#f1f7f4}.dashboard-course-list{grid-auto-rows:minmax(68px,auto);min-height:0;display:grid}.dashboard-course-list>button{width:100%;min-height:68px;color:inherit;text-align:left;background:0 0;border:0;border-bottom:1px solid #e7eae5;grid-template-columns:126px minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 18px;display:grid}.dashboard-course-list>button:hover{background:#f4f8f6}.dashboard-course-list time strong,.dashboard-course-list time small,.dashboard-course-list>button>span strong,.dashboard-course-list>button>span small{display:block}.dashboard-course-list time strong{color:#113f3c;white-space:nowrap;font-size:17px}.dashboard-course-list time small{color:#65746f;margin-top:6px;font-size:12px!important}.dashboard-course-list>button>span{min-width:0}.dashboard-course-list>button>span strong{color:#20302e;text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.dashboard-course-list>button>span small{color:#6c7a76;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;overflow:hidden;font-size:12px!important}.dashboard-course-list>button>em{color:#7c5c24;white-space:nowrap;background:#f7ead0;border-radius:999px;padding:7px 10px;font-size:11px;font-style:normal;font-weight:750}.dashboard-course-list>button>em.now{color:#fff;background:var(--teal)}.dashboard-course-list>button>em.ended{color:#71807b;background:#edf1ee}.dashboard-course-empty{place-content:center;justify-items:center;gap:7px;min-height:150px;color:#64746f!important;text-align:center!important;grid-column:1/-1!important;display:grid!important}.dashboard-course-empty strong{font-size:15px}.dashboard-course-empty span{font-size:12px}.dashboard-course-panel>header h3{font-size:16px}.dashboard-course-list>button.dashboard-meeting-entry{background:#fffaf0}.dashboard-course-list>button.dashboard-meeting-entry:hover{background:#fff5dd}.dashboard-course-list>button.dashboard-meeting-entry>time strong{color:#9a6a27}.dashboard-course-list>button.dashboard-meeting-entry>em{color:#936426;background:#f8ead0}.dashboard-agenda-list{grid-template-rows:none;grid-auto-rows:minmax(68px,auto);min-height:0;display:grid}.dashboard-agenda-list>button{width:100%;min-height:68px;color:inherit;text-align:left;background:0 0;border:0;border-bottom:1px solid #e7eae5;grid-template-columns:38px minmax(180px,1fr) minmax(145px,.6fr) 14px;align-items:center;gap:13px;padding:10px 17px;display:grid}.dashboard-agenda-list>button:hover{background:#f4f8f6}.dashboard-agenda-list>button>.icon-badge{border-radius:9px;width:36px;height:36px}.dashboard-agenda-list>button>span{min-width:0}.dashboard-agenda-list>button>span strong,.dashboard-agenda-list>button>span small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.dashboard-agenda-list>button>span strong{font-size:14px}.dashboard-agenda-list>button>span small{color:#75827e;margin-top:4px;font-size:11px!important}.dashboard-agenda-list>button>div{min-width:0}.dashboard-agenda-list>button>div small{color:#74817d;text-align:right;margin-bottom:6px;display:block;font-size:10px!important}.dashboard-agenda-list>button>div b{background:#e3e9e5;border-radius:99px;height:4px;display:block;overflow:hidden}.dashboard-agenda-list>button>div b i{border-radius:inherit;background:var(--teal);height:100%;display:block}.dashboard-agenda-list>button>em{color:#875f21;justify-self:end;font-size:11px;font-style:normal;font-weight:700}.agenda-arrow{color:#50716a;font-size:20px;font-weight:400}@media (width<=1450px){.dashboard-data-hero{grid-template-columns:minmax(200px,.8fr) minmax(500px,1.8fr)}.dashboard-hero-action{display:none}.dashboard-hero-metrics article{grid-template-columns:auto minmax(0,1fr)}.dashboard-hero-metrics article>.ui-icon{display:none}.dashboard-course-list>button{grid-template-columns:108px minmax(0,1fr);gap:12px}.dashboard-course-list>button>em{grid-column:2;justify-self:start;padding:5px 8px}}@media (width<=900px){.dashboard-page{grid-template-rows:auto;grid-template-columns:minmax(0,1fr);height:auto;min-height:0;display:grid;overflow:visible}.dashboard-data-hero{grid-template-columns:1fr}.dashboard-hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.dashboard-primary-grid{grid-template-columns:1fr;margin-top:0}.dashboard-course-panel,.dashboard-agenda-panel{min-height:0}.dashboard-agenda-panel{margin-top:0}}@media (width<=760px){.dashboard-hero-metrics{grid-template-columns:1fr}.dashboard-hero-metrics article{min-height:64px}.dashboard-course-list>button{grid-template-columns:110px minmax(0,1fr)}.dashboard-course-list>button>em{grid-column:2;justify-self:start}.dashboard-agenda-list>button{grid-template-columns:36px minmax(0,1fr) 12px}.dashboard-agenda-list>button>div,.dashboard-agenda-list>button>em{display:none}}@media (width<=1080px){.focus-contact{display:none}.calendar-page .calendar-workspace{grid-template-columns:270px minmax(0,1fr)}.dorm-building-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=720px){.settings-form-grid,.data-clear-grid{grid-template-columns:1fr}.data-clear-grid article:last-child{grid-column:auto}.calendar-head-actions{justify-content:space-between;width:100%}.resource-card-list.simple>article{grid-template-columns:44px minmax(0,1fr)}.resource-open-link{grid-column:2;justify-self:start}.configured-api-summary{flex-direction:column;align-items:flex-start}.settings-actions{flex-wrap:wrap}.settings-actions .text-danger{text-align:left;width:100%;margin:0}}@media (width<=600px){.system-clock{display:none}.calendar-detail-modal dl{grid-template-columns:1fr}.dorm-building-grid{grid-template-columns:minmax(0,1fr)}}.system-settings-page{width:min(880px,100%);margin:0 auto;padding:18px 0 42px}.settings-page-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:18px;display:flex}.settings-page-header h2{color:var(--navy);letter-spacing:-.045em;margin:6px 0 7px;font-size:30px}.settings-page-header p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.settings-local-badge{color:#287b69;background:#eef8f3;border:1px solid #cfe5dc;border-radius:999px;flex:none;align-items:center;gap:6px;padding:7px 10px;font-size:10px;font-weight:850;display:inline-flex}.settings-radio-input{background:#f5f8f6;border:1px solid #dfe7e2;border-radius:12px;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:4px;margin-bottom:14px;padding:5px;display:grid;box-shadow:0 1px 1px #0e11160a,0 12px 24px -20px #0e111638}.settings-radio-input label{color:#64746e;cursor:pointer;text-align:center;border-radius:8px;justify-content:center;align-items:center;min-width:0;padding:10px 12px;font-size:11px;font-weight:800;line-height:1.2;transition:color .22s cubic-bezier(.22,1,.36,1),background-color .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1);display:flex;position:relative}.settings-radio-input label:hover{color:var(--teal);background:#edf5f1}.settings-radio-input label.is-active{color:#fff;background:var(--teal);box-shadow:0 1px 1px #0e11160f,0 8px 18px -10px #0e111680}.settings-radio-input input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.settings-radio-input input:focus-visible+span{outline-offset:2px;border-radius:5px;outline:3px solid #2e7def3d}.settings-radio-input label.is-active:hover{color:#fff;background:var(--teal)}.system-settings-page>form,.system-settings-page>section{margin-top:14px;display:block}.system-settings-page>[hidden]{display:none!important}.system-settings-page>form:first-of-type{margin-top:0}.system-settings-page .settings-card{background:#fffffff0;border-color:#dfe8e2;border-radius:13px;margin-top:0;padding:17px 18px;overflow:hidden;box-shadow:0 9px 26px #1e3e350b}.settings-section-head{min-height:36px}.settings-title{align-items:center;gap:10px;min-width:0;display:flex}.settings-title>div{min-width:0}.settings-title strong,.settings-title small{display:block}.settings-title strong{color:#203b34;letter-spacing:-.015em;font-size:15px}.settings-title small{color:#7b8b84;margin-top:4px;font-size:10px;line-height:1.45}.settings-title .icon-badge{border-radius:11px;width:35px;height:35px}.settings-section-head>button,.account-security-card>button,.settings-inline-actions button{align-items:center;gap:6px;display:inline-flex}.settings-basic-card .secondary-button{color:#287b6c;background:#fff;border:1px solid #bfd8cf;border-radius:8px;align-items:center;gap:6px;padding:8px 11px;font-size:11px;font-weight:850;display:inline-flex}.settings-basic-card .secondary-button:hover{border-color:var(--teal);background:#f1f8f5}.basic-settings-body{grid-template-columns:88px minmax(0,1fr);gap:16px;margin-top:14px}.basic-avatar-picker>span{color:#f4ca79;background:linear-gradient(145deg,#0b5047,#123d38);border-radius:19px;width:66px;height:66px;font-size:23px;box-shadow:0 7px 15px #0c443a24}.basic-avatar-picker>b{color:#4f746a;margin-top:7px;font-size:10px}.basic-avatar-picker .v2-link{margin-top:4px;font-size:10px}.settings-form-grid{gap:13px;margin-top:0}.settings-basic-card .settings-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-basic-card .settings-form-grid label.wide{grid-column:auto}.settings-basic-card .settings-form-grid label.wide :is(input,.api-key-input){max-width:none}.settings-form-grid label>span{color:#52655d;font-size:10px;font-weight:850}.settings-form-grid input,.settings-form-grid select{color:#243a34;background:#fbfcfa;border-color:#d5e0d9;border-radius:8px;padding:8px 10px;font-size:12px}.settings-form-grid label.wide>:is(input,.api-key-input){max-width:calc(50% - 7px)}.settings-form-grid input:focus,.settings-form-grid select:focus{background:#fff;border-color:#54aa92;box-shadow:0 0 0 3px #3a9d821c}.account-settings-section{margin-top:14px}.account-current-card{background:#f7faf8;border-color:#dce7e1;border-radius:10px;margin-top:15px}.account-current-actions button{align-items:center;gap:5px;display:inline-flex}.account-list{margin-top:12px}.account-list>div{background:#fbfcfa;border-color:#e0e9e2}.account-security-grid{gap:13px;margin-top:14px}.account-security-card{background:#fcfdfb;border-color:#e1e9e3;border-radius:10px}.account-security-card h3{font-size:13px}.account-security-card>p{line-height:1.5}.account-security-card>.primary-button{align-items:center;gap:6px;display:inline-flex}.ai-cloud-card{margin-top:14px!important}.ai-cloud-card.is-disabled{background:#fbfcfa}.settings-ai-switch{cursor:pointer;align-items:center;gap:8px;margin:0;display:inline-flex;position:relative}.settings-ai-switch .switch__input{appearance:none;cursor:pointer;background:#c5d1cb;border:0;border-radius:50px;outline:none;flex:0 0 56px;width:56px;height:30px;transition:background-color .35s cubic-bezier(.65,0,.35,1),box-shadow .2s,transform .35s cubic-bezier(.68,-.6,.32,1.6);position:relative;box-shadow:inset 0 1px 2px #00000038,0 1px #fffc}.settings-ai-switch .switch__input:before{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .35s cubic-bezier(.68,-.6,.32,1.6);position:absolute;top:5px;left:5px;box-shadow:0 2px 5px #102f2738}.settings-ai-switch .switch__input:checked{background:#27a47f}.settings-ai-switch .switch__input:checked:before{transform:translate(26px)}.settings-ai-switch .switch__input:focus-visible{box-shadow:0 0 0 3px #288f7033,inset 0 1px 2px #00000038}.ai-settings-grid{margin-top:16px}.ai-cloud-card.is-disabled .ai-settings-grid,.ai-cloud-card.is-disabled .configured-api-summary{opacity:.62}.api-key-input b{color:#287461;background:#e7f3ed}.settings-action-note{color:#84948d;margin-right:auto;font-size:10px}.query-turns{max-height:calc(46 * var(--vh1));background:#fbfdfc;border:1px solid #d9e2dd;border-top:0;border-radius:0 0 10px 10px;padding:12px;overflow-y:auto}.query-turn{background:#fff;border:1px solid #e4ece8;border-radius:8px;padding:11px 12px}.query-turn+.query-turn{margin-top:10px}.query-question{color:#33544b;font-size:11px;font-weight:800}.query-interpretation{color:#6d7a74;margin:6px 0 0;font-size:10px;line-height:1.6}.query-clarifications{color:#8a6a33;margin:6px 0 0;padding-left:16px;font-size:10px;line-height:1.6}.query-error{color:#9a4b3d;background:#fbeae6;border-radius:6px;margin:8px 0 0;padding:7px 9px;font-size:10px;line-height:1.6}.query-empty{color:#84948d;margin:8px 0 0;font-size:10px}.query-result-table{margin-top:8px;overflow-x:auto}.query-result-table table{border-collapse:collapse;width:100%;font-size:10px}.query-result-table th{color:#7a8a84;text-align:left;background:#f4f8f6;font-weight:800}.query-result-table th,.query-result-table td{text-overflow:ellipsis;white-space:nowrap;border:1px solid #e7eeea;max-width:190px;padding:5px 7px;overflow:hidden}.query-result-table small{color:#84948d;margin-top:6px;display:block}.query-result-pairs{gap:4px;margin:8px 0 0;display:grid}.query-result-pairs>div{grid-template-columns:minmax(80px,auto) 1fr;gap:10px;display:grid}.query-result-pairs dt{color:#7a8a84;font-size:10px;font-weight:800}.query-result-pairs dd{color:#4a5a54;margin:0;font-size:10px}.query-actions{margin-top:9px}.query-actions .secondary-button{min-height:28px;color:var(--teal);background:#fff;border:1px solid #bfd0ca;border-radius:6px;padding:5px 11px;font-size:10px;font-weight:800}.privacy-outbound-card{background:linear-gradient(#fbfdfc,#fff);border-color:#d5e5dd;margin-top:14px!important}.privacy-lede{color:#4d635c;margin:14px 0 0;font-size:11px;line-height:1.75}.privacy-policy-banner{color:#7a5a17;background:#fdf7e8;border:1px solid #e7d3a8;border-radius:8px;margin:0;padding:10px 12px;font-size:10px;line-height:1.7}.privacy-policy-banner b{color:#8a6412}.privacy-switches{gap:9px;margin-top:14px;display:grid}.privacy-switch-row{cursor:pointer;background:#fff;border:1px solid #e2ece6;border-radius:9px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:11px 12px;display:grid}.privacy-switch-row>span:last-child strong{color:#33544b;font-size:11px;display:block}.privacy-switch-row>span:last-child small{color:var(--muted);margin-top:3px;font-size:10px;line-height:1.6;display:block}.privacy-switch-row-label{color:#33544b;font-size:11px;font-weight:800}.privacy-switch-row select{color:var(--ink);background:#fff;border:1px solid #d4dcd6;border-radius:7px;outline:0;padding:7px 9px;font-size:11px}.privacy-switch-row select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f81761a}.privacy-switch-row>small{color:var(--muted);grid-column:2;font-size:10px;line-height:1.6}.privacy-facts{gap:10px;margin-top:14px;display:grid}.privacy-facts>div{background:#f6faf8;border-left:2px solid #cfe4da;border-radius:0 8px 8px 0;padding:10px 12px}.privacy-facts strong{color:#2f6a58;font-size:10px;font-weight:800;display:block}.privacy-facts p{color:#5b6f68;margin:5px 0 0;font-size:10px;line-height:1.7}.privacy-note{color:#62766e;background:#fdfefd;border:1px dashed #d3e2da;border-radius:9px;margin:14px 0 0;padding:11px 12px;font-size:10px;line-height:1.75}.local-mode-card{grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);align-items:center;gap:20px;display:grid!important}.local-mode-detail{color:#7d8c85;border-left:1px solid #e0eae4;grid-template-columns:auto 1fr;gap:8px 13px;padding-left:20px;font-size:10px;display:grid}.local-mode-detail b,.local-mode-detail strong{color:#3d6258;font-size:11px}.local-mode-detail b{align-items:center;gap:5px;display:inline-flex}.local-mode-detail b i{background:#35ad86;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #dcf2e8}@media (width<=900px){.system-settings-page{padding:14px 0 32px}.settings-page-header{flex-direction:column;align-items:flex-start;gap:12px}.settings-local-badge{align-self:flex-start}.local-mode-card{grid-template-columns:1fr}.local-mode-detail{border-top:1px solid #e0eae4;border-left:0;padding-top:13px;padding-left:0}}@media (width<=720px){.settings-radio-input{gap:3px}.settings-radio-input label{padding:9px 6px;font-size:10px}.system-settings-page .settings-card{padding:15px}.settings-section-head{flex-direction:column;align-items:flex-start;gap:11px}.settings-section-head>button,.settings-section-head>.settings-ai-switch{align-self:flex-start}.basic-settings-body{grid-template-columns:1fr;gap:13px}.settings-basic-card .settings-form-grid{grid-template-columns:1fr}.settings-form-grid label.wide>:is(input,.api-key-input){max-width:none}.basic-avatar-picker{grid-template-columns:66px auto;align-items:center;column-gap:10px;display:grid}.basic-avatar-picker>b{align-self:end;margin-top:0}.basic-avatar-picker .v2-link{grid-column:2;justify-self:start;margin-top:-15px}.ai-cloud-intro{flex-wrap:wrap;align-items:flex-start}.ai-cloud-intro>b{margin-left:23px}.settings-actions{flex-wrap:wrap;align-items:flex-start}.settings-action-note{order:3;width:100%;margin:0}}@media (width<=760px){.calendar-page .calendar-workspace{grid-template-columns:1fr}.week-calendar-view{min-height:420px}.month-cell{min-height:74px;padding:4px}.month-cell>button{padding:4px 2px;font-size:9px!important}.resource-sidebar nav{grid-template-columns:repeat(2,1fr)}}.leave-page{padding-top:4px}.leave-page-head{border-bottom:1px solid #e1e6e1;align-items:flex-end;margin-bottom:16px;padding:0 2px 15px}.leave-page-head .section-kicker{color:var(--teal)}.leave-page-head h2{letter-spacing:-.03em;margin:5px 0 0;font-size:24px}.leave-page-head p{color:var(--muted);margin:5px 0 0;font-size:10px}.leave-page-head .primary-button{min-height:40px;padding:10px 16px}.leave-filter-panel{border-color:#dfe5e0;margin-bottom:13px;padding:12px 14px 0;box-shadow:0 5px 18px #1b393209}.leave-filter-top{align-items:center;gap:12px;display:flex}.leave-search-box{flex:1;min-width:0;min-height:40px;width:auto!important}.leave-result-count{color:var(--muted);white-space:nowrap;flex:none;font-size:10px}.leave-filter-tabs{border-top:1px solid #edf0ed;gap:5px;margin-top:11px;display:flex;overflow-x:auto}.leave-filter-tabs button{color:#71807b;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:10px 10px 9px;font-size:10px;font-weight:800;display:inline-flex}.leave-filter-tabs button:hover{color:var(--teal)}.leave-filter-tabs button.active{border-bottom-color:var(--teal);color:var(--teal)}.leave-filter-tabs button b{color:#71807b;text-align:center;background:#edf1ee;border-radius:999px;min-width:18px;padding:2px 5px;font-size:8px}.leave-filter-tabs button.active b{color:#fff;background:var(--teal)}.leave-stats{gap:10px;margin-bottom:14px}.leave-stats article{background:#fff;border:1px solid #e0e6e1;min-height:86px;padding:14px 16px 12px;position:relative;overflow:hidden}.leave-stats article:after{content:"";opacity:.06;background:currentColor;border-radius:50%;width:76px;height:76px;position:absolute;bottom:-24px;right:-16px}.leave-stats article span,.leave-stats article small{color:var(--muted)}.leave-stats article strong{margin:5px 0 0;font-size:27px;line-height:1}.leave-stats article small{margin-top:7px;font-size:9px;display:block}.leave-stats article.active{color:#287b70;background:#f1f7f4}.leave-stats article.active strong{color:#1d6259}.leave-stats article.overdue{color:#b65b43;background:#fff5ef}.leave-stats article.overdue strong{color:#9e4938}.leave-stats article.closed{color:#6c7d77;background:#f5f7f5}.leave-stats article.closed strong{color:#35534b}.leave-table-wrap{border-color:#dfe5e0;overflow:hidden;box-shadow:0 6px 22px #1b39320a}.leave-table{table-layout:fixed;min-width:1060px}.leave-table th{letter-spacing:.02em;padding:12px 13px;font-size:10px}.leave-table td{color:#31433e;padding:14px 13px;font-size:10px}.leave-table tbody tr{transition:background .16s}.leave-table tbody tr:hover{background:#f8fbf9}.leave-table time{color:#5e716b;white-space:nowrap;align-items:center;gap:6px;margin-top:0;font-size:9px;display:flex}.leave-table time+time{margin-top:7px}.leave-table time i{color:#4b776d;background:#e8f1ed;border-radius:5px;flex:none;place-items:center;width:16px;height:16px;font-size:8px;font-style:normal;font-weight:900;display:inline-grid}.leave-table time+time i{color:#87704a;background:#f5eddf}.leave-days{color:var(--navy);align-items:baseline;gap:3px;display:inline-flex;font:700 16px Georgia,serif!important}.leave-days small{color:var(--muted);font:800 9px PingFang SC,sans-serif!important}.leave-table p{max-width:none;margin:0;line-height:1.5}.leave-table p+p{margin-top:7px}.leave-table p b{color:#71807b;min-width:28px;font-size:9px;display:inline-block}.leave-proof{color:#52756c;text-overflow:ellipsis;white-space:nowrap;background:#f5f9f6;border:1px solid #dce5df;border-radius:5px;max-width:118px;padding:4px 6px;display:inline-block;overflow:hidden}.leave-proof.empty{color:#9aa6a1;background:0 0;border-style:dashed}.leave-status{border-radius:999px;align-items:center;gap:5px;padding:5px 7px;font-size:9px;display:inline-flex}.leave-status i{color:currentColor;background:#ffffffa6;border-radius:50%;place-items:center;width:14px;height:14px;font-size:10px;font-style:normal;display:inline-grid}.leave-status.active{color:#966a24;background:#fbf0dc}.leave-status.overdue{color:#b14f40;background:#fbe7e2}.leave-status.closed{color:#28765c;background:#e6f2eb}.leave-actions{gap:4px}.leave-actions button{min-height:28px;padding:5px 8px;font-size:9px}.leave-empty{color:var(--muted);justify-items:center;gap:6px;padding:54px 20px;display:grid}.leave-empty strong{color:var(--navy);font-size:13px}.leave-empty span{font-size:10px}@media (width<=720px){.leave-page-head{align-items:stretch;gap:10px}.leave-page-head .primary-button{justify-content:center;width:100%}.leave-filter-top{flex-direction:column;align-items:stretch;gap:8px}.leave-search-box{width:100%!important}.leave-result-count{align-self:flex-end}.leave-filter-tabs{margin-top:7px}.leave-stats article{min-height:76px}.leave-stats article small{display:none}}.leave-table th,.leave-table td{text-align:center}.leave-record-row{cursor:pointer}.leave-record-row:hover,.leave-record-row.expanded{background:#f5faf7}.leave-table td strong{font-size:13px}.leave-table td small{font-size:10px}.leave-table time{justify-content:center;font-size:11px}.leave-table p{font-size:12px}.leave-table p b{min-width:32px;font-size:10px}.leave-detail-row>td{background:#f5faf7;border-bottom:1px solid #d9e6df;padding:0!important}.leave-detail-content{text-align:center;grid-template-columns:1.2fr 1.2fr 1fr auto;align-items:center;gap:18px;padding:16px 22px;display:grid}.leave-detail-content>div:not(.leave-detail-actions){gap:5px;min-width:0;display:grid}.leave-detail-content span{color:#7b8d87;font-size:9px;font-weight:800}.leave-detail-content strong{color:#3d5750;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:650;overflow:hidden}.leave-detail-actions{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.leave-detail-actions button{min-height:30px;color:var(--teal);background:#fff;border:1px solid #bad0c8;border-radius:6px;padding:6px 10px;font-size:9px;font-weight:800}.leave-detail-actions button.delete{color:#b1483e;border-color:#e1bbb6}@media (width<=820px){.leave-detail-content{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.leave-detail-actions{grid-column:1/-1}}.leave-table th:nth-child(2){width:14%}.leave-detail-content>div:not(.leave-detail-actions) strong{white-space:normal;overflow-wrap:anywhere;line-height:1.55;overflow:visible}.leave-page-head{grid-template-columns:minmax(230px,1fr) minmax(410px,1.2fr) auto;align-items:end;gap:18px;display:grid}.leave-header-stats{grid-template-columns:repeat(3,minmax(105px,1fr));align-self:end;gap:8px;display:grid}.leave-header-stats article{background:#f5f8f5;border:1px solid #dfe7e1;border-radius:9px;min-height:67px;padding:10px 12px;position:relative;overflow:hidden}.leave-header-stats article:after{content:"";opacity:.08;background:currentColor;border-radius:50%;width:58px;height:58px;position:absolute;bottom:-22px;right:-14px}.leave-header-stats article span,.leave-header-stats article strong,.leave-header-stats article small{z-index:1;display:block;position:relative}.leave-header-stats article span{color:#71807b;font-size:9px;font-weight:800}.leave-header-stats article strong{color:var(--navy);margin-top:4px;font:700 23px/1 Georgia,serif}.leave-header-stats article small{color:#83908b;white-space:nowrap;margin-top:4px;font-size:8px}.leave-header-stats article.active{color:#287b70;background:#f1f7f4}.leave-header-stats article.active strong{color:#1d6259}.leave-header-stats article.overdue{color:#b65b43;background:#fff5ef}.leave-header-stats article.overdue strong{color:#9e4938}.leave-header-stats article.closed{color:#6c7d77;background:#f5f7f5}.leave-header-stats article.closed strong{color:#35534b}@media (width<=1120px){.leave-page-head{grid-template-columns:minmax(210px,1fr) minmax(360px,1fr)}.leave-header-stats{grid-area:2/1/auto/-1}.leave-page-head .primary-button{grid-area:1/2;justify-self:end}}@media (width<=720px){.leave-page-head{flex-direction:column;align-items:stretch;display:flex}.leave-header-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.leave-header-stats article{min-height:60px;padding:8px}.leave-header-stats article small{display:none}.leave-page-head .primary-button{justify-content:center;width:100%}}.leave-table th{vertical-align:middle;height:62px;line-height:1.25}.leave-table td{vertical-align:middle!important}.leave-detail-content{grid-template-columns:1.25fr 1.25fr 1fr auto;gap:12px;padding:18px 22px}.leave-class-filter{color:#71807b;flex:none;align-items:center;gap:8px;font-size:10px;font-weight:800;display:flex}.leave-class-filter select{color:#3e5b53;background:#fff;border:1px solid #d4dfd9;border-radius:8px;outline:0;min-width:148px;padding:9px 28px 9px 10px;font-size:10px;font-weight:700}.leave-class-filter select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f81761a}.leave-table th:nth-child(7){width:9%}.leave-table th:nth-child(8){width:11%}.leave-student-id{color:#687b75;letter-spacing:.02em;font-size:11px}.leave-class-name{color:#466c60;font-size:11px;line-height:1.4;display:inline-block}.leave-table time{font-size:12px}@media (width<=720px){.leave-class-filter{justify-content:space-between;width:100%}.leave-class-filter select{flex:1}}.leave-table{min-width:980px}.leave-table th:first-child,.leave-table th:nth-child(2){width:15%}.leave-table th:nth-child(3){width:18%}.leave-table th:nth-child(4){width:12%}.leave-table th:nth-child(5){width:24%}.leave-table th:nth-child(6),.leave-table th:nth-child(7){width:8%}.leave-table{table-layout:fixed;width:100%;min-width:980px}.leave-table td:first-child strong,.leave-table td:nth-child(3) span{white-space:nowrap}.leave-table td:nth-child(3) span{text-overflow:ellipsis;max-width:100%;overflow:hidden}.leave-table td:first-child strong{font-size:16px;font-weight:900}.dorm-unstructured-actions{align-items:center;gap:10px;display:flex}.dorm-unstructured-actions .secondary-button{padding:7px 10px;font-size:10px}.recognition-toolbar{align-items:center;gap:18px;margin-bottom:13px;padding:10px 13px;display:flex}.recognition-tabs{gap:4px;display:flex}.recognition-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:9px 12px;font-weight:800}.recognition-tabs button.active{color:#fff;background:var(--teal)}.recognition-tabs b{opacity:.72;margin-left:4px;font-size:10px}.recognition-toolbar .search-box{width:min(360px,100%);margin-left:auto}.recognition-form,.party-editor{gap:13px;margin-bottom:13px;padding:16px;display:grid}.recognition-form>div:first-child,.party-editor>div:first-child{gap:4px;display:grid}.recognition-form small,.party-editor small{color:var(--muted)}.recognition-form-grid,.party-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:11px;display:grid}.recognition-form-grid label,.party-form-grid label{color:var(--muted);gap:5px;font-size:10px;font-weight:800;display:grid}.recognition-form-grid input,.recognition-form-grid select,.recognition-form-grid textarea,.party-form-grid input,.party-form-grid select{box-sizing:border-box;width:100%;min-height:36px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d7dfda;border-radius:7px;padding:8px 9px}.recognition-form-grid textarea{resize:vertical;min-height:62px}.recognition-form footer{justify-content:flex-end;gap:8px;display:flex}.recognition-list,.party-list{overflow:hidden}.recognition-table,.party-table{display:grid}.recognition-table-head,.party-table-head,.recognition-table article,.party-table article{grid-template-columns:1.1fr 1.2fr 1fr .75fr;align-items:center;gap:13px;padding:13px 16px;display:grid}.recognition-table-head,.party-table-head{color:var(--muted);background:#f5f8f5;font-size:10px;font-weight:800}.recognition-table article,.party-table article{border-top:1px solid #e5eae5;font-size:11px}.recognition-table article>span,.party-table article>span{min-width:0}.recognition-table article strong,.recognition-table article small,.party-table article strong,.party-table article small{display:block}.recognition-table article small,.party-table article small{color:var(--muted);margin-top:4px}.recognition-table article time,.party-table article time{color:var(--muted)}.recognition-table article button,.party-table article button{justify-self:start}.discipline-status,.party-status{font-weight:800}.discipline-status.active{color:#bd493c}.discipline-status.lifted,.discipline-status.revoked{color:var(--teal)}.party-table-head,.party-table article{grid-template-columns:1.1fr .85fr 1.1fr .75fr auto}.party-status{color:var(--teal)}.party-status.out{color:#a06a37}.party-list-head{justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.party-list-head .search-box{width:min(330px,100%)}.recognition-empty{color:var(--muted);text-align:center;padding:48px 20px}.party-stage-overview{margin-bottom:13px}.party-stage-overview-head{justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:10px;padding:0 2px;display:flex}.party-stage-overview-head>div{gap:4px;display:grid}.party-stage-overview-head strong{color:var(--navy);letter-spacing:-.03em;font-size:18px}.party-stage-overview-head>small{color:var(--muted);font-size:10px}.party-stage-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.party-stage-card{--stage-color:#a56b5d;border:1px solid #dfe5df;border-top:4px solid var(--stage-color);min-width:0;min-height:130px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:10px 10px 5px;flex-direction:column;align-items:stretch;padding:13px 14px 12px;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;display:flex;position:relative}.party-stage-card:hover{border-color:var(--stage-color);transform:translateY(-2px);box-shadow:0 8px 18px #29463d1c}.party-stage-card:focus-visible{outline-offset:2px;outline:3px solid #2f81763d}.party-stage-card.active{border-color:var(--stage-color);background:#fffaf7;box-shadow:0 0 0 2px #a56b5d26,0 8px 18px #29463d1a}.party-stage-card.activist{--stage-color:#3b8879}.party-stage-card.development{--stage-color:#9b7740}.party-stage-card.probationary{--stage-color:#587ca0}.party-stage-card.member{--stage-color:#6b6b8f}.party-stage-card-top{color:var(--stage-color);justify-content:space-between;align-items:flex-start;gap:8px;font-size:12px;font-weight:850;display:flex}.party-stage-card-top>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.party-stage-card-top b{color:var(--navy);flex:none;font:700 27px/1 Georgia,Times New Roman,serif}.party-stage-card>small{color:#687873;min-height:31px;margin-top:9px;font-size:10px;line-height:1.55}.party-stage-card>i{color:var(--stage-color);justify-content:space-between;align-items:center;gap:6px;margin-top:auto;padding-top:10px;font-size:9px;font-style:normal;font-weight:800;display:flex}.party-stage-card>i em{font-size:15px;font-style:normal;line-height:1;transition:transform .18s}.party-stage-card:hover>i em,.party-stage-card.active>i em{transform:translate(3px)}.party-workflow-strip{color:#6d7e76;background:#fbfdfb;border:1px solid #e2e9e4;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;font-size:10px;display:flex}.party-workflow-strip>span:not(.party-workflow-title),.party-workflow-strip>button{color:inherit;font:inherit;cursor:pointer;background:#f1f6f2;border:0;border-radius:999px;padding:4px 7px}.party-workflow-strip>button:hover,.party-workflow-strip>button.active{color:var(--teal);background:#e5f2ed}.party-workflow-strip b{color:var(--navy);margin-left:3px;font-size:12px}.party-workflow-title{color:var(--teal);margin-right:2px;font-weight:850}.party-list-head>div:first-child{gap:4px;min-width:0;display:grid}.party-active-filter{color:var(--teal);font-size:10px}.party-list-actions{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.party-row-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.recognition-table.discipline-table .recognition-table-head,.recognition-table.discipline-table article{grid-template-columns:1.05fr .95fr 1.25fr .7fr .75fr .95fr .7fr auto}@media (width<=720px){.recognition-toolbar{flex-direction:column;align-items:stretch}.recognition-toolbar .search-box{width:100%;margin-left:0}.recognition-form-grid,.party-form-grid{grid-template-columns:1fr}.recognition-table,.party-table{overflow-x:auto}.recognition-table-head,.recognition-table article{min-width:680px}.party-table-head,.party-table article{min-width:760px}.party-list-head{flex-direction:column;align-items:stretch}.party-list-head .search-box{width:100%}.party-list-actions{flex-direction:column;align-items:stretch}.party-list-actions .search-box{width:100%}.party-stage-overview-head{flex-direction:column;align-items:stretch;gap:6px}.party-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.party-stage-card{min-height:118px;padding:11px 12px}.party-workflow-strip{flex-direction:column;align-items:flex-start;gap:6px}.party-workflow-strip>span:not(.party-workflow-title),.party-workflow-strip>button{width:max-content}}@media (width<=430px){.party-stage-grid{grid-template-columns:1fr}}.dorm-building-grid .building-card-info strong{font-size:32px}.dorm-building-grid .building-card-info small{margin-top:10px;font-size:14px}.dorm-building-grid .building-card-info em{margin-top:17px;font-size:15px}.actions-page{max-width:1500px;margin:0 auto;padding-bottom:28px}.action-page-head{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.action-page-head h2{color:var(--navy);letter-spacing:-.04em;margin:5px 0 6px;font-size:28px}.action-page-head p{color:#71817c;margin:0;font-size:12px}.action-overview{margin-bottom:18px}.action-overview-title{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.action-overview-title h3{color:var(--navy);margin:0;font-size:17px}.action-overview-title span{color:#71817c;font-size:11px}.action-stats-v2{background:0 0;border:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;display:grid}.action-stats-v2 article{background:#fffefa;border:1px solid #e0e6e0;border-radius:12px 12px 4px;min-height:104px;padding:16px 18px;position:relative;overflow:hidden;box-shadow:0 6px 18px #1c312c09}.action-stats-v2 article>span,.action-stats-v2 article>strong,.action-stats-v2 article>small{z-index:1;display:block;position:relative}.action-stats-v2 article>span{color:#65746f;font-size:11px;font-weight:800}.action-stats-v2 article>strong{color:var(--navy);margin:9px 0 4px;font:700 30px/1 Georgia,serif}.action-stats-v2 article>small{color:#8b9894;font-size:10px}.action-stats-v2 article>svg{border-radius:50%;width:39px;height:39px;padding:9px;position:absolute;top:17px;right:17px}.action-stats-v2 article:after{content:"";opacity:.055;background:currentColor;border-radius:50%;width:93px;height:93px;position:absolute;bottom:-28px;right:-20px}.action-stats-v2 .running{color:#328b7e;background:#f4faf7;border-color:#d9e9e2}.action-stats-v2 .running svg{color:#328b7e;background:#dcefe8}.action-stats-v2 .soon{color:#bf7c27;background:#fffaf2;border-color:#eee1ca}.action-stats-v2 .soon svg{color:#bf7c27;background:#ffebca}.action-stats-v2 .overdue{color:#be564d;background:#fff7f5;border-color:#f0d7d2}.action-stats-v2 .overdue svg{color:#be564d;background:#fbe1dc}.action-stats-v2 .completed{color:#3c8275;background:#f5faf7;border-color:#dce9e2}.action-stats-v2 .completed svg{color:#3c8275;background:#dcefe8}.action-workspace{grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:16px;display:grid}.action-main-column{min-width:0}.action-list-panel{padding:0;overflow:hidden}.action-list-head{justify-content:space-between;align-items:center;gap:16px;padding:18px 20px 13px;display:flex}.action-list-head h3{color:var(--navy);margin:0 0 4px;font-size:18px}.action-list-head>div>span{color:#8a9692;font-size:10px}.action-search{color:#72817c;background:#fbfcfa;border:1px solid #dfe5e0;border-radius:8px;align-items:center;gap:8px;width:min(330px,45%);padding:9px 11px;display:flex}.action-search input{width:100%;color:var(--navy);font:inherit;background:0 0;border:0;outline:0;font-size:11px}.action-status-tabs{border-bottom:1px solid #e5e9e4;gap:4px;padding:0 20px 12px;display:flex}.action-status-tabs button{color:#6e7c77;background:0 0;border:0;border-radius:7px;padding:8px 13px;font-size:11px;font-weight:750}.action-status-tabs button b{color:#98a49f;margin-left:5px;font-size:10px}.action-status-tabs button.active{color:#fff;background:var(--teal);box-shadow:0 5px 13px #2f81762e}.action-status-tabs button.active b{color:#d8f0e9}.action-filter-row{background:#fbfcfa;border-bottom:1px solid #e5e9e4;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px 20px;display:grid}.action-filter-row select{color:#53635e;min-width:0;font:inherit;background:#fff;border:1px solid #d9e2dd;border-radius:7px;padding:8px 10px;font-size:11px}.action-table{overflow-x:auto}.action-table-head,.action-table-row{grid-template-columns:minmax(220px,1.6fr) 96px 74px 106px minmax(130px,1fr) 72px 62px;align-items:center;column-gap:14px;min-width:810px;display:grid}.action-table-head{color:#87938e;background:#f8faf7;padding:11px 20px;font-size:10px;font-weight:800}.action-table-row{cursor:pointer;border-top:1px solid #edf0ec;min-height:88px;padding:12px 20px;transition:background .15s}.action-table-row:hover{background:#f5faf7}.action-name-cell{align-items:center;gap:11px;min-width:0;display:flex}.action-name-cell>span{min-width:0}.action-name-cell strong,.action-name-cell small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.action-name-cell strong{color:var(--navy);font-size:13px}.action-name-cell small{color:#85918d;margin-top:5px;font-size:10px}.action-type-badge{white-space:nowrap;border-radius:6px;align-items:center;width:max-content;max-width:100%;padding:5px 7px;font-size:10px;font-weight:750;display:inline-flex}.action-type-badge.purple{color:#6558a6;background:#eeeaff}.action-type-badge.teal{color:#39756c;background:#e2f1ed}.action-type-badge.amber{color:#9b6a23;background:#fff0d8}.action-student-count{color:var(--navy);font-size:13px}.action-due{font-size:11px;font-weight:800;line-height:1.3;display:block}.action-due small{color:#8a9692;margin-top:4px;font-size:9px;font-weight:500;display:block}.action-due.soon{color:#bb7620}.action-due.urgent,.action-due.overdue{color:#bd5148}.action-due.done{color:#579080}.action-due.muted,.action-due.normal{color:#4f7168}.action-progress>span{color:#65746f;font-size:10px;display:block}.action-progress>span b{color:var(--navy);font-size:12px}.action-progress>i{background:#e8eeea;border-radius:99px;height:5px;margin-top:6px;display:block;overflow:hidden}.action-progress>i em{border-radius:inherit;background:var(--teal);height:100%;display:block}.action-progress>small{color:#8c9994;margin-top:5px;font-size:9px;display:block}.action-status-pill{white-space:nowrap;border-radius:99px;width:max-content;padding:5px 8px;font-size:10px;font-weight:800}.action-status-pill.running{color:#32776c;background:#e1f2ec}.action-status-pill.pending{color:#8c7b63;background:#f4efe7}.action-status-pill.done{color:#687a75;background:#edf1ee}.action-row-view{color:var(--teal);white-space:nowrap;background:#fff;border:1px solid #c8dcd5;border-radius:6px;align-items:center;gap:3px;padding:6px 7px;font-size:10px;font-weight:800;display:inline-flex}.action-row-view svg{flex:none}.action-empty{color:#8c9994;justify-items:center;gap:8px;padding:65px 20px;display:grid}.action-empty strong{color:#53645f;font-size:13px}.action-empty span{font-size:10px}.action-today-panel{background:#fffefa;border:1px solid #e0e6e0;border-radius:12px 12px 4px;padding:18px 15px;box-shadow:0 6px 18px #1c312c09}.action-today-head{border-bottom:1px solid #e5e9e4;justify-content:space-between;align-items:flex-end;padding:0 3px 12px;display:flex}.action-today-head h3{color:var(--navy);margin:5px 0 0;font-size:17px}.action-today-head>span{color:#bd6a35;font-size:11px;font-weight:800}.action-today-item{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #edf0ec;align-items:center;gap:9px;padding:13px 3px;display:flex}.action-today-item:hover{background:#f5faf7}.action-today-item>span{flex:1;min-width:0}.action-today-item strong,.action-today-item small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.action-today-item strong{color:var(--navy);font-size:11px}.action-today-item small{color:#bf6e31;margin-top:4px;font-size:9px}.action-today-item>svg{color:#8a9993}.action-today-empty{color:#8a9993;text-align:center;justify-items:center;gap:7px;padding:36px 10px;display:grid}.action-today-empty strong{color:#52645e;font-size:12px}.action-today-empty span{font-size:10px;line-height:1.5}.action-today-summary{color:#687873;background:#f3f7f4;border-radius:8px;gap:8px;margin-top:13px;padding:12px;font-size:10px;display:grid}.action-today-summary b{color:var(--teal);margin-right:3px;font-size:14px}.action-detail-backdrop{z-index:40;background:#142a262e;position:fixed;inset:0}.task-detail-drawer{background:#fbfcfa;border-left:1px solid #dfe7e1;flex-direction:column;width:min(480px,100vw);height:100%;animation:.2s ease-out action-drawer-in;display:flex;position:absolute;top:0;right:0;overflow-y:auto;box-shadow:-18px 0 45px #112b262b}.task-drawer-header{background:#fffefa;border-bottom:1px solid #e3e9e4;justify-content:space-between;gap:14px;padding:27px 25px 18px;display:flex}.task-drawer-header h2{color:var(--navy);letter-spacing:-.025em;margin:5px 0 10px;font-size:21px}.task-drawer-header .drawer-close{flex:none}.task-drawer-meta{color:#899590;background:#fffefa;flex-wrap:wrap;gap:15px;padding:14px 25px;font-size:10px;display:flex}.task-drawer-meta b{color:#435d56;margin-left:4px}.task-drawer-progress{background:#f4faf7;border:1px solid #dce7e1;border-radius:10px;margin:0 18px 14px;padding:17px}.task-drawer-progress>div{justify-content:space-between;align-items:baseline;display:flex}.task-drawer-progress h3{color:#51716a;margin:0 0 8px;font-size:12px}.task-drawer-progress strong{color:var(--navy);font:700 25px/1 Georgia,serif}.task-drawer-progress strong small{color:#7b8d87;font:600 11px sans-serif}.task-drawer-progress>span{float:right;color:var(--teal);margin-top:-20px;font-size:12px;font-weight:800}.task-drawer-progress>i{background:#dfece6;border-radius:99px;height:7px;margin-top:10px;display:block;overflow:hidden}.task-drawer-progress>i em{border-radius:inherit;background:var(--teal);height:100%;display:block}.task-drawer-progress p{color:#bb6e33;margin:8px 0 0;font-size:10px;font-weight:750}.task-drawer-section{background:#fffefa;border:1px solid #e0e6e1;border-radius:10px;margin:0 18px 14px;padding:15px 16px}.task-drawer-section.compact{padding-bottom:12px}.task-drawer-section-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.task-drawer-section-head h3{color:var(--navy);margin:0;font-size:13px}.task-drawer-section-head h3 b{color:var(--teal);margin-left:4px}.task-drawer-section-head>span{color:#909c97;font-size:10px}.task-drawer-section-head button{color:var(--teal);background:#fff;border:1px solid #c4dbd3;border-radius:6px;padding:6px 8px;font-size:10px;font-weight:800}.task-pending-list{margin-top:9px}.task-pending-list article{border-top:1px solid #eef1ee;align-items:center;gap:8px;padding:9px 0;display:flex}.task-pending-list article>div{flex:1;min-width:0}.task-pending-list article strong,.task-pending-list article small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.task-pending-list article strong{color:#314d46;font-size:11px}.task-pending-list article small{color:#8a9893;margin-top:3px;font-size:9px}.task-pending-list article>button{color:var(--teal);background:0 0;border:0;font-size:10px;font-weight:800}.task-submitted-summary{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.task-submitted-summary span,.task-submitted-summary em{color:#4d756a;background:#eaf4f0;border-radius:5px;padding:5px 7px;font-size:10px;font-style:normal}.task-submitted-summary em{color:#909b97;background:#f0f2f0}.task-drawer-info{margin:11px 0 0}.task-drawer-info div{border-top:1px solid #eef1ee;grid-template-columns:72px 1fr;gap:8px;padding-top:8px;font-size:10px;display:grid}.task-drawer-info dt{color:#8b9994}.task-drawer-info dd{color:#516761;word-break:break-all;margin:0}.task-drawer-actions{background:#fffffcf5;border-top:1px solid #dfe6e1;justify-content:flex-end;gap:8px;margin-top:auto;padding:14px 18px;display:flex;position:sticky;bottom:0}.task-drawer-actions>button:not(.danger-button){color:var(--teal);background:#fff;border:1px solid #bfd5cd;border-radius:7px;padding:9px 11px;font-size:10px;font-weight:800}@keyframes action-drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}@media (width<=1100px){.action-workspace{grid-template-columns:1fr}.action-today-panel{grid-template-columns:1fr 1fr;gap:0 18px;display:grid}.action-today-head{grid-column:1/-1}.action-today-summary{align-self:end}}@media (width<=720px){.actions-page{padding:0 13px 24px}.action-page-head{flex-direction:column;align-items:flex-start;gap:12px}.action-page-head .primary-button{width:100%}.action-stats-v2{grid-template-columns:repeat(2,minmax(0,1fr))}.action-stats-v2 article{min-height:92px;padding:13px}.action-stats-v2 article>strong{font-size:25px}.action-list-head{flex-direction:column;align-items:flex-start}.action-search{width:100%}.action-filter-row{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 13px}.action-status-tabs{padding:0 13px 10px;overflow-x:auto}.action-status-tabs button{flex:none}.action-table-head,.action-table-row{grid-template-columns:minmax(185px,1.4fr) 82px 60px 95px minmax(115px,1fr) 66px 55px;column-gap:9px}.action-table-head{padding:10px 13px}.action-table-row{padding:11px 13px}.action-today-panel{display:block}.task-detail-drawer{width:100%}.task-drawer-header,.task-drawer-meta{padding-left:18px;padding-right:18px}.task-drawer-section,.task-drawer-progress{margin-left:12px;margin-right:12px}.task-drawer-actions{padding:12px}.task-drawer-actions .danger-button{margin-right:auto}}.sidebar nav{scrollbar-width:none;min-height:0;overflow-y:auto}.sidebar nav::-webkit-scrollbar{display:none}.attendance-page .attendance-head-stack{gap:15px;display:grid}.attendance-page .attendance-record-panel{flex-direction:column;flex:auto;min-height:0;display:flex}.attendance-page .attendance-table-wrap{flex:auto;min-height:0;overflow:auto}.attendance-page .attendance-pagination{flex:none}.attendance-range-switch{background:#e8ebe7;border-radius:10px;gap:3px;padding:4px;display:flex}.attendance-range-switch button{color:#65736f;background:0 0;border:0;border-radius:7px;min-width:82px;padding:9px 12px;font-size:11px;font-weight:800}.attendance-range-switch button.active{color:#fff;background:var(--navy);box-shadow:0 5px 14px #193a392e}.attendance-filter-panel{align-items:center;gap:12px;padding:9px 13px;display:flex}.attendance-intake-dialog{width:min(640px,94vw)}.attendance-intake-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.attendance-intake-choices button{border:1px solid var(--paper-line);color:#3b4a44;text-align:left;cursor:pointer;background:#fffdf7;border-radius:8px;gap:4px;padding:13px 14px;display:grid}.attendance-intake-choices button strong{font-size:12.5px}.attendance-intake-choices button small{color:#8a8174;font-size:10.5px}.attendance-intake-choices button:hover:not(:disabled){border-color:var(--paper-moss);background:#f6f2e6}.attendance-intake-choices button.is-active{border-color:var(--paper-moss);background:var(--paper-moss-soft);box-shadow:inset 0 -2px 0 var(--paper-moss)}.attendance-intake-choices button:disabled{opacity:.45;cursor:not-allowed}.attendance-export-dialog{width:min(720px,94vw)}.register-import-dialog{width:min(760px,94vw)}.profile-header-actions{gap:8px}.profile-import-button{color:#6b5b3e;white-space:nowrap;cursor:pointer;background:#fbf6ea;border:1px solid #cdbb99;border-radius:7px;height:34px;padding:0 12px;font-size:11.5px;font-weight:800}.profile-import-button:hover{border-color:var(--paper-moss);color:#315f51}.v2-required{color:#9aa39d;margin-left:6px;font-size:10px;font-style:normal;font-weight:700}.v2-dialog>header>.primary-button,.v2-dialog>header>.secondary-button{white-space:nowrap;height:34px;padding:0 13px}.v2-dialog>header>.primary-button,.v2-dialog>header>h2+.secondary-button{margin-left:auto}.register-import-summary{border-bottom:1px solid var(--paper-line);align-items:center;gap:22px;padding:4px 2px 12px;display:flex}.register-import-summary>div{align-items:baseline;gap:7px;display:flex}.register-import-summary span{color:var(--paper-muted);font-size:11px;font-weight:750}.register-import-summary strong{color:#315f51;font-variant-numeric:tabular-nums;font:700 20px/1 Georgia,serif}.register-import-summary>div.is-muted strong{color:#a9b3ae}.register-import-summary>div.has-error strong{color:#a94739}.register-import-summary>p{color:var(--paper-muted);margin:0 0 0 auto;font-size:11px}.register-import-summary .v2-link{margin-left:10px}.register-import-note{color:#81673c;background:#fbf2df;border:1px solid #e1d1af;border-radius:6px;margin:0;padding:9px 11px;font-size:11px;line-height:1.7}.register-import-rows{max-height:min(calc(46 * var(--vh1)), 380px);gap:2px;display:grid;overflow-y:auto}.register-import-row{border-bottom:1px dashed var(--paper-line-soft);grid-template-columns:58px 116px minmax(96px,150px) minmax(0,1fr);align-items:center;gap:10px;padding:8px 2px;font-size:11.5px;display:grid}.register-import-status{color:#327255;white-space:nowrap;background:#e5f2e9;border-radius:4px;justify-self:start;padding:3px 7px;font-size:10px;font-weight:800}.register-import-row.is-skip .register-import-status{color:#857a66;background:#f2eee4}.register-import-row.is-error .register-import-status{color:#b14f3f;background:#fbe8e3}.register-import-row.is-skip{color:#8f8778}.register-import-where{color:#9a9384;font-variant-numeric:tabular-nums}.register-import-who{color:#315f51;text-overflow:ellipsis;white-space:nowrap;font-weight:750;overflow:hidden}.register-import-message{color:#6d7a72;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.register-import-row.is-error .register-import-message{color:#a94739}.attendance-export-ai{align-items:center;gap:8px;display:flex}.attendance-export-ai input{flex:1}.attendance-export-ai .secondary-button{white-space:nowrap}.attendance-export-note{color:#81673c;background:#fbf2df;border:1px solid #e1d1af;border-radius:6px;margin:-4px 0 0;padding:8px 10px;font-size:11px}.attendance-export-fields{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:6px;display:grid}.attendance-export-fields label{border:1px solid var(--paper-line);color:#55635c;cursor:pointer;background:#fffdf7;border-radius:6px;align-items:center;gap:6px;padding:7px 9px;font-size:11px;display:flex}.attendance-export-fields label.is-checked{border-color:var(--paper-moss);color:#33513e;background:#eef4ef}.attendance-export-fields input{width:14px;height:14px;accent-color:var(--teal)}.attendance-export-scope{gap:8px;display:flex}.attendance-export-scope button{border:1px solid var(--paper-line);color:#55635c;cursor:pointer;background:#fffdf7;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px;font-size:11.5px;display:inline-flex}.attendance-export-scope button.is-active{border-color:var(--paper-moss);color:#33513e;background:#eef4ef}.attendance-export-scope button:disabled{opacity:.45;cursor:not-allowed}.attendance-export-scope strong{font-variant-numeric:tabular-nums}.attendance-export-narrow{color:#8a6a2f;margin-left:8px;font-style:normal;font-weight:700}.attendance-export-picks{align-items:center;gap:10px;display:flex}.attendance-export-picks select{border:1px solid var(--paper-line);color:#3b4038;background:#fffdf7;border-radius:6px;min-width:160px;height:38px;padding:0 10px;font-size:11.5px}.attendance-export-picks .picker-field{flex:auto;min-width:0}.attendance-export-summary{color:var(--paper-muted);margin:0;font-size:11px;line-height:1.7}.attendance-record-panel>.attendance-filter-panel{border-bottom:1px solid #e3e7e2}.attendance-search-box{flex:auto;min-width:200px}.column-filter{min-height:26px;color:inherit;border:1px solid #0000;border-radius:6px;align-items:center;gap:4px;padding:0 5px;display:inline-flex;position:relative}.column-filter.active{color:var(--teal);background:#edf7f3;border-color:#b9d8ce}.column-filter select{cursor:pointer;opacity:0;width:100%;height:100%;position:absolute;inset:0}.column-filter .ui-icon{pointer-events:none;color:#83938d}.column-filter.active .ui-icon{color:var(--teal)}.column-sort{min-width:0;color:inherit;font:inherit;font-weight:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.column-sort:hover,.column-sort.active{color:var(--teal)}.column-sort b{color:var(--teal);font-size:10px;line-height:1}.attendance-filter-actions{flex:none;align-items:center;gap:7px;margin-left:auto;display:flex}.attendance-filter-actions .primary-button,.attendance-filter-actions .secondary-button{white-space:nowrap;height:38px;padding:0 13px;font-size:10px}.attendance-record-panel{overflow:hidden}.attendance-record-heading{border-bottom:1px solid #e3e7e2;justify-content:space-between;align-items:center;min-height:54px;padding:12px 18px;display:flex}.attendance-record-heading div strong,.attendance-record-heading div span{display:block}.attendance-record-heading div strong{color:var(--navy);font-size:14px}.attendance-record-heading div span{color:#8a9591;margin-top:3px;font-size:9px}.attendance-record-heading>span{color:var(--teal);background:#e7f2ee;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:800}.attendance-table-wrap{width:100%;overflow-x:auto}.attendance-table{border-collapse:collapse;table-layout:fixed;width:100%}.attendance-table th{color:#eaf3f0;background:var(--navy);text-align:center;white-space:nowrap;height:46px;padding:9px 8px;font-size:10px;font-weight:800}.attendance-table td{color:#586963;text-align:center;vertical-align:middle;border-bottom:1px solid #e4e8e3;height:58px;padding:9px 8px;font-size:10px;line-height:1.45}.attendance-table tbody tr:last-child td{border-bottom:0}.attendance-table tbody tr:hover td{background:#f7faf8}.attendance-table tbody tr.abnormal-row td{background:#fffdf9}.attendance-table tbody tr.abnormal-row:hover td{background:#fff9f2}.attendance-table time{color:#435d56;white-space:nowrap;font-size:11px;font-weight:750}.attendance-student-link{color:var(--navy);background:0 0;border:0;padding:0;font-size:13px;font-weight:900}.attendance-student-link:hover{color:var(--teal);text-underline-offset:3px;text-decoration:underline}.attendance-class-name,.attendance-note{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.attendance-class-name{color:#416c61;font-weight:700}.attendance-note{color:#77847f}.attendance-type-chip,.attendance-status-chip{white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;padding:5px 8px;font-weight:800;display:inline-flex}.attendance-type-chip{color:#396c62;background:#e6f0ed}.attendance-status-chip.normal{color:#327255;background:#e5f2e9}.attendance-status-chip.abnormal{color:#b14f3f;background:#fbe8e3}.attendance-empty{text-align:center;align-content:center;justify-items:center;gap:7px;min-height:270px;padding:35px;display:grid}.attendance-empty>span{width:46px;height:46px;color:var(--teal);background:#e5f1ed;border-radius:50%;place-items:center;font-size:20px;display:grid}.attendance-empty strong{color:var(--navy);margin-top:4px;font-size:15px}.attendance-empty p{color:#81908b;margin:0 0 9px;font-size:10px}.attendance-empty-row>td{height:auto;padding:0}.attendance-empty-row:hover>td{background:0 0}@media (width<=1050px){.attendance-filter-panel{flex-wrap:wrap}.attendance-search-box{flex:100%}.attendance-filter-actions{margin-left:0}}@media (width<=680px){.attendance-filter-actions{flex:100%}}.students-page{height:calc(calc(100 * var(--vh1)) - 92px);grid-template-rows:minmax(0,1fr);gap:16px;min-height:720px;padding-top:18px;padding-bottom:18px;display:grid;overflow:hidden}.student-directory-panel{grid-template-rows:auto auto auto minmax(0,1fr) 48px;min-height:0;display:grid;overflow:visible}.student-directory-toolbar{justify-content:space-between;align-items:center;gap:18px;min-width:0;padding:15px 17px 11px;display:flex}.student-directory-search{background:#fbfcfa;border:1px solid #d8e0db;border-radius:8px;align-items:center;gap:9px;width:min(430px,48%);height:42px;padding:0 12px;display:flex}.student-directory-search .ui-icon{color:#61716c}.student-directory-search input{color:#314641;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:13px}.student-directory-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.student-intake-dialog{width:min(640px,94vw)}.student-intake-panel{border:1px solid var(--paper-line);background:#fffdf7;border-radius:8px;gap:13px;padding:15px 16px;display:grid}.student-intake-file{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.student-intake-file input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.student-intake-file label{cursor:pointer;color:#315f51;background:#fbf8f0;border:1px dashed #cdbb99;border-radius:6px;padding:9px 14px;font-size:12px;font-weight:800}.student-intake-file label:hover{border-color:var(--paper-moss);background:#f6f2e6}.student-intake-file>span{color:#8a8174;font-size:11px}.student-intake-switch{align-items:flex-start;gap:9px;display:flex}.student-intake-switch input{width:16px;height:16px;accent-color:var(--teal);margin:2px 0 0}.student-intake-switch strong{color:#3b4a44;font-size:12px;display:block}.student-intake-switch small{color:#8a8174;margin-top:3px;font-size:10.5px;line-height:1.65;display:block}.student-intake-templates{color:#8a8174;flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.student-intake-note{color:#7d8275;margin:0;font-size:11px;line-height:1.7}.student-directory-actions .primary-button{min-height:42px}.student-more-wrap{position:relative}.student-more-trigger{color:#50645e;background:#fff;border:1px solid #d3ddd7;border-radius:8px;place-items:center;width:44px;height:42px;display:grid}.student-more-menu{z-index:24;background:#fff;border:1px solid #dce3de;border-radius:9px;width:150px;padding:5px;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 14px 34px #17353024}.student-more-menu button{color:#4f625c;text-align:left;background:0 0;border:0;border-radius:6px;width:100%;padding:9px 10px}.student-more-menu button:hover{color:var(--teal);background:#edf6f2}.student-filter-toolbar{border-bottom:1px solid #e2e7e2;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:10px 17px 14px;display:flex}.student-quick-filters{align-items:center;gap:7px;min-width:0;display:flex}.student-quick-filters button{color:#5e6e69;white-space:nowrap;background:#f1f4f1;border:0;border-radius:7px;padding:8px 10px;font-size:12px;font-weight:750}.student-quick-filters button b{color:#7c8985;margin-left:6px;font-size:10px}.student-quick-filters button.active{color:#fff;background:var(--teal);box-shadow:0 5px 13px #2f81762e}.student-quick-filters button.active b{color:#d9eeea}.student-filter-actions{align-items:center;gap:7px;display:flex}.student-filter-actions select,.student-filter-actions button{color:#566962;background:#fff;border:1px solid #d5ded8;border-radius:7px;height:36px;padding:0 30px 0 10px;font-size:11px;font-weight:700}.student-filter-actions button{padding:0 12px}.student-filter-actions button.active{border-color:var(--teal);color:var(--teal);background:#edf6f2}.student-advanced-filter{background:#f2f7f4;border-bottom:1px solid #dde5df;grid-template-columns:repeat(5,minmax(125px,1fr)) auto;align-items:end;gap:10px;padding:12px 17px;display:grid}.student-advanced-filter label{color:#61726c;gap:5px;min-width:0;font-size:10px;font-weight:750;display:grid}.student-advanced-filter input,.student-advanced-filter select{color:#40564f;background:#fff;border:1px solid #d5ded8;border-radius:7px;outline:0;width:100%;height:35px;padding:0 9px}.student-advanced-filter>button{height:35px;color:var(--teal);white-space:nowrap;background:0 0;border:0;padding:0 10px;font-weight:750}.student-directory-table-wrap{scrollbar-width:thin;scrollbar-color:#c6d2cc transparent;min-height:0;overflow:auto}.student-directory-table{border-collapse:collapse;table-layout:auto;width:100%;min-width:0}.student-directory-table th{color:#53655f;text-align:center;white-space:nowrap;background:#fafbf8;height:46px;padding:10px 11px;font-size:11px;font-weight:800}.student-directory-table td{color:#586a64;vertical-align:middle;border-top:1px solid #e5e9e4;height:70px;padding:10px 13px;font-size:12px}.student-directory-table tbody tr{cursor:pointer}.student-directory-table tbody tr:hover td{background:#f1f7f4}.directory-student{justify-content:center;align-items:center;gap:10px;display:flex}.directory-student>i{color:#267667;background:#dfeee9;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:14px;font-style:normal;font-weight:850;line-height:1;display:grid}.directory-student>span,.directory-student strong,.directory-student small,.directory-stack,.directory-stack strong,.directory-stack small{min-width:0;display:block}.directory-student strong{color:#263a36;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.directory-student strong em{color:#b04d3f;vertical-align:2px;background:#fbe7e2;border-radius:4px;margin-left:5px;padding:2px 4px;font-size:9px;font-style:normal;display:inline-block}.directory-student small,.directory-stack small{color:#798681;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;overflow:hidden;font-size:11px!important}.directory-stack strong{color:#445d56;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.directory-stack.academic strong{color:#354f48}.directory-row-actions{align-items:center;gap:5px;display:flex;position:relative}.directory-row-actions>button{color:#267166;white-space:nowrap;background:#fff;border:1px solid #c9d9d3;border-radius:6px;min-width:48px;padding:6px 10px;font-weight:750}.directory-row-actions>div{position:relative}.directory-row-actions .row-more-button{color:#4d635c;background:0 0;border:0;width:26px;height:30px;font-size:18px}.directory-row-menu{z-index:25;background:#fff;border:1px solid #dae2dc;border-radius:8px;width:135px;padding:4px;position:absolute;top:31px;right:0;overflow:hidden;box-shadow:0 12px 28px #1c393326}.directory-row-menu button{color:#4d605a;text-align:left;background:0 0;border:0;border-radius:5px;width:100%;padding:8px}.directory-row-menu button:hover{color:var(--teal);background:#edf5f2}.student-directory-empty{color:#7b8984;text-align:center;place-content:center;gap:5px;min-height:260px;display:grid}.student-directory-empty strong{color:#435a54;font-size:14px}.page-pager{color:#6c7b76;border-top:1px solid #e2e7e2;justify-content:space-between;align-items:center;min-height:48px;padding:7px 17px;font-size:11px;display:flex}.page-pager-pages{align-items:center;gap:4px;display:flex}.page-pager-pages button{color:#536a63;background:0 0;border:0;border-radius:6px;width:28px;height:28px;font-weight:750}.page-pager-pages button.active{color:#fff;background:var(--teal)}.page-pager-pages button:disabled{cursor:default;opacity:.3}.student-data-backdrop{z-index:75}.student-data-modal{width:min(980px,100vw - 32px);max-height:min(820px,calc(calc(100 * var(--vh1)) - 32px));background:#fffefa;border-radius:15px;padding:25px;position:relative;overflow-y:auto;box-shadow:0 28px 75px #0d262247}.student-data-modal>h2{color:var(--navy);margin:5px 0 4px;font-size:24px}.student-data-intro{color:#72807c;margin:0}.student-data-tabs{border-bottom:1px solid #e1e6e1;gap:6px;margin:20px 0 16px;padding-bottom:10px;display:flex}.student-data-tabs button{color:#61716c;background:0 0;border:0;border-radius:7px;padding:8px 12px;font-weight:750}.student-data-tabs button.active{color:var(--teal);background:#e9f4f0}.student-import-drop{color:#6d7b77;text-align:center;background:#f5faf7;border:1.5px dashed #afc8bf;border-radius:12px;place-content:center;justify-items:center;gap:8px;min-height:230px;padding:25px;display:grid}.student-import-drop>i{width:48px;height:48px;color:var(--teal);background:#dff0e9;border-radius:50%;place-items:center;font-size:24px;font-style:normal;display:grid}.student-import-drop strong{color:#274a42;font-size:16px}.student-import-drop span{max-width:520px}.student-import-drop button{margin-top:8px}.student-import-types{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px;display:grid}.student-import-types span{color:#51645e;background:#fff;border:1px solid #e0e6e1;border-radius:8px;align-items:center;gap:8px;padding:10px;font-weight:700;display:flex}.student-import-types b{color:#2c796e}.student-import-notice{color:#7a8884;margin:12px 0 0}.intelligent-import-preview{gap:14px;display:grid}.import-preview-head{background:#edf7f3;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:20px;padding:16px 18px;display:flex}.import-preview-head>div{gap:4px;min-width:0;display:grid}.import-preview-head span{color:var(--teal);font-size:13px;font-weight:800}.import-preview-head strong{color:#173f38;text-overflow:ellipsis;white-space:nowrap;font-size:17px;overflow:hidden}.import-preview-head small{color:#6f7f7a}.import-preview-metrics{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.import-preview-metrics article{background:#fff;border:1px solid #e0e8e3;border-radius:10px;min-width:0;padding:12px}.import-preview-metrics article.warning{background:#fff8f1;border-color:#efc7ad}.import-preview-metrics span,.import-preview-metrics small{color:#76847f;font-size:11px;display:block}.import-preview-metrics strong{color:#173f38;margin:4px 0 1px;font-size:21px;display:block}.import-sheet-list{gap:10px;display:grid}.import-sheet-list>section{background:#fff;border:1px solid #dde6e1;border-radius:11px;overflow:hidden}.import-sheet-list>section>header{background:#f5f8f6;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;display:flex}.import-sheet-list header>div{align-items:baseline;gap:9px;display:flex}.import-sheet-list header strong{color:#254941}.import-sheet-list header span,.import-sheet-list header small{color:#77847f;font-size:12px}.import-mapping-list{max-height:250px;display:grid;overflow-y:auto}.import-mapping-list>div{border-top:1px solid #edf0ed;grid-template-columns:minmax(110px,1fr) 20px minmax(170px,1.45fr) 76px minmax(0,1.5fr);align-items:center;gap:8px;min-height:43px;padding:7px 13px;display:grid}.import-mapping-list>div:first-child{border-top:0}.import-mapping-list>div.needs-confirmation{background:#fff9f1}.import-mapping-list>div>span{color:#344c46;text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.import-mapping-list>div>i{color:#a6b3af;text-align:center;font-style:normal}.import-mapping-list code{color:#47645d;text-overflow:ellipsis;white-space:nowrap;font-family:inherit;font-size:12px;overflow:hidden}.import-mapping-list em{color:#547069;background:#eef3f1;border-radius:999px;justify-self:start;padding:3px 7px;font-size:11px;font-style:normal}.import-mapping-list em.ai{color:#63549a;background:#f0edfb}.import-mapping-list em.user{color:#8b5d24;background:#fff0d9}.mapping-confirm-controls{justify-content:flex-end;align-items:center;gap:6px;display:flex}.mapping-confirm-controls button,.mapping-confirm-controls select{color:#35675d;background:#fff;border:1px solid #cddbd5;border-radius:6px;min-width:0;padding:6px 8px;font-size:12px}.mapping-confirm-controls select{max-width:155px}.import-preview-issues{background:#fffaf5;border:1px solid #efd6c4;border-radius:10px;padding:12px 14px}.import-preview-issues>strong{color:#9a552f}.import-preview-issues p{color:#6c5b50;gap:8px;margin:7px 0 0;font-size:12px;display:flex}.import-preview-issues p b{color:#a75a35;flex:0 0 70px}.import-preview-issues small{color:#927967;margin-top:8px;display:block}.import-preview-actions{border-top:1px solid #e4e9e5;justify-content:space-between;align-items:center;gap:16px;padding-top:13px;display:flex}.import-preview-actions span{color:#697a74;font-size:13px}@media (width<=900px){.import-preview-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.import-mapping-list>div{grid-template-columns:minmax(95px,1fr) 16px minmax(135px,1.3fr) 68px}.mapping-confirm-controls{grid-column:1/-1;justify-content:flex-start}.mapping-confirm-controls select{flex:1;max-width:none}}@media (width<=620px){.import-preview-head,.import-preview-actions,.import-sheet-list>section>header{flex-direction:column;align-items:stretch}.import-preview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.import-sheet-list header>div{flex-direction:column;align-items:flex-start;gap:3px}.import-mapping-list>div{grid-template-columns:minmax(90px,1fr) 14px minmax(120px,1.25fr)}.import-mapping-list em{grid-column:1}.mapping-confirm-controls{grid-column:1/-1}.import-preview-actions button{width:100%}}.student-template-list{gap:9px;display:grid}.student-template-list a{color:inherit;border:1px solid #dfe6e1;border-radius:10px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;text-decoration:none;display:grid}.student-template-list a:hover{background:#f3f8f5;border-color:#9fc1b7}.student-template-list a>b{color:#286e63;background:#e2f0eb;border-radius:9px;place-items:center;width:44px;height:44px;font-size:10px;display:grid}.student-template-list strong,.student-template-list small{display:block}.student-template-list strong{color:#314b45;font-size:13px}.student-template-list small{color:#7c8985;margin-top:4px}.student-template-list a>i{color:var(--teal);font-style:normal;font-weight:750}.student-account-summary{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.student-account-summary article{background:#f8faf8;border:1px solid #e0e6e1;border-radius:10px;padding:15px}.student-account-summary span,.student-account-summary strong{display:block}.student-account-summary span{color:#70807b}.student-account-summary strong{color:var(--navy);margin-top:5px;font:700 25px Georgia,serif}.student-account-action{border:1px solid #dfe6e1;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;margin-top:12px;padding:18px;display:flex}.student-account-action strong{color:#2e4a43;font-size:15px}.student-account-action p{color:#71807c;max-width:460px;margin:6px 0}.student-account-action span{color:#2d796e;font-weight:750}.student-account-action>div:last-child{flex:none;gap:8px;display:grid}.student-account-action>div:last-child button:not(.primary-button){color:var(--teal);background:#fff;border:1px solid #cbd9d3;border-radius:7px;padding:9px 11px}.student-import-history{gap:7px;display:grid}.student-import-history article{border-bottom:1px solid #e3e7e3;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 5px;display:grid}.student-import-history article>i{color:#26766a;background:#e4f1ed;border-radius:8px;place-items:center;width:36px;height:36px;font-style:normal;font-weight:850;display:grid}.student-import-history strong,.student-import-history small{display:block}.student-import-history strong{color:#334b45}.student-import-history small{color:#7b8985;margin-top:3px}.student-import-history time{color:#6d7d78;white-space:nowrap}.student-data-empty{color:#788681;text-align:center;place-content:center;gap:5px;min-height:240px;display:grid}.student-data-empty strong{color:#3f5751;font-size:15px}.student-quick-backdrop{z-index:64;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0c211d2e;position:fixed;inset:0}.student-quick-drawer{background:#f9faf7;width:min(470px,100vw);height:100%;padding:24px 20px 108px;animation:.2s ease-out student-drawer-in;position:absolute;top:0;right:0;overflow-y:auto;box-shadow:-22px 0 60px #0f2a2433}.student-quick-close{color:#53645f;background:0 0;border:0;font-size:24px;position:absolute;top:15px;right:16px}.student-quick-drawer>header{align-items:center;gap:12px;padding:4px 34px 16px 0;display:flex}.student-quick-drawer>header>i{color:#267466;background:#dceee8;border-radius:50%;flex:none;place-items:center;width:50px;height:50px;font-size:19px;font-style:normal;font-weight:900;display:grid}.student-quick-drawer>header>div{min-width:0}.student-quick-drawer>header span{align-items:center;gap:10px;display:flex}.student-quick-drawer>header strong{color:#263b36;font-size:18px}.student-quick-drawer>header small{color:#687873;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;display:block;overflow:hidden}.student-quick-today{border-top:1px solid #e0e5e0;border-bottom:1px solid #e0e5e0;align-items:center;gap:10px;padding:13px 2px;display:flex}.student-quick-today>span{color:#65756f}.student-quick-today>strong{color:#26725f;background:#e2f1e9;border-radius:5px;padding:5px 8px}.student-quick-today>strong.leave{color:#b44d41;background:#fbe6e2}.student-quick-today>small{color:#687873}.student-quick-drawer>section{background:#fff;border:1px solid #dde4de;border-radius:10px;margin-top:11px;padding:13px}.student-quick-drawer>section h3{color:#245c52;margin:0 0 11px;font-size:13px}.student-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;display:grid}.student-quick-grid div{min-width:0}.student-quick-grid dt{color:#7c8985;font-size:10px}.student-quick-grid dd{color:#334b45;text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font-size:13px;font-weight:750;overflow:hidden}.student-quick-grid.risk dd{color:#bb4b3d}.student-quick-grid dd.danger{color:#c14f40}.student-quick-signals{border-top:1px dashed #dce3de;margin-top:10px;padding-top:7px}.student-quick-signals p{color:#566a63;margin:4px 0}.student-quick-timeline{display:grid}.student-quick-timeline p{border-top:1px solid #edf0ed;grid-template-columns:55px minmax(0,1fr) auto;align-items:center;gap:9px;margin:0;padding:8px 0;display:grid}.student-quick-timeline p:first-child{border-top:0}.student-quick-timeline time{color:#697974}.student-quick-timeline strong{color:#3c514b;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-quick-timeline span{color:#7d8985;white-space:nowrap}.student-quick-drawer>footer{z-index:3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f9faf7f5;border-top:1px solid #dce3de;grid-template-columns:repeat(2,1fr);gap:8px;width:min(470px,100vw);padding:12px 20px 17px;display:grid;position:fixed;bottom:0;right:0}.student-quick-drawer>footer button{color:#336d63;background:#fff;border:1px solid #cedbd6;border-radius:8px;padding:10px;font-weight:750}.student-quick-drawer>footer button.primary{border-color:var(--teal);color:#fff;background:var(--teal)}@keyframes student-drawer-in{0%{opacity:.7;transform:translate(45px)}to{opacity:1;transform:translate(0)}}@media (width<=1200px){.student-filter-toolbar{flex-direction:column;align-items:flex-start}.student-filter-actions{justify-content:flex-end;width:100%}.student-advanced-filter{grid-template-columns:repeat(3,1fr)}.student-directory-panel{grid-template-rows:auto auto auto minmax(0,1fr) 48px}}@media (width<=760px){.students-page{height:auto;min-height:calc(calc(100 * var(--vh1)) - 76px);display:block;overflow:visible}.student-directory-toolbar{flex-direction:column;align-items:stretch}.student-directory-search{width:100%}.student-directory-actions{justify-content:flex-end}.student-quick-filters{width:100%;padding-bottom:3px;overflow-x:auto}.student-filter-actions{justify-content:flex-start;overflow-x:auto}.student-advanced-filter{grid-template-columns:1fr}.student-directory-table-wrap{max-height:620px}.student-data-tabs{overflow-x:auto}.student-import-types,.student-account-summary{grid-template-columns:repeat(2,1fr)}.student-account-action{flex-direction:column;align-items:stretch}.student-quick-drawer{width:100%}.student-quick-grid{grid-template-columns:repeat(2,1fr)}}.dorm-management-page{gap:14px;padding-top:18px;padding-bottom:20px;display:grid}.dorm-management-head{justify-content:space-between;align-items:center;gap:18px;display:flex}.dorm-management-head h2{color:var(--navy);letter-spacing:-.04em;margin:5px 0 0;font-size:26px}.dorm-management-head p{color:#71807b;margin:7px 0 0;font-size:12px}.dorm-management-head .secondary-button{flex:none}.dorm-search-panel{align-items:center;gap:13px;padding:15px 17px;display:flex}.dorm-search-box{background:#fbfcfa;border:1px solid #d5e0da;border-radius:9px;align-items:center;gap:10px;width:min(540px,100%);height:44px;padding:0 13px;display:flex}.dorm-search-box .ui-icon{color:#60736c}.dorm-search-box input{color:#314b44;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:13px}.dorm-search-box kbd{color:#8a9792;background:#fff;border:1px solid #dbe3de;border-radius:5px;padding:3px 5px;font-size:10px}.dorm-search-panel>span{color:#88948f;font-size:11px}.dorm-unstructured-list article{cursor:pointer;transition:background-color .18s,border-color .18s}.dorm-unstructured-list article:hover,.dorm-unstructured-list article:focus-visible{background:#f5faf7;border-color:#abd0c3;outline:none}.housing-ai-progress-dialog{gap:16px;min-width:min(540px,72vw);padding:8px 0 2px;display:grid}.housing-ai-progress-dialog>strong{color:#29453f;text-align:center;font-size:16px}.housing-ai-progress-dialog>strong.housing-ai-progress-error{color:#b14d42}.housing-ai-progress-dialog>p{color:#74847d;text-align:center;margin:0;font-size:12px;line-height:1.7}.housing-ai-progress-loader{gap:16px;padding:12px 4px 0;display:grid}.housing-ai-progress-track{background:#dfe8e2;border-radius:999px;height:12px;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #21443929}.housing-ai-progress-track:after{content:"";background:linear-gradient(110deg,#0000 0%,#ffffff6b 45%,#0000 70%);animation:1.6s linear infinite housing-ai-progress-shimmer;position:absolute;inset:0}.housing-ai-progress-track>span{z-index:1;border-radius:inherit;background:linear-gradient(90deg,#2d8d7d,#52c1a1);height:100%;transition:width .32s;display:block;position:relative}.housing-ai-progress-checks{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.housing-ai-progress-step{color:#9aa7a1;text-align:center;justify-items:center;gap:7px;display:grid}.housing-ai-progress-step>span{background:#f7faf8;border:1px solid #d3dfd8;border-radius:50%;place-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:grid}.housing-ai-progress-step>small{font-size:10px}.housing-ai-progress-step.current,.housing-ai-progress-step.complete{color:#2d8d7d}.housing-ai-progress-step.current>span{color:#fff;background:#2d8d7d;border-color:#55baa1;animation:1.2s ease-in-out infinite housing-ai-progress-pulse;box-shadow:0 0 0 5px #48b2971f}.housing-ai-progress-step.complete>span{color:#fff;background:#43ad91;border-color:#65c3a9}.housing-ai-progress-dialog>footer{border-top:1px solid #e4ebe5;justify-content:center;padding-top:14px;display:flex}.housing-ai-progress-dialog>footer .primary-button{min-width:140px}@keyframes housing-ai-progress-shimmer{0%{transform:translate(-100%)}to{transform:translate(160%)}}@keyframes housing-ai-progress-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.dorm-overview-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.dorm-overview-stats article{background:#fffefa;border:1px solid #e0e6e1;border-radius:11px;align-items:center;gap:12px;min-width:0;padding:13px 15px;display:flex;box-shadow:0 5px 18px #1b393209}.dorm-overview-stats article>span{min-width:0}.dorm-overview-stats small,.dorm-overview-stats strong{display:block}.dorm-overview-stats small{color:#677873;white-space:nowrap;font-size:11px;font-weight:750}.dorm-overview-stats strong{color:var(--navy);margin-top:5px;font:700 25px/1 Georgia,serif}.dorm-overview-stats strong b{color:#7f8e89;margin-left:4px;font:500 10px/1 inherit}.dorm-building-overview,.dorm-room-panel{padding:0;overflow:hidden}.dorm-section-head{border-bottom:1px solid #e5eae5;align-items:center;gap:14px;min-height:64px;padding:13px 17px;display:flex}.dorm-section-head>div:first-child{margin-right:auto}.dorm-section-head h3{color:#29453f;margin:4px 0 0;font-size:18px}.dorm-section-head h3 small{color:#82908b;font-size:11px;font-weight:600}.dorm-inspection-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.dorm-inspection-actions button{white-space:nowrap}.dorm-filter-tabs,.dorm-floor-tabs{align-items:center;gap:5px;display:flex}.dorm-filter-tabs button,.dorm-floor-tabs button{color:#65736e;background:#f2f5f2;border:1px solid #0000;border-radius:7px;padding:7px 11px;font-size:11px;font-weight:750}.dorm-filter-tabs button.active,.dorm-floor-tabs button.active{color:#fff;background:var(--teal);box-shadow:0 5px 12px #2f817626}.dorm-import-summary{grid-template-columns:110px 110px minmax(0,1fr);align-items:center;gap:10px;margin-bottom:14px;display:grid}.dorm-import-summary>div{background:#f7fbf8;border:1px solid #dce6e0;border-radius:9px;gap:3px;padding:10px 12px;display:grid}.dorm-import-summary>div.has-error{background:#fff7f5;border-color:#e5bbb3}.dorm-import-summary span{color:#75837e;font-size:10px}.dorm-import-summary strong{color:var(--teal);font:700 21px/1 Georgia,serif}.dorm-import-summary .has-error strong{color:#b64f43}.dorm-import-summary p{color:#71817b;margin:0;font-size:11px;line-height:1.6}.dorm-import-warning{color:#a64c42;background:#fff6f3;border:1px solid #ecc5bd;border-radius:8px;margin-bottom:12px;padding:9px 11px;font-size:11px}.dorm-import-table-wrap{max-height:calc(52 * var(--vh1));border:1px solid #e0e7e1;border-radius:9px;overflow:auto}.dorm-import-table{border-collapse:collapse;width:100%;font-size:11px}.dorm-import-table th{z-index:1;color:#6d7a74;background:#f1f5f0;font-weight:800;position:sticky;top:0}.dorm-import-table th,.dorm-import-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #e7ece8;padding:9px 10px}.dorm-import-table tr:last-child td{border-bottom:0}.dorm-import-table tr.is-error{background:#fff9f7}.dorm-import-table td>span{color:#28745f;font-weight:800}.dorm-import-table tr.is-error td>span{color:#b14d42}.dorm-import-table td strong,.dorm-import-table td small{display:block}.dorm-import-table td small{color:#82908b;margin-top:2px;font-size:9px}.dorm-import-message{color:#71807a;text-overflow:ellipsis;max-width:260px;overflow:hidden}.dorm-import-remove{color:#a44d42;cursor:pointer;background:0 0;border:0;font-size:10px}.dorm-import-remove:disabled{cursor:not-allowed;opacity:.5}.dorm-building-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:15px 17px 17px;display:grid}.dorm-building-grid .building-card-info{align-self:center}.dorm-building-grid .building-card-info strong{color:var(--navy);font-size:21px}.dorm-building-grid .building-card-info small{color:#75847f;margin-top:5px;font-size:11px}.building-card-metrics{gap:5px;margin-top:16px;display:grid}.dorm-building-grid .building-card-info .building-card-metrics em{color:#356e62;margin:0;font-size:12px;font-style:normal;font-weight:800}.dorm-building-grid .building-card-info .building-card-metrics em.needs-attention{color:#bf7823}.dorm-building-grid .building-card-info .building-card-metrics em.normal{color:#3a8a66}.dorm-room-panel .dorm-pending-toggle{color:#75847e;white-space:nowrap;align-items:center;gap:5px;font-size:10px;display:flex}.dorm-pending-toggle input{accent-color:var(--teal)}.dorm-floor-grid{border-bottom:1px solid #e5eae5;grid-template-columns:39px minmax(0,1fr);gap:10px;padding:13px 17px;display:grid}.dorm-floor-grid:last-child{border-bottom:0}.dorm-floor-grid>h4{color:#60756e;text-align:center;margin:5px 0 0;font-size:12px}.dorm-floor-grid>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.dorm-room-card{min-width:0;color:inherit;text-align:left;background:#fff;border:1px solid #dfe7e1;border-radius:9px;gap:7px;padding:10px;display:grid}.dorm-room-card:hover{background:#f5faf7;border-color:#9ec4b8}.dorm-room-card.needs-attention{background:#fffaf2;border-color:#eccb9a}.dorm-room-card>header{justify-content:space-between;align-items:center;gap:7px;display:flex}.dorm-room-card>header strong{color:#2e554c;font-size:14px}.dorm-room-card>header span{color:#70807a;white-space:nowrap;font-size:10px}.dorm-room-card>div{gap:4px;display:grid}.dorm-room-card p{justify-content:space-between;align-items:center;gap:5px;min-width:0;margin:0;display:flex}.dorm-room-card p>span{color:#536760;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.dorm-room-card p.empty-bed>span{color:#a1aaa6}.dorm-room-card p>em{flex:none;font-size:9px;font-style:normal}.dorm-status-pill{white-space:nowrap;border-radius:999px;padding:3px 6px;font-size:9px}.dorm-status-pill.normal{color:#2f7c62;background:#e4f2eb}.dorm-status-pill.pending{color:#a86e1d;background:#fff0d5}.dorm-status-pill.exception{color:#bd4e40;background:#fde4e1}.dorm-status-pill.leave{color:#3b73a6;background:#e4eff9}.dorm-room-card>footer{color:#4b8172;border-top:1px dashed #e3e8e3;align-items:center;gap:4px;padding-top:7px;font-size:10px;display:flex}.dorm-room-card.needs-attention>footer{color:#b56f21}.dorm-empty-state{color:#778782;grid-column:1/-1;place-items:center;gap:7px;min-height:150px;display:grid}.dorm-empty-state strong{color:#415951;font-size:14px}.dorm-empty-state span{font-size:11px}.dorm-unstructured-panel{padding:0;overflow:hidden}.dorm-unstructured-note{color:#7a8984;font-size:10px}.dorm-unstructured-list{gap:0;display:grid}.dorm-unstructured-list article{border-bottom:1px solid #e5eae5;grid-template-columns:minmax(150px,.65fr) minmax(160px,1fr) auto;align-items:center;gap:14px;min-height:60px;padding:10px 17px;display:grid}.dorm-unstructured-list article:last-child{border-bottom:0}.dorm-unstructured-list article>div,.dorm-unstructured-list article small{gap:4px;display:grid}.dorm-unstructured-list article strong{color:#34564d;font-size:13px}.dorm-unstructured-list article small{color:#7b8984;font-size:10px}.dorm-location-text{color:#526861;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.dorm-unstructured-empty{color:#7b8984;text-align:center;margin:0;padding:22px 17px;font-size:11px}.dorm-room-backdrop{z-index:67;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0d252033;position:fixed;inset:0}.dorm-room-drawer{background:#f9fbf8;width:min(430px,100vw);height:100%;padding:28px 22px 100px;position:absolute;top:0;right:0;overflow-y:auto;box-shadow:-20px 0 55px #12342c2e}.dorm-drawer-close{color:#5b6d66;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:15px;right:16px}.dorm-room-drawer h2{color:var(--navy);margin:5px 0 3px;font-size:23px}.dorm-drawer-summary{color:#71817b;margin:0;font-size:12px}.dorm-drawer-residents,.dorm-drawer-info{background:#fff;border:1px solid #dce5df;border-radius:10px;margin-top:18px}.dorm-drawer-residents article{border-top:1px solid #edf0ed;align-items:center;gap:10px;padding:12px;display:flex}.dorm-drawer-residents article:first-child{border-top:0}.dorm-drawer-residents article>div{flex:1;min-width:0}.dorm-drawer-residents article strong,.dorm-drawer-residents article small{display:block}.dorm-drawer-residents article strong{color:#304a43;font-size:14px}.dorm-drawer-residents article small{color:#7a8883;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:10px;overflow:hidden}.dorm-drawer-residents article>button{cursor:pointer;border:0}.dorm-drawer-empty{color:#a0aaa5}.dorm-drawer-info{padding:14px}.dorm-drawer-info h3{color:#37645a;margin:0 0 10px;font-size:13px}.dorm-drawer-info dl{grid-template-columns:repeat(3,1fr);gap:10px;margin:0;display:grid}.dorm-drawer-info dt{color:#8b9792;font-size:10px}.dorm-drawer-info dd{color:#405851;margin:5px 0 0;font-size:13px;font-weight:750}.dorm-room-drawer>footer{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f9fbf8f5;border-top:1px solid #dce5df;grid-template-columns:1fr 1fr;gap:8px;width:min(430px,100vw);padding:12px 22px 16px;display:grid;position:fixed;bottom:0;right:0}.dorm-room-drawer>footer button{color:#347166;background:#fff;border:1px solid #cbdad3;border-radius:8px;padding:10px;font-weight:750}.dorm-room-drawer>footer .primary-button{color:#fff;background:var(--teal)}@media (width<=1120px){.dorm-overview-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.dorm-building-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dorm-floor-grid>div{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.dorm-management-page{display:block}.dorm-management-head{flex-direction:column;align-items:flex-start;margin-bottom:14px}.dorm-management-head .secondary-button{justify-content:center;width:100%}.dorm-search-panel{flex-direction:column;align-items:stretch;margin-bottom:14px}.dorm-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}.dorm-filter-tabs{overflow-x:auto}.dorm-building-grid{grid-template-columns:1fr}.dorm-floor-grid{grid-template-columns:30px minmax(0,1fr);padding:12px}.dorm-floor-grid>div{grid-template-columns:repeat(2,minmax(0,1fr))}.dorm-room-drawer,.dorm-room-drawer>footer{width:100%}.dorm-import-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.dorm-import-summary p{grid-column:1/-1}}.work-page,.inbox-page{gap:14px;padding-top:18px;padding-bottom:24px;display:grid}.work-kpi{margin:0}.work-dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:14px;display:grid}.work-task-panel,.work-reminder-panel,.inbox-compose,.inbox-list{padding:18px}.work-task-panel>header,.work-reminder-panel>header,.inbox-list>header{border-bottom:1px solid #e5ece7;justify-content:space-between;align-items:flex-end;gap:12px;padding-bottom:12px;display:flex}.work-task-panel h3,.work-reminder-panel h3,.inbox-list h3{color:var(--navy);margin:4px 0 0;font-size:18px}.work-task-list{gap:5px;margin-top:10px;display:grid}.work-task-list>button{color:inherit;text-align:left;background:0 0;border:0;border-bottom:1px solid #edf1ee;grid-template-columns:28px minmax(0,1fr) auto 16px;align-items:center;gap:10px;padding:12px 4px;display:grid}.work-task-list>button:hover{background:#f6faf7}.work-task-list strong,.work-task-list small{display:block}.work-task-list strong{color:#2f4840}.work-task-list small{color:var(--muted);margin-top:4px;font-size:11px}.work-task-list em{color:#8a6b2d;font-size:10px;font-style:normal}.work-empty,.inbox-empty{color:var(--muted);text-align:center;justify-items:center;gap:5px;padding:40px 15px;display:grid}.work-empty strong,.inbox-empty strong{color:var(--navy)}.work-reminder-panel>article{border-bottom:1px solid #edf1ee;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;padding:12px 0;display:grid}.work-reminder-panel article strong,.work-reminder-panel article small{display:block}.work-reminder-panel article small{color:var(--muted);margin-top:4px;font-size:10px}.work-reminder-panel article button{color:var(--teal);background:#fff;border:1px solid #cadbd3;border-radius:6px;padding:6px 8px;font-size:10px}.calendar-day-agenda{border-top:1px solid #e5ece7;margin-top:18px;padding-top:16px}.calendar-day-agenda>header{justify-content:space-between;align-items:center;display:flex}.calendar-day-agenda h3{color:var(--navy);margin:3px 0 0;font-size:16px}.calendar-day-agenda .day-agenda{margin-top:8px}.inbox-hero{color:#dff2ec;background:linear-gradient(125deg,#123e3a,#2d8174);border-radius:12px;justify-content:space-between;align-items:center;padding:22px 25px;display:flex}.inbox-hero h2{color:#fff;margin:5px 0 0;font-size:26px}.inbox-hero p{color:#c5e0d9;margin:6px 0 0}.inbox-compose textarea{resize:vertical;color:#304c44;width:100%;min-height:135px;font:inherit;background:#fbfdfb;border:1px solid #d4e1da;border-radius:9px;outline:0;padding:13px}.inbox-compose textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f81761a}.inbox-compose footer{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:11px;font-size:11px;display:flex}.inbox-list>article{color:#5d726a;border-bottom:1px solid #edf1ee;grid-template-columns:24px minmax(0,1fr) auto;align-items:start;gap:10px;padding:14px 2px;display:grid}.inbox-list article strong{color:#2f4840}.inbox-list article p{color:#50665e;white-space:pre-wrap;margin:5px 0;line-height:1.55}.inbox-list article small{color:var(--muted);font-size:10px}.inbox-list article button{margin-top:1px}@media (width<=760px){.work-dashboard-grid{grid-template-columns:1fr}.inbox-compose footer{flex-direction:column;align-items:stretch}.inbox-compose footer button{justify-content:center}.inbox-list>article{grid-template-columns:20px minmax(0,1fr)}.inbox-list article button{grid-column:2;justify-self:start}}.sidebar{padding:24px 14px 16px}.brand{gap:11px;padding:0 8px 21px}.brand strong{font-size:21px}.sidebar-ai-entry{color:#eefcf8;text-align:left;background:linear-gradient(135deg,#4eb29933,#ffffff0f);border:1px solid #90e7cf3d;border-radius:15px 15px 5px;grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:9px;width:100%;min-height:64px;margin-top:16px;padding:9px 10px;transition:all .18s;display:grid;box-shadow:0 12px 25px #0212111f}.sidebar-ai-entry:hover,.sidebar-ai-entry.active{background:linear-gradient(135deg,#4eb29952,#ffffff1a);border-color:#a4efda85;transform:translateY(-1px)}.nav-ai-icon{color:#156457;background:linear-gradient(145deg,#dcfff2,#8cddc4);border-radius:11px 11px 4px;place-items:center;width:34px;height:34px;display:grid;box-shadow:0 5px 12px #50d6ae2e}.nav-ai-copy{min-width:0;display:block}.nav-ai-copy strong,.nav-ai-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.nav-ai-copy strong{color:#f7fffd;letter-spacing:.04em;font-size:13px;font-weight:800}.nav-ai-copy small{color:#acd8cd;margin-top:4px;font-size:9px}.nav-ai-arrow{color:#9ad8ca}.sidebar-workbench-entry{color:#bfd0cd;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;width:100%;min-height:43px;margin-top:9px;padding:11px 14px;transition:all .18s;display:flex}.sidebar-workbench-entry:hover{color:#fff;background:#ffffff12}.sidebar-workbench-entry.active{color:#f5fbf9;background:#ffffff1a}.sidebar-workbench-entry.active:before{content:"";background:#8ed7c5;border-radius:0 3px 3px 0;width:3px;position:absolute;top:7px;bottom:7px;left:0}.sidebar-workbench-entry{position:relative}.sidebar-workbench-entry>span{font-size:14px;font-weight:650}.sidebar-workbench-entry .nav-icon{color:#9fe2d0}.sidebar-nav{scrollbar-width:none;flex:auto;align-content:start;gap:15px;min-height:0;margin-top:18px;display:grid;overflow-y:auto}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-group{gap:4px;display:grid;position:relative}.sidebar-group-toggle{color:#94b4ae;text-align:left;background:0 0;border:0;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:37px;padding:8px 11px;display:flex}.sidebar-group-toggle>span{align-items:center;gap:11px;display:inline-flex}.sidebar-group-toggle:hover{color:#e1f0ec;background:#ffffff0f}.sidebar-group-toggle.expanded{color:#d7ebe6}.sidebar-group-toggle .nav-icon{color:#82afa5}.sidebar-group-toggle.expanded .nav-icon{color:#9fe2d0}.sidebar-group-arrow{color:#6f9890;transition:transform .18s}.sidebar-group-toggle.expanded .sidebar-group-arrow{transform:rotate(180deg)}.sidebar-group-label{color:#7fa29c;letter-spacing:.16em;margin:0 10px 3px;font-size:9px;font-weight:850;line-height:1.4;display:block}.sidebar-group-items{gap:2px;padding:2px 0 3px 10px;display:grid;position:relative}.sidebar-group-items:before{content:"";pointer-events:none;background:repeating-linear-gradient(#a3d7c957 0 4px,#0000 4px 7px);width:1px;position:absolute;top:-24px;bottom:10px;left:20px}.sidebar-group-items button{border-radius:9px;gap:11px;min-height:37px;padding:8px 11px}.sidebar-group-items button:after{content:"";pointer-events:none;background:repeating-linear-gradient(90deg,#a3d7c957 0 4px,#0000 4px 7px);width:16px;height:1px;position:absolute;top:50%;left:7px;transform:translateY(-50%)}.sidebar-group-items button.active{color:#f5fbf9;box-shadow:none;background:#ffffff1a}.sidebar-group-items button.active:before{background:#8ed7c5;top:7px;bottom:7px}.sidebar-group-items button:hover .nav-icon{color:#d9ece7;transform:translateY(-1px)}.sidebar-group-items button.active .nav-icon{color:#9fe2d0}.sidebar-settings-group{gap:4px;margin-top:auto;padding-top:13px;display:grid}.sidebar-settings-group .sidebar-group-label{margin-bottom:1px}.system-settings-entry{background:#ffffff0f;border-radius:11px 11px 4px;min-height:48px;margin-top:0}.system-settings-entry:hover{border-color:#ffffff3d}.sidebar-foot{flex:none;margin-top:auto;padding-top:12px}@media (width<=1080px){.sidebar{padding:20px 10px}.sidebar-ai-entry{grid-template-columns:1fr;justify-items:center;min-height:48px;margin-top:14px;padding:7px}.nav-ai-copy,.nav-ai-arrow,.sidebar-group-label,.sidebar-group-toggle>span>span,.sidebar-group-arrow{display:none}.sidebar-workbench-entry{justify-content:center;min-height:40px;margin-top:7px;padding:10px 8px}.sidebar-nav{gap:8px;margin-top:13px}.sidebar-group-items{gap:3px;padding-left:0}.sidebar-group-items:before,.sidebar-group-items button:after{display:none}.sidebar-group-toggle,.sidebar-group-items button{justify-content:center;min-height:40px;padding:10px 8px}.sidebar-settings-group{padding-top:8px}.sidebar-settings-group .system-settings-entry{min-height:42px}}@media (width<=760px){.sidebar-ai-entry,.sidebar-workbench-entry,.sidebar-settings-group{display:none}.sidebar nav.sidebar-nav{gap:2px;width:100%;margin:0;display:flex;overflow:auto hidden}.sidebar-group,.sidebar-group-items{display:contents}.sidebar-group-toggle,.sidebar-group-items button{flex:0 0 47px;min-height:47px;padding:8px}.sidebar-group-items button:before,.sidebar-group-items:before,.sidebar-group-items button:after{display:none}}.ai-workspace-page{min-height:calc(calc(100 * var(--vh1)) - 92px);background:radial-gradient(circle at 76% 20%,#d2f7edb8,#0000 31%),linear-gradient(135deg,#fbfcfb 0%,#f8fbfa 54%,#eef8f4 100%);padding:20px clamp(20px,4vw,58px) 38px;position:relative;overflow:hidden}.ai-workspace-page:before{content:"";pointer-events:none;border:1px solid #66c2a61f;border-radius:50%;width:360px;height:360px;position:absolute;top:30px;right:12%;box-shadow:0 0 0 30px #66c2a609,0 0 0 82px #66c2a606}.ai-workspace-composer{z-index:1;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:stretch;gap:14px;width:min(1280px,100%);margin-left:auto;margin-right:auto;padding:0;display:grid;position:relative}.ai-upload-modebar{z-index:1;background:#ffffff9e;border:1px solid #dcebe4;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;width:min(1280px,100%);margin:0 auto 12px;padding:12px 16px;display:flex;position:relative}.ai-upload-modebar>div{gap:3px;display:grid}.ai-upload-modebar strong{color:#24564a;font-size:14px}.ai-upload-modebar span{color:#80938d;font-size:11px}.ai-upload-coming{white-space:nowrap;background:#eff6f2;border-radius:999px;padding:5px 9px;color:#79948b!important;font-size:10px!important}.ai-workspace-panel{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffba;border:1px solid #d9e7e1e6;border-radius:24px 24px 8px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 22px 55px #366d5f1a,inset 0 1px #ffffffe6}.ai-recent-files{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffc7;border:1px solid #d9e7e1e6;border-radius:8px 24px 24px;flex-direction:column;min-width:0;display:flex;overflow:hidden;box-shadow:0 22px 55px #366d5f14,inset 0 1px #ffffffe6}.ai-recent-files-head{justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 12px;display:flex}.ai-recent-files-head>div{gap:4px;min-width:0;display:grid}.ai-recent-files-head .section-kicker{color:#8aa59a;letter-spacing:.14em;font-size:9px}.ai-recent-files-head strong{color:#2d5148;font-size:17px}.ai-recent-files-head small{color:#8b9c96;font-size:10px;line-height:1.45}.ai-recent-files-head>b{color:#397666;white-space:nowrap;background:#e8f5ee;border-radius:999px;flex:none;padding:5px 8px;font-size:10px}.ai-recent-files-folder-wrap{background:linear-gradient(145deg,#f7fcf9b8,#ecf7f17a);border-top:1px dashed #e5eee8;border-bottom:1px dashed #e5eee8;justify-items:center;gap:7px;padding:25px 14px 15px;display:grid}.ai-upload-folder-toggle{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ai-upload-folder-card{perspective:1100px;cursor:pointer;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;width:174px;height:132px;display:flex;position:relative}.ai-upload-folder-container{width:100%;height:100%;transform-style:preserve-3d;transition:transform .58s cubic-bezier(.23,1,.32,1);position:relative}.ai-upload-folder-back,.ai-upload-folder-front{filter:drop-shadow(0 10px 14px #2d67562e);width:100%;height:auto;position:absolute}.ai-upload-folder-back{bottom:0}.ai-upload-folder-front-wrapper{z-index:50;transform-origin:bottom;transition:transform .56s cubic-bezier(.175,.885,.32,1.275);position:absolute;bottom:-7px;left:0;right:0}.ai-upload-folder-front{filter:drop-shadow(0 6px 10px #2d675629);display:block;position:relative}.ai-upload-folder-label{background:#ffffff85;border-radius:10px;width:31px;height:4px;position:absolute;top:10px;left:10px}.ai-upload-folder-hint{z-index:60;color:#668f81;letter-spacing:.06em;opacity:.84;font-size:9px;font-weight:800;transition:opacity .25s,transform .25s;position:absolute;top:-18px;right:-17px}.ai-upload-folder-hint:after{content:"↙";color:#b78b55;margin-left:4px;font-size:14px;display:inline-block;transform:translateY(2px)}.ai-upload-folder-search{z-index:55;color:#fff;opacity:0;background:#5cae96;border:1px solid #ffffff80;border-radius:99px;align-items:center;gap:5px;width:30px;height:24px;padding:0 7px;transition:width .45s cubic-bezier(.68,-.55,.265,1.55),opacity .25s,top .45s cubic-bezier(.68,-.55,.265,1.55);display:flex;position:absolute;top:-27px;left:11%;overflow:hidden;box-shadow:0 7px 13px #3a826b29}.ai-upload-folder-search span{text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:800;overflow:hidden}.ai-upload-folder-file{z-index:10;color:#3e6257;opacity:.96;border:1px solid #fffc;border-radius:7px;grid-template-columns:20px minmax(0,1fr);align-content:start;gap:5px;width:80%;height:77px;padding:10px;transition:transform .58s cubic-bezier(.68,-.55,.265,1.55),filter .25s;display:grid;position:absolute;bottom:5px;left:10%;overflow:hidden;transform:translateY(0)rotate(0);box-shadow:inset 0 1px 1px #ffffffb8,0 4px 12px #31645329}.ai-upload-folder-file:after{content:"";opacity:0;background:linear-gradient(90deg,#0000,#ffffff80,#0000);width:35%;height:150%;position:absolute;top:-20%;left:-45%;transform:skew(-20deg)}.ai-upload-folder-file strong{text-overflow:ellipsis;white-space:nowrap;align-self:center;font-size:9px;overflow:hidden}.ai-upload-folder-file small{color:#719087;grid-column:2;font-size:7px}.ai-upload-folder-file svg{color:#4b9781;grid-row:span 2;align-self:start}.ai-upload-folder-file-1{z-index:25;background:#f7ead1;transition-delay:.15s}.ai-upload-folder-file-2{z-index:24;background:#e4f0e9;transition-delay:.1s}.ai-upload-folder-file-3{z-index:23;background:#e3edf5;transition-delay:50ms}.ai-upload-folder-file-4{z-index:22;background:#f4e7e1;transition-delay:20ms}.ai-upload-folder-file-5{z-index:21;background:#e9e2f2;transition-delay:0s}.ai-upload-folder-counter{z-index:70;color:#fff;opacity:0;background:#b58b59;border:1px solid #ffffff94;border-radius:99px;align-items:center;gap:6px;padding:5px 8px;transition:opacity .28s .16s,transform .45s cubic-bezier(.34,1.56,.64,1) .16s;display:flex;position:absolute;top:-52px;right:-28px;transform:scale(.8)translateY(9px);box-shadow:0 8px 16px #46584b2e}.ai-upload-folder-counter i{background:#dff7e9;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #dff7e92e}.ai-upload-folder-counter span{letter-spacing:.09em;font-size:7px;font-weight:850}.ai-upload-folder-counter b{letter-spacing:.04em;font-size:12px}.ai-upload-folder-caption{color:#8ba097;font-size:9px}.ai-upload-folder-toggle:focus-visible+.ai-upload-folder-card{outline-offset:5px;border-radius:12px;outline:2px solid #73bca3}.ai-upload-folder-toggle:checked+.ai-upload-folder-card .ai-upload-folder-container{transform:rotateX(7deg)rotateY(-4deg)}.ai-upload-folder-toggle:checked+.ai-upload-folder-card .ai-upload-folder-hint{opacity:0;transform:translateY(-7px)}.ai-upload-folder-toggle:checked+.ai-upload-folder-card .ai-upload-folder-search{opacity:1;width:82%;top:-47px}.ai-upload-folder-toggle:checked+.ai-upload-folder-card .ai-upload-folder-counter{opacity:1;transform:scale(1)translateY(0)}.ai-upload-folder-toggle:checked+.ai-upload-folder-card .ai-upload-folder-front-wrapper{transform:rotateX(-48deg)}.ai-upload-folder-toggle:checked+.ai-upload-folder-card .ai-upload-folder-file-1{transform:translateY(-62px)translate(-12px)rotate(-9deg)translateZ(18px)}.ai-upload-folder-toggle:checked+.ai-upload-folder-card .ai-upload-folder-file-2{transform:translateY(-49px)translate(14px)rotate(7deg)translateZ(10px)}.ai-upload-folder-toggle:checked+.ai-upload-folder-card .ai-upload-folder-file-3{transform:translateY(-36px)translate(-7px)rotate(-11deg)}.ai-upload-folder-toggle:checked+.ai-upload-folder-card .ai-upload-folder-file-4{transform:translateY(-23px)translate(10px)rotate(9deg)}.ai-upload-folder-toggle:checked+.ai-upload-folder-card .ai-upload-folder-file-5{transform:translateY(-10px)rotate(-5deg)}.ai-upload-folder-toggle:checked+.ai-upload-folder-card .ai-upload-folder-file:after{opacity:1;transition:left .75s .24s;left:150%}.ai-upload-folder-toggle:checked+.ai-upload-folder-card .ai-upload-folder-file:hover{filter:brightness(1.04)}.ai-recent-files-list{scrollbar-width:thin;gap:7px;min-height:0;padding:0 12px 14px;display:grid;overflow:auto}.ai-recent-file{background:#ffffffd6;border:1px solid #e3ece6;border-radius:9px 9px 4px;grid-template-columns:30px minmax(0,1fr) auto;align-items:start;gap:7px 9px;min-width:0;padding:9px;transition:border-color .18s,transform .18s,box-shadow .18s;display:grid}.ai-recent-file:hover{border-color:#b5d7c7;transform:translateY(-1px);box-shadow:0 5px 14px #2e765e14}.ai-recent-file-icon{color:#3ca27e;background:#e7f6ed;border-radius:8px 8px 3px;place-items:center;width:30px;height:30px;display:grid}.ai-recent-file-icon.excel{color:#4286a1;background:#e7f1f7}.ai-recent-file-main{gap:3px;min-width:0;display:grid}.ai-recent-file-main strong{color:#38584f;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.ai-recent-file-main small{color:#91a19b;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.ai-recent-file-status{color:#4c7d6b;white-space:nowrap;background:#e8f5ee;border-radius:999px;align-self:start;padding:4px 6px;font-size:9px;font-weight:800}.ai-recent-file-status.queued,.ai-recent-file-status.processing,.ai-recent-file-status.needs-confirmation,.ai-recent-file-status.ready{color:#94702f;background:#fff3dc}.ai-recent-file-status.failed{color:#a44f43;background:#fbe9e4}.ai-recent-file-actions{grid-column:2/-1;gap:6px;display:flex}.ai-recent-file-actions button{color:#397666;cursor:pointer;background:#fff;border:1px solid #d3e3da;border-radius:6px;padding:4px 7px;font-size:9px;font-weight:800}.ai-recent-file-actions button:hover{background:#f1faf5;border-color:#91c5ac}.ai-recent-files-empty{color:#8a9993;text-align:center;justify-items:center;gap:6px;min-height:220px;padding:24px 18px;display:grid}.ai-recent-files-empty-icon{color:#66aa91;background:#f0f8f3;border:1px dashed #c9dfd4;border-radius:12px 12px 4px;place-items:center;width:40px;height:40px;display:grid}.ai-recent-files-empty strong{color:#58756a;font-size:12px}.ai-recent-files-empty small,.ai-recent-files-more{font-size:10px;line-height:1.5}.ai-recent-files-more{color:#91a09a;text-align:center;margin:0;padding:0 16px 13px}.ai-workspace-panel>header{background:0 0;border-bottom:0;justify-content:space-between;align-items:center;padding:22px 29px 9px;display:flex}.ai-workspace-panel>header h3{color:#244b42;letter-spacing:-.035em;margin:5px 0 0;font-size:20px}.ai-workspace-panel>header small{color:#80948e;font-size:10px}.ai-workspace-input-form{background:#ffffffc7;border:1px solid #e0eae4;border-radius:18px 18px 6px;margin:15px 28px 20px;padding:16px 18px 12px;transition:border-color .18s,box-shadow .18s;box-shadow:inset 0 8px 25px #2c715b09}.ai-workspace-input-form:focus-within{border-color:#8fd4bb;box-shadow:0 0 0 4px #4ac19517}.ai-upload-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin:0 2px 12px;display:flex}.ai-upload-heading>div{gap:4px;display:grid}.ai-upload-heading strong{color:#2d5148;font-size:16px}.ai-upload-heading span,.ai-upload-heading small{color:#8b9c96;font-size:11px}.ai-upload-heading>small{white-space:nowrap}.ai-upload-dropzone{color:#426b5e;cursor:pointer;background:linear-gradient(135deg,#f5fcf8,#fbfdfb);border:1px dashed #a9d8c5;border-radius:13px;align-items:center;gap:12px;padding:15px 16px;transition:border-color .18s,background .18s,transform .18s;display:flex}.ai-upload-dropzone:hover,.ai-upload-dropzone:focus{background:#f0faf5;border-color:#46b98d;outline:none;transform:translateY(-1px)}.ai-upload-dropzone>div{gap:4px;display:grid}.ai-upload-dropzone strong{color:#376257;font-size:12px}.ai-upload-dropzone small{color:#8a9d96;font-size:10px}.ai-upload-dropzone-icon{color:#3caf86;background:#dff5e9;border-radius:11px 11px 4px;place-items:center;width:38px;height:38px;display:grid}.ai-upload-dropzone.disabled{cursor:wait;opacity:.6;pointer-events:none}.ai-upload-queue{gap:7px;margin-top:10px;display:grid}.ai-upload-queue-item{background:#fff;border:1px solid #e1ebe5;border-radius:9px;align-items:center;gap:9px;padding:8px 10px;display:flex}.ai-upload-queue-item>div{flex:1;gap:3px;min-width:0;display:grid}.ai-upload-queue-item strong{color:#47645b;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.ai-upload-queue-item small{color:#9aa9a4;font-size:10px}.ai-upload-queue-item>button{color:#8a9c95;cursor:pointer;background:0 0;border:0;border-radius:50%;width:22px;height:22px;font-size:18px;line-height:1}.ai-upload-queue-item>button:hover{color:#b34d40;background:#fff2ee}.ai-upload-queue-item>button:disabled{cursor:not-allowed;opacity:.5}.ai-upload-file-icon{color:#43a97f;background:#ebf8f0;border-radius:8px 8px 3px;flex:none;place-items:center;width:28px;height:28px;display:grid}.ai-upload-progress{border-top:1px solid #e8f0eb;gap:8px;margin:-5px 28px 18px;padding-top:12px;display:grid}.ai-upload-progress>div:first-child{justify-content:space-between;gap:12px;display:flex}.ai-upload-progress strong{color:#347764;font-size:11px}.ai-upload-progress span{color:#8a9b95;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.ai-upload-progress-track{background:#e6f1eb;border-radius:999px;height:5px;overflow:hidden}.ai-upload-progress-track i{border-radius:inherit;background:linear-gradient(90deg,#48bd91,#80dbb7);height:100%;transition:width .2s;display:block}.ai-upload-history{z-index:1;background:#ffffffb8;border:1px solid #e1ebe5;border-radius:14px;width:min(1280px,100%);margin:18px auto 0;padding:16px;position:relative}.ai-upload-history-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.ai-upload-history-head>div{gap:4px;display:grid}.ai-upload-history-head strong{color:#2d5148;font-size:16px}.ai-upload-history-head span{color:#8b9c96;font-size:11px}.ai-upload-history-refresh{color:#397666;cursor:pointer;background:#fff;border:1px solid #cfe0d8;border-radius:7px;padding:6px 10px;font-size:10px;font-weight:800}.ai-upload-history-refresh:hover{background:#f2faf5;border-color:#8bc5ad}.ai-upload-history-list{gap:9px;display:grid}.ai-upload-history-batch{background:#fff;border:1px solid #e1ebe5;border-radius:10px;padding:11px 12px}.ai-upload-history-batch.is-warning{background:#fffaf8;border-color:#eed9d1}.ai-upload-history-batch-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ai-upload-history-batch-head>div{gap:4px;min-width:0;display:grid}.ai-upload-history-batch-head strong{color:#38564e;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.ai-upload-history-batch-head small{color:#8b9994;font-size:10px}.ai-upload-history-status,.ai-upload-history-task-status{color:#4b776a;white-space:nowrap;background:#e8f5ee;border-radius:999px;flex:none;padding:4px 7px;font-size:9px;font-weight:800}.ai-upload-history-status.processing,.ai-upload-history-status.queued,.ai-upload-history-status.needs-confirmation,.ai-upload-history-task-status.processing,.ai-upload-history-task-status.queued,.ai-upload-history-task-status.needs-confirmation{color:#98702c;background:#fff3db}.ai-upload-history-status.failed,.ai-upload-history-status.partial-failed,.ai-upload-history-task-status.failed{color:#a44f42;background:#fbe9e4}.ai-upload-history-tasks{gap:5px;margin-top:9px;display:grid}.ai-upload-history-task{border-top:1px solid #eef2ee;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px 10px;padding-top:7px;display:grid}.ai-upload-history-task>div{gap:3px;min-width:0;display:grid}.ai-upload-history-task strong{color:#526c64;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.ai-upload-history-task small{color:#96a39e;font-size:9px}.ai-upload-history-task em{color:#a65d4d;text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;font-size:9px;font-style:normal;overflow:hidden}.ai-upload-history-empty{color:#8a9993;text-align:center;border:1px dashed #d5e5dd;border-radius:10px;justify-items:center;gap:5px;padding:25px 15px;display:grid}.ai-upload-history-empty strong{color:#58756a;font-size:12px}.ai-upload-history-empty span,.ai-upload-history-more{font-size:10px}.ai-upload-history-more{color:#91a09a;text-align:center;margin:11px 0 0}@media (width<=680px){.ai-upload-history{padding:13px}.ai-upload-history-batch-head{flex-direction:column;align-items:stretch;gap:7px}.ai-upload-history-status{justify-self:start}.ai-upload-progress>div:first-child{flex-direction:column;align-items:flex-start;gap:4px}}.ai-upload-history-status.needs-confirmation,.ai-upload-history-task-status.needs-confirmation{color:#98702c;background:#fff3db}.ai-upload-history-status.partial-failed{color:#a44f42;background:#fbe9e4}.ai-upload-history-task{grid-template-columns:minmax(0,1fr) auto auto}.ai-upload-history-open,.ai-upload-history-download{color:#397666;cursor:pointer;background:#fff;border:1px solid #d5e4dc;border-radius:6px;padding:4px 7px;font-size:9px;font-weight:800}.ai-upload-history-open:hover,.ai-upload-history-download:hover{background:#f3faf6;border-color:#93c9b0}.ai-supported-types{color:#879b94;align-items:center;gap:10px;margin:0 0 10px;display:flex}.ai-supported-types-label{color:#9bada6;margin-right:1px;font-size:10px}.ai-supported-type{color:#718981;align-items:center;gap:5px;font-size:10px;line-height:1;display:inline-flex}.ai-supported-type .ui-icon{color:#58b996}.ai-supported-type.wechat .ui-icon{color:#6eae9f}.ai-supported-type.excel .ui-icon{color:#45aa7c}.ai-supported-type .ui-icon+span{white-space:nowrap}.ai-workspace-input-form textarea{resize:vertical;color:#36564d;width:100%;min-height:116px;font:inherit;background:0 0;border:0;outline:0;padding:2px 2px 10px;font-size:14px;line-height:1.6}.ai-workspace-input-form textarea::placeholder{color:#b1beb9}.ai-workspace-input-tools{border-top:1px solid #edf2ee;justify-content:flex-end;align-items:center;gap:10px;padding-top:10px;display:flex}.ai-workspace-submit{color:#fff;background:linear-gradient(135deg,#35bd91,#50d6ae);border:0;border-radius:999px;flex:none;align-items:center;gap:8px;padding:10px 16px;font-size:12px;font-weight:800;display:inline-flex;box-shadow:0 8px 17px #34b88e29}.ai-workspace-submit:hover{filter:brightness(.98);transform:translateY(-1px)}.ai-workspace-submit:disabled{cursor:not-allowed;opacity:.48;transform:none}.ai-workspace-privacy{color:#8da09a;justify-content:center;align-items:center;gap:5px;margin-top:17px;font-size:10px;display:flex}.ai-workspace-privacy .ui-icon{color:#65b995}@media (width<=900px){.ai-workspace-composer{grid-template-columns:1fr}}@media (width<=600px){.ai-workspace-page{min-height:calc(calc(100 * var(--vh1)) - 76px);padding:7px 13px 28px}.ai-workspace-panel{border-radius:18px 18px 6px}.ai-workspace-panel>header{padding:17px 17px 8px}.ai-workspace-panel>header h3{font-size:17px}.ai-supported-types{scrollbar-width:none;gap:7px;margin:0 0 9px;overflow-x:auto}.ai-supported-types::-webkit-scrollbar{display:none}.ai-workspace-input-form{margin:12px 17px 16px;padding:13px 14px 10px}.ai-workspace-input-form textarea{min-height:112px}.ai-workspace-input-tools{gap:7px}.ai-workspace-submit{padding:9px 13px}.ai-workspace-privacy{text-align:center;align-items:flex-start;line-height:1.45}}.student-directory-panel{grid-template-rows:auto auto minmax(0,1fr) 48px}.student-column-filter{min-height:26px;color:inherit;border:1px solid #0000;border-radius:6px;align-items:center;gap:4px;padding:0 5px;display:inline-flex;position:relative}.student-column-filter.active{color:var(--teal);background:#edf7f3;border-color:#b9d8ce}.student-column-filter select{cursor:pointer;opacity:0;width:100%;height:100%;position:absolute;inset:0}.student-column-filter .ui-icon{pointer-events:none;color:#83938d}.student-column-filter.active .ui-icon{color:var(--teal)}.student-directory-table{width:100%;min-width:0}.student-column-head{justify-content:center;align-items:center;gap:7px;min-width:0;display:flex;position:relative}.student-column-head .student-column-filter{flex:none;padding:3px 4px;position:absolute;top:50%;right:-3px;transform:translateY(-50%)}.student-sort-button{min-width:0;color:inherit;font:inherit;font-weight:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.student-sort-button:hover,.student-sort-button.active{color:var(--teal)}.student-sort-button b{color:var(--teal);font-size:10px;line-height:1}.student-column-head .student-column-filter{flex:none}.student-column-head .student-column-filter>span{display:none}.student-directory-table th:first-child,.student-directory-table td:first-child{text-align:center}.student-select-head,.student-select-cell{padding-left:4px!important;padding-right:4px!important}.student-select-head input,.student-select-cell input{width:16px;height:16px;accent-color:var(--teal);cursor:pointer;margin:0}.student-select-head input:disabled{cursor:not-allowed;opacity:.45}.student-directory-table td{text-overflow:ellipsis;white-space:nowrap;text-align:center;max-width:280px;padding:10px 11px;overflow:hidden}.student-directory-table td:nth-child(9){max-width:150px}.student-directory-table .directory-stack{max-width:100%;overflow:hidden}.student-directory-table .directory-stack small{text-overflow:ellipsis;display:block;overflow:hidden}.student-number-cell{font-variant-numeric:tabular-nums;color:#405b53!important}.directory-student>i{width:36px;height:36px}.directory-student>i img{object-fit:cover;border-radius:50%;width:100%;height:100%}@media (width<=1000px){.student-directory-table th{white-space:normal;height:auto;min-height:42px;padding:7px 4px;font-size:9px;line-height:1.3}.student-directory-table td{padding:8px 5px;font-size:10px}.student-sort-button{white-space:normal;gap:2px}.student-column-head{flex-wrap:wrap;gap:2px}.student-column-head .student-column-filter{min-height:20px;padding:0 2px}.directory-student{gap:5px}.directory-student>i{width:28px;height:28px;font-size:12px}.directory-student strong{font-size:11px}}@media (width<=600px){.student-directory-table th{padding:6px 2px;font-size:8px}.student-directory-table td{padding:7px 3px;font-size:9px}.student-directory-table .student-sort-button b{font-size:8px}.directory-student>i{width:22px;height:22px;font-size:10px}.directory-student{gap:3px}}@media (width<=1200px){.student-directory-panel{grid-template-rows:auto auto minmax(0,1fr) 48px}}@media (width<=760px){.student-directory-panel{grid-template-rows:auto auto minmax(0,1fr) 48px}.student-column-filter{padding-left:2px;padding-right:2px}}.student-export-dialog{gap:14px;min-width:0;display:grid}.student-export-intro{color:#6e7d77;margin:0;font-size:12px;line-height:1.6}.student-export-scope{color:#566a62;background:#f7faf8;border:1px solid #e1e8e3;border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;padding:11px 13px;font-size:11px;display:flex}.student-export-scope>strong{color:#304d43;font-size:12px}.student-export-scope>span{color:#3d6559;font-weight:750}.student-export-ai{background:linear-gradient(135deg,#f2faf6,#fbfdfb);border:1px solid #dcebe4;border-radius:11px;gap:9px;padding:13px;display:grid}.student-export-ai>div:first-child{gap:4px;display:grid}.student-export-ai strong{color:#2f5d50;font-size:12px}.student-export-ai small{color:#789087;font-size:11px;line-height:1.5}.student-export-ai textarea{resize:vertical;color:#36564d;width:100%;min-height:58px;font:inherit;background:#fff;border:1px solid #d8e5df;border-radius:8px;outline:none;padding:9px 10px;font-size:12px}.student-export-ai textarea:focus{border-color:#8fcdb9;box-shadow:0 0 0 3px #4ac19517}.student-export-ai-actions{align-items:center;gap:10px;display:flex}.student-export-ai-actions>span{color:#668178;min-width:0;font-size:11px;line-height:1.4}.student-export-scope label{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.student-export-scope input{accent-color:var(--teal)}.student-export-toolbar{color:#63756e;justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.student-export-toolbar>div{gap:12px;display:flex}.student-export-toolbar .v2-link{font-size:11px}.student-export-fields{max-height:min(calc(52 * var(--vh1)),510px);grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding-right:3px;display:grid;overflow:auto}.student-export-fields>section{background:#fff;border:1px solid #e1e8e3;border-radius:10px;padding:12px}.student-export-fields>section>header{border-bottom:1px solid #edf1ee;justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;padding-bottom:8px;display:flex}.student-export-fields>section>header strong{color:#304d43;font-size:12px}.student-export-fields>section>header .v2-link{font-size:10px}.student-export-fields>section>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;display:grid}.student-export-fields label{color:#5d7068;cursor:pointer;align-items:center;gap:6px;min-width:0;font-size:11px;display:flex}.student-export-fields label input{accent-color:var(--teal);flex:none}.student-export-fields label span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.import-preview-ai-note{color:#5d4f8f;background:#faf8ff;border:1px solid #ddd7f2;border-radius:10px;padding:11px 13px}.import-preview-ai-note strong{font-size:12px}.import-preview-ai-note p{margin:6px 0 0;font-size:12px;font-weight:700}.import-preview-ai-note small{color:#81749f;margin-top:5px;font-size:11px;display:block}.student-export-error{color:#a44f43;background:#fff0ed;border-radius:8px;margin:0;padding:9px 11px;font-size:11px}.student-export-footer{color:#70817a;border-top:1px solid #e3e9e4;justify-content:space-between;align-items:center;gap:12px;padding-top:13px;font-size:11px;display:flex}.student-export-footer>div{gap:8px;display:flex}@media (width<=700px){.student-export-fields{grid-template-columns:1fr}.student-export-fields>section>div{grid-template-columns:repeat(2,minmax(0,1fr))}.student-export-footer{flex-direction:column;align-items:stretch}.student-export-footer>div{justify-content:flex-end}.student-export-scope{flex-direction:column;align-items:flex-start;gap:8px}}.student-bulk-edit-dialog{gap:14px;min-width:min(620px,78vw);display:grid}.student-bulk-edit-intro{color:#687a73;margin:0;font-size:12px;line-height:1.6}.student-bulk-edit-fields{max-height:min(calc(58 * var(--vh1)),560px);grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:2px;display:grid;overflow:auto}.student-bulk-edit-field{background:#fafcfa;border:1px solid #e0e8e3;border-radius:9px;gap:8px;padding:11px;display:grid}.student-bulk-edit-field.active{background:#f2faf6;border-color:#9bcfbd}.student-bulk-edit-field>label{color:#3d5b51;align-items:center;gap:7px;font-size:11px;font-weight:750;display:flex}.student-bulk-edit-field>label input{accent-color:var(--teal)}.student-bulk-edit-field>input{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #d7e2dc;border-radius:7px;outline:none;padding:8px 9px;font-size:11px}.student-bulk-edit-field>input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f81761a}.student-bulk-edit-field>input:disabled{color:#a1ada8;background:#f0f3f0}.student-bulk-edit-error{color:#a44f43;background:#fff0ed;border-radius:8px;margin:0;padding:9px 11px;font-size:11px}.student-bulk-edit-footer{color:#70817a;border-top:1px solid #e3e9e4;justify-content:space-between;align-items:center;gap:12px;padding-top:13px;font-size:11px;display:flex}.student-bulk-edit-footer>div{gap:8px;display:flex}@media (width<=700px){.student-bulk-edit-dialog{min-width:0}.student-bulk-edit-fields{grid-template-columns:1fr}.student-bulk-edit-footer{flex-direction:column;align-items:stretch}.student-bulk-edit-footer>div{justify-content:flex-end}}@media (width<=720px){.dorm-unstructured-list article{grid-template-columns:1fr auto}.dorm-location-text{grid-area:2/1/auto/-1}.housing-ai-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.housing-ai-footer{flex-direction:column;align-items:stretch}.housing-ai-footer>div{flex-wrap:wrap;justify-content:flex-end}}.dorm-room-panel{scroll-margin-top:18px}.housing-ai-progress-checks{grid-template-columns:repeat(5,minmax(0,1fr))}@media (width<=720px){.housing-ai-progress-dialog{min-width:0}.housing-ai-progress-checks{grid-template-columns:repeat(5,minmax(72px,1fr));padding-bottom:3px;overflow-x:auto}}.recognition-choice-field{min-width:0;color:var(--muted);grid-column:span 2;gap:5px;font-size:10px;font-weight:800;display:grid}.recognition-choice-buttons{flex-wrap:wrap;gap:6px;min-height:36px;display:flex}.recognition-choice-buttons button{min-height:36px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border:1px solid #d7dfda;border-radius:7px;padding:7px 10px;font-weight:700;transition:color .16s,background .16s,border-color .16s,box-shadow .16s}.recognition-choice-buttons button:hover{background:#f3f7f1;border-color:#8ca596}.recognition-choice-buttons button.active{color:#fff;background:linear-gradient(135deg,#416d5e,#31584c);border-color:#376457;box-shadow:inset 0 1px #ffffff30,0 2px 5px #31584c1c}.recognition-choice-buttons button:focus-visible{outline-offset:2px;outline:2px solid #8ca596}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.recognition-table,.hardship-list-panel,.aid-ledger,.notice-list,.party-list,.party-record-table-wrap,.attendance-table-wrap{scrollbar-width:thin;overflow-y:auto}.v2-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.v2-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.v2-choice-grid.is-compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.v2-choice-grid.is-compact button{gap:2px;min-height:44px;padding:6px 9px}.v2-choice-grid.is-compact button strong{font-size:12px}.v2-choice-grid.is-compact .v2-choice-title{gap:6px}.v2-choice-grid.is-compact .ui-icon{width:14px;height:14px}.v2-choice-grid button{text-align:left;min-width:0;min-height:62px;color:var(--ink);background:#fffdf9;border:1px solid #d9d0c2;border-radius:8px;align-content:center;gap:4px;padding:9px 10px;display:grid}.v2-choice-grid button:hover{background:#f5f8f2;border-color:#8ca596}.v2-choice-grid button.selected{background:#e4f0e7;border-color:#3f7563;box-shadow:inset 0 -3px #3f7563}.v2-choice-grid button strong{font-size:13px}.v2-choice-grid button small{color:var(--muted);font-size:10px;font-weight:400;line-height:1.35}.v2-choice-grid button.selected small{color:#527162}.v2-choice-title{align-items:center;gap:6px;display:flex}.v2-choice-title .ui-icon{color:#4c806b;flex:none}@media (width<=600px){.v2-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.v2-choice-grid button.priority-normal{color:#34745d;background:#f0f8f2;border-color:#b8d8c6}.v2-choice-grid button.priority-normal:hover,.v2-choice-grid button.priority-normal.selected{background:#e1f1e7;border-color:#39866d;box-shadow:inset 0 -3px #39866d}.v2-choice-grid button.priority-normal .ui-icon{color:#39866d}.v2-choice-grid button.priority-important{color:#996b20;background:#fff9eb;border-color:#e5c98d}.v2-choice-grid button.priority-important:hover,.v2-choice-grid button.priority-important.selected{background:#fff0cd;border-color:#d49a32;box-shadow:inset 0 -3px #d49a32}.v2-choice-grid button.priority-important .ui-icon{color:#b47b20}.v2-choice-grid button.priority-urgent{color:#aa4f43;background:#fff2ef;border-color:#e7b4aa}.v2-choice-grid button.priority-urgent:hover,.v2-choice-grid button.priority-urgent.selected{background:#ffe2dd;border-color:#c95c4d;box-shadow:inset 0 -3px #c95c4d}.v2-choice-grid button.priority-urgent .ui-icon{color:#c95c4d}.v2-choice-grid button:hover:not(.selected),.v2-choice-grid button.priority-normal:hover:not(.selected),.v2-choice-grid button.priority-important:hover:not(.selected),.v2-choice-grid button.priority-urgent:hover:not(.selected){color:var(--ink);box-shadow:none;background:#fffdf9;border-color:#d9d0c2}.priority-chip{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:4px 8px;font-size:10px;font-weight:800;line-height:1.2;display:inline-flex}.priority-chip.priority-normal{color:#2f785f;background:#e1f1e7}.priority-chip.priority-important{color:#996b20;background:#fff0cd}.priority-chip.priority-urgent{color:#aa4f43;background:#ffe2dd}.wb-time-options{grid-template-columns:repeat(3,minmax(0,1fr))}.wb-time-options button{min-height:50px;transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s;transform:none!important}.wb-time-options button:hover{box-shadow:none;transform:none!important}.v2-status-bar{border-bottom:1px solid var(--line);color:#4b6861;background:#edf5f1;flex-wrap:wrap;align-items:center;gap:20px;padding:10px 26px;font-size:13px;display:flex}.v2-status-bar span:last-child{margin-left:auto}.v2-error{z-index:120;color:#9d3023;max-width:700px;box-shadow:var(--shadow);background:#fff0eb;border:1px solid #d96352;border-radius:10px;padding:15px 20px;font-size:15px;position:fixed;top:22px;left:50%;transform:translate(-50%)}.v2-error button{background:0 0;border:0;margin-left:20px;font-size:22px}.v2-fatal{min-height:calc(100 * var(--vh1));flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.v2-fatal button{border:1px solid var(--teal);border-radius:8px;padding:12px 24px}.v2-panel{margin-bottom:20px;padding:24px}.v2-panel h2{margin:0 0 18px;font-size:21px}.v2-panel p{margin-bottom:14px;font-size:15px;line-height:1.8}.v2-note{color:var(--muted);font-size:14px;line-height:1.8}.v2-page-tools{justify-content:flex-end;padding:18px 26px 0;display:flex}.v2-toolbar{gap:12px;margin-bottom:16px;display:flex}.v2-toolbar input{flex:1}.v2-toolbar input,.v2-toolbar select,.v2-form input,.v2-form textarea,.v2-form select{border:1px solid var(--line);font:inherit;color:var(--ink);background:#fff;border-radius:8px;min-width:0;padding:11px 12px}.v2-case-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;width:100%;color:var(--ink);background:0 0;align-items:center;gap:18px;padding:20px 8px;display:flex}.v2-case-list>button:hover{background:var(--teal-soft)}.v2-case-list span{flex:1;min-width:0}.v2-case-list strong{font-size:16px;display:block}.v2-case-list small{color:var(--muted);overflow-wrap:anywhere;margin-top:7px;font-size:13px;display:block}.v2-case-list em{color:var(--teal);font-size:13px;font-style:normal}.v2-empty{text-align:center;color:var(--muted);padding:30px}.v2-dialog{width:min(560px,100vw - 32px);max-height:calc(88 * var(--vh1));background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ink);border-radius:16px;margin:auto;padding:0;font-size:15px;position:fixed;overflow:auto}.v2-dialog.wide{width:min(850px,100vw - 32px)}.v2-dialog>header{z-index:2;background:var(--white);border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:20px 24px;display:flex;position:sticky;top:0}.v2-dialog h2{flex:1;margin:0;font-size:21px}.v2-dialog>header button{background:#edf0eb;border:0;border-radius:50%;width:32px;height:32px;font-size:23px}.v2-form{gap:14px;padding:22px 24px;display:grid}.v2-form fieldset{border:0;padding:0;display:contents}.v2-form label{gap:8px;font-size:14px;font-weight:600;display:grid}.v2-form textarea{resize:vertical;min-height:94px}.v2-form .v2-example-input::placeholder{color:#a4aea8;opacity:1}.v2-form footer{justify-content:flex-end;gap:10px;padding-top:16px;display:flex}.v2-form button:disabled,.v2-inline button:disabled{opacity:.55;cursor:wait}.v2-field-label{font-size:14px;font-weight:600}.v2-field-toggle{border:1px dashed var(--line);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:8px;justify-self:start;align-items:center;gap:6px;padding:9px 12px;font-size:12px;font-weight:600;display:inline-flex}.v2-field-toggle:hover{color:var(--ink);border-color:var(--muted)}.v2-student-picker{border:1px solid var(--line);border-radius:8px;max-height:180px;padding:10px;overflow:auto}.v2-student-picker label{align-items:center;gap:12px;padding:8px;display:flex}.v2-student-picker input{width:16px;height:16px}.v2-student-picker small{color:var(--muted);margin-top:3px;font-weight:400;display:block}.v2-form:not(.v2-editor-form) footer.module-form-footer{z-index:2;border-top:1px solid var(--line);background:#fffdf9f7;justify-content:space-between;align-items:center;margin:0 -22px -20px;padding:14px 22px 18px;position:sticky;bottom:0;box-shadow:0 -8px 18px #2d3c360d}.v2-editor-form footer.module-form-footer{border-top:1px solid var(--line);background:#fffdf9;justify-content:space-between;align-items:center;padding:14px 22px 18px}.module-form-import-actions,.module-form-primary-actions{align-items:center;gap:10px;display:flex}.module-form-import-actions{color:var(--muted);font-size:12px}.profile-edit-form>.module-form-import-actions{border-top:1px dashed #d9d1bd;justify-content:flex-end;margin-top:18px;padding:16px 0 4px}.module-form-import-actions .v2-link{padding:8px 4px}.v2-date-inputs{grid-template-columns:minmax(0,1.5fr) auto minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.v2-date-inputs input{width:100%;min-width:0}.v2-date-inputs span{color:var(--muted);font-size:14px;font-weight:600}.v2-detail{padding:24px}.v2-detail h3{margin:26px 0 14px;font-size:17px}.v2-detail>p{white-space:pre-wrap;line-height:1.8}.v2-detail-meta{color:var(--muted);flex-wrap:wrap;gap:15px;margin-bottom:20px;font-size:14px;display:flex}.v2-fact-grid{grid-template-columns:1fr 1fr;gap:14px;margin:24px 0;display:grid}.v2-fact-grid article{border:1px solid var(--line);background:#edf5f1;border-radius:10px;padding:18px}.v2-fact-grid span,.v2-fact-grid small{color:var(--muted);font-size:13px;display:block}.v2-fact-grid strong{margin:12px 0;font-size:21px;display:block}.v2-related{border:1px solid var(--line);text-align:left;background:#f8faf6;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;width:100%;margin:8px 0;padding:14px;display:flex}.v2-related span{color:var(--teal);font-size:13px}.v2-event{border-bottom:1px solid var(--line);padding:15px 0}.v2-event time{color:var(--muted);margin-bottom:7px;font-size:12px;display:block}.v2-event strong{font-size:15px}.v2-event p{white-space:pre-wrap;margin-top:8px;font-size:14px}.v2-event small{color:var(--muted);margin-top:8px;display:block}.v2-link{color:var(--teal);text-align:left;background:0 0;border:0;padding:3px 0;font-size:13px}.v2-participant{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.v2-raw{white-space:pre-wrap;overflow-wrap:anywhere}.v2-settings{max-width:1000px}.v2-settings .v2-form{max-width:600px;padding:0}.v2-import-rows{max-height:calc(48 * var(--vh1));border-top:1px solid var(--line);margin-top:18px;overflow:auto}.v2-import-rows article{border-bottom:1px solid var(--line);gap:6px;padding:12px 0;display:grid}.v2-import-rows small{color:var(--muted)}.v2-import-rows article.error{color:#a93627}.toast{font-size:14px}@media (width<=760px){.v2-fact-grid{grid-template-columns:1fr}.v2-status-bar{padding:10px 14px}.v2-panel{padding:18px}.top-actions .system-clock{display:none}.v2-dialog{max-height:calc(92 * var(--vh1))}.v2-detail{padding:18px}.v2-dialog:has(.import-preview-dialog){width:calc(100vw - 16px);height:calc(92 * var(--vh1));max-height:calc(92 * var(--vh1))}.import-preview-scroll{padding:14px 16px 6px}.import-preview-summary{flex-direction:column}.import-preview-counts{justify-content:flex-start}.import-preview-actions{flex-direction:column;align-items:stretch;padding:12px 16px 15px}.import-preview-actions .v2-inline{width:100%}.import-preview-actions button{flex:1}.import-preview-rows-panel>header{flex-direction:column;align-items:flex-start;gap:9px}.import-preview-rows-panel>header button{align-self:flex-start}.import-example-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.import-preview-example header,.import-preview-matched-fields header,.import-preview-issues header{flex-direction:column;align-items:flex-start;gap:4px}.import-preview-issues article{grid-template-columns:1fr;align-items:flex-start}.import-preview-issues article button{align-self:flex-start}.import-row-editor{grid-template-columns:1fr 1fr}.import-row-editor-actions{justify-content:flex-start}.import-preview-rows-panel .v2-import-rows article{grid-template-columns:1fr auto}.import-preview-rows-panel .v2-import-rows article span{grid-column:1}.import-preview-rows-panel .v2-import-rows article button{grid-area:1/2/span 2}}.v2-dialog-error{color:#943a2c;background:#fff0eb;border:1px solid #e5b2a6;border-radius:8px;margin:16px 24px 0;padding:12px;line-height:1.6}.v2-dialog:has(>.v2-editor-form){flex-direction:column;display:flex;overflow:hidden}.v2-dialog:has(>.v2-editor-form)>header{flex:none}.v2-dialog:has(>.v2-editor-form)>.v2-dialog-error{flex:none}.v2-dialog>.v2-editor-form{flex-direction:column;flex:auto;gap:0;min-height:0;padding:0;display:flex;overflow:hidden}.v2-editor-form>.v2-form-scroll{flex:auto;gap:14px;min-height:0;padding:22px 24px;display:grid;overflow:auto}.v2-editor-form>.v2-form-scroll>fieldset{display:contents}.v2-editor-form>footer{border-top:1px solid var(--line);z-index:3;background:linear-gradient(#fffefa,#fffdf9);flex:none;justify-content:flex-end;gap:10px;padding:12px 24px 18px;display:flex;box-shadow:0 -6px 14px #6a563018}.v2-editor-form [data-focus-field]{border-radius:9px;transition:background .2s,box-shadow .2s}.v2-editor-form [data-focus-field].v2-focus-field-active{background:#f0f8f4;box-shadow:0 0 0 3px #39866d55,0 8px 18px #2f6e5c16}.v2-editor-form [data-focus-field].v2-focus-field-active input:not([type=hidden]){border-color:#39866d;box-shadow:0 0 0 3px #39866d22}.v2-dialog:has(.import-preview-dialog){width:min(980px,100vw - 32px);height:min(calc(88 * var(--vh1)),900px);max-height:calc(88 * var(--vh1));flex-direction:column;display:flex;overflow:hidden}.v2-dialog:has(.import-preview-dialog)>header{flex:none}.import-preview-dialog{flex-direction:column;flex:1;min-height:0;display:flex}.import-preview-scroll{min-height:0;padding:20px 24px 8px;overflow:auto}.import-preview-summary{background:#f1f8f4;border:1px solid #d8e8e0;border-radius:11px;justify-content:space-between;align-items:flex-start;gap:18px;padding:15px 17px;display:flex}.import-preview-summary>div:first-child{gap:4px;min-width:0;display:grid}.import-preview-summary span{color:var(--teal);font-size:12px;font-weight:800}.import-preview-summary strong{color:#173f38;font-size:18px}.import-preview-summary small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.import-preview-counts{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.import-preview-counts span{color:#4b6a61;white-space:nowrap;background:#fff;border:1px solid #d8e8e0;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:600}.import-preview-counts b{color:#176e5e;margin-right:3px;font-size:16px}.import-preview-counts .warning{color:#9b4b3e;background:#fff7f3;border-color:#edc6b7}.import-preview-counts .warning b{color:#b34d40}.import-preview-warning{background:#fff7f3;border:1px solid #edc6b7;border-radius:10px;margin-top:14px;padding:12px 14px}.import-preview-warning strong{color:#9b4b3e;font-size:14px}.import-preview-warning p{color:#795c53;margin:5px 0 0;font-size:13px}.import-preview-matched-fields,.import-preview-example,.import-preview-issues{background:#fff;border:1px solid #dfe8e3;border-radius:11px;margin-top:14px;padding:14px 16px}.import-preview-matched-fields header,.import-preview-example header,.import-preview-issues header{justify-content:space-between;align-items:center;gap:12px;display:flex}.import-preview-matched-fields header strong,.import-preview-example header strong,.import-preview-issues header strong{color:#254941;font-size:14px}.import-preview-matched-fields header span,.import-preview-example header span,.import-preview-issues header span{color:var(--muted);font-size:12px}.import-preview-matched-fields p{color:#667b73;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 0;font-size:13px;line-height:1.6;display:flex}.import-preview-matched-fields p>strong{color:#6f463e;font-size:13px}.import-preview-matched-fields p>small{color:var(--muted);flex-basis:100%;font-size:12px}.import-preview-chip{color:#9b4b3e;background:#fff7f3;border:1px solid #edc6b7;border-radius:999px;padding:3px 8px;font-size:12px;line-height:1.3;display:inline-flex}.import-preview-example-meta{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:10px;font-size:12px;display:flex}.import-preview-example-meta b{color:#2d786c;background:#e4f2ed;border-radius:999px;padding:4px 8px;font-size:11px}.import-preview-example-meta b.error{color:#9b4b3e;background:#fff0eb}.import-example-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0 0;display:grid}.import-example-grid div{background:#f8fbf9;border:1px solid #e6eee9;border-radius:8px;min-width:0;padding:9px 10px}.import-example-grid dt{color:#7a8d85;font-size:11px}.import-example-grid dd{color:#29473f;text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font-size:13px;font-weight:700;overflow:hidden}.import-preview-example-copy{color:#556b63;margin:12px 0 0;font-size:13px}.import-preview-issues article{border-top:1px solid #edf1ed;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 12px;margin-top:11px;padding:11px 0 0;display:grid}.import-preview-issues article>div:first-child{gap:4px;min-width:0;display:grid}.import-preview-issues article small{color:var(--muted);font-size:11px}.import-preview-issues article strong{color:#713e37;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.import-preview-issues article span{color:#9b4b3e;font-size:12px}.import-preview-issues article button{color:#9b4b3e;border-color:#e9b8aa;flex:none}.import-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.import-row-actions button{padding:6px 9px;font-size:11px}.import-row-editor{border-top:1px dashed #e4ebe7;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:10px;display:grid}.import-row-editor label{color:#6c8279;gap:5px;min-width:0;font-size:11px;font-weight:650;display:grid}.import-row-editor input{min-width:0;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfdfd7;border-radius:7px;padding:8px 9px;font-size:12px}.import-row-editor-actions{grid-column:1/-1;justify-content:flex-end;gap:7px;display:flex}.import-preview-rows-panel>header>div{gap:3px;display:grid}.import-preview-rows-panel>header button{flex:none;padding:7px 10px;font-size:12px}.import-preview-rows-panel{background:#fff;border:1px solid #dfe8e3;border-radius:11px;margin-top:18px;overflow:hidden}.import-preview-rows-panel>header{background:#f5f8f6;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;display:flex}.import-preview-rows-panel>header strong{color:#254941;font-size:14px}.import-preview-rows-panel>header span{color:var(--muted);font-size:12px}.import-preview-rows-panel .v2-import-rows{border-top:1px solid #e9efeb;max-height:260px;margin:0;padding:0 14px}.import-preview-rows-panel .v2-import-rows article{grid-template-columns:minmax(110px,.65fr) minmax(0,1fr) minmax(80px,.65fr) auto;align-items:center;padding:10px 0}.import-preview-rows-panel .v2-import-rows article button{color:#9b4b3e;border-color:#e9b8aa;justify-self:end;padding:6px 9px;font-size:11px}.import-preview-rows-panel .v2-import-rows .import-row-editor,.import-preview-rows-panel .v2-import-rows .import-row-actions{grid-column:1/-1}.import-preview-remaining{color:var(--muted);margin:0;padding:15px 14px;font-size:13px}.import-preview-actions{border-top:1px solid var(--line);background:var(--white);flex:none;justify-content:space-between;align-items:center;gap:16px;padding:13px 24px 18px;display:flex}.import-preview-actions>span{color:var(--muted);font-size:13px}.import-preview-actions .v2-inline{margin:0}.import-batch-dialog{flex-direction:column;gap:14px;min-height:0;padding:20px 24px 18px;display:flex}.import-batch-summary{background:#f1f8f4;border:1px solid #d8e8e0;border-radius:11px;justify-content:space-between;align-items:flex-start;gap:18px;padding:15px 17px;display:flex}.import-batch-summary>div:first-child{gap:4px;display:grid}.import-batch-summary strong{color:#173f38;font-size:16px}.import-batch-summary span{color:#6f7f7a;font-size:12px}.import-batch-counts{color:#4b6a61;white-space:nowrap;font-size:12px}.import-batch-counts b{color:#176e5e;margin-right:4px;font-size:18px}.import-batch-counts b.warning{color:#b34d40}.import-batch-list{max-height:min(calc(55 * var(--vh1)),560px);background:#fff;border:1px solid #dfe8e3;border-radius:11px;display:grid;overflow:auto}.import-batch-list article{border-top:1px solid #edf1ed;justify-content:space-between;align-items:center;gap:14px;padding:13px 15px;display:flex}.import-batch-list article:first-child{border-top:0}.import-batch-list article.error{background:#fff8f4}.import-batch-file{gap:4px;min-width:0;display:grid}.import-batch-file strong{color:#29473f;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.import-batch-file span{color:#74847d;font-size:12px}.import-batch-list article.error .import-batch-file span,.import-batch-error{color:#9b4b3e}.import-batch-actions{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:14px;padding-top:13px;font-size:12px;display:flex}.import-batch-actions button{flex:none}.v2-dialog.v2-drawer{height:calc(100 * var(--vh1));max-height:calc(100 * var(--vh1));border-radius:16px 0 0 16px;width:min(760px,96vw);margin:0 0 0 auto;inset:0 0 0 auto;box-shadow:-18px 0 55px #0b1b1938}.v2-dialog.recognition-form-dialog{width:min(780px,100vw - 40px);max-height:calc(88 * var(--vh1));overflow:auto}.v2-dialog.recognition-form-dialog>:not(header){margin-left:22px;margin-right:22px}.v2-dialog.recognition-form-dialog>footer{justify-content:flex-end;gap:9px;margin-top:16px;margin-bottom:20px;display:flex}.v2-dialog.recognition-form-dialog .v2-form{padding:0}.v2-form .recognition-choice-field{grid-column:auto}.v2-dialog.v2-work-detail-dialog{width:min(720px,100vw - 40px);max-height:min(calc(78 * var(--vh1)),720px);border-radius:14px;box-shadow:0 18px 48px #1c362e29}.v2-dialog.v2-work-detail-dialog>header{background:#fffdf8;padding:15px 20px 12px}.v2-dialog.v2-work-detail-dialog>header h2{font-size:18px}.v2-dialog.v2-work-detail-dialog>header button{width:28px;height:28px;font-size:20px}.v2-dialog.v2-work-detail-dialog>.v2-detail{padding:0 20px 22px}.v2-dialog.v2-work-detail-dialog .v2-detail-meta{gap:8px;margin:15px 0 14px;font-size:11px}.v2-dialog.v2-work-detail-dialog .v2-detail-meta span{background:#f0f5f0;border-radius:999px;padding:5px 8px}.v2-dialog.v2-work-detail-dialog .v2-detail>h3{margin:20px 0 10px;font-size:15px}.v2-dialog.v2-work-detail-dialog .v2-detail>p{font-size:13px;line-height:1.65}.v2-dialog.v2-work-detail-dialog .v2-inline{gap:7px;margin:12px 0}.v2-dialog.v2-work-detail-dialog .v2-related{margin:6px 0;padding:10px 12px;font-size:12px}.v2-dialog.v2-work-detail-dialog .v2-detail>p{color:#4f625a;font-size:15px;line-height:1.85}.v2-dialog.v2-work-detail-dialog .v2-detail-meta{color:#5d7068;font-size:12px}.v2-dialog.v2-work-detail-dialog .v2-detail-meta span{color:#5d7068}.v2-dialog.v2-work-detail-dialog .v2-time-link{color:#2f6fa3;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;text-decoration:underline;text-decoration-thickness:1px}.v2-dialog.v2-work-detail-dialog .v2-time-link:hover{color:#1f5684}.v2-related-row{align-items:stretch;gap:6px;margin:6px 0;display:flex}.v2-related-row .v2-related{flex:1;min-width:0;margin:0}.v2-related-delete{color:#fff;font:inherit;cursor:pointer;background:#b84f42;border:1px solid #b84f42;border-radius:7px;flex:none;justify-content:center;align-items:center;gap:4px;padding:6px 9px;font-size:11px;font-weight:800;display:inline-flex}.v2-related-delete:hover{background:#963b31;border-color:#963b31}.v2-dialog.v2-work-detail-dialog .v2-event{padding:10px 0}.v2-dialog.v2-task-detail-dialog{background:#fbfcfa;border:1px solid #dfe8e2;width:min(470px,100vw - 24px);box-shadow:0 16px 42px #16302a24}.v2-dialog.v2-task-detail-dialog>header{background:0 0;border-bottom:0;padding:16px 20px 8px}.v2-dialog.v2-task-detail-dialog>header h2{color:#7b8a84;letter-spacing:.08em;font-size:12px;font-weight:800}.v2-dialog.v2-task-detail-dialog>header button{color:#6f8078;background:#edf3ef;width:28px;height:28px;font-size:20px}.v2-dialog.v2-task-detail-dialog>.v2-detail{padding:0 20px 28px}.task-detail-sheet{gap:14px;display:grid}.task-detail-hero{padding:8px 0 4px}.task-detail-kicker{color:#2f7b6d;align-items:center;gap:8px;font-size:11px;font-weight:800;display:flex}.task-detail-kicker strong{color:#5d7069;background:#e9f1ed;border-radius:999px;padding:4px 8px;font-size:10px}.task-detail-hero h1{color:#1f3832;letter-spacing:-.02em;margin:11px 0 8px;font-size:25px;line-height:1.25}.task-detail-hero>p{color:#6c7e76;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.65}.task-detail-primary-actions{flex-wrap:wrap;gap:7px;margin-top:17px;display:flex}.task-detail-primary-actions button{padding:8px 11px;font-size:11px}.task-detail-delete-action{color:#a4483d;font:inherit;cursor:pointer;background:#fff0ed;border:1px solid #e1aaa0;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:8px 11px;font-size:11px;font-weight:800;display:inline-flex}.task-detail-delete-action:hover{color:#92362d;background:#fde3df;border-color:#c9776a}.v2-dialog.v2-task-detail-dialog .task-detail-delete-action{color:#fff;background:#b84f42;border-color:#b84f42;min-height:36px;box-shadow:0 3px 8px #a4483d28}.v2-dialog.v2-task-detail-dialog .task-detail-delete-action:hover{color:#fff;background:#963b31;border-color:#963b31}.task-detail-delete-action:disabled{opacity:.45;cursor:wait}.task-detail-result .task-detail-delete-action{margin-top:10px}.task-detail-more-action{color:#a75449;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:750;padding:8px 4px!important;font-size:11px!important}.task-detail-more-action:disabled{opacity:.45;cursor:wait}.task-detail-result{background:#f1f7f4;border-left:3px solid #75b7a2;margin-top:16px;padding:8px 0 8px 12px}.task-detail-result span{color:#287565;font-size:11px;font-weight:850}.task-detail-result p{color:#536a61;white-space:pre-wrap;margin:5px 0 0;font-size:12px;line-height:1.55}.task-detail-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.task-detail-facts>div{background:#fff;border:1px solid #e1ebe5;border-radius:9px;min-width:0;padding:10px}.task-detail-facts span,.task-detail-facts strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.task-detail-facts strong.priority-chip{white-space:nowrap;display:inline-flex;overflow:visible}.v2-detail-meta span.priority-chip{border:0;padding:4px 8px}.v2-detail-meta span.priority-chip.priority-normal{color:#2f785f;background:#e1f1e7}.v2-detail-meta span.priority-chip.priority-important{color:#996b20;background:#fff0cd}.v2-detail-meta span.priority-chip.priority-urgent{color:#aa4f43;background:#ffe2dd}.task-detail-facts span{color:#84938c;font-size:10px}.task-detail-facts strong{color:#304d44;margin-top:5px;font-size:12px}.task-detail-context{width:100%;color:inherit;text-align:left;cursor:pointer;background:#f5faf7;border:1px solid #d9e7df;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.task-detail-context:hover{background:#edf7f2;border-color:#b4d2c4}.task-detail-context span{gap:4px;min-width:0;display:grid}.task-detail-context small{color:#84938c;font-size:10px}.task-detail-context strong{color:#2d6054;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.task-detail-section{border-top:1px solid #e4ebe6;padding-top:13px}.task-detail-section>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.task-detail-section h3{color:#3b554d;margin:0;font-size:13px}.task-detail-section>header>span{color:#8b9892;font-size:11px}.task-detail-participants{margin-top:7px;display:grid}.task-detail-participants>div{color:#50655d;border-bottom:1px solid #edf1ee;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;font-size:12px;display:flex}.task-detail-inline-button{color:#287768;font:inherit;cursor:pointer;background:0 0;border:0;padding:3px 0;font-size:11px;font-weight:750}.task-detail-inline-button:disabled{opacity:.45;cursor:wait}.task-detail-participant-status{color:#3d6f61;background:#eef4f1;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:10px;font-weight:750}.task-detail-participant-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.task-detail-participant-actions .task-detail-inline-button.active{color:#0f4c3a;text-decoration:underline}.task-detail-schedule{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #edf1ee;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;display:flex}.task-detail-schedule span{gap:4px;min-width:0;display:grid}.task-detail-schedule strong{color:#3b564d;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.task-detail-schedule small{color:#82918b;font-size:10px}.task-detail-empty{color:#8a9791;margin:8px 0 0;font-size:11px;line-height:1.55}.task-detail-history{border-top:1px solid #e4ebe6;padding-top:12px}.task-detail-history summary{color:#778881;cursor:pointer;font-size:11px;font-weight:750;list-style:none}.task-detail-history summary::-webkit-details-marker{display:none}.task-detail-history summary:before{content:"＋";color:#2e7c6d;margin-right:5px;display:inline-block}.task-detail-history[open] summary:before{content:"−"}.task-detail-history>div{margin-top:8px}.task-detail-history .v2-event{padding:10px 0}.task-detail-history .v2-event time{font-size:10px}.task-detail-history .v2-event strong{font-size:12px}.task-detail-history .v2-event p{font-size:11px}@media (width<=760px){.v2-dialog.v2-task-detail-dialog{width:calc(100vw - 12px)}.v2-dialog.v2-task-detail-dialog>.v2-detail{padding:0 16px 22px}.task-detail-hero h1{font-size:22px}.task-detail-facts{grid-template-columns:1fr 1fr}.task-detail-facts>div:last-child{grid-column:1/-1}.v2-dialog.v2-work-detail-dialog{width:calc(100vw - 20px);max-height:calc(88 * var(--vh1))}.v2-dialog.v2-work-detail-dialog>.v2-detail{padding:0 14px 18px}.v2-dialog.v2-work-detail-dialog>header{padding:13px 14px 10px}}.v2-dialog.v2-profile-dialog{width:min(1280px,100vw - 48px);height:min(calc(92 * var(--vh1)),900px);max-height:calc(92 * var(--vh1));background:#f7f7f3;border-radius:16px;padding:0;overflow:hidden}.v2-dialog.v2-profile-dialog>header{display:none}.v2-dialog.v2-profile-dialog>.v2-detail{height:100%;padding:0;overflow:hidden}.v2-dialog.v2-profile-dialog .student-profile-page{max-width:none;height:100%;box-shadow:none;border-radius:0;margin:0}.profile-clean-content{height:calc(100% - 171px);overflow:auto}.profile-clean-layout{grid-template-columns:minmax(0,1.55fr) minmax(320px,.72fr);align-items:start;gap:18px;display:grid}.party-detail-page{background:#f7f7f3}.party-detail-avatar-wrap{cursor:default}.party-detail-avatar-wrap:hover .profile-avatar{box-shadow:none}.party-detail-content{height:calc(100% - 116px);padding:22px 26px 28px;overflow:auto}.party-detail-layout{grid-template-columns:minmax(0,1.35fr) minmax(340px,.75fr);align-items:start;gap:18px;display:grid}.party-detail-main{flex-direction:column;gap:14px;min-width:0;display:flex}.party-detail-side{min-width:0}.party-detail-side .party-history-section{position:sticky;top:0}.party-detail-stage-pill{color:#287568;white-space:nowrap;background:#e5f2ed;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.party-detail-page .profile-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.party-detail-page .profile-info-grid .party-note{grid-column:1/-1}.party-detail-page .profile-info-grid .party-note strong{overflow-wrap:anywhere;white-space:pre-wrap}.party-archive-panel{background:#fbfdfb;border:1px solid #e1e9e4;border-radius:9px;justify-content:space-between;align-items:center;gap:14px;padding:13px;display:flex}.party-archive-panel>div:first-child{gap:5px;display:grid}.party-archive-panel>div:first-child>span{color:#7a8983;font-size:11px}.party-archive-panel>div:first-child>small{color:#87958f;font-size:10px}.party-archive-pill{border-radius:999px;justify-self:start;padding:5px 9px;font-size:11px;font-weight:800}.party-archive-pill.complete{color:#287157;background:#dff0e8}.party-archive-pill.missing{color:#a64a3d;background:#f7e1dc}.party-archive-pill.pending{color:#95681e;background:#f6ead3}.party-archive-options{flex-wrap:wrap;gap:6px;display:flex}.party-archive-options button{color:#8b9892;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8e4dd;border-radius:999px;padding:5px 8px;font-size:10px}.party-archive-options button.active{color:#287568;background:#e5f2ed;border-color:#9ecbbb;font-weight:800}.party-archive-options button:disabled{cursor:default;opacity:.65}.party-material-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:9px;display:grid}.party-material-list>div{background:#fff;border:1px solid #e5ebe7;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 9px;padding:9px 10px;display:grid}.party-material-list>div>span{color:#52675f;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.party-material-list>div>small{color:#87958f;overflow-wrap:anywhere;grid-column:1/-1;font-size:10px}.party-material-files{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.party-material-files a{color:#2b6f61;text-overflow:ellipsis;white-space:nowrap;background:#edf6f2;border-radius:6px;max-width:100%;padding:4px 7px;font-size:10px;text-decoration:none;overflow:hidden}.party-material-status{white-space:nowrap;border-radius:999px;padding:3px 7px;font-size:9px}.party-material-status.complete{color:#287157;background:#dff0e8}.party-material-status.missing{color:#a64a3d;background:#f7e1dc}.party-material-status.pending{color:#95681e;background:#f6ead3}.party-profile-form{max-height:calc(calc(92 * var(--vh1)) - 68px);background:#fafbf8;overflow:auto}.party-form-section{background:#fff;border:1px solid #e1e9e4;border-radius:10px;gap:12px;padding:16px;display:grid}.party-form-section h3{color:#37645a;margin:0;font-size:14px}.party-form-section>p{color:#82918b;margin:-5px 0 0;font-size:11px}.party-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.party-form-wide{grid-column:1/-1}.party-material-editor{gap:8px;display:grid}.party-material-editor>div{grid-template-columns:minmax(130px,.65fr) minmax(110px,.45fr) minmax(180px,1fr);align-items:center;gap:10px;display:grid}.party-material-editor>div>strong{color:#536860;font-size:12px}.party-material-upload{background:#f7faf8;border-radius:8px;grid-column:1/-1;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.party-material-upload>label{color:#376a5e;cursor:pointer;background:#fff;border:1px solid #cadbd4;border-radius:7px;flex:none;padding:6px 9px;font-size:10px;font-weight:800;position:relative}.party-material-upload>label input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.party-material-upload>small{color:#8a9892;align-self:center;font-size:10px}.party-material-upload>div{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.party-material-upload>div>span{background:#fff;border:1px solid #dce8e3;border-radius:7px;align-items:center;gap:5px;min-width:0;padding:4px 6px;display:flex}.party-material-upload a{color:#356c60;text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:10px;text-decoration:none;overflow:hidden}.party-material-upload button{color:#a65c50;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:9px}.party-detail-page .profile-info-section h3{justify-content:space-between;align-items:center;gap:8px;display:flex}.party-section-toggle{color:#37645a;font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d5e2db;border-radius:999px;padding:3px 11px;font-size:10px;font-weight:800}.party-section-toggle:hover{background:#eef5f1}.party-section-toggle:disabled{opacity:.55;cursor:wait}.party-inline-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.party-edit-hint{color:#8a9892;grid-column:1/-1;font-size:10px}.party-archive-quick{color:#376a5e;font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #cadbd4;border-radius:7px;padding:6px 10px;font-size:10px;font-weight:800}.party-archive-quick:disabled{opacity:.55;cursor:wait}.party-detail-page .party-form-grid{margin-top:2px}.party-detail-page .party-form-grid label{color:#536860;gap:6px;font-size:12px;font-weight:700;display:grid}.party-detail-page .party-form-grid input,.party-detail-page .party-form-grid select,.party-detail-page .party-form-grid textarea{border:1px solid var(--line);font:inherit;color:var(--ink);background:#fff;border-radius:8px;min-width:0;padding:9px 11px}.party-detail-page .party-form-grid textarea{resize:vertical;min-height:70px}.party-detail-page .party-form-grid input:disabled{color:#8a9892;background:#f2f6f3}.party-information-warning{color:#806321;background:#fff9e9;border:1px solid #ead8aa;border-radius:9px;gap:4px;margin-top:12px;padding:10px 12px;display:grid}.party-information-warning strong{font-size:11px}.party-information-warning p{margin:0;font-size:11px;line-height:1.65}.party-information-warning small{color:#9a7b36;font-size:10px}.party-stage-actions{border-top:1px solid #e5ece7;justify-content:space-between;align-items:center;gap:12px;margin-top:15px;padding-top:13px;display:flex}.party-stage-actions>div{gap:4px;min-width:0;display:grid}.party-stage-actions>div>span{color:#52665e;font-size:11px;font-weight:800}.party-stage-actions small{color:#8a9892;font-size:10px}.party-stage-actions>label{color:#657871;gap:4px;font-size:10px;display:grid}.party-stage-actions>label input{color:#3e5750;min-width:145px;font:inherit;background:#fff;border:1px solid #cfddd7;border-radius:7px;padding:7px 8px}.party-history-list{margin-top:3px;display:grid}.party-history-item{grid-template-columns:25px 82px minmax(0,1fr);align-items:start;gap:9px;min-height:50px;padding:6px 0 12px;display:grid;position:relative}.party-history-item:not(:last-child):after{content:"";background:#dce8e2;width:1px;position:absolute;top:25px;bottom:0;left:11px}.party-history-marker{z-index:1;color:#9aa8a2;background:#f5faf7;border:1px solid #c8ddd5;border-radius:50%;place-items:center;width:23px;height:23px;font-size:13px;font-weight:850;line-height:1;display:grid;position:relative}.party-history-item.done .party-history-marker{color:#fff;background:#2d8d7d;border-color:#75b8a5;box-shadow:0 0 0 3px #e4f2ed}.party-history-item time{color:#789089;white-space:nowrap;padding-top:4px;font-size:11px}.party-history-item strong{color:#3d554d;padding-top:3px;font-size:12px;line-height:1.4}.party-history-item.pending strong{color:#7f8e88;font-weight:650}.party-history-item.pending time{color:#a3ada8}.party-student-link{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:grid}.party-student-link strong{color:#31554b;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.party-student-link small{color:#7d8d86;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;overflow:hidden}.party-student-link:hover strong,.party-student-link:focus-visible strong{color:var(--teal);text-underline-offset:3px;text-decoration:underline}.party-student-link:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #2f817647}.profile-info-sections{gap:18px;display:grid}.profile-info-section{border-top:1px solid #edf0eb;padding-top:14px}.profile-info-section:first-child{border-top:0;padding-top:0}.profile-info-section h3{color:#37645a;margin:0 0 10px;font-size:12px}.profile-tags{align-items:center}.profile-tags>span{color:#2b7466;background:#e4f0ec;border:1px solid #bcd7ce;border-radius:999px;padding:4px 8px;font-size:8px}.profile-events-only{height:100%}.profile-inline-actions{justify-content:flex-start;margin-top:12px}.profile-section-count{color:var(--muted);font-size:9px;font-weight:700}.profile-records-content{height:calc(100% - 171px);padding:18px 22px 26px;overflow:auto}.profile-records-section{max-width:1100px;margin:0 auto}.student-record-list{gap:12px;margin-top:18px;display:grid}.student-record-card{background:#fff;border:1px solid #e2e9e4;border-radius:12px;padding:17px 18px;box-shadow:0 4px 14px #1e373009}.student-record-card-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.student-record-card-head h3{color:var(--ink);margin:7px 0 0;font-size:16px}.student-record-type{color:#2d786c;background:#e5f2ed;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:750;display:inline-flex}.student-record-card-head time{color:var(--muted);white-space:nowrap;font-size:12px}.student-record-content{color:#40564e;white-space:pre-wrap;margin:13px 0 0;font-size:14px;line-height:1.75}.student-record-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:14px;font-size:11px;display:flex}.student-record-meta>span{overflow-wrap:anywhere}.student-record-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.student-record-actions .danger{color:#a94c40}.profile-records-section>.profile-section-title{align-items:flex-start}.profile-records-section>.profile-section-title .profile-section-actions{flex-wrap:wrap;align-items:center}.profile-records-content .profile-empty-box{color:var(--muted);text-align:center;border:1px dashed #c9dbd3;border-radius:12px;justify-items:center;gap:8px;margin-top:18px;padding:58px 22px;display:grid}.profile-records-content .profile-empty-box strong{color:#35564c;font-size:15px}.profile-records-content .profile-empty-box p{margin:0;font-size:13px}.profile-records-content .profile-empty-box button{margin-top:8px}.profile-academic-content{height:calc(100% - 171px);padding:18px 22px 26px;overflow:auto}.profile-academic-section{max-width:1100px;margin:0 auto}.student-schedule-table-wrap,.student-grade-table-wrap{background:#fff;border:1px solid #e2e9e4;border-radius:10px;overflow-x:auto}.student-schedule-table,.student-grade-table{border-collapse:collapse;width:100%;min-width:680px}.student-schedule-table th,.student-grade-table th{color:#75857e;text-align:left;white-space:nowrap;background:#f4f8f5;padding:11px 13px;font-size:11px;font-weight:800}.student-schedule-table td,.student-grade-table td{color:#50645c;border-top:1px solid #edf1ee;padding:12px 13px;font-size:12px}.student-schedule-table td strong,.student-grade-table td strong{color:#2d5146;font-size:12px}.student-schedule-day{color:#287668;white-space:nowrap;background:#e5f2ed;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;display:inline-flex}.profile-academic-empty{color:var(--muted);text-align:center;border:1px dashed #c9dbd3;border-radius:12px;justify-items:center;gap:8px;margin-top:5px;padding:68px 22px;display:grid}.profile-academic-empty svg{color:#328b79}.profile-academic-empty strong{color:#35564c;font-size:15px}.profile-academic-empty p{max-width:440px;margin:0;font-size:13px;line-height:1.6}.student-grade-result{white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800;display:inline-flex}.student-grade-result.passed{color:#287157;background:#e1f1e9}.student-grade-result.failed{color:#a84d43;background:#f9e5e0}.student-grade-result.pending{color:#8e6d35;background:#f8eedc}.student-grade-alert{color:#a84d43;background:#fdf3f0;border:1px solid #eccfc7;border-radius:9px;flex-wrap:wrap;align-items:baseline;gap:6px;margin:-2px 0 12px;padding:10px 13px;font-size:12px;line-height:1.6;display:flex}.student-grade-alert strong{font-weight:800}.student-grade-alert em{color:#8e6d35;font-style:normal}.profile-import-menu{display:inline-block;position:relative}.profile-import-menu summary{cursor:pointer;color:#50645c;white-space:nowrap;border:1px solid #dbe5df;border-radius:8px;padding:8px 13px;font-size:12px;font-weight:700;list-style:none}.profile-import-menu summary::-webkit-details-marker{display:none}.profile-import-menu[open] summary,.profile-import-menu summary:hover{color:#2d5146;border-color:#9fc4b8}.profile-import-menu>button{color:#3c584e;cursor:pointer;text-align:left;white-space:nowrap;background:#fff;border:1px solid #e2e9e4;border-radius:8px;width:100%;margin-top:6px;padding:8px 12px;font-size:12px;display:block}.profile-import-menu>button:hover{background:#f4f8f5}.party-detail-page .profile-page-header{min-height:116px}@media (width<=760px){.profile-academic-content{padding:16px 13px 22px}.profile-academic-empty{padding:52px 18px}.student-schedule-table,.student-grade-table{min-width:620px}}@media (width<=980px){.party-detail-layout{grid-template-columns:1fr}.party-detail-side .party-history-section{position:static}}.topbar-page-copy{min-width:0}.topbar .eyebrow{margin-bottom:2px}.topbar-title-row{align-items:baseline;gap:10px;display:flex}.topbar-kicker{color:var(--teal);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;font-size:9px;font-weight:850;line-height:1}.action-page-actions,.attendance-page-actions,.dorm-page-actions,.settings-page-actions{justify-content:flex-end}.action-page-actions{flex-wrap:wrap;align-items:center;gap:8px;min-height:40px;margin-bottom:14px;display:flex}.work-content-switch{background:#fff;border:1px solid #d5e0da;border-radius:9px;display:inline-flex;overflow:hidden}.work-content-switch button{color:#647a72;cursor:pointer;background:0 0;border:0;padding:9px 12px;font-weight:700}.work-content-switch button.active{color:#fff;background:var(--teal)}.work-page .action-page-actions .student-search-wrap{min-width:min(280px,100%);margin-right:auto}.work-page .action-page-actions>select{color:#3c554d;background:#fff;border:1px solid #d5e0da;border-radius:8px;padding:9px 28px 9px 10px}.leave-page-actions{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.settings-page-actions{min-height:28px}@media (width<=760px){.topbar-title-row{gap:7px}.topbar-kicker{font-size:8px}.action-page-actions{min-height:0;margin-bottom:12px}.leave-page-actions{flex-direction:column;align-items:stretch;gap:10px}.attendance-page-actions,.dorm-page-actions,.settings-page-actions{align-items:flex-end}.dorm-page-actions .secondary-button{width:auto}.settings-page-actions{min-height:0}}.timeline-list>button{text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #edf1ed;width:100%;padding:10px 0;display:flex}.timeline-list>button:first-child{border-top:0}.timeline-list>button:hover{background:#f7faf7}.timeline-list>button>i{background:var(--teal);border-radius:50%;flex:0 0 9px;width:9px;height:9px;margin-top:3px;box-shadow:0 0 0 3px #e6f0ec}.timeline-list>button>span{min-width:0;padding-left:10px;display:block}.timeline-list>button strong,.timeline-list>button small,.timeline-list>button time{display:block}.timeline-list>button strong{font-size:9px}.timeline-list>button small{color:#61706c;word-break:break-all;margin-top:3px;font-size:7.5px;line-height:1.45}.timeline-list>button time{color:#949d9a;margin-top:4px;font-size:7px}.source-list>button{text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #e7ece7;grid-template-columns:34px minmax(0,1fr);gap:10px;width:100%;padding:10px 0;display:grid}.source-list>button:first-child{border-top:0}.source-list>button:hover{background:#f7faf7}.source-list>button>b{color:#2c7569;background:#e4f1ed;border-radius:8px;place-items:center;width:32px;height:32px;font-size:10px;display:grid}.source-list>button strong,.source-list>button p,.source-list>button small{display:block}.source-list>button strong{color:#34534a;font-size:10px}.source-list>button p{color:#63766f;text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:9px;overflow:hidden}.source-list>button small{color:#93a19c;margin-top:4px;font-size:8px}@media (width<=760px){.v2-dialog.v2-profile-dialog{width:100vw;height:calc(100 * var(--vh1));max-height:calc(100 * var(--vh1));border-radius:0}.v2-dialog.v2-profile-dialog .profile-page-header{align-items:flex-start;min-height:132px;padding:17px}.v2-dialog.v2-profile-dialog .profile-tabs{padding:0 12px;top:132px}.v2-dialog.v2-profile-dialog .profile-tab-content{padding:16px 13px 22px}.profile-clean-content,.profile-records-content{height:calc(100% - 173px)}.profile-clean-layout{grid-template-columns:1fr}.profile-info-grid{grid-template-columns:repeat(2,1fr)}.profile-records-section>.profile-section-title{flex-direction:column;align-items:flex-start}.profile-records-section>.profile-section-title .profile-section-actions{justify-content:space-between;width:100%}.student-record-card-head{flex-direction:column;gap:8px}.student-record-meta{flex-direction:column;align-items:flex-start}.student-record-actions{margin-left:0}.party-detail-page .profile-page-header{min-height:132px}.party-detail-content{height:calc(100% - 132px);padding:16px 13px 22px}.party-detail-page .profile-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.party-archive-panel{flex-direction:column;align-items:flex-start}.party-material-list,.party-form-grid{grid-template-columns:1fr}.party-form-wide{grid-column:auto}.party-material-editor>div{grid-template-columns:1fr}.party-material-upload{flex-direction:column;align-items:stretch}.party-history-item{grid-template-columns:25px 70px minmax(0,1fr);gap:7px}.party-stage-actions{flex-direction:column;align-items:stretch}.party-stage-actions>label input,.party-stage-actions button{width:100%}}.v2-mapping-panel{background:#f6fbf8;border:1px solid #d8e7df;border-radius:10px;margin:18px 0;padding:16px}.v2-mapping-panel h3{margin:0 0 5px;font-size:16px}.v2-mapping-panel p{margin:0}.v2-mapping-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.v2-mapping-grid label{gap:6px;font-size:13px;font-weight:650;display:grid}.v2-mapping-grid label>span{color:#45635a}.v2-mapping-grid label b{color:#b34d40;margin-left:5px;font-size:11px}.v2-mapping-grid select{min-width:0;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfe0d8;border-radius:7px;padding:8px}.v2-unsupported-fields{border-top:1px dashed #cbded5;padding-top:12px;color:#9b4b3e!important;margin-top:14px!important;font-size:13px!important}@media (width<=760px){.v2-mapping-grid{grid-template-columns:1fr 1fr}}.operation-log-page{max-width:1600px;padding-top:25px}.operation-log-toolbar{align-items:center;gap:10px;margin-bottom:14px;padding:8px 12px;display:flex}.operation-log-stat-strip{flex:none;align-items:center;gap:2px;margin-left:-6px;display:flex}.operation-log-stat-strip>button{color:#5c6f68;height:34px;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:7px;padding:0 9px;font-size:11px;font-weight:750;display:inline-flex}.operation-log-stat-strip>button:hover{background:#f2f5ef}.operation-log-stat-strip>button.active{color:#176e5e;background:#eef6f1;border-color:#cfe0d6}.operation-log-stat-strip>button .ui-icon{color:#8fa098}.operation-log-stat-strip>button.active .ui-icon{color:#2c786b}.operation-log-stat-strip b{color:var(--navy);font:700 16px/1 Georgia,serif}.operation-log-stat-strip>button.active b{color:#176e5e}.operation-log-toolbar .operation-log-search{flex:220px;min-width:170px;height:36px}.operation-log-period{background:#fffdf7e6;border:1px solid #d8cdbb;border-radius:8px;flex:none;align-items:center;gap:2px;padding:3px;display:flex}.operation-log-period>button{color:#5c6f68;height:28px;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;padding:0 10px;font-size:11px;font-weight:750}.operation-log-period>button:hover{background:#f2f5ef}.operation-log-period>button.active{color:#176e5e;background:#e3efe8}.operation-log-filters{flex-direction:column;gap:8px;margin-bottom:14px;padding:13px;display:flex}.operation-log-filter-row{align-items:center;gap:8px;min-width:0;display:flex}.operation-log-filter-row.is-facets{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.operation-log-filter-row.is-facets>select,.operation-log-filter-row.is-facets>.operation-log-target-filter{width:100%;min-width:0}.operation-log-filters select,.operation-log-target-filter{color:#50625c;background:#fff;border:1px solid #dbe4de;border-radius:8px;height:40px;font-size:11px;font-weight:700}.operation-log-filters select{appearance:auto;outline:0;min-width:0;padding:0 10px}.operation-log-search{color:#64766f;background:#fbfcfa;border:1px solid #dbe4de;border-radius:8px;align-items:center;gap:9px;height:40px;padding:0 12px;display:flex}.operation-log-search input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:12px}.operation-log-search input::placeholder{color:#9aa6a1}.operation-log-target-filter{cursor:pointer;padding:0 9px}.operation-log-target-filter:hover,.operation-log-target-filter.active{border-color:var(--teal);color:var(--teal);background:#f1f8f5}.operation-log-reset{color:#536760;background:#fff;border:1px solid #dbe4de;border-radius:8px;justify-content:center;align-items:center;gap:5px;height:40px;font-size:11px;font-weight:750;display:inline-flex}.operation-log-reset:hover{border-color:var(--teal);color:var(--teal);background:#f1f8f5}.operation-log-list{overflow:hidden}.operation-log-list>header{color:#40564f;border-bottom:1px solid #e5ebe6;justify-content:space-between;align-items:center;gap:15px;padding:15px 20px;display:flex}.operation-log-list>header>strong{font-size:13px}.operation-log-list>header>label{color:#66766f;align-items:center;gap:6px;display:flex}.operation-log-list>header select{color:#536760;appearance:none;background:0 0;border:0;outline:0;font-size:11px;font-weight:750}.operation-log-rows{position:relative}.operation-log-row{border-bottom:1px solid #e7ece8;grid-template-columns:82px 48px minmax(0,1fr) 160px;align-items:start;gap:15px;padding:17px 20px;display:grid;position:relative}.operation-log-row:last-child{border-bottom:0}.operation-log-row:not(:last-child):before{content:"";background:#dce8e2;width:1px;position:absolute;top:69px;bottom:0;left:140px}.operation-log-row>.icon-badge{z-index:1;border-radius:13px;width:48px;height:48px;position:relative}.operation-log-row>time{white-space:nowrap;gap:4px;padding-top:4px;display:grid}.operation-log-row>time strong{color:#465a54;font:700 13px/1.2 Georgia,serif}.operation-log-row>time span{color:#87958f;font-size:11px}.operation-log-row-body{min-width:0;padding-top:2px}.operation-log-row-body>strong{color:#263c36;text-overflow:ellipsis;white-space:nowrap;font-size:15px;display:block;overflow:hidden}.operation-log-row-body>small{color:#7b8b85;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:11px;display:block;overflow:hidden}.operation-log-row-body>em{color:#2d786c;background:#e4f2ed;border-radius:5px;margin-top:8px;padding:4px 7px;font-size:10px;font-style:normal;font-weight:750;display:inline-block}.operation-log-row-meta{text-align:right;justify-items:end;gap:5px;padding-top:2px;display:grid}.operation-log-row-meta>b{color:#2c786b;white-space:nowrap;background:#e4f2ed;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.operation-log-row-meta>small{color:#8a9892;font-size:10px}.operation-log-row-meta>.v2-link{align-items:center;gap:3px;font-size:10px;display:inline-flex}.operation-log-empty{color:#7e8d87;text-align:center;justify-items:center;gap:6px;padding:68px 20px;display:grid}.operation-log-empty>.ui-icon{color:#8da099}.operation-log-empty strong{color:#52645e;font-size:13px}.operation-log-empty span{font-size:11px}@media (width<=1100px){.operation-log-row{grid-template-columns:76px 44px minmax(0,1fr) 135px}.operation-log-row>.icon-badge{width:44px;height:44px}.operation-log-row:not(:last-child):before{left:132px}}@media (width<=760px){.operation-log-page{padding-top:18px}.operation-log-toolbar{flex-wrap:wrap;row-gap:8px}.operation-log-toolbar .operation-log-search{flex:100%;order:10;min-width:0}.operation-log-filters{gap:8px;padding:10px}.operation-log-filter-row.is-facets{grid-template-columns:repeat(2,minmax(0,1fr))}.operation-log-list>header{padding:13px 14px}.operation-log-row{grid-template-columns:62px 38px minmax(0,1fr);gap:9px;padding:14px}.operation-log-row>.icon-badge{width:38px;height:38px}.operation-log-row:not(:last-child):before{top:59px;left:100px}.operation-log-row>time strong{font-size:11px}.operation-log-row>time span{font-size:10px}.operation-log-row-body>strong{font-size:13px}.operation-log-row-body>small{font-size:10px}.operation-log-row-meta{text-align:left;flex-wrap:wrap;grid-column:3;justify-content:flex-start;align-items:center;gap:6px;padding-top:0;display:flex}.operation-log-row-meta>b,.operation-log-row-meta>small,.operation-log-row-meta>.v2-link{font-size:9px}}.resource-page{max-width:1600px;padding-top:25px}.resource-workspace{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:14px;display:grid}.resource-sidebar{padding:18px;position:sticky;top:18px}.resource-sidebar h3,.resource-result-head h3{color:var(--navy);margin:4px 0 0;font-size:18px}.resource-sidebar nav{gap:5px;margin-top:16px;display:grid}.resource-sidebar nav button{color:#526760;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 11px;font-size:12px;font-weight:700;display:flex}.resource-sidebar nav button:hover{background:#f2f7f4}.resource-sidebar nav button.active{color:#176e5e;background:#e5f2ed}.resource-sidebar nav b{color:#71837c;text-align:center;background:#eef2ef;border-radius:999px;min-width:24px;padding:2px 7px;font-size:10px}.resource-sidebar nav button.active b{color:#176e5e;background:#fff}.resource-results{min-width:0}.resource-result-head{background:#fff;border:1px solid #e0e7e2;border-radius:11px;grid-template-columns:minmax(150px,1fr) minmax(240px,420px) auto auto;align-items:center;gap:10px;padding:14px 16px;display:grid}.resource-result-head>span{color:#819089;white-space:nowrap;font-size:11px}.resource-search{color:#768880;background:#fafcfb;border:1px solid #d9e4de;border-radius:8px;align-items:center;gap:8px;height:38px;padding:0 11px;display:flex}.resource-search input{min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:12px}.resource-card-list.simple{gap:9px;margin-top:12px;display:grid}.resource-card-list.simple>article{background:#fff;border:1px solid #e0e7e2;border-radius:11px;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 17px;display:grid;position:relative;box-shadow:0 5px 16px #1c312c06}.resource-card-list.simple>article:hover{border-color:#c8dcd4;box-shadow:0 8px 24px #1c312c0e}.resource-format{color:#277768;background:#e3f2ed;border-radius:12px;place-items:center;width:54px;height:54px;font-size:11px;font-weight:850;display:grid}.resource-format.format-政策{color:#a66a18;background:#fff2d9}.resource-format.format-模板{color:#6657a9;background:#eeebfb}.resource-format.format-工具{color:#386d9e;background:#e6f0fa}.resource-card-body{min-width:0}.resource-card-meta{align-items:center;gap:8px;display:flex}.resource-card-meta span{color:#267568;background:#e7f3ef;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:800}.resource-card-meta small{color:#8a9892;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.resource-card-body h3{color:#28423b;margin:8px 0 0;font-size:15px}.resource-card-body p{color:#6f8079;margin:5px 0 0;font-size:11px;line-height:1.55}.resource-tags{flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px;display:flex}.resource-tags span,.resource-tags em{color:#70827b;font-size:9px;font-style:normal}.resource-card-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;max-width:230px;display:flex}.resource-open-link{color:#176e5e;font:inherit;cursor:pointer;background:#f5faf8;border:1px solid #b9d5cb;border-radius:8px;padding:8px 11px;font-size:11px;font-weight:800}.resource-open-link:hover{color:#fff;background:var(--teal)}.resource-favorite{color:#98a69f;cursor:pointer;background:0 0;border:0;font-size:18px;line-height:1;position:absolute;top:9px;right:12px}.resource-favorite.active{color:#d79b2c}.resource-card-actions .danger{color:#a8493e}.resource-empty{color:#7b8b85;background:#fafcfb;border:1px dashed #cfdcd5;border-radius:11px;justify-items:center;gap:5px;margin-top:12px;padding:55px 20px;display:grid}.resource-empty strong{color:#53665f}.resource-empty p{margin:0;font-size:11px}.resource-editor{gap:13px;display:grid}.resource-editor>label,.resource-editor-grid label{color:#53675f;gap:6px;font-size:11px;font-weight:750;display:grid}.resource-editor input,.resource-editor select,.resource-editor textarea{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #d4e0da;border-radius:8px;outline:0;padding:9px 10px;font-size:12px}.resource-editor textarea{resize:vertical;min-height:92px}.resource-editor input:focus,.resource-editor select:focus,.resource-editor textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2a85741a}.resource-editor-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.resource-editor footer{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.operation-log-head-actions{align-items:center;gap:12px;display:flex}.operation-log-head-actions>label{align-items:center;gap:5px;display:flex}.operation-log-details{color:#6e7e78;word-break:break-word;margin-top:7px;font-size:10px;line-height:1.45;display:block}.resource-nav-label{align-items:center;gap:7px;min-width:0;display:inline-flex}.resource-nav-label .ui-icon{color:#478b7b;flex:none}.resource-result-heading{align-items:center;gap:8px;min-width:0;display:flex}.resource-result-heading .icon-badge{border-radius:9px;width:30px;height:30px}.resource-format{align-content:center;gap:3px}.resource-format>svg{flex:none;display:block}.resource-format>span{font-size:9px;font-weight:850}.resource-card-actions button,.resource-open-link{justify-content:center;align-items:center;gap:5px;display:inline-flex}.resource-favorite{place-items:center;padding:2px;display:inline-grid}.resource-favorite .ui-icon{display:block}.resource-tag-toolbar{background:#fbfdfb;border:1px solid #e0e7e2;border-radius:10px;align-items:center;gap:10px;min-width:0;margin-top:9px;padding:8px 10px;display:flex}.resource-tag-pills{scrollbar-width:thin;flex:1;align-items:center;gap:7px;min-width:0;padding:1px 0 3px;display:flex;overflow-x:auto}.resource-tag-pill{color:#58736a;font:inherit;cursor:pointer;background:#fff;border:1px solid #d7e6de;border-radius:999px;flex:none;align-items:center;gap:5px;padding:6px 9px;font-size:10px;font-weight:750;line-height:1;transition:border-color .16s,background .16s,color .16s,transform .16s;display:inline-flex;position:relative}.resource-tag-pill:hover,.resource-tag-pill.active{color:#176e5e;background:#eaf6f1;border-color:#91c3b2}.resource-tag-pill small{color:#7b9189;text-align:center;background:#eef4f0;border-radius:999px;min-width:16px;padding:2px 4px;font-size:9px}.resource-tag-pill.active small{color:#176e5e;background:#fff}.resource-tag-pill i{color:#a8493e;background:#fae8e4;border-radius:50%;place-items:center;width:14px;height:14px;margin:-4px -4px -4px 1px;font-size:12px;font-style:normal;line-height:1;display:grid}.resource-tag-pill.shaking{transform-origin:50% 75%;animation:.62s ease-in-out infinite resource-tag-shake}.resource-tag-toolbar.delete-mode{background:#fffaf8;border-color:#e7c8c1}.resource-tag-toolbar.delete-mode .resource-tag-pill{background:#fff7f4;border-color:#edcfc8}.resource-tag-delete-toggle{color:#667a72;font:inherit;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #d7e1db;border-radius:7px;flex:none;justify-content:center;align-items:center;gap:4px;padding:7px 9px;font-size:10px;font-weight:800;display:inline-flex}.resource-tag-delete-toggle:hover,.resource-tag-delete-toggle.active{color:#a8493e;background:#fff1ed;border-color:#d9a79c}.resource-tag-delete-toggle:disabled{cursor:not-allowed;opacity:.5}.resource-tag-empty{color:#9aa8a1;white-space:nowrap;padding:2px 3px;font-size:10px}.resource-tag-quick-editor{gap:13px;display:grid}.resource-tag-quick-list{flex-wrap:wrap;align-items:center;gap:7px;min-height:36px;display:flex}.resource-tag-quick-list>span{color:#3e7163;background:#f2f8f5;border:1px solid #d7e6de;border-radius:999px;align-items:center;gap:4px;padding:6px 8px;font-size:11px;font-weight:750;display:inline-flex}.resource-tag-quick-list>span button{color:#7c958b;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:15px;height:15px;padding:0;font-size:14px;line-height:1;display:grid}.resource-tag-quick-list>span button:hover{color:#a8493e;background:#fae8e4}.resource-tag-quick-list>em{color:#9aa8a1;font-size:11px;font-style:normal}.resource-tag-quick-input{align-items:center;gap:7px;display:flex}.resource-tag-quick-input input{flex:1;min-width:0}.resource-tag-quick-input .secondary-button{flex:none;min-height:38px;padding:8px 12px}.resource-tag-quick-editor footer{justify-content:flex-end;gap:8px;margin-top:3px;display:flex}@keyframes resource-tag-shake{0%,to{transform:rotate(0)}20%{transform:rotate(-1.8deg)}50%{transform:rotate(1.8deg)}80%{transform:rotate(-1deg)}}@media (width<=1100px){.resource-workspace{grid-template-columns:185px minmax(0,1fr)}.resource-result-head{grid-template-columns:minmax(140px,1fr) minmax(220px,1fr) auto}.resource-result-head>span{text-align:right;grid-column:3}.resource-card-list.simple>article{grid-template-columns:52px minmax(0,1fr)}.resource-card-actions{grid-column:2;justify-content:flex-start;max-width:none}}@media (width<=760px){.resource-page{padding-top:18px}.resource-workspace{grid-template-columns:1fr}.resource-sidebar{position:static}.resource-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-result-head{grid-template-columns:1fr auto}.resource-search{grid-area:2/1/auto/-1}.resource-result-head>span{grid-column:auto}.resource-card-list.simple>article{grid-template-columns:44px minmax(0,1fr);gap:10px;padding:14px}.resource-format{width:42px;height:42px}.resource-card-actions{grid-column:1/-1;justify-content:flex-start}.resource-editor-grid{grid-template-columns:1fr}.operation-log-head-actions{gap:6px}.operation-log-head-actions .secondary-button{padding:7px 8px;font-size:9px}}.operation-log-page{height:calc(calc(100 * var(--vh1)) - 92px);box-sizing:border-box;flex-direction:column;min-height:0;display:flex;overflow:hidden}.operation-log-toolbar,.operation-log-filters{flex:none}.operation-log-list{flex-direction:column;flex:auto;min-height:0;display:flex}.operation-log-list>header{flex:none}.operation-log-rows{scrollbar-width:thin;flex:auto;min-height:0;overflow-y:auto}.operation-log-footer{flex:none}.resource-page{height:calc(calc(100 * var(--vh1)) - 92px);box-sizing:border-box;flex-direction:column;min-height:0;display:flex;overflow:hidden}.resource-workspace{flex:auto;align-items:stretch;min-height:0;overflow:hidden}.resource-sidebar{scrollbar-width:thin;min-height:0;overflow-y:auto}.resource-results{flex-direction:column;min-height:0;display:flex;overflow:hidden}.resource-result-head{flex:none}.resource-card-list.simple{scrollbar-width:thin;flex:auto;align-content:start;min-height:0;padding-bottom:12px;padding-right:4px;overflow-y:auto}.resource-card-list.simple>.resource-empty{grid-column:1/-1;margin-top:0}.resource-pagination{flex:none;margin-top:0}@media (width<=760px){.operation-log-page,.resource-page{height:calc(calc(100 * var(--vh1)) - 76px - 68px)}.resource-workspace{grid-template-rows:auto minmax(0,1fr)}.resource-sidebar{max-height:185px}}@media (width<=1000px){.operation-log-filters{gap:8px;padding:10px}.operation-log-filter-row.is-primary{flex-wrap:wrap}.operation-log-filter-row.is-facets{grid-template-columns:repeat(3,minmax(0,1fr))}}.dorm-bulk-status-button{white-space:nowrap;justify-content:center;align-items:center;gap:6px;display:inline-flex}.dorm-building-grid>button{grid-template-columns:minmax(0,1fr);min-height:154px}.dorm-building-grid>button>.building-card-info{grid-column:1}.dorm-bulk-status-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:260px;margin-top:-3px;display:grid;overflow:auto}.dorm-bulk-status-picker>label{cursor:pointer;background:#fbfdfc;border:1px solid #d8e4de;border-radius:8px;align-items:flex-start;gap:8px;padding:9px 10px;display:flex}.dorm-bulk-status-picker>label:has(input:checked){background:#edf8f3;border-color:#9bc8ba}.dorm-bulk-status-picker>label>span{color:#304a42;gap:3px;font-weight:750;display:grid}.dorm-bulk-status-picker>label small{color:#7b8b85;font-size:10px;font-weight:500}@media (width<=720px){.dorm-building-grid>button{grid-template-columns:1fr;min-height:150px}.dorm-bulk-status-picker{grid-template-columns:1fr}}.dorm-building-grid>button{isolation:isolate;-webkit-backdrop-filter:blur(16px)saturate(125%);transition:transform .2s,border-color .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 14px 30px #255f4f14,inset 0 1px #ffffffbf;background:linear-gradient(135deg,#ffffffc7,#e1f1ea94)!important;border-color:#4b897a47!important}.dorm-building-grid>button:before{content:"";z-index:0;pointer-events:none;background:repeating-linear-gradient(135deg,#2c635614 0 34px,#fff3 34px 70px,#4a8b7a12 70px 112px);animation:22s ease-in-out infinite alternate dorm-frosted-drift;position:absolute;inset:-55%;transform:rotate(-8deg)}.dorm-building-grid>button:after{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle at 86% 12%,#ffffffc7,#0000 34%),linear-gradient(160deg,#ffffff4d,#0000 58%);position:absolute;inset:0}.dorm-building-grid>button:hover{transform:translateY(-3px);box-shadow:0 19px 38px #255f4f24,inset 0 1px #ffffffdb;border-color:#277e6c80!important}.dorm-building-grid>button.selected{box-shadow:0 0 0 3px #2f81761f,0 19px 38px #255f4f29,inset 0 1px #ffffffdb;border-color:var(--teal)!important}.dorm-building-grid>button>.building-card-info{z-index:1;position:relative}@keyframes dorm-frosted-drift{0%{transform:rotate(-8deg)translate(-1%)}to{transform:rotate(-5deg)translate(3%,-2%)}}.recognition-search-toolbar{justify-content:flex-end;margin-bottom:13px;padding:10px 13px}.recognition-search-toolbar .search-box{width:min(420px,100%);margin-left:auto}.recognition-section{min-width:0;padding:0;overflow:hidden}.recognition-section-head{border-bottom:1px solid #e5eae5;justify-content:space-between;align-items:center;gap:12px;padding:15px 16px;display:flex}.recognition-section-head>div{gap:4px;min-width:0;display:grid}.recognition-section-head h3{color:var(--navy);margin:0;font-size:17px}.recognition-section-head h3 small{color:var(--muted);font-size:10px;font-weight:600}.recognition-section-head .primary-button,.recognition-section-head .secondary-button{white-space:nowrap;flex:none}.recognition-section .recognition-table{overflow-x:auto}.recognition-section .recognition-table-head,.recognition-section .recognition-table article{min-width:520px}.recognition-section .discipline-table .recognition-table-head,.recognition-section .discipline-table article{min-width:650px}@media (width<=720px){.recognition-search-toolbar{padding:10px}.recognition-search-toolbar .search-box{width:100%}.recognition-section-head{flex-direction:column;align-items:flex-start}.recognition-section-head .primary-button,.recognition-section-head .secondary-button{align-self:flex-start}.recognition-section .recognition-table-head,.recognition-section .recognition-table article{min-width:520px}.recognition-section .discipline-table .recognition-table-head,.recognition-section .discipline-table article{min-width:650px}}.recognition-single-section .recognition-section .recognition-table-head,.recognition-single-section .recognition-section .recognition-table article{min-width:0}@media (width<=720px){.recognition-single-section .recognition-section .recognition-table-head,.recognition-single-section .recognition-section .recognition-table article{min-width:520px}.recognition-single-section .recognition-section .discipline-table .recognition-table-head,.recognition-single-section .recognition-section .discipline-table article{min-width:650px}}.discipline-management-page .recognition-search-toolbar{justify-content:stretch;padding:12px 14px}.discipline-search-controls{grid-template-columns:minmax(280px,1fr) repeat(3,minmax(145px,185px));align-items:end;gap:10px;width:100%;display:grid}.discipline-search-controls .search-box{width:auto;margin:0}.discipline-search-controls.simple{justify-content:flex-end;display:flex}.discipline-search-controls.simple .search-box{width:min(420px,100%)}.discipline-filter{color:var(--muted);gap:5px;font-size:10px;font-weight:800;display:grid}.discipline-filter select{box-sizing:border-box;color:#3d5148;width:100%;min-height:38px;font:inherit;background:#fffdf9;border:1px solid #d9d0c2;border-radius:5px;padding:8px 10px}.discipline-filter select:focus{border-color:#8ca596;outline:0;box-shadow:0 0 0 3px #72918315}.discipline-ledger .recognition-section-head{padding-top:14px;padding-bottom:14px}.discipline-ledger .recognition-table{overflow-x:auto}.discipline-ledger .recognition-table.discipline-table .recognition-table-head,.discipline-ledger .recognition-table.discipline-table article{text-align:center;grid-template-columns:minmax(140px,1fr) minmax(115px,.85fr) minmax(175px,1.2fr) minmax(90px,.65fr) minmax(95px,.7fr) minmax(140px,1fr) minmax(72px,.6fr) minmax(66px,.55fr);min-width:1120px}.discipline-ledger .recognition-table.discipline-table .discipline-status{justify-self:center}.discipline-ledger .recognition-table.discipline-table .discipline-row-actions{justify-content:center}.discipline-ledger .recognition-table article{padding-top:12px;padding-bottom:12px}.discipline-ledger .recognition-table article>span,.discipline-ledger .recognition-table article>time{text-overflow:ellipsis;min-width:0;overflow:hidden}.discipline-ledger .recognition-table article>span small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.discipline-document-no{color:var(--muted);font-size:10px}.discipline-row-actions{align-items:center;gap:6px;display:flex}.discipline-row-actions .secondary-button{white-space:nowrap;padding:6px 9px;font-size:10px}.discipline-management-page .recognition-empty{place-items:center;min-height:130px;display:grid}@media (width<=980px){.discipline-search-controls{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(140px,1fr))}.discipline-filter:last-child{grid-column:span 1}.discipline-ledger .recognition-table-head,.discipline-ledger .recognition-table article{min-width:1120px}}@media (width<=720px){.discipline-search-controls{grid-template-columns:1fr}.discipline-search-controls .search-box{width:100%}.discipline-filter:last-child{grid-column:auto}.discipline-management-page .recognition-search-toolbar{padding:10px}.discipline-ledger .recognition-section-head{flex-direction:column;align-items:flex-start}.discipline-ledger .recognition-section-head .secondary-button{align-self:flex-start}}.student-directory-toolbar{flex-wrap:wrap;align-items:center;gap:16px}.student-directory-leading{flex:300px;align-items:center;gap:9px;min-width:0;display:flex}.student-directory-leading .student-directory-search{flex:auto;width:auto;max-width:560px}.student-directory-actions{flex-wrap:nowrap;flex:none}.student-filter-control,.student-export-wrap{flex:none;position:relative}.student-filter-trigger,.student-export-trigger,.student-more-action{color:#3e6960;white-space:nowrap;background:#fff;border:1px solid #d3dfd9;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:42px;padding:0 13px;font-size:12px;font-weight:800;display:inline-flex}.student-filter-trigger.active,.student-filter-trigger:hover,.student-export-trigger:hover,.student-more-action:hover{color:var(--teal);background:#f1f8f5;border-color:#9bcdbd}.student-filter-trigger.active{box-shadow:0 0 0 3px #2f817614}.student-filter-menu{z-index:30;background:#fff;border:1px solid #d9e5df;border-radius:10px;gap:9px;width:220px;padding:12px;display:grid;position:absolute;top:calc(100% + 7px);left:0;box-shadow:0 15px 32px #17393126}.student-filter-menu>strong{color:#31594f;font-size:12px}.student-filter-menu label{color:#6c7d76;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:8px;font-size:10px;font-weight:750;display:grid}.student-filter-menu select{color:#445f56;min-width:0;height:32px;font:inherit;background:#fff;border:1px solid #d7e1dc;border-radius:6px;padding:0 7px;font-size:10px}.student-filter-menu>button{color:var(--teal);background:0 0;border:0;justify-self:start;padding:3px 0;font-size:10px;font-weight:800}.student-directory-actions{flex:none;gap:8px}.student-directory-actions>.icon-button-label{min-height:42px;padding-left:12px;padding-right:12px}.student-export-wrap .student-more-menu{left:auto;right:0}.student-selection-toolbar{background:linear-gradient(135deg,#eef9f5,#f8fcfa);border:1px solid #d4ebe2;border-radius:9px;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:10px 11px;display:flex}.student-selection-count{color:#234e44;white-space:nowrap;align-items:center;gap:8px;display:flex}.student-selection-count>span{color:#fff;background:var(--teal);border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.student-selection-count strong{font-size:12px}.student-selection-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.student-selection-actions button{min-height:36px;padding-top:0;padding-bottom:0;font-size:11px}.student-selection-actions .student-more-action{min-height:36px;padding:0 10px;font-size:11px}.student-selection-divider{background:#cfe1d9;width:1px;height:25px}.student-clear-selection{color:#4d776c;white-space:nowrap;background:0 0;border:0;align-items:center;gap:5px;font-size:11px;font-weight:800;display:inline-flex}.student-clear-selection:hover{color:var(--teal)}.student-clear-selection>span{font-size:20px;font-weight:400;line-height:1}@media (width<=1100px){.student-directory-leading{flex-basis:100%}.student-directory-actions{margin-left:auto}.student-selection-toolbar{flex-direction:column;align-items:flex-start}.student-selection-actions{justify-content:flex-start;width:100%}}@media (width<=900px){.student-directory-leading{flex-direction:column;flex-basis:100%;align-items:stretch}.student-directory-leading .student-directory-search,.student-filter-control,.student-filter-trigger{width:100%}.student-filter-menu{width:auto;left:0;right:0}.student-directory-actions{justify-content:flex-start;width:100%;margin-left:0}.student-directory-actions>button,.student-export-wrap,.student-export-trigger,.student-more-wrap{flex:1}.student-directory-actions .student-more-trigger{width:100%}.student-selection-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.student-selection-actions .student-more-wrap,.student-selection-actions .student-clear-selection{width:100%}.student-selection-actions .student-selection-divider{display:none}.student-selection-actions button{width:100%}.student-selection-actions .student-clear-selection{justify-content:center}}.student-more-menu .danger-menu-item{color:#ad5144}.student-more-menu .danger-menu-item:hover{color:#9e392d;background:#fff0ec}.page-pager-ellipsis{color:#8a9b94;-webkit-user-select:none;user-select:none;place-items:center;width:20px;height:28px;font-size:13px;line-height:1;display:grid}.page-pager-size{color:#71817b;white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:inline-flex}.page-pager-size select{color:#46645a;height:30px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d7e3dd;border-radius:7px;padding:0 22px 0 8px;font-size:11px}@media (width<=680px){.page-pager{flex-wrap:wrap;align-items:flex-start;gap:8px;padding-top:9px;padding-bottom:9px}.page-pager-pages{order:3;justify-content:center;width:100%}.page-pager-size{margin-left:auto}}.sidebar{isolation:isolate;background:radial-gradient(120% 65% at -15% 100%,#5fbf9e3d,#0000 62%),radial-gradient(100% 48% at 110% -8%,#348e7f52,#0000 66%),linear-gradient(162deg,#0b3e3b 0%,#0b4541 45%,#082f35 100%);border-right:1px solid #b2ebd814;overflow:hidden;box-shadow:10px 0 36px #041f1c24}.sidebar:after{content:"";z-index:0;pointer-events:none;filter:blur(24px);opacity:.8;background:radial-gradient(#49a08838,#0000 68%);height:38%;position:absolute;bottom:-10%;left:-42%;right:-42%}.sidebar>*{z-index:1;position:relative}.sidebar .brand{border-bottom-color:#c2f0de24}.sidebar-ai-entry{box-shadow:inset 0 1px #d0ffef1f,0 14px 28px #031c1929}.sidebar-ai-entry:hover,.sidebar-ai-entry.active{box-shadow:inset 0 1px #d6fff040,0 16px 32px #031c1933}.sidebar-group-toggle.expanded{background:linear-gradient(90deg,#6fcaae1a,#0000 84%)}.sidebar-group-items button.active{background:linear-gradient(100deg,#77dabc33,#ffffff0b);box-shadow:inset 0 1px #d3fff114,0 8px 18px #031c191f}.system-settings-entry{background:linear-gradient(135deg,#4cb49729,#ffffff0b);box-shadow:inset 0 1px #d3fff11a,0 12px 26px #031c1924}.system-settings-entry:hover{background:linear-gradient(135deg,#5bc7a740,#ffffff14)}.leave-page-head{justify-content:space-between;align-items:flex-end;gap:18px;min-height:84px;display:flex}.leave-header-stats{flex:1;grid-template-columns:repeat(3,minmax(140px,1fr));gap:9px;max-width:760px;display:grid}.leave-page-head>.primary-button{flex:none;align-self:center;margin-left:auto}@media (width<=760px){.leave-page-head{flex-direction:column;align-items:stretch;gap:10px}.leave-header-stats{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}.leave-page-head>.primary-button{justify-content:center;width:100%;margin-left:0}}.dorm-building-backdrop{z-index:70;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:auto;background:#0d252033;position:fixed;inset:0}.dorm-building-drawer{background:#f9fbf8;width:min(720px,94vw);height:100%;padding:22px 20px 30px;animation:.2s ease-out student-drawer-in;position:absolute;top:0;right:0;overflow-y:auto;box-shadow:-20px 0 55px #12342c2e}.dorm-building-drawer>.dorm-building-drawer-close{z-index:1;color:#5b6d66;cursor:pointer;background:#edf2ee;border:0;border-radius:50%;place-items:center;padding:6px;display:grid;position:absolute;top:14px;right:15px}.dorm-building-drawer>.dorm-section-head{border-bottom:1px solid #dfe8e2;align-items:flex-start;min-height:0;margin-bottom:0;padding:3px 46px 16px 0}.dorm-building-drawer>.dorm-section-head>div:first-child{margin-right:auto}.dorm-building-drawer>.dorm-section-head h3{font-size:21px}.dorm-building-drawer>.dorm-section-head .dorm-floor-tabs{flex-wrap:wrap;justify-content:flex-end;padding-top:4px}.dorm-building-drawer>.dorm-floor-grid{border-bottom:1px solid #e5eae5;grid-template-columns:112px minmax(0,1fr);padding:15px 0}.dorm-building-drawer>.dorm-floor-grid:last-child{border-bottom:0}.dorm-building-drawer>.dorm-floor-grid>div{grid-template-columns:repeat(2,minmax(0,1fr));padding:0}@media (width<=720px){.dorm-building-drawer{width:100%;padding:18px 14px 24px}.dorm-building-drawer>.dorm-section-head{flex-direction:column;gap:10px;padding-right:40px}.dorm-building-drawer>.dorm-section-head .dorm-floor-tabs{justify-content:flex-start;padding-top:0}.dorm-building-drawer>.dorm-floor-grid{grid-template-columns:100px minmax(0,1fr);padding:12px 0}.dorm-building-drawer>.dorm-floor-grid>div{grid-template-columns:1fr}}.attendance-filter-panel{grid-template-columns:minmax(280px,1fr) auto auto auto auto}.attendance-filter-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.attendance-filter-actions button{white-space:nowrap;border-radius:8px;padding:9px 12px;font-size:11px;font-weight:800}.attendance-bulk-bar{background:#edf8f4;border-color:#cfe5dd;grid-template-columns:auto auto minmax(240px,1fr) auto auto;align-items:end;gap:12px;padding:12px 16px;display:grid}.attendance-bulk-bar>strong{color:#174d45;white-space:nowrap;align-self:center}.attendance-bulk-bar label{color:#6b7b76;gap:5px;font-size:9px;font-weight:800;display:grid}.attendance-bulk-bar select,.attendance-bulk-bar input{color:#315b53;background:#fff;border:1px solid #cadbd5;border-radius:8px;outline:none;height:38px;padding:0 11px}.attendance-bulk-reason input{width:100%}.attendance-check-cell{width:42px!important}.attendance-check-cell input{width:16px;height:16px;accent-color:var(--teal)}.attendance-page .attendance-table{min-width:980px}.attendance-page .attendance-table th:first-child{width:42px}.attendance-page .attendance-table th:nth-child(2),.attendance-page .attendance-table th:nth-child(3){width:8%}.attendance-page .attendance-table th:nth-child(4){width:10%}.attendance-page .attendance-table th:nth-child(5){width:15%}.attendance-page .attendance-table th:nth-child(6){width:8%}.attendance-page .attendance-table th:nth-child(7){width:13%}.attendance-page .attendance-table th:nth-child(8){width:8%}.attendance-page .attendance-table th:nth-child(9){width:10%}.attendance-page .attendance-table th:nth-child(10){width:12%}.attendance-page .attendance-table th:nth-child(11){width:56px}.attendance-record-range{justify-content:flex-end;align-items:center;gap:9px;display:flex}@media (width<=1050px){.attendance-filter-actions{gap:6px}.attendance-filter-actions button{padding:8px 10px;font-size:10px}.attendance-bulk-bar{grid-template-columns:auto auto minmax(200px,1fr) auto}.attendance-bulk-bar>.v2-link{grid-column:4}.attendance-record-range{justify-content:flex-start}}@media (width<=680px){.attendance-filter-actions{justify-content:flex-start}.attendance-filter-actions button{flex:1;padding:9px 8px;font-size:10px}.attendance-bulk-bar{grid-template-columns:1fr 1fr}.attendance-bulk-reason{grid-column:1/-1}.attendance-bulk-bar>.primary-button{grid-column:1}.attendance-record-heading{flex-direction:column;align-items:flex-start;gap:10px}.attendance-record-range{justify-content:flex-start;width:100%}.attendance-record-range .attendance-range-switch{width:100%}.attendance-record-range .attendance-range-switch button{flex:1}}.leave-filter-top{grid-template-columns:minmax(280px,1fr) auto auto auto;align-items:end;gap:12px;display:grid}.leave-create-button{white-space:nowrap;justify-content:center;min-height:38px}@media (width<=720px){.leave-filter-top{grid-template-columns:minmax(0,1fr) auto;gap:9px}.leave-search-box{grid-column:1/-1;width:100%!important}.leave-class-filter{min-width:0}.leave-class-filter select{width:100%;min-width:0}.leave-result-count{text-align:right;align-self:center}.leave-create-button{grid-column:1/-1;justify-content:center;width:100%}}.leave-work-switch{scrollbar-width:thin;background:0 0;border:0;border-radius:0;align-items:center;gap:6px;min-width:0;margin-top:11px;padding:9px 0 11px;display:flex;overflow-x:auto}.leave-work-switch button{color:#64766e;text-align:left;white-space:nowrap;cursor:pointer;background:#fff9;border:1px solid #b8c7bc;border-radius:8px;flex:none;align-items:center;gap:6px;min-width:128px;max-width:220px;padding:7px 10px;font-size:10px;font-weight:700;transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s;display:inline-flex}.leave-work-switch button:hover{background:#fff;border-color:#6e9b88}.leave-work-switch button.active{color:#2e6e5e;background:#dbeae0;border-color:#4f8672;box-shadow:inset 0 -3px #4f8672}.leave-work-switch button b{color:#71807b;text-align:center;background:#edf1ee;border-radius:999px;min-width:18px;margin-left:auto;padding:2px 5px;font-size:8px}.leave-work-switch button.active b{color:#fff;background:#4f8672}@media (width<=720px){.leave-work-switch{margin-top:7px}.leave-work-switch button{text-align:center;justify-content:center;min-width:112px}}.dorm-building-card-wrap{min-width:0;position:relative}.dorm-building-grid>.dorm-building-card-wrap>button{width:100%;min-width:0;min-height:154px;color:inherit;text-align:left;isolation:isolate;background:linear-gradient(135deg,#ffffffc7,#e1f1ea94);border:1px solid #4b897a47;border-radius:13px;grid-template-columns:minmax(0,1fr);align-items:center;padding:18px 112px 18px 18px;transition:transform .2s,border-color .2s,box-shadow .2s;display:grid;position:relative;overflow:hidden}.dorm-building-grid>.dorm-building-card-wrap>button:before{content:"";z-index:0;pointer-events:none;background:repeating-linear-gradient(135deg,#2c635614 0 34px,#fff3 34px 70px,#4a8b7a12 70px 112px);animation:22s ease-in-out infinite alternate dorm-frosted-drift;position:absolute;inset:-55%;transform:rotate(-8deg)}.dorm-building-grid>.dorm-building-card-wrap>button:after{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle at 86% 12%,#ffffffc7,#0000 34%),linear-gradient(160deg,#ffffff4d,#0000 58%);position:absolute;inset:0}.dorm-building-grid>.dorm-building-card-wrap>button:hover{border-color:#277e6c80;transform:translateY(-3px);box-shadow:0 19px 38px #255f4f24,inset 0 1px #ffffffdb}.dorm-building-grid>.dorm-building-card-wrap>button.selected{border-color:var(--teal);box-shadow:0 0 0 3px #2f81761f,0 19px 38px #255f4f29,inset 0 1px #ffffffdb}.dorm-building-card-wrap>.dorm-building-status-select{z-index:3;width:122px;height:34px;font-size:12px;position:absolute;top:12px;right:12px}.dorm-building-card-wrap>.dorm-building-status-select:disabled{cursor:not-allowed;opacity:.5}.dorm-building-card-wrap .building-card-info{z-index:1;position:relative}.dorm-scope-status-select,.dorm-status-select{color:#36766a;height:34px;font:inherit;cursor:pointer;background:#fff;border:1px solid #c8ddd4;border-radius:8px;outline:0;padding:0 9px;font-size:12px;font-weight:750}.dorm-scope-status-select:focus,.dorm-status-select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f81761f}.dorm-building-detail-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:9px;display:flex}.dorm-building-detail-actions>.dorm-scope-status-select{width:136px;height:38px;font-size:13px}.dorm-building-drawer>.dorm-section-head .dorm-floor-tabs{align-items:center}.dorm-floor-grid>h4{flex-direction:column;align-items:flex-start;gap:7px;padding-left:8px;display:flex}.dorm-floor-status-select{width:98px;height:32px;padding:0 6px;font-size:11px}.dorm-room-card-wrap{min-width:0;position:relative}.dorm-room-card-wrap>.dorm-room-card{width:100%}.dorm-room-card-wrap>.dorm-room-card>header{padding-right:104px}.dorm-room-card-wrap>.dorm-room-status-select{z-index:2;width:98px;height:30px;padding:0 6px;font-size:11px;position:absolute;top:8px;right:8px}.dorm-drawer-residents article>.dorm-status-select{flex:0 0 82px;width:82px}.dorm-drawer-residents article[role=button]{cursor:pointer;transition:background .16s}.dorm-drawer-residents article[role=button]:hover,.dorm-drawer-residents article[role=button]:focus-visible{background:#f3f9f6;outline:0}.dorm-room-drawer>footer{grid-template-columns:1fr}.dorm-status-select.normal{color:#2f7c62;background:#eaf6ef;border-color:#b8d9c8}.dorm-status-select.pending{color:#a86e1d;background:#fff7e6;border-color:#ead39e}.dorm-status-select.exception{color:#bd4e40;background:#fff0ed;border-color:#ecc1bb}.dorm-status-select.leave{color:#3b73a6;background:#edf5fc;border-color:#bdd3e8}@media (width<=720px){.dorm-building-grid>.dorm-building-card-wrap>button{min-height:150px;padding:18px 112px 18px 16px}.dorm-building-card-wrap>.dorm-building-status-select{width:112px;top:9px;right:9px}.dorm-building-detail-actions{justify-content:flex-start;width:100%}.dorm-building-detail-actions>.dorm-scope-status-select{width:100%;max-width:220px}.dorm-room-card-wrap>.dorm-room-card>header{padding-right:98px}.dorm-room-card-wrap>.dorm-room-status-select{width:92px}.dorm-drawer-residents article>.dorm-status-select{flex-basis:88px;width:88px}}.ocr-preview-dialog{gap:14px;display:grid}.ocr-preview-summary em{color:#2c6659;font-style:normal;font-weight:800}.ocr-preview-block{border-radius:9px;gap:8px;padding:13px 15px;display:grid}.ocr-preview-block.is-local{background:#f7fcfa;border:1px solid #cfe6dc}.ocr-preview-block.is-ai{background:#fdfbf5;border:1px solid #e2dcc9}.ocr-preview-block>header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.ocr-preview-block>header strong{font-size:12px}.ocr-preview-block.is-local>header strong{color:#2c6659}.ocr-preview-block.is-ai>header strong{color:#7a6440}.ocr-preview-block>header small{color:#84948d;font-size:10px}.ocr-preview-absent{color:#84948d;margin:0;font-size:11px}.ocr-preview-summary{color:#2c6659;background:#f1faf6;border:1px solid #cfe6dc;border-radius:9px;gap:4px;padding:13px 15px;display:grid}.ocr-preview-summary span{color:#6c817a;font-size:11px}.ocr-preview-text{white-space:pre-wrap;color:#3c4e49;background:#fbfcfb;border:1px solid #dce5df;border-radius:9px;max-height:420px;margin:0;padding:15px;font:12px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.ocr-preview-actions{justify-content:flex-end;display:flex}.generic-preview-dialog{gap:14px;display:grid}.generic-preview-summary{color:#6f622f;background:#fbfaed;border:1px solid #dfe2c9;border-radius:9px;gap:4px;padding:13px 15px;display:grid}.generic-preview-summary span{color:#817a5b;font-size:11px;line-height:1.6}.generic-preview-warnings{gap:5px;display:grid}.generic-preview-warnings p{color:#776e52;margin:0;font-size:11px}.generic-preview-columns{flex-wrap:wrap;gap:6px;display:flex}.generic-preview-columns span{color:#57736a;background:#f7faf8;border:1px solid #dce5df;border-radius:999px;padding:5px 8px;font-size:10px}.generic-preview-records{gap:7px;max-height:320px;display:grid;overflow:auto}.generic-preview-records article{background:#fff;border:1px solid #e1e7e2;border-radius:8px;padding:9px 11px}.generic-preview-records small{color:#82908b;font-size:10px}.generic-preview-records p{color:#455952;text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:11px;overflow:hidden}.generic-preview-actions{justify-content:flex-end;display:flex}.generic-preview-ai{color:#286657;background:#f1faf6;border:1px solid #cfe6dc;border-radius:9px;gap:4px;padding:12px 14px;display:grid}.generic-preview-ai span{color:#668078;font-size:11px}.generic-preview-schemas{background:#f8fbf9;border:1px solid #d8e4de;border-radius:9px;gap:7px;padding:12px 14px;display:grid}.generic-preview-schemas>strong{color:#286657;font-size:12px}.generic-preview-schemas>span{color:#71877e;font-size:11px;line-height:1.5}.generic-preview-schemas article{background:#fff;border:1px solid #e0e8e3;border-radius:7px;gap:6px;padding:9px 10px;display:grid}.generic-preview-schemas article header{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.generic-preview-schemas article header b{color:#345b50;font-size:11px}.generic-preview-schemas article header small{color:#83938c;font-size:9px}.generic-preview-schemas article p{flex-wrap:wrap;gap:5px;margin:0;display:flex}.generic-preview-schemas article em{color:#527268;background:#edf5f1;border-radius:999px;padding:3px 6px;font-size:9px;font-style:normal}.generic-preview-schemas article button{justify-self:start;padding:6px 9px;font-size:10px}.generic-preview-schemas-more{border-top:1px dashed #d5e2db;padding-top:7px}.generic-preview-schemas-more summary{cursor:pointer;color:#527268;font-size:10px}.generic-preview-schemas-more>div{gap:7px;margin-top:7px;display:grid}.generic-preview-target{background:#f5fbf7;border:1px solid #d8e9e0;border-radius:9px;gap:5px;padding:12px 14px;display:grid}.generic-preview-target strong{color:#286657;font-size:12px}.generic-preview-target>span{color:#71877e;font-size:11px;line-height:1.5}.generic-preview-target-buttons{flex-wrap:wrap;gap:7px;margin-top:4px;display:flex}.generic-preview-target-buttons .secondary-button{color:#347765;background:#fff;padding:7px 10px;font-size:11px}.dashboard-page{grid-template-rows:auto;grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;align-content:start;gap:16px;height:auto;min-height:0;overflow:visible}.dashboard-data-hero{grid-template-columns:minmax(205px,.72fr) minmax(640px,2.25fr);gap:15px}.dashboard-hero-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.dashboard-hero-metrics article{gap:8px;padding:10px}.dashboard-hero-metrics article>strong{font-size:25px}.dashboard-hero-metrics article>span{font-size:11px}.dashboard-hero-metrics article small{font-size:9px!important}.dashboard-priority-list{grid-auto-rows:minmax(68px,auto);overflow:visible}.dashboard-priority-list>button{grid-template-columns:38px minmax(0,1fr) auto;gap:11px;padding:12px 16px}.dashboard-priority-list>button>.icon-badge{width:36px;height:36px}.dashboard-priority-list>button>em{white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800}.dashboard-priority-list>button>em.priority-normal{color:#2f785f;background:#e1f1e7}.dashboard-priority-list>button>em.priority-important{color:#996b20;background:#fff0cd}.dashboard-priority-list>button>em.priority-urgent{color:#aa4f43;background:#ffe2dd}.dashboard-priority-list>button>em.overdue{color:#a8493e;background:#fff0ed}.dashboard-agenda-list{grid-template-rows:none;grid-auto-rows:minmax(68px,auto);overflow:visible}.dashboard-agenda-list>button>em{white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:9px;font-style:normal;font-weight:800}.dashboard-agenda-list>button>em.priority-normal{color:#2f785f;background:#e1f1e7}.dashboard-agenda-list>button>em.priority-important{color:#996b20;background:#fff0cd}.dashboard-agenda-list>button>em.priority-urgent{color:#aa4f43;background:#ffe2dd}.dashboard-secondary-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;min-height:0;display:grid}.dashboard-compact-panel{grid-template-rows:52px minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.dashboard-compact-panel>header{border-bottom:1px solid #e6e9e4;justify-content:space-between;align-items:center;gap:10px;padding:11px 16px;display:flex}.dashboard-compact-panel>header h3{color:var(--navy);margin:0;font-size:16px}.dashboard-compact-panel>header>span{color:var(--muted);font-size:10px}.dashboard-compact-panel .dashboard-compact-list,.dashboard-reminder-list{min-height:0;display:block;overflow:auto}.dashboard-compact-panel .dashboard-compact-list>button{grid-template-columns:30px minmax(0,1fr) 14px;align-items:center;gap:9px;min-height:50px;padding:9px 14px;display:grid}.dashboard-compact-panel .dashboard-compact-list>.v2-empty{margin:0}.dashboard-reminder-list>article{border-bottom:1px solid #e8ebe6;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:50px;padding:9px 14px;display:grid}.dashboard-reminder-list article>span{min-width:0}.dashboard-reminder-list strong,.dashboard-reminder-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.dashboard-reminder-list strong{font-size:12px}.dashboard-reminder-list small{color:var(--muted);margin-top:3px;font-size:9px}.dashboard-reminder-list article>button{color:var(--teal);background:#fff;border:1px solid #cadbd3;border-radius:6px;padding:5px 8px;font-size:9px;font-weight:750}@media (width<=1450px){.dashboard-data-hero{grid-template-columns:minmax(175px,.65fr) minmax(520px,2fr) auto}.dashboard-hero-metrics article>.ui-icon{display:none}.dashboard-hero-metrics article{grid-template-columns:auto minmax(0,1fr)}}@media (width<=1180px){.dashboard-page{grid-template-rows:auto;grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:14px;height:auto;min-height:0;display:grid;overflow:visible}.dashboard-data-hero{grid-template-columns:1fr;height:auto}.dashboard-hero-metrics{margin-top:12px}.dashboard-primary-grid,.dashboard-secondary-grid{grid-template-columns:1fr;margin-top:0}.dashboard-primary-grid>article+article,.dashboard-secondary-grid>article+article{margin-top:0}.dashboard-course-panel,.dashboard-agenda-panel,.dashboard-compact-panel{min-height:0}}@media (width<=720px){.dashboard-hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-secondary-grid{grid-template-columns:1fr}.dashboard-priority-list>button{grid-template-columns:34px minmax(0,1fr) auto}}.calendar-planner-head{border-bottom:1px solid #e3e7e1;justify-content:space-between;align-items:center;gap:16px;min-height:72px;padding:12px 16px;display:flex}.calendar-period-control{align-items:center;gap:10px;display:flex}.calendar-period-control>button{width:32px;height:32px;color:var(--teal);background:#fff;border:1px solid #d4ded8;border-radius:8px;place-items:center;display:grid}.calendar-period-control h3{min-width:120px;color:var(--navy);text-align:center;margin:3px 0 0;font-size:18px}.calendar-period-control .section-kicker{text-align:center;display:block}.calendar-head-actions>.primary-button{white-space:nowrap}.calendar-view-switch.cir-tabs button{color:#64746e;height:32px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 15px;font-size:12px;font-weight:750}.calendar-view-switch.cir-tabs button.active{color:#fff;background:var(--navy);box-shadow:0 8px 18px -10px #0e111680}.calendar-planner-layout{background:#fff;grid-template-columns:210px minmax(0,1fr) 280px;min-height:610px;display:grid}.calendar-control-sidebar{background:#f6f8f5;border-right:1px solid #e2e7e2;padding:16px}.calendar-mini{background:#fff;border:1px solid #dfe6e1;border-radius:10px;padding:11px}.calendar-mini>header{padding:2px 3px 10px}.calendar-mini>header strong{color:#39574f;font-size:12px}.calendar-mini-weekdays,.calendar-mini-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.calendar-mini-weekdays span{color:#8a9792;text-align:center;padding:4px 0;font-size:8px}.calendar-mini-grid>button,.calendar-mini-grid>span{color:#566b64;background:0 0;border:0;border-radius:6px;place-items:center;min-width:0;height:23px;font-size:9px;display:grid;position:relative}.calendar-mini-grid>button{cursor:pointer}.calendar-mini-grid>button:hover{background:#edf5f1}.calendar-mini-grid>button.today{color:var(--teal);font-weight:900}.calendar-mini-grid>button.selected{color:#fff;background:var(--teal)}.calendar-mini-grid>button.has-items:not(.selected):after{content:"";background:#d29435;border-radius:50%;width:3px;height:3px;position:absolute;bottom:2px}.calendar-filter-panel{gap:5px;margin-top:16px;display:grid}.calendar-filter-panel>.section-kicker{margin:0 4px 5px}.calendar-filter-panel>label{cursor:pointer;border-radius:8px;grid-template-columns:16px 9px minmax(0,1fr);align-items:center;gap:8px;padding:9px 7px;display:grid}.calendar-filter-panel>label:hover{background:#edf3ef}.calendar-filter-panel input{accent-color:var(--teal)}.calendar-filter-panel label>i{border-radius:2px;width:8px;height:8px}.calendar-filter-panel i.schedule{background:#4f7fa9}.calendar-filter-panel i.case{background:#2e8b72}.calendar-filter-panel i.action{background:#d09135}.calendar-filter-panel strong,.calendar-filter-panel small{display:block}.calendar-filter-panel strong{color:#405851;font-size:11px}.calendar-filter-panel small{color:#87948f;margin-top:2px;font-size:8px}.calendar-main-surface{background:#fffefa;min-width:0;overflow:auto}.calendar-month-view{padding:14px}.calendar-month-view .month-cell{min-height:96px}.calendar-month-view .month-cell.selected{box-shadow:inset 0 0 0 2px var(--teal);background:#f1f8f5}.month-cell>.calendar-chip.schedule{color:#3d678d;background:#e8f0f8}.month-cell>.calendar-chip.case{color:#27725f;background:#e4f2ec}.month-cell>.calendar-chip.action{color:#95651f;background:#fff0d8}.month-cell>.calendar-chip.action.active{box-shadow:inset 0 0 0 2px #d09135}.month-cell>small{color:#8a9792;margin-top:4px;font-size:8px;display:block}.calendar-week-view{min-height:610px}.calendar-week-view section>div>.calendar-chip.schedule{background:#e8f0f8;border-left-color:#4f7fa9}.calendar-week-view section>div>.calendar-chip.case{background:#e4f2ec;border-left-color:#2e8b72}.calendar-week-view section>div>.calendar-chip.action{background:#fff0d8;border-left-color:#d09135}.calendar-week-view section>div>.calendar-chip.action.active{box-shadow:inset 0 0 0 2px #d09135}.calendar-week-view section>div>.calendar-chip small{color:#687a74;margin-top:5px;font-size:9px;display:block}.calendar-day-view{padding:20px}.calendar-day-view>header{border-bottom:1px solid #e3e7e2;justify-content:space-between;align-items:center;gap:14px;padding-bottom:14px;display:flex}.calendar-day-view>header h3{color:var(--navy);margin:4px 0 0;font-size:18px}.calendar-day-view>header>span{color:#55716a;background:#e9f0ed;border-radius:99px;padding:5px 9px;font-size:9px}.calendar-day-view .day-timeline{margin-top:12px}.day-timeline .timeline-entry.case-deadline:before{background:#2e8b72;box-shadow:0 0 0 1px #2e8b72}.day-timeline .timeline-entry.action-deadline:before{background:#d09135;box-shadow:0 0 0 1px #d09135}.month-cell>.calendar-chip.case.priority-normal,.calendar-week-view section>div>.calendar-chip.case.priority-normal,.planner-deadline-pocket .calendar-chip.case.priority-normal{color:#2f785f;background:#e1f1e7}.month-cell>.calendar-chip.case.priority-important,.calendar-week-view section>div>.calendar-chip.case.priority-important,.planner-deadline-pocket .calendar-chip.case.priority-important{color:#996b20;background:#fff0cd}.month-cell>.calendar-chip.case.priority-urgent,.calendar-week-view section>div>.calendar-chip.case.priority-urgent,.planner-deadline-pocket .calendar-chip.case.priority-urgent{color:#aa4f43;background:#ffe2dd}.month-cell>.calendar-chip.action.priority-normal,.calendar-week-view section>div>.calendar-chip.action.priority-normal,.planner-deadline-pocket .calendar-chip.action.priority-normal{color:#2f785f;background:#e1f1e7}.month-cell>.calendar-chip.action.priority-important,.calendar-week-view section>div>.calendar-chip.action.priority-important,.planner-deadline-pocket .calendar-chip.action.priority-important{color:#996b20;background:#fff0cd}.month-cell>.calendar-chip.action.priority-urgent,.calendar-week-view section>div>.calendar-chip.action.priority-urgent,.planner-deadline-pocket .calendar-chip.action.priority-urgent{color:#aa4f43;background:#ffe2dd}.day-timeline .timeline-entry.case-deadline.priority-normal:before,.day-timeline .timeline-entry.action-deadline.priority-normal:before{background:#2f785f;box-shadow:0 0 0 1px #2f785f}.day-timeline .timeline-entry.case-deadline.priority-important:before,.day-timeline .timeline-entry.action-deadline.priority-important:before{background:#c58a24;box-shadow:0 0 0 1px #c58a24}.day-timeline .timeline-entry.case-deadline.priority-urgent:before,.day-timeline .timeline-entry.action-deadline.priority-urgent:before{background:#b95648;box-shadow:0 0 0 1px #b95648}.calendar-selected-list>button.case.priority-normal:before,.calendar-selected-list>button.action.priority-normal:before{background:#2f785f}.calendar-selected-list>button.case.priority-important:before,.calendar-selected-list>button.action.priority-important:before{background:#c58a24}.calendar-selected-list>button.case.priority-urgent:before,.calendar-selected-list>button.action.priority-urgent:before{background:#b95648}.calendar-selected-list small.priority-normal{color:#2f785f}.calendar-selected-list small.priority-important{color:#996b20}.calendar-selected-list small.priority-urgent{color:#aa4f43}.calendar-selected-sidebar{background:#f8faf7;border-left:1px solid #e2e7e2;grid-template-rows:auto minmax(0,1fr) auto auto;padding:16px;display:grid}.calendar-selected-sidebar>header{border-bottom:1px solid #e2e7e2;justify-content:space-between;align-items:flex-end;gap:10px;padding-bottom:11px;display:flex}.calendar-selected-sidebar h3{color:var(--navy);margin:4px 0 0;font-size:18px}.calendar-selected-sidebar>header>span{color:var(--muted);font-size:9px}.calendar-selected-list{min-height:0;padding-top:6px;overflow:auto}.calendar-selected-list>button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #e8ece8;grid-template-columns:43px minmax(0,1fr);gap:9px;padding:11px 5px 11px 12px;display:grid;position:relative}.calendar-selected-list>button:before{content:"";background:#4f7fa9;border-radius:3px;width:5px;height:22px;position:absolute;top:17px;left:2px}.calendar-selected-list>button.case:before{background:#2e8b72}.calendar-selected-list>button.action:before{background:#d09135}.calendar-selected-list>button:hover,.calendar-selected-list>button.active{background:#fff6e3}.calendar-selected-list time{color:#48665f;font-size:10px;font-weight:800}.calendar-selected-list span{min-width:0}.calendar-selected-list strong,.calendar-selected-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.calendar-selected-list strong{font-size:11px}.calendar-selected-list small{color:var(--muted);margin-top:4px;font-size:8px}.calendar-selected-list>p{color:var(--muted);text-align:center;padding:32px 8px;font-size:11px}.calendar-selected-task-preview{background:#fffaf0;border:1px solid #eadfca;border-radius:9px;margin-top:10px;padding:11px 12px}.calendar-selected-task-preview>header{justify-content:space-between;align-items:center;gap:8px;display:flex}.calendar-selected-task-preview>header button{color:#7b877e;background:#f1eadb;border:0;border-radius:50%;width:22px;height:22px;font-size:16px;line-height:1}.calendar-selected-task-preview>strong{color:#3d514a;text-overflow:ellipsis;white-space:nowrap;margin-top:8px;font-size:12px;line-height:1.5;display:block;overflow:hidden}.calendar-selected-task-preview>div{flex-wrap:wrap;align-items:center;gap:7px;margin-top:7px;display:flex}.calendar-selected-task-preview>div small{color:#7c8981;font-size:9px}.calendar-task-status{color:#90631f;background:#f7e7bf;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:800}.calendar-task-status.doing{color:#32708b;background:#e4f0f5}.calendar-task-status.done{color:#287563;background:#e3f1e9}.calendar-task-status.cancelled{color:#81857c;background:#eceeea}.calendar-selected-task-preview>p{-webkit-line-clamp:2;color:#718078;-webkit-box-orient:vertical;margin:8px 0 0;font-size:10px;line-height:1.6;display:-webkit-box;overflow:hidden}.calendar-selected-task-preview>.secondary-button{width:100%;margin-top:10px;padding:7px 9px;font-size:10px}.calendar-sidebar-add{color:#fff;background:var(--teal);width:100%;font:inherit;border:0;border-radius:8px;padding:10px;font-size:11px;font-weight:800}.calendar-selected-task-preview>div small.priority-normal{color:#2f785f;font-weight:800}.calendar-selected-task-preview>div small.priority-important{color:#996b20;font-weight:800}.calendar-selected-task-preview>div small.priority-urgent{color:#aa4f43;font-weight:800}@media (width<=1250px){.calendar-planner-layout{grid-template-columns:190px minmax(0,1fr) 240px}.calendar-mini-grid>button,.calendar-mini-grid>span{height:21px}.calendar-selected-sidebar{padding:12px}.calendar-head-actions{gap:6px}}@media (width<=1000px){.calendar-planner-layout{grid-template-columns:190px minmax(0,1fr)}.calendar-selected-sidebar{border-top:1px solid #e2e7e2;border-left:0;grid-column:1/-1;min-height:220px}.calendar-selected-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:210px;display:grid}.calendar-selected-list>button{border-right:1px solid #e8ece8}.calendar-sidebar-add{margin-top:10px}.calendar-planner-head{flex-direction:column;align-items:flex-start}.calendar-head-actions{justify-content:flex-end;width:100%}}@media (width<=720px){.calendar-planner-layout{grid-template-columns:1fr}.calendar-control-sidebar{border-bottom:1px solid #e2e7e2;border-right:0}.calendar-mini{max-width:330px;margin:auto}.calendar-filter-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-filter-panel>.section-kicker{grid-column:1/-1}.calendar-filter-panel>label{grid-template-columns:14px 8px minmax(0,1fr)}.calendar-filter-panel small{display:none}.calendar-head-actions{flex-wrap:wrap;justify-content:flex-start}.calendar-head-actions>.primary-button{justify-content:center;width:100%}.calendar-month-view{padding:8px}.calendar-month-view .month-cell{min-height:76px}.calendar-selected-list{grid-template-columns:1fr}.calendar-week-view{min-height:460px}.calendar-day-view{padding:14px}}.sidebar{background:radial-gradient(140% 60% at 15% -5%,#4cbe972e 0%,#0000 55%),radial-gradient(120% 50% at 80% 75%,#196f5b2e 0%,#0000 60%),linear-gradient(#123f39 0%,#103a36 48%,#0b342f 100%);box-shadow:inset -1px 0 #ffffff0d,10px 0 40px #052d271a}.sidebar:before{content:"";z-index:0;pointer-events:none;opacity:.92;background:radial-gradient(circle at 20% 78%,#4dae8b21,#0000 68%),linear-gradient(136deg,#0000 18%,#80e1be1a 43%,#80e1be06 58%,#0000 75%);position:absolute;inset:-14% -34% 20%;transform:rotate(-4deg)}.sidebar:after{content:"";z-index:0;pointer-events:none;opacity:.68;background:linear-gradient(#0000 0%,#062c2714 25%,#052622b8 100%),url(/sidebar-forest.svg) bottom/125% no-repeat;height:310px;position:absolute;bottom:0;left:0;right:0}.sidebar .brand{border-bottom-color:#0000;position:relative}.sidebar .brand:after{content:"";background:linear-gradient(90deg,#0000,#c8f0e229,#0000);height:1px;position:absolute;bottom:0;left:0;right:0}.sidebar-ai-entry:not(.active) .nav-ai-icon{color:#a6d1c6;box-shadow:none;background:#ffffff14}.sidebar-ai-entry.active .nav-ai-icon{color:#126653;background:linear-gradient(145deg,#cfffeef5,#87e0c0e6);box-shadow:0 5px 14px #053a3033,inset 0 1px #ffffffa6}.sidebar-group-toggle.expanded{color:#eefaf6eb;background:linear-gradient(90deg,#6fcaae1a,#0000 84%)}.sidebar-group-items button{border:1px solid #0000;transition:background .18s,border-color .18s,color .18s,transform .18s}.sidebar-group-items button:hover{color:#fffffff2;background:#ffffff0e;transform:translate(2px)}.sidebar-group-items button.active{color:#fff;background:linear-gradient(90deg,#49cda126,#52c49e12);border-color:#67e1b86b;box-shadow:inset 0 1px #ffffff14,0 8px 30px #001e1914}.system-settings-entry{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff09;border-color:#b8ecda24;box-shadow:inset 0 1px #ffffff0a,0 8px 28px #0014110f}.system-settings-entry>span{background:#ffffff12}.privacy-dot{box-shadow:0 0 12px #42d99e8c}.sidebar-group-items{--sidebar-nav-step:39px;position:relative}.sidebar-group-items button{z-index:1;background:0 0;transition:color .28s,transform .28s;position:relative}.sidebar-group-items button.active{box-shadow:none;background:0 0;border-color:#0000}.sidebar-group-items button.active:before{display:none}.sidebar-nav-glider{z-index:0;pointer-events:none;height:37px;transform:translateY(calc(var(--active-item,0) * var(--sidebar-nav-step)));background:linear-gradient(100deg,#49cda126,#52c49e12);border:1px solid #67e1b847;border-radius:9px;transition:transform .5s cubic-bezier(.37,1.95,.66,.56);position:absolute;inset:0 0 auto;box-shadow:inset 0 1px #ffffff14,0 8px 30px #001e1914}.sidebar-nav-glider:before{content:"";background:#8ed7c5;border-radius:0 3px 3px 0;width:3px;position:absolute;top:7px;bottom:7px;left:-1px;box-shadow:0 0 12px #8ed7c573}.sidebar-nav-glider:after{content:"";border-radius:inherit;opacity:.85;background:linear-gradient(90deg,#8ed7c514,#0000 72%);position:absolute;inset:0 0 0 3px}.main-panel>.page-content{animation:.34s both module-page-enter}@keyframes module-page-enter{0%{opacity:.72}to{opacity:1}}.sidebar-nav .sidebar-group-items{gap:2px}.sidebar-nav .sidebar-group-items>button{height:43px;min-height:43px;padding:8px 11px}.sidebar-nav-glider{height:43px;transform:translateY(calc(var(--active-item,0) * 45px))}@media (width<=1080px){.sidebar-nav .sidebar-group-items{gap:3px}.sidebar-nav .sidebar-group-items>button{height:40px;min-height:40px;padding:8px}.sidebar-nav-glider{height:40px;transform:translateY(calc(var(--active-item,0) * 43px))}}@media (width<=760px){.sidebar-nav-glider{display:none}}.class-check-page{box-sizing:border-box;gap:12px;min-width:0;min-height:0;padding:18px 34px 16px;overflow:hidden}.class-check-filter-panel{align-items:center;gap:12px;min-height:58px;margin:0;padding:10px 14px;display:flex}.class-check-search{flex:1;min-width:190px}.class-check-filter-field{align-items:center;gap:8px;min-width:190px;display:flex}.class-check-filter-field span{color:#6b7b76;font-size:9px;font-weight:800}.class-check-filter-field select{color:#3d5c54;background:#fff;border:1px solid #d7dfda;border-radius:8px;min-width:142px;height:38px;padding:0 30px 0 10px;font-size:10px;font-weight:750}.class-check-week-control{align-items:center;gap:8px;margin-left:auto;display:flex}.class-check-week-control>button{width:32px;height:32px;color:var(--teal);cursor:pointer;background:#fff;border:1px solid #d6e1db;border-radius:8px;place-items:center;font-size:21px;line-height:1;display:grid}.class-check-week-control>div{text-align:center;min-width:108px}.class-check-week-control strong,.class-check-week-control span{display:block}.class-check-week-control strong{color:var(--navy);font-size:12px}.class-check-week-control span{color:var(--muted);margin-top:3px;font-size:9px}.class-check-today-button{white-space:nowrap}.class-check-schedule-panel{background:#fffefa;border-radius:12px 12px 5px;grid-template-rows:auto minmax(0,1fr);min-height:0;padding:0;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 24px #1c312c0b}.class-check-schedule-panel:before{z-index:3;pointer-events:none;content:"";opacity:.9;background:radial-gradient(circle,#bacbc3 0 2px,#f0f4f0 2.5px 4.5px,#0000 5px) top/10px 46px repeat-y;width:10px;position:absolute;top:73px;bottom:14px;left:10px}.class-check-schedule-panel:after{z-index:2;pointer-events:none;content:"";opacity:.62;background:#e4c5ba;width:1px;position:absolute;top:54px;bottom:0;left:29px}.class-check-schedule-heading{box-sizing:border-box;background:#fffffaeb;border-bottom:1px solid #e4ebe5;justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:11px 18px 11px 42px;display:flex}.class-check-schedule-heading>div:first-child{align-items:baseline;gap:10px;display:flex}.class-check-schedule-heading strong{color:var(--navy);font-size:14px}.class-check-schedule-heading div span,.class-check-result{color:var(--muted);font-size:10px}.class-check-schedule-meta{align-items:center;gap:12px;display:flex}.class-check-notice{color:#8c6a31;white-space:nowrap;background:#fff9ed;border:1px solid #eadfca;border-radius:999px;align-items:center;gap:5px;padding:5px 9px;font-size:9px;font-weight:750;display:inline-flex}.class-check-notice i{color:#fff;background:#bf8b39;border-radius:50%;place-items:center;width:14px;height:14px;font-size:9px;font-style:normal;display:grid}.class-check-table-wrap{background:#fffefa;grid-template-rows:52px repeat(5,minmax(0,1fr));min-height:0;display:grid;overflow:auto hidden}.class-check-table{grid-template-columns:112px repeat(7,minmax(128px,1fr));min-width:1010px;height:100%;display:grid}.class-check-table-head{color:#f7fbf9;background:var(--navy);border-bottom:1px solid #ffffff17}.class-check-table-head>div,.class-check-period-title{text-align:center;border-left:1px solid #ffffff1a;place-content:center;gap:4px;min-height:0;display:grid}.class-check-table-head b{font-size:11px}.class-check-table-head small{color:#b4cbc5;font-size:9px}.class-check-table-head>div.is-today{color:#153d61;background:#dcebf5}.class-check-table-head>div.is-today small{color:#547a9a}.class-check-period-title{color:#b4cbc5;border-left:0;font-size:9px}.class-check-table-row{background:#fffefa;border-bottom:1px solid #e5ebe6;min-height:0}.class-check-table-row:last-child{border-bottom:0}.class-check-period{min-height:0;color:var(--navy);text-align:center;background-color:#f5f8f5;background-image:repeating-linear-gradient(#0000 0 28px,#738b801a 29px,#0000 30px);align-content:center;gap:5px;padding:8px;display:grid}.class-check-period strong{font-size:10px}.class-check-period small{color:var(--muted);font-size:8px}.class-check-slot{background-color:#fffefa;background-image:repeating-linear-gradient(#0000 0 28px,#738b801a 29px,#0000 30px);border-left:1px solid #e5ebe6;align-items:stretch;min-width:0;min-height:0;padding:5px;display:flex}.class-check-slot.is-today{background-color:#f7fbfd}.class-check-slot-empty{color:#cdd8d2;text-align:center;align-self:center;width:100%;font-size:14px}.class-check-course{background:#ecf8f2;border-left:3px solid #55b895;border-radius:7px;align-content:start;gap:4px;width:100%;min-height:0;padding:7px 8px;display:grid;box-shadow:0 2px 5px #214d4109}.class-check-course span{color:#35856f;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.class-check-course strong{color:#193b3a;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.3;overflow:hidden}.class-check-course small{color:#70807a;text-overflow:ellipsis;white-space:nowrap;font-size:8px;line-height:1.25;overflow:hidden}.class-check-course-blue{background:#eef5fc;border-left-color:#6499c7}.class-check-course-blue span{color:#4a78a5}.class-check-course-amber{background:#fff8e8;border-left-color:#dfac4d}.class-check-course-amber span{color:#a37623}.class-check-course-purple{background:#f7f1fc;border-left-color:#9a7ac5}.class-check-course-purple span{color:#7656a1}@media (width<=1050px){.class-check-filter-panel{flex-wrap:wrap;align-items:stretch}.class-check-search{flex-basis:45%}.class-check-filter-field{flex:1}.class-check-week-control{margin-left:0}.class-check-today-button{margin-left:auto}}@media (width<=760px){.class-check-page{height:auto;min-height:calc(calc(100 * var(--vh1)) - 76px);padding:18px 14px 30px;overflow:visible}.class-check-filter-panel{grid-template-columns:1fr 1fr;display:grid}.class-check-search{grid-column:1/-1}.class-check-filter-field{min-width:0}.class-check-filter-field select{flex:1;min-width:0}.class-check-week-control{justify-content:center}.class-check-today-button{margin-left:0}.class-check-schedule-panel:before,.class-check-schedule-panel:after{display:none}.class-check-schedule-heading{flex-direction:column;align-items:flex-start;gap:7px;padding-left:18px}.class-check-schedule-meta{justify-content:space-between;width:100%}}@media (width<=500px){.class-check-filter-panel{grid-template-columns:1fr}.class-check-week-control{justify-content:space-between}.class-check-today-button{width:100%}.class-check-schedule-meta{flex-direction:column;align-items:flex-start;gap:5px}}.generic-preview-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.student-status-chip{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:10px;font-weight:750;display:inline-flex}.student-status-chip:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.student-status-chip.status-normal{color:#3c7d5f;background:#e8f5ee}.student-status-chip.status-on-leave{color:#3d6e9e;background:#e7f1fa}.student-status-chip.status-attendance-alert{color:#a3561f;background:#fdf0e2}.dashboard-attention-panel{margin-top:0;padding:16px 20px}.dashboard-attention-panel>header{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.dashboard-attention-panel h3{color:var(--navy);font-size:15px}.dashboard-attention-count{color:var(--muted);font-size:11px;font-weight:750}.dashboard-attention-list{gap:7px;display:grid}.dashboard-attention-row{text-align:left;cursor:pointer;background:#fffefb;border:1px solid #e7ebe7;border-radius:10px;align-items:center;gap:12px;padding:9px 13px;transition:border-color .15s,transform .15s;display:flex}.dashboard-attention-row:hover{border-color:#c5d3ca;transform:translate(2px)}.dashboard-attention-row>i{color:#35705a;background:#e4efe8;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:13px;font-style:normal;font-weight:800;display:grid;overflow:hidden}.dashboard-attention-row>i img{object-fit:cover;width:100%;height:100%}.dashboard-attention-identity{gap:2px;min-width:0;display:grid}.dashboard-attention-identity strong{color:#1f3d33;font-size:13px}.dashboard-attention-identity small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.dashboard-attention-reasons{flex-wrap:wrap;flex:0 auto;gap:5px;min-width:0;margin-left:auto;display:flex}.attention-reason{white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:9.5px;font-style:normal;font-weight:750}.attention-reason.reason-leave-overdue{color:#a83232;background:#fceaea}.attention-reason.reason-on-leave{color:#3d6e9e;background:#e7f1fa}.attention-reason.reason-attendance-alert{color:#a3561f;background:#fdf0e2}.attention-reason.reason-discipline{color:#7656a1;background:#f3ecfa}.dashboard-attention-more{color:var(--muted);margin-top:4px;font-size:10px}@media (width<=700px){.dashboard-attention-reasons{margin-left:0}}.organization-page{padding:0 0 32px}.organization-count{color:#84948d;font-size:11px}.organization-body{grid-template-columns:minmax(280px,.9fr) minmax(320px,1.1fr);align-items:start;gap:18px;display:grid}.organization-tree{background:#fff;border:1px solid #dfe4df;border-radius:11px;padding:14px}.organization-college+.organization-college{margin-top:10px}.organization-major{border-left:1px dashed #dbe4df;margin:4px 0 0 14px;padding-left:12px}.organization-node{color:#3f4a46;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:7px;width:100%;padding:7px 9px;font-size:12px;display:flex}.organization-node:hover{background:#f4f8f6}.organization-node.is-selected{color:#1f5f50;background:#e7f3ed;font-weight:800}.organization-node.is-college{font-weight:800}.organization-node.is-class{margin-left:14px;font-size:11px}.organization-node small{color:#98a4a0;margin-left:auto;font-size:10px;font-weight:400}.organization-loose-label{color:#a3b0aa;margin:6px 0 2px 4px;font-size:10px;display:block}.organization-detail{background:#fff;border:1px solid #dfe4df;border-radius:11px;padding:16px}.organization-detail h2{margin:0;font-size:16px}.organization-kind{color:#84948d;margin:4px 0 14px;font-size:10px}.organization-detail label{color:#53635f;gap:6px;margin-top:12px;font-size:10px;font-weight:800;display:grid}.organization-detail input,.organization-detail select{width:100%;color:var(--ink);background:#fff;border:1px solid #d4dcd6;border-radius:7px;outline:0;padding:9px 10px;font-size:12px}.organization-detail input:focus,.organization-detail select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2f81761a}.organization-actions{gap:8px;margin-top:16px;display:flex}.organization-archive-confirm{background:#fef6f4;border:1px solid #f0d9d2;border-radius:8px;margin-top:14px;padding:12px}.organization-archive-confirm p{color:#8a4b3d;margin:0 0 8px;font-size:11px;line-height:1.65}.organization-archive-confirm div{gap:8px;display:flex}.organization-archive-confirm .text-danger{color:#ae5044;background:0 0;border:0;font-size:11px;font-weight:800}.organization-empty{color:#98a4a0;margin:0;font-size:11px;line-height:1.7}.organization-create{border-top:1px dashed #e2e9e5;margin-top:12px;padding-top:12px}.organization-create .secondary-button{width:100%;min-height:34px;color:var(--teal);background:#fff;border:1px dashed #bfd0ca;border-radius:7px;font-size:11px;font-weight:800}.organization-create-form{gap:8px;display:grid}.organization-create-form strong{color:#33544b;font-size:11px}.organization-create-form input{border:1px solid #d4dcd6;border-radius:7px;outline:0;padding:8px 9px;font-size:12px}.organization-create-form>div{gap:8px;display:flex}.organization-child-create{color:var(--teal);cursor:pointer;background:0 0;border:0;margin-top:14px;padding:0;font-size:11px;font-weight:800}.dorm-structure-bar{align-items:center;gap:6px;display:flex;position:absolute;top:14px;right:52px}.dorm-structure-bar button{color:#5c6b64;cursor:pointer;background:#fff;border:1px solid #cfd8d3;border-radius:6px;padding:5px 9px;font-size:10px;font-weight:800}.dorm-structure-bar button:hover{border-color:var(--teal);color:var(--teal)}.dorm-structure-bar button.primary{border-color:var(--teal);color:#fff;background:var(--teal)}.dorm-structure-bar button:disabled{cursor:not-allowed;opacity:.45}.dorm-structure-bar.is-editing{background:#fff;border:1px solid #dfe4df;border-radius:8px;padding:5px;right:52px;box-shadow:0 4px 14px #102f271f}.dorm-structure-bar.is-editing input{border:1px solid #d4dcd6;border-radius:6px;outline:0;width:150px;padding:5px 8px;font-size:11px}.organization-clubs{margin-top:18px}.organization-club-list{gap:8px;margin:12px 0 0;display:grid}.organization-club-row{background:#fff;border:1px solid #e4ece8;border-radius:8px;align-items:center;gap:10px;padding:9px 11px;display:flex}.organization-club-row strong{color:#33544b;font-size:12px}.organization-club-row small{color:#98a4a0;font-size:10px}.organization-club-row input{border:1px solid #d4dcd6;border-radius:7px;outline:0;flex:auto;padding:7px 9px;font-size:12px}.organization-club-row button{margin-left:auto}.organization-club-row button+button{margin-left:6px}.organization-club-row .secondary-button{color:#5c6b64;background:#fff;border:1px solid #cfd8d3;border-radius:6px;min-height:30px;padding:5px 11px;font-size:10px;font-weight:800}.organization-club-row .text-danger{color:#ae5044;background:0 0;border:0;font-size:10px;font-weight:800}.organization-clubs .organization-create-form{border-top:1px dashed #e2e9e5;margin-top:14px;padding-top:12px}.course-detail-actions{border-top:1px dashed #e2e9e5;gap:8px;margin-top:16px;padding-top:14px;display:flex}.course-detail-actions .secondary-button{min-height:32px;color:var(--teal);background:#fff;border:1px solid #bfd0ca;border-radius:7px;padding:6px 13px;font-size:11px;font-weight:800}.course-detail-actions .secondary-button:disabled{cursor:not-allowed;opacity:.45}.course-detail-actions .text-danger{color:#ae5044;background:0 0;border:0;font-size:11px;font-weight:800}.schedule-attendance{gap:14px;display:grid}.schedule-attendance-note{color:#4d635c;background:#f6faf8;border-radius:8px;margin:0;padding:10px 12px;font-size:11px;line-height:1.75}.schedule-attendance-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.schedule-attendance-picker label{gap:5px;display:grid}.schedule-attendance-picker span{color:#53635f;font-size:10px;font-weight:800}.schedule-attendance-picker select,.schedule-attendance-picker input{border:1px solid #d4dcd6;border-radius:7px;padding:8px 9px;font-size:12px}.schedule-attendance-slot{color:#33544b;margin:0;font-size:11px;font-weight:800}.schedule-attendance-status{color:#53635f;align-items:center;gap:7px;font-size:11px;display:flex}.schedule-attendance-status button{color:#5c6b64;cursor:pointer;background:#fff;border:1px solid #d4dcd6;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:800}.schedule-attendance-status button.active{color:#fff;background:#ae5044;border-color:#ae5044}.schedule-attendance-roster{max-height:calc(46 * var(--vh1));grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px;display:grid;overflow-y:auto}.schedule-attendance-roster label{cursor:pointer;background:#fff;border:1px solid #e4ece8;border-radius:7px;align-items:center;gap:8px;padding:7px 9px;display:flex}.schedule-attendance-roster label.is-absent{background:#fef6f4;border-color:#f0c9bf}.schedule-attendance-roster span{font-size:11px}.schedule-attendance-roster small{color:#98a4a0;font-size:9px;display:block}.schedule-attendance-feedback{color:#9a4b3d;background:#fbe9e5;border-radius:7px;margin:0;padding:8px 10px;font-size:11px}.dashboard-today-course em{color:#7c5aa8;margin-left:auto;font-size:10px;font-style:normal;font-weight:800}.options-settings-card .options-group-list{gap:10px;margin-top:14px;display:grid}.options-group{background:#fff;border:1px solid #e4ece8;border-radius:9px;padding:12px 13px}.options-group.is-editing{background:#fbfdfc;border-color:#bfd0ca}.options-group>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.options-group>header strong{color:#33544b;font-size:12px;display:block}.options-group>header small{color:#98a4a0;margin-top:3px;font-size:10px;display:block}.options-group-actions{flex:none;gap:6px;display:flex}.options-group-actions .secondary-button{color:#5c6b64;background:#fff;border:1px solid #cfd8d3;border-radius:6px;min-height:28px;padding:5px 11px;font-size:10px;font-weight:800}.options-group-actions .primary-button{min-height:28px;padding:5px 12px;font-size:10px}.options-group-actions .text-danger{color:#ae5044;background:0 0;border:0;font-size:10px;font-weight:800}.options-chips{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.options-chips span{color:#4a5a54;background:#f2f7f4;border-radius:999px;padding:3px 9px;font-size:10px}.options-chips span.is-off{color:#a3b0aa;background:#f6f7f6;text-decoration:line-through}.options-editor{gap:9px;margin-top:12px;display:grid}.options-editor>label{gap:5px;display:grid}.options-editor>label span{color:#53635f;font-size:10px;font-weight:800}.options-editor input{border:1px solid #d4dcd6;border-radius:7px;outline:0;padding:7px 9px;font-size:11px}.options-row{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.options-active{color:#5c6b64;white-space:nowrap;align-items:center;gap:5px;font-size:10px;display:inline-flex}.options-note{color:#6d6350;background:#fdfbf4;border-radius:7px;margin:0;padding:8px 10px;font-size:10px;line-height:1.7}.grade-rules-card .grade-rules-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.grade-rules-grid label{gap:6px;display:grid}.grade-rules-grid label>span{color:#53635f;font-size:10px;font-weight:800}.grade-rules-grid input,.grade-rules-grid select{border:1px solid #d4dcd6;border-radius:7px;outline:0;width:100%;padding:9px 10px;font-size:12px}.grade-rules-grid label>small{color:var(--muted);font-size:10px;line-height:1.5}.grade-band-editor,.grade-scale-editor{border-top:1px dashed #e2e9e5;gap:8px;margin-top:14px;padding-top:12px;display:grid}.grade-band-editor>strong,.grade-scale-editor>strong{color:#33544b;font-size:11px}.grade-scale-editor>p{color:#6d7a74;margin:0;font-size:10px;line-height:1.7}.grade-band-row{color:#5c6b64;grid-template-columns:110px auto 110px auto;align-items:center;gap:8px;font-size:10px;display:grid}.grade-scale-row{grid-template-columns:minmax(0,1fr) auto 150px auto;align-items:center;gap:8px;display:grid}.grade-band-row input,.grade-scale-row input{border:1px solid #d4dcd6;border-radius:7px;outline:0;padding:7px 9px;font-size:11px}.grade-band-editor>button,.grade-scale-editor>button{color:#5c6b64;background:#fff;border:1px solid #cfd8d3;border-radius:6px;justify-self:start;min-height:30px;padding:5px 11px;font-size:10px;font-weight:800}@media (width<=720px){.grade-rules-card .grade-rules-grid{grid-template-columns:1fr}}.grade-import{gap:12px;display:grid}.grade-import-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.grade-import-summary>div{background:#fff;border:1px solid #e4ece8;border-radius:9px;padding:10px 12px}.grade-import-summary>div.has-error{background:#fef6f4;border-color:#f0c9bf}.grade-import-summary span{color:#84948d;font-size:10px;display:block}.grade-import-summary strong{color:#33544b;margin-top:3px;font-size:18px;display:block}.grade-import-mapping{color:#4d635c;background:#f6faf8;border-radius:8px;margin:0;padding:9px 11px;font-size:10px;line-height:1.7}.grade-import-mapping b{color:#9a4b3d}.grade-import-warning{color:#8a4b3d;background:#fef6f4;border-radius:7px;margin:0;padding:8px 10px;font-size:10px;line-height:1.6}.grade-import-table-wrap{max-height:calc(46 * var(--vh1));overflow:auto}.grade-import-table{border-collapse:collapse;width:100%;font-size:10px}.grade-import-table th{color:#7a8a84;text-align:left;white-space:nowrap;background:#f4f8f6;font-weight:800;position:sticky;top:0}.grade-import-table th,.grade-import-table td{vertical-align:top;border:1px solid #e7eeea;padding:6px 8px}.grade-import-table tr.is-skip{color:#a3b0aa}.grade-import-table tr.is-error{background:snow}.grade-import-status{white-space:nowrap;border-radius:3px;padding:2px 7px;font-size:9px;font-style:normal;font-weight:800}.grade-import-status.is-ready{color:#2f6a58;background:#e4f1e9}.grade-import-status.is-update{color:#7a5a2c;background:#f6ead6}.grade-import-status.is-skip{color:#7c8a84;background:#f1f4f2}.grade-import-status.is-error{color:#9a4b3d;background:#fbe9e5}.grade-import-unknown{color:#9a4b3d;font-weight:800}.grade-import-message{color:#6d7a74;display:block}.grade-import-note{color:#6d6350;background:#fdfbf4;border-radius:7px;margin:0;padding:9px 11px;font-size:10px;line-height:1.7}@media (width<=720px){.grade-import-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.hardship-basis{color:#5c6b64;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-hardship-strip{background:#fdfbf4;border:1px solid #e7dcc4;border-radius:9px;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:12px 0 0;padding:11px 14px;display:flex}.profile-hardship-strip>strong{color:#7a5a2c;align-items:center;gap:6px;font-size:11px;display:inline-flex}.profile-hardship-item{flex-wrap:wrap;align-items:baseline;gap:8px;font-size:10px;display:flex}.profile-hardship-item>span{color:#84948d}.profile-hardship-item>em{color:#7a5a2c;background:#f6ead6;border-radius:999px;padding:2px 8px;font-size:10px;font-style:normal;font-weight:800}.profile-hardship-item>small{color:#98a4a0}.profile-hardship-item>p{color:#6d6350;text-overflow:ellipsis;white-space:nowrap;max-width:46ch;margin:0;overflow:hidden}.care-close-hint,.care-close-hint strong{color:#4a4234}.profile-care-strip{background:#faf8fd;border:1px solid #e6e2ee;border-radius:9px;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:12px 0 0;padding:11px 14px;display:flex}.profile-care-strip>strong{color:#5c4b7d;align-items:center;gap:6px;font-size:11px;display:inline-flex}.profile-care-item{flex-wrap:wrap;align-items:baseline;gap:8px;font-size:10px;display:flex}.profile-care-item>em{color:#5c4b7d;background:#f0ecf8;border-radius:999px;padding:2px 8px;font-size:10px;font-style:normal;font-weight:800}.profile-care-item>small{color:#98a4a0}.profile-care-item>p{color:#6f6584;text-overflow:ellipsis;white-space:nowrap;max-width:46ch;margin:0;overflow:hidden}.dashboard-attention-item{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dashboard-attention-item .dashboard-attention-row{flex:340px;min-width:0;overflow:hidden}.dashboard-attention-exits{flex-wrap:wrap;flex:none;gap:4px;display:flex}.dashboard-attention-exits button{color:#5c4b7d;white-space:nowrap;cursor:pointer;background:#faf8fd;border:1px solid #d8d2e4;border-radius:7px;padding:6px 8px;font-size:10px;font-weight:800}.dashboard-attention-exits button:hover{background:#f3effa;border-color:#bcb0d4}.attention-reason.reason-care{color:#5c4b7d;background:#f0ecf8}.attention-reason.reason-grade-alert{color:#a83232;background:#fbeaea}.notice-board{padding:0;overflow:hidden}.notice-toolbar{border-bottom:1px solid var(--paper-line);background:var(--paper-sheet);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 24px;display:flex}.notice-toolbar .search-box{flex:240px;max-width:none}.notice-toolbar-status{color:var(--paper-muted);white-space:nowrap;align-items:center;gap:8px;font-size:11px;font-weight:800;display:flex}.notice-toolbar select{border:1px solid var(--paper-line);color:#3b4038;background:#fffdf7;border-radius:6px;min-width:150px;min-height:38px;padding:0 10px;font-size:11.5px}.notice-toolbar>.primary-button{margin-left:auto}.notice-list{gap:12px;display:grid}.notice-card{gap:10px;padding:15px 17px;display:grid}.notice-card.is-overdue{border-left:3px solid #d8a08a}.notice-card-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.notice-card-head h3{color:#1f3d33;margin:0;font-size:15px}.notice-card-head p{color:#5c6b64;white-space:pre-wrap;margin:6px 0 0;font-size:11.5px;line-height:1.7}.notice-delivery{border-radius:999px;flex:none;padding:3px 10px;font-size:10px;font-style:normal;font-weight:800}.notice-delivery.is-not-sent{color:#7a5a2c;background:#f6ead6}.notice-delivery.is-marked-sent{color:#2f6a58;background:#e4f1e9}.notice-delivery.is-failed{color:#9a4b3d;background:#fbe9e5}.notice-meta{color:#84948d;flex-wrap:wrap;gap:6px 16px;font-size:10px;display:flex}.notice-urge-note{color:#5c4b7d}.notice-progress{align-items:center;gap:10px;display:flex}.notice-progress-bar{background:#eef2f0;border-radius:999px;flex:1;max-width:260px;height:6px;overflow:hidden}.notice-progress-bar>span{background:#6fa08e;border-radius:999px;height:100%;display:block}.notice-progress>strong{color:#2f6a58;font-size:12px}.notice-progress>small{color:#98a4a0;font-size:10px}.notice-card-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.notice-card-actions .secondary-button{color:#4e6058;background:#fff;border:1px solid #cfd8d3;border-radius:6px;min-height:28px;padding:5px 11px;font-size:10px;font-weight:800}.notice-card-actions .secondary-button:disabled{color:#a9b3ae;background:#fafbfa;border-color:#e7ebe7}.notice-roster{border:1px solid #eef2f0;border-radius:8px;gap:0;margin-top:4px;display:grid;overflow:hidden}.notice-roster-head,.notice-roster-row{grid-template-columns:minmax(150px,1.4fr) 90px minmax(180px,1fr);align-items:center;gap:10px;padding:8px 12px;display:grid}.notice-roster-head{color:#7a8a84;background:#f4f8f6;font-size:10px;font-weight:800}.notice-roster-row{border-top:1px solid #f2f5f3;font-size:11px}.notice-roster-row small{color:#98a4a0;margin-top:2px;font-size:9px;display:block}.notice-roster-actions{gap:6px;display:flex}.notice-roster-actions button{color:#4e6058;cursor:pointer;background:#fff;border:1px solid #d4dcd6;border-radius:6px;padding:4px 10px;font-size:10px;font-weight:800}.notice-roster-actions button:disabled{color:#cfd8d3;cursor:default;border-color:#eef2f0}.receipt-status{border-radius:999px;padding:2px 9px;font-size:10px;font-style:normal;font-weight:800}.receipt-status.is-responded{color:#2f6a58;background:#e4f1e9}.receipt-status.is-pending{color:#7a5a2c;background:#f6ead6}.receipt-status.is-no-response{color:#9a4b3d;background:#fbe9e5}.receipt-status.is-exempt{color:#7a8a84;background:#eef1ef}.notice-empty{text-align:center;padding:28px 16px}.notice-empty strong{color:#33544b;font-size:13px;display:block}.notice-empty span{color:#98a4a0;margin-top:6px;font-size:11px;line-height:1.7;display:block}.notice-form-dialog{width:min(620px,94vw)}.notice-form-hint{color:#5c6b64;background:#f7faf8;border-left:2px solid #cfd8d3;border-radius:0 7px 7px 0;margin:0;padding:9px 11px;font-size:10px;line-height:1.7}.notice-form-hint b{color:#2f6a58}.notice-manual-picker{gap:8px;display:grid}.notice-manual-picker .v2-student-picker{max-height:220px;overflow:auto}.notice-form-designer{gap:6px;display:grid}.notice-form-designer>span{color:#53635f;font-size:12px;font-weight:800}.form-designer{border:1px dashed var(--line);background:#fbfcfa;border-radius:10px;gap:8px;padding:12px;display:grid}.form-designer-presets{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.form-designer-presets>span{color:var(--muted);font-size:10px;font-weight:800}.form-designer-row{background:#fffefb;border:1px solid #e3e8e2;border-radius:9px;gap:6px;padding:9px 10px;display:grid}.form-designer-row-main{grid-template-columns:minmax(0,1fr) 128px auto;align-items:center;gap:8px;display:grid}.form-designer-row-main input,.form-designer-row-main select{border:1px solid #dfe5df;border-radius:7px;min-height:34px;padding:6px 9px;font-size:12px}.form-designer-required{color:#5c6b64;white-space:nowrap;align-items:center;gap:5px;font-size:11px;display:flex}.form-designer-options{border:1px solid #e3e8e2;border-radius:7px;min-height:32px;padding:6px 9px;font-size:11.5px}.form-designer-help{color:var(--muted);margin:0;font-size:10px;line-height:1.6}.form-designer-row-actions{gap:12px;display:flex}.form-designer-row-actions button{color:#5c7a6e;cursor:pointer;background:0 0;border:none;padding:0;font-size:11px}.form-designer-row-actions button:disabled{color:#c4cec8;cursor:default}.form-designer-row-actions .form-designer-remove{color:#9a4b3d}.form-designer-foot{align-items:center;gap:12px;display:flex}.form-designer-foot small{color:var(--muted);font-size:10px;line-height:1.6}.v2-dialog.notice-form-dialog>form.v2-form:not(.v2-editor-form){gap:9px;padding:14px 18px 16px}.v2-dialog.notice-form-dialog>form.v2-form:not(.v2-editor-form) label{gap:4px}.v2-dialog.notice-form-dialog>form.v2-form:not(.v2-editor-form) label>span{font-size:11px}.v2-dialog.notice-form-dialog>form.v2-form:not(.v2-editor-form) label>small{font-size:9.5px;line-height:1.5}.v2-dialog.notice-form-dialog>form.v2-form:not(.v2-editor-form) input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),.v2-dialog.notice-form-dialog>form.v2-form:not(.v2-editor-form) select,.v2-dialog.notice-form-dialog>form.v2-form:not(.v2-editor-form) textarea{min-height:34px;padding:6px 10px;font-size:12px}.v2-dialog.notice-form-dialog>form.v2-form:not(.v2-editor-form) textarea{min-height:58px}.notice-form-dialog .v2-choice-grid.is-compact button{gap:1px;min-height:38px;padding:4px 9px}.notice-form-dialog .v2-choice-grid.is-compact button strong{font-size:11.5px}.notice-form-dialog .v2-choice-grid.is-compact button small{font-size:9.5px;line-height:1.4}.notice-form-dialog .notice-type-field .v2-choice-grid.is-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.notice-form-dialog .notice-type-field .v2-choice-grid.is-compact button{min-height:34px}.notice-receipt-dialog footer{justify-content:flex-end;gap:10px;margin-top:14px;display:flex}@media (width<=900px){.notice-roster-head,.notice-roster-row{grid-template-columns:1fr}.notice-roster-head span:nth-child(n+2){display:none}}.dashboard-notice-panel{margin-top:0;padding:16px 20px}.dashboard-notice-panel>header{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.dashboard-notice-list{gap:7px;display:grid}.dashboard-notice-row{text-align:left;cursor:pointer;background:#fffefb;border:1px solid #e7ebe7;border-radius:10px;align-items:center;gap:10px;width:100%;padding:9px 13px;transition:border-color .15s,transform .15s;display:flex}.dashboard-notice-row:hover{border-color:#c5d3ca;transform:translate(2px)}.dashboard-notice-identity{gap:2px;min-width:120px;display:grid}.dashboard-notice-identity strong{color:#1f3d33;font-size:12.5px}.dashboard-notice-identity small{color:var(--muted);font-size:10px}.dashboard-notice-row .agenda-arrow{margin-left:auto}.employment-form-dialog{width:min(620px,94vw)}.vault-panel{background:#f8fafc;border:1px solid #d9dfe7;border-radius:10px;margin-top:14px;padding:15px 17px}.vault-panel-head h3{color:#2f4a5c;align-items:center;gap:7px;margin:0;font-size:13.5px;display:flex}.vault-panel-head p{color:#5c6b74;margin:7px 0 0;font-size:10.5px;line-height:1.8}.vault-panel-head .vault-warning{color:#8a5343;background:#fdf6f2;border-left:2px solid #d8a08a;border-radius:0 7px 7px 0;margin-top:8px;padding:8px 10px}.vault-panel-head .vault-warning b{color:#a3402a}.vault-panel-head .vault-meta{color:#7d8c94}.vault-actions{margin-top:12px}.vault-buttons{flex-wrap:wrap;gap:10px;display:flex}.vault-form{gap:10px;display:grid}.vault-form label{gap:5px;display:grid}.vault-form label>span{color:#53635f;font-size:10px;font-weight:800}.vault-form input{border:1px solid #d4dcd6;border-radius:7px;padding:9px 10px;font-size:12px}.vault-form label>small{color:var(--muted);font-size:10px;line-height:1.6}.vault-form footer{justify-content:flex-end;gap:10px;display:flex}.vault-import-head{color:#4e6058;background:#f7faf8;border-left:2px solid #cfd8d3;border-radius:0 7px 7px 0;margin:0;padding:9px 11px;font-size:11px}.local-mode-risk{color:#6d6350;background:#fdfbf4;border-left:2px solid #d8c9a3;border-radius:0 7px 7px 0;grid-column:1/-1;margin:12px 0 0;padding:9px 11px;font-size:10px;line-height:1.7}.local-mode-risk b{color:#8a5343}.employment-masthead{gap:var(--space-5);padding:var(--space-3) var(--space-5);border:1px solid var(--paper-line);background:var(--paper-crease), var(--paper-sheet);box-shadow:var(--shadow-raise);border-radius:4px 4px 12px;grid-template-columns:auto minmax(200px,1fr) auto;align-items:center;display:grid}.employment-masthead-search{min-width:0}.employment-masthead-rate{gap:2px;min-width:118px;display:grid}.employment-masthead-rate>span{color:var(--paper-muted);font-size:var(--font-xs);letter-spacing:.06em;font-weight:800}.employment-masthead-rate>strong{color:var(--paper-moss);font-family:var(--font-song), Georgia, serif;font-size:32px;font-weight:700;line-height:1}.employment-masthead-rate>strong i{margin-left:2px;font-size:.45em;font-style:normal}.employment-masthead-rate>em{color:var(--paper-muted);font-size:var(--font-xs);font-style:normal}.employment-masthead-copy h2{color:var(--paper-ink);font-family:var(--font-song);font-size:var(--font-xl);letter-spacing:.04em;margin:3px 0 0;font-weight:600}.employment-masthead-actions{justify-content:flex-end;align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.employment-year-field{color:var(--paper-muted);font-size:var(--font-xs);gap:4px;font-weight:800;display:grid}.employment-year-field select{border:1px solid var(--paper-line);border-radius:var(--radius-sm);color:var(--paper-ink);background:var(--paper-sheet);font-size:var(--font-sm);padding:7px 9px}.employment-board{margin-top:var(--space-3)}.employment-board-empty{padding:var(--space-8) var(--space-5);border:1px dashed var(--paper-line);border-radius:var(--radius-md);color:var(--paper-muted);font-size:var(--font-sm);text-align:center;margin:0}.employment-board{gap:var(--space-4);min-height:0;padding-bottom:var(--space-4);grid-template-columns:minmax(264px,.85fr) minmax(0,2.4fr);align-items:start;display:grid;overflow-y:auto}.employment-board-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(216px,1fr));align-content:start;min-width:0;max-width:900px;display:grid}.employment-column{border:1px solid var(--paper-line);background:var(--paper-sheet);min-width:0;box-shadow:var(--shadow-raise);border-radius:3px 3px 10px;flex-direction:column;display:flex}.employment-column.is-unregistered{background:var(--paper-sheet-warm)}.employment-column-head{justify-content:space-between;align-items:center;gap:var(--space-2);border-bottom:1px solid var(--paper-line);padding:9px 12px;display:flex}.employment-column-head-right{align-items:center;gap:var(--space-2);flex:none;display:flex}.employment-column-tab{color:var(--paper-moss);font-family:var(--font-song);font-size:var(--font-md);letter-spacing:.04em;justify-content:space-between;align-items:baseline;gap:8px;font-weight:600;display:flex}.employment-column.is-unregistered .employment-column-tab{color:var(--paper-clay)}.employment-column-body{align-content:start;gap:6px;padding:14px 12px 10px;display:grid}.employment-card{border:1px solid var(--paper-line-soft);width:100%;color:var(--paper-ink);background:var(--paper-sheet);text-align:left;cursor:pointer;border-radius:2px 7px 7px 2px;gap:2px;padding:8px 10px;transition:transform .16s,box-shadow .16s,border-color .16s;display:grid}.employment-card:hover{border-color:var(--paper-line);box-shadow:2px 3px 0 var(--paper-line-soft);transform:translateY(-1px)}.employment-card>strong{color:var(--paper-ink);font-size:var(--font-md)}.employment-card>small{color:var(--paper-muted);font-size:var(--font-xs)}.employment-card>em{color:var(--paper-muted);font-size:var(--font-xs);font-style:normal;line-height:1.5}.employment-card>time{color:var(--paper-brass);font-family:Georgia,serif;font-size:var(--font-xs)}.employment-card.is-unregistered{border-color:var(--paper-clay);border-left:3px solid var(--paper-clay)}.employment-card.is-pending{background:0 0;border-style:dashed}.employment-show-all{border:1px solid var(--paper-line);border-radius:var(--radius-pill);color:var(--paper-muted);background:var(--paper-sheet);font-size:var(--font-xs);white-space:nowrap;cursor:pointer;flex:none;padding:3px 10px;font-weight:800;transition:color .16s,border-color .16s}.employment-show-all:hover{border-color:var(--paper-moss);color:var(--paper-moss)}@media (width<=900px){.employment-masthead{gap:var(--space-4);grid-template-columns:1fr;align-items:start}.employment-masthead-actions{justify-content:flex-start}.employment-board{grid-template-columns:1fr;overflow-y:visible}.employment-board-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.employment-column{flex:auto;width:100%}}.v2-dialog.employment-list-dialog{width:min(1060px,100vw - 32px);height:min(calc(86 * var(--vh1)), 880px);max-height:calc(88 * var(--vh1));flex-direction:column;padding-bottom:18px;display:flex;overflow:hidden}.v2-dialog.employment-list-dialog>header{flex:none}.employment-list-scroll{flex:auto;min-height:0;padding:16px 24px 0;overflow-y:auto}.employment-list-grid{grid-template-columns:repeat(auto-fill,minmax(292px,1fr));align-content:start;gap:18px;display:grid}.employment-list-grid .employment-card.is-postcard,.employment-list-grid .employment-card.is-pending{padding:15px 16px 14px}.employment-list-grid .employment-card.is-postcard>strong{padding-right:92px;font-size:15px}.employment-list-grid .employment-card.is-postcard>small{font-size:11.5px}.employment-list-grid .employment-card.is-pending>strong{font-size:15px}.employment-list-grid .employment-card-where{font-size:13.5px}.employment-list-grid .employment-card.is-pending>small{font-size:11.5px}.employment-list-grid .employment-postage{width:40px;height:47px;top:11px;right:11px}.employment-list-grid .employment-stamp{width:48px;height:48px;font-size:10.5px;top:12px;right:28px}.employment-list-grid .employment-zip>b{width:18px;height:20px;font-size:11px}.employment-list-grid .employment-card-foot time{font-size:11px}.employment-choice{gap:6px;display:grid}.employment-choice-label{color:var(--paper-muted);font-size:var(--font-xs);font-weight:800}.employment-choice-buttons{flex-wrap:wrap;gap:6px;display:flex}.employment-choice-buttons>button{border:1px solid var(--paper-line);border-radius:var(--radius-sm);color:var(--paper-ink);background:var(--paper-sheet);font-size:var(--font-sm);cursor:pointer;padding:7px 14px;transition:border-color .16s,background-color .16s,color .16s}.employment-choice-buttons>button:hover{border-color:var(--paper-moss)}.employment-choice-buttons>button.is-on{border-color:var(--paper-moss);color:var(--paper-sheet);background:var(--paper-moss);font-weight:800}.employment-form-grid{gap:var(--space-3) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.employment-form-grid>label.wide{grid-column:1/-1}@media (width<=760px){.employment-masthead{gap:var(--space-3);grid-template-columns:1fr}.employment-form-grid{grid-template-columns:1fr}}.employment-form-delete{margin-right:auto;font-weight:800}.prize-page{max-width:1600px}.prize-toolbar{border-bottom:1px solid var(--paper-line);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;display:flex}.prize-toolbar .search-box{flex:300px;min-width:0;max-width:460px}.prize-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.prize-table{margin-top:12px;padding:0;overflow:hidden}.prize-table-head,.prize-row{text-align:center;grid-template-columns:minmax(120px,.95fr) minmax(110px,.8fr) minmax(190px,1.35fr) minmax(115px,.9fr) 110px 100px 92px 66px 160px;align-items:center;gap:10px;padding:11px 16px;display:grid}.prize-table-head{border-bottom:1px solid var(--paper-line);color:#6f6a5d;letter-spacing:.04em;background:#f7f3e9;font-size:10.5px;font-weight:800}.prize-row{border-bottom:1px dashed var(--paper-line-soft);cursor:pointer}.prize-row:hover{background:#fbf8ef}.prize-row.is-open{background:#fffdf6}.prize-who{justify-items:center;gap:2px;min-width:0;display:grid}.prize-who strong{color:#2f3a33;font-size:13.5px}.student-name-link{cursor:pointer}.student-name-link:hover{color:var(--paper-moss);text-underline-offset:3px;text-decoration:underline}.prize-who small{color:var(--paper-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.prize-class{color:#4a5348;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.prize-what{justify-content:center;align-items:center;gap:8px;min-width:0;display:flex}.prize-what strong{color:#254a3d;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.prize-kind{color:#8a8172;letter-spacing:.06em;border:0;border-right:1px solid #ddd3c0;border-radius:0;flex:none;padding:0 9px 0 0;font-size:10px;font-style:normal;font-weight:750}.prize-level,.prize-when{color:#4a5348;justify-items:center;gap:2px;font-size:12px;display:grid}.prize-level small{color:var(--paper-muted);font-size:10.5px}.prize-amount{color:#35564b;font-family:Georgia,serif;font-size:13px;font-weight:700}.prize-status,.prize-files{color:#6d6759;font-size:11.5px}.prize-state{border:1px solid #0000;border-radius:999px;padding:2px 8px;font-size:10.5px;font-style:normal;font-weight:800;display:inline-flex}.prize-state.is-applying{color:#8a6a2f;background:#f7eeda;border-color:#e6d3a6}.prize-state.is-publicized{color:#33506f;background:#e9f0f7;border-color:#c9d9e8}.prize-state.is-granted{color:#2f6b4f;background:#e7f2ec;border-color:#c6ded0}.prize-state.is-rejected{color:#9c5d4f;background:#fbeeea;border-color:#e5c9c0}.prize-row-actions{justify-content:center;align-items:center;gap:6px;display:flex}.prize-row-action{border:1px solid var(--paper-line);color:#5e7068;cursor:pointer;background:#fffdf7;border-radius:6px;align-items:center;gap:5px;padding:5px 11px;font-size:11px;font-weight:750;display:inline-flex}.prize-row-action:hover:not(:disabled){background:#f5f1e6;border-color:#c9bea6}.prize-row-action.is-danger{color:#9c5d4f;border-color:#e5c9c0}.prize-row-action.is-danger:hover:not(:disabled){background:#fbeeea}.prize-detail{border-bottom:1px dashed var(--paper-line-soft);background:#fffdf6;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:0;padding:2px 16px;display:grid}.prize-detail-field{border-right:1px dashed #c4ae8c99;align-content:center;gap:5px;min-width:0;min-height:60px;padding:10px 18px;display:grid}.prize-detail-field:first-child{padding-left:2px}.prize-detail-field:last-child{border-right:0}.prize-detail-field>span{color:#8b8475;font-size:10px;font-weight:800}.prize-detail-field p{color:#4a5348;margin:0;font-size:12.5px;line-height:1.8}@media (width<=760px){.prize-detail{grid-template-columns:1fr}.prize-detail-field{border-bottom:1px dashed #c4ae8c99;border-right:0;min-height:0}.prize-detail-field:last-child{border-bottom:0}}.prize-files-list{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.prize-file{border:1px solid var(--paper-line);color:#46503f;background:#fffdf7;border-radius:6px;align-items:center;gap:5px;padding:4px 9px;font-size:11px;text-decoration:none;display:inline-flex}.prize-file-picker{align-items:center;gap:8px;display:flex}.prize-file-picker small{color:var(--paper-muted);font-size:11px}.prize-empty{color:var(--paper-muted);text-align:center;justify-items:center;gap:7px;padding:40px 12px;display:grid}.prize-empty strong{color:#3f4a43;font-size:13.5px}.prize-empty span{max-width:460px;font-size:11px;line-height:1.8}.dorm-head-tools{flex-wrap:wrap;flex:auto;justify-content:flex-end;align-items:center;gap:10px;min-width:0;margin-left:auto;display:flex}.dorm-inspection-actions{flex-wrap:nowrap;flex:none}.dorm-section-head button,.dorm-section-head select,.dorm-section-head label{white-space:nowrap}.dorm-search-box{flex:240px;width:auto;min-width:180px;max-width:360px;height:38px}.dorm-filter-tabs{scrollbar-width:none;flex-wrap:nowrap;flex:0 auto;min-width:0;overflow-x:auto}.dorm-filter-tabs::-webkit-scrollbar{display:none}.dorm-filter-tabs button{white-space:nowrap;flex:none}@media (width<=1180px){.dorm-section-head{flex-wrap:wrap}.dorm-section-head>div:first-child{flex:100%}.dorm-head-tools{flex:100%;justify-content:flex-start}}.panel button,.panel select,.page-shell-head button,.page-shell-head select,.v2-dialog button,.v2-dialog select,.cnb-strip button,.cnb-strip select,.prize-toolbar button,.prize-toolbar select,.section-kicker,.panel label>span,.dorm-section-head h3,.panel h3{white-space:nowrap}.leave-filter-tabs,.leave-work-switch,.party-stage-tabs,.action-status-tabs,.student-data-tabs,.recognition-tabs,.dorm-filter-tabs,.dorm-floor-tabs{flex-wrap:nowrap}.leave-filter-tabs>button,.leave-work-switch>button,.party-stage-tabs>button,.action-status-tabs>button,.student-data-tabs>button,.recognition-tabs>button{white-space:nowrap;flex:none}.employment-board{padding-top:17px;position:relative}.employment-create{position:relative}.employment-year-pick{z-index:8;border:1px solid var(--paper-line);min-width:168px;box-shadow:var(--paper-shadow);background:#fffdf7;border-radius:7px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 6px);right:0}.employment-year-pick button{text-align:left;color:#3b4038;cursor:pointer;background:0 0;border:0;border-radius:5px;width:100%;padding:7px 10px;font-size:12px;display:block}.employment-year-pick button:hover{background:#f5f1e6}.employment-board-plaque{cursor:pointer;z-index:2;color:#6b5b3e;letter-spacing:.1em;background:linear-gradient(#f7efdc,#eadfc4);border:1px solid #cdbb9d;border-radius:4px;padding:3px 12px;font-size:11px;font-weight:800;position:absolute;top:0;left:0;transform:rotate(-1.5deg);box-shadow:1px 2px #8b75502e}.employment-board-plaque select{color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:0;padding:0 2px}.employment-card.is-postcard,.employment-card.is-pending{text-align:left;border-radius:4px;gap:4px;padding:12px 13px 11px;display:grid;position:relative}.employment-card.is-postcard{background-color:#fffdf6;background-image:var(--paper-crease), linear-gradient(180deg, #fffef9, #fdf7ea);border:1px solid #d9cfba;transform:rotate(-.35deg);box-shadow:2px 3px #8b75501f,inset 0 1px #ffffffb3}.employment-card.is-postcard:nth-child(2n){transform:rotate(.4deg)}.employment-card.is-postcard:hover{border-color:#c9bea6;transform:rotate(0);box-shadow:2px 3px #8b755021}.employment-postage{background-image:var(--paper-crease), linear-gradient(160deg, #fdf6e6, #f5e9cf);border:1px dashed #c7b795;border-radius:2px;width:34px;height:40px;position:absolute;top:9px;right:9px}.employment-postage:after{content:"";border:1px solid #dccfb2;border-radius:1px;position:absolute;inset:5px}.employment-stamp{color:#8a6a2f;text-align:center;text-wrap:balance;opacity:.82;background:#fffdf78c;border:1.5px dashed;border-radius:50%;place-items:center;width:40px;height:40px;padding:6px;font-size:9px;font-style:normal;font-weight:800;line-height:1.1;display:grid;position:absolute;top:10px;right:24px;transform:rotate(-11deg)}.employment-card[data-kind=employed] .employment-stamp{color:#8a6a2f}.employment-card[data-kind=postgraduate] .employment-stamp{color:#2f6b4f}.employment-card[data-kind=abroad] .employment-stamp{color:#33506f}.employment-card[data-kind=military] .employment-stamp{color:#4f6b3f}.employment-card[data-kind=entrepreneur] .employment-stamp{color:#7c5a38}.employment-card[data-kind=flexible] .employment-stamp{color:#6d6a63}.employment-card[data-kind=other] .employment-stamp{color:#6f6a5d}.employment-card.is-postcard>strong{white-space:nowrap;text-overflow:ellipsis;color:#2f3a33;padding-right:74px;font-size:13.5px;overflow:hidden}.employment-card.is-postcard>small{color:var(--paper-muted);margin-top:14px;font-size:10.5px}.employment-card.is-postcard>small,.employment-card.is-postcard>.employment-card-where{white-space:nowrap;text-overflow:ellipsis;border-bottom:1px dotted #9f927966;padding-bottom:3px;overflow:hidden}.employment-card-where{color:#3f4a42;font-size:12.5px;font-style:normal;line-height:1.6}.employment-card-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:3px;display:flex}.employment-card-foot time{color:#9c9486;white-space:nowrap;font-size:10px}.employment-zip{gap:3px;font-style:normal;display:inline-flex}.employment-zip>b{color:#5f5544;background:#fffdfa;border:1px solid #cdbb9d;border-radius:2px;place-items:center;width:16px;height:18px;font-size:10px;font-weight:700;display:grid}.employment-card.is-pending{background:#fdfbf5;border:1px dashed #d8cdbb;padding-left:30px}.employment-card.is-pending>small{white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;overflow:hidden}.employment-card.is-pending:hover{background:#fbf8ef;border-color:#c2b79e}.employment-card.is-pending>strong{color:#3f4a42;font-size:13px}.employment-card.is-pending>small{color:var(--paper-muted);font-size:10.5px}.employment-pending-flap{clip-path:polygon(0 0,100% 0,50% 100%);background:#d9cdb6;width:15px;height:11px;font-style:normal;position:absolute;top:11px;left:11px}.employment-pending-badge{color:#8a6a2f;border:1px dashed #d3c19c;border-radius:999px;padding:1px 7px;font-size:9.5px;font-style:normal;font-weight:800;position:absolute;top:10px;right:10px}html,body{background:var(--paper-bg);color:var(--paper-ink)}body{background-image:radial-gradient(#755e3c0e .7px,#0000 .7px),linear-gradient(120deg,#fff3,#0000 45%);background-size:6px 6px,100% 100%}.main-panel{background-color:var(--paper-bg);background-image:linear-gradient(90deg,#ffffff52,#0000 16% 85%,#8f744a09),radial-gradient(#755e3c0b .7px,#0000 .7px);background-size:100% 100%,6px 6px}.topbar{border-bottom-color:var(--paper-line);background:#f7f2e9f0;box-shadow:0 2px #ffffffb3}.topbar h1,.page-content h1,.page-content h2,.page-content h3,.page-content h4{font-family:var(--font-song);letter-spacing:.015em;font-weight:600}.page-content{color:var(--paper-ink);position:relative}.panel,.metric-grid article,.action-stats,.calendar-metrics article,.resource-metrics article,.student-metrics article{border-color:var(--paper-line);background:var(--paper-sheet);box-shadow:var(--paper-shadow);border-radius:5px 5px 2px}.panel:after,.metric-grid article:after,.action-stats:after{content:"";pointer-events:none;border-radius:inherit;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff94}.panel,.metric-grid article,.action-stats{position:relative}.section-kicker,.eyebrow{color:var(--paper-brass);letter-spacing:.16em}.primary-button{color:#fffdf7;background:var(--paper-moss);border-radius:3px;box-shadow:0 4px 9px #36584d29}.primary-button:hover{background:#294b40}.secondary-button,.ghost-button{color:var(--paper-moss);background:#fffaf0;border-color:#cfc4b2;border-radius:3px}.secondary-button:hover,.ghost-button:hover{border-color:var(--paper-moss);background:var(--paper-sheet-warm)}.search-box,.filter-bar select,.dorm-search-box,.student-filter-toolbar,.leave-filter-panel,.attendance-filter-panel{border-color:var(--paper-line);background:#fffdf7d1;border-radius:3px}.search-box:focus-within,.dorm-search-box:focus-within{border-color:var(--paper-moss);box-shadow:0 0 0 3px #36584d17}.page-content:before{z-index:0;color:#82653a94;font:10px/1 var(--font-song);letter-spacing:.14em;text-shadow:0 1px #fffdf799;pointer-events:none;position:absolute;top:18px;right:32px}.page-content>*{z-index:1;position:relative}.dashboard-page:before{content:"DAILY NOTES  /  01"}.students-page:before{content:"STUDENT FILE  /  02"}.calendar-page:before{content:"WEEK PLANNER  /  03"}.attendance-page:before{content:"ATTENDANCE LEDGER  /  04"}.leave-page:before{content:"LEAVE SLIPS  /  05"}.dorm-management-page:before{content:"ROOM KEY  /  06"}.resource-page:before{content:"REFERENCE CARDS  /  07"}.work-page:before{content:"CLIPBOARD  /  08"}.recognition-page:before{content:"RECORDS  /  09"}.party-page:before{content:"MEMBERSHIP CARD  /  10"}.operation-log-page:before{content:"ARCHIVE INDEX  /  11"}.dashboard-data-hero{color:#fffaf0;background:linear-gradient(105deg,#ffffff0f,#0000 44%),#36584d;border:1px solid #2f5248;border-radius:4px 4px 2px;overflow:visible;box-shadow:0 9px 18px #36584d29}.dashboard-data-hero:before{content:"";background:linear-gradient(#ffffff57,#fff0 52%),linear-gradient(90deg,#d7bc878f 0 6%,#d7bc87d1 9% 91%,#d7bc878f 94% 100%);border-radius:1.5px;width:72px;height:19px;position:absolute;top:-10px;right:82px;transform:rotate(3deg);box-shadow:0 2px 4px #2828192e,inset 0 1px #fff6}.dashboard-data-hero:after{content:"";clip-path:polygon(0 50%,11px 0,100% 0,100% 100%,11px 100%);background:linear-gradient(90deg,#3b352c 0 4px,#d8b285 4px 10px,#7c977b 10px 24%,#5b7a6a 24px 56%,#455f4e 56% 86%,#b7a06f 86% 89%,#cdb488 89% 92%,#d79b8f 92% 100%);width:148px;height:9px;position:absolute;bottom:-14px;left:18px;transform:rotate(-2deg);box-shadow:0 3px 3px #43321c33}.dashboard-primary-grid .panel{overflow:visible}.dashboard-course-panel:before,.dashboard-agenda-panel:before{content:"";z-index:-1;background:#f6efe1;border:1px solid #d8cdbb;height:100%;position:absolute;bottom:-5px;left:10px;right:-4px;transform:rotate(.35deg)}.dashboard-course-panel>header,.dashboard-agenda-panel>header{border-bottom-color:var(--paper-line)}.dashboard-course-list>button:hover,.dashboard-agenda-list>button:hover{background:var(--paper-sheet-warm)}.students-page{padding-top:32px}.students-page .student-directory-panel,.students-page .students-panel{border-top-left-radius:0;border-top-right-radius:4px;overflow:visible}.students-page .student-directory-panel:before,.students-page .students-panel:before{content:"花名册";border:1px solid var(--paper-line);min-width:122px;color:var(--paper-moss);background:var(--paper-sheet);font:13px var(--font-song);border-bottom:0;border-radius:5px 5px 0 0;padding:7px 15px 6px;position:absolute;top:-28px;left:-1px}.students-page .student-directory-panel:after,.students-page .students-panel:after{display:none}.students-page .student-directory-table th:first-child,.students-page .student-directory-table td:first-child{background:var(--paper-sheet);border-right:1px solid #e0d5c4;width:58px;position:relative}.students-page .student-directory-table th:first-child:after,.students-page .student-directory-table td:first-child:after{content:"";pointer-events:none;background:repeating-linear-gradient(#bca57f61 0 4px,#0000 4px 9px);width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}@media (width<=760px){.students-page{padding-top:28px}}.students-page .student-select-head input,.students-page .student-select-cell input{z-index:1;appearance:none;cursor:pointer;vertical-align:middle;opacity:.82;background:radial-gradient(circle at 50% 42%,#6e583912 0 2px,#0000 2.6px),#fffdf8;border:1.5px solid #d2c8b8;border-radius:50%;width:18px;height:18px;margin:0;position:relative;box-shadow:inset 0 1px 2px #5845280f,0 1px #fffc}.students-page .student-checkbox-hit-area{z-index:2;cursor:pointer;place-items:center;width:58px;height:58px;margin:-4px auto;display:grid;position:relative}.students-page .student-select-head .student-checkbox-hit-area{width:46px;height:46px;margin:0 auto}.students-page .student-select-head input:checked,.students-page .student-select-cell input:checked{opacity:.9;background:#e3ece5 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 6.3 4.6 9 10 3' fill='none' stroke='%236d897b' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/10px 10px no-repeat;border-color:#a9beb1;box-shadow:inset 0 1px 2px #36584d14,0 1px #fffc}.students-page .student-select-head input:disabled{opacity:.62;background:#f5f0e7;border-color:#ded6c9}:is(.students-page,.operation-log-page,.work-list-page,.resource-page,.attendance-page,.leave-page,.conversations-page,.recognition-page,.prize-page,.notice-page,.party-page,.grades-page) .page-pager-pages{gap:8px}:is(.students-page,.operation-log-page,.work-list-page,.resource-page,.attendance-page,.leave-page,.conversations-page,.recognition-page,.prize-page,.notice-page,.party-page,.grades-page) .page-pager-pages>button:not([aria-label]){isolation:isolate;color:#536a63;background:0 0;border:1px solid #d2c8b8;border-radius:10px;width:38px;height:38px;font-weight:750;transition:transform .32s cubic-bezier(.23,1,.32,1),border-color .32s,background-color .32s,color .32s,box-shadow .32s;position:relative}:is(.students-page,.operation-log-page,.work-list-page,.resource-page,.attendance-page,.leave-page,.conversations-page,.recognition-page,.prize-page,.notice-page,.party-page,.grades-page) .page-pager-pages>button:not([aria-label]):before{content:"";z-index:-1;background:var(--paper-moss);opacity:0;border-radius:10px;transition:transform .32s cubic-bezier(.23,1,.32,1),opacity .32s;position:absolute;inset:50%;transform:translate(-50%,-50%)scale(.45)}:is(.students-page,.operation-log-page,.work-list-page,.resource-page,.attendance-page,.leave-page,.conversations-page,.recognition-page,.prize-page,.notice-page,.party-page,.grades-page) .page-pager-pages>button:not([aria-label]):after{content:"";background:var(--paper-brass);opacity:0;border-radius:50%;width:6px;height:6px;transition:transform .32s cubic-bezier(.23,1,.32,1) 80ms,opacity .32s 80ms;position:absolute;bottom:-11px;left:50%;transform:translate(-50%)scale(0)}:is(.students-page,.operation-log-page,.work-list-page,.resource-page,.attendance-page,.leave-page,.conversations-page,.recognition-page,.prize-page,.notice-page,.party-page,.grades-page) .page-pager-pages>button:not([aria-label]):hover{color:var(--paper-moss);background:#f5f0e7;border-color:#a9beb1}:is(.students-page,.operation-log-page,.work-list-page,.resource-page,.attendance-page,.leave-page,.conversations-page,.recognition-page,.prize-page,.notice-page,.party-page,.grades-page) .page-pager-pages>button:not([aria-label]).active{color:#fffdf7;background:var(--paper-moss);border-color:#0000;transform:scale(1.08);box-shadow:0 7px 16px -10px #36584d66}:is(.students-page,.operation-log-page,.work-list-page,.resource-page,.attendance-page,.leave-page,.conversations-page,.recognition-page,.prize-page,.notice-page,.party-page,.grades-page) .page-pager-pages>button:not([aria-label]).active:before{opacity:1;transform:translate(-50%,-50%)scale(1)}:is(.students-page,.operation-log-page,.work-list-page,.resource-page,.attendance-page,.leave-page,.conversations-page,.recognition-page,.prize-page,.notice-page,.party-page,.grades-page) .page-pager-pages>button:not([aria-label]).active:after{opacity:.82;transform:translate(-50%)scale(1)}:is(.students-page,.operation-log-page,.work-list-page,.resource-page,.attendance-page,.leave-page,.conversations-page,.recognition-page,.prize-page,.notice-page,.party-page,.grades-page) .page-pager-pages>button[aria-label]{color:#65736d;background:0 0;border-radius:6px}:is(.students-page,.operation-log-page,.work-list-page,.resource-page,.attendance-page,.leave-page,.conversations-page,.recognition-page,.prize-page,.notice-page,.party-page,.grades-page) .page-pager-pages>button[aria-label]:hover:not(:disabled){color:var(--paper-moss);background:#f5f0e7}.student-directory-table th,.student-table th{color:#716b5f;border-bottom-color:var(--paper-line);background:#f5efe3}.student-directory-table td,.student-table td{border-bottom-color:var(--paper-line-soft)}.student-directory-table tbody tr:hover,.student-table tbody tr:hover{background:#fbf4e7}.students-page .student-directory-table th:first-child,.students-page .student-directory-table td:first-child{box-sizing:border-box;min-width:58px;border-right:0!important;width:58px!important;padding:0!important}.students-page .student-directory-table th:first-child{background:#f5efe3!important}.students-page .student-directory-table thead th{font-size:13px;line-height:1.35}.students-page .student-select-head,.students-page .student-select-cell{vertical-align:middle}.students-page .student-checkbox-hit-area{width:100%;height:58px;margin:0}.students-page .student-select-head .student-checkbox-hit-area{height:46px}.students-page .student-select-head input,.students-page .student-select-cell input{background:radial-gradient(circle,#6e583912 0 2px,#0000 2.6px),#fffdf8;transform:rotate(0)}.students-page .student-select-head input,.students-page .student-select-head input:disabled{box-shadow:none;background:radial-gradient(circle,#6e583912 0 2px,#0000 2.6px),0 0}.students-page .student-select-head input:checked{background:#e3ece5 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 6.3 4.6 9 10 3' fill='none' stroke='%236d897b' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/10px 10px no-repeat}.calendar-page .work-calendar-panel,.calendar-page .calendar-workspace .panel{background-color:var(--paper-sheet);background-image:linear-gradient(90deg,#0000 30px,#aa6b5a40 30px 31px,#0000 31px);background-size:100% 100%;border-radius:3px;padding-left:42px}.calendar-page .work-calendar-panel:before{content:"";background:radial-gradient(circle,#b6a990 0 2px,#0000 2.8px) 50% 0/11px 46px repeat-y;width:11px;position:absolute;top:68px;bottom:20px;left:12px}.calendar-page .timeline-entry{border-top-color:var(--paper-line-soft)}.calendar-page .day-date-card{box-shadow:var(--paper-shadow);background:#f8edd5;border:1px solid #ceb98f;border-radius:2px 2px 4px 4px;position:relative;transform:rotate(1deg)}.calendar-page .day-date-card:before,.calendar-page .day-date-card:after{content:"";background:linear-gradient(90deg,#a08a5e,#e7d8b0 42%,#cdb88a 62%,#8f7850);border-radius:3px;width:6px;height:18px;position:absolute;top:-11px;box-shadow:0 1px 2px #46341852,inset 0 0 0 1px #78633c38}.calendar-page .day-date-card:before{left:16px}.calendar-page .day-date-card:after{right:16px}.calendar-page .day-overview .day-date-card{color:#36584d;background:linear-gradient(118deg,#ffffff75,#0000 52%),#f8edd5}.calendar-page .day-date-card .day-weekday{color:#658073;font-weight:800}.calendar-page .day-date-card time strong{color:#36584d;text-shadow:0 1px #fff9}.calendar-page .day-date-card time span{color:#6e877c;font-weight:800}.calendar-page .day-date-card .day-date-meta em,.calendar-page .day-date-card .day-date-meta b{color:#718074;background:#ffffff61}.calendar-page .day-date-card .day-date-meta i{color:#36584d;background:#e4b967;box-shadow:inset 0 1px #ffffff59}.calendar-page .day-navigation-bar span{color:#65776f}.calendar-page .day-stat-grid strong{color:#254a41}.calendar-page .day-stat-grid span{color:#5d7068;font-weight:600}.attendance-page .attendance-record-panel{background:repeating-linear-gradient(to bottom, var(--paper-sheet) 0 37px, #e9e1d4 38px, var(--paper-sheet) 39px);overflow:visible}.attendance-page .attendance-table th{color:#756d61;background:#f6efe3e6}.attendance-page .attendance-table td{border-bottom-color:#dcd0bec2}.leave-page .leave-filter-panel,.leave-page .leave-table-wrap{background:#fffaf0;border-style:dashed;border-radius:2px}.leave-page .leave-table-wrap{border-left:5px solid #c99c63;overflow:auto}.leave-page .leave-table-caption{caption-side:top;color:#a86e5ec7;font:12px var(--font-song);letter-spacing:.2em;text-align:left;background:#fffaf0;border-bottom:1px dashed #d9ccb8;padding:12px 18px 9px}.leave-page .leave-table-caption:before{content:"";vertical-align:-2px;opacity:.72;background:#c99c63;border-radius:1px;width:5px;height:14px;margin-right:8px;display:inline-block}.leave-page .leave-table-wrap:before{content:none}.leave-page .leave-table-caption{z-index:1;position:relative}.leave-page .leave-table th,.leave-page .leave-detail-row td{background:#f7efe1}.leave-page .leave-table{color:#3d4a43}.leave-page .leave-table th{color:#5b665e;background:#f4ead9;border-bottom:1px solid #ded0bb}.leave-page .leave-table td,.leave-page .leave-table td strong,.leave-page .leave-table td time,.leave-page .leave-table td small{color:#44534b}.leave-page .leave-table td small,.leave-page .leave-table td time{color:#748078}.leave-page .leave-table .leave-type{color:#4d6d60}.dorm-management-page .dorm-building-overview,.dorm-management-page .dorm-room-panel,.dorm-management-page .dorm-unstructured-panel{background:#faf7ef;border-radius:5px}.dorm-management-page .dorm-building-overview:before{content:"⌂";color:#ab825073;font:24px Georgia,serif;position:absolute;top:11px;right:22px}.dorm-management-page .dorm-building-grid>button{box-shadow:3px 4px 0 #e0d5c2, var(--paper-shadow);background:linear-gradient(145deg,#fffdf6,#f3eadb);border-color:#d5c9b6;border-radius:3px 3px 1px}.dorm-management-page .dorm-room-card{background:#fffdf7;border-color:#d9cfbf;border-radius:3px}.resource-page .resource-sidebar,.resource-page .resource-results,.resource-page .resource-result-panel{background:var(--paper-sheet);border-radius:4px}.resource-page .resource-sidebar{border-left:7px solid #c89b61}.resource-page .resource-sidebar:before{content:"INDEX";color:#a88254;letter-spacing:.16em;font:10px Georgia,serif;position:absolute;top:17px;right:17px}.resource-page .resource-card-list>article,.resource-page .resource-list>article{border-color:var(--paper-line-soft);background:0 0}.resource-page .resource-results{background:0 0;border-radius:0;position:relative}.resource-page .resource-result-head{box-shadow:none;background:0 0;border-color:#0000;border-radius:0;grid-template-columns:minmax(0,1fr) auto auto;padding:3px 0 14px}.resource-page .resource-search{width:100%;min-width:0}.resource-page .resource-result-head>span{color:var(--paper-muted)}.resource-page .resource-card-list.simple{gap:15px}.resource-page .resource-card-list.simple>article{background:linear-gradient(90deg, #ffffff61, transparent 38%), var(--paper-sheet);min-height:146px;box-shadow:3px 4px 0 #e8dece, var(--paper-shadow);border-color:#ded3c2;border-radius:4px 4px 2px;grid-template-columns:68px minmax(0,1fr) minmax(270px,320px);gap:18px;padding:24px 22px 20px 26px}.resource-page .resource-card-list.simple>article:before{content:"";pointer-events:none;background:#e2cca09e;border:1px solid #b1915b47;border-radius:2px;width:48px;height:14px;position:absolute;top:-7px;left:35px;transform:rotate(-2deg);box-shadow:0 2px 4px #5e492814}.resource-page .resource-format{border:1px solid #7a66a31f;border-radius:10px 10px 3px;align-self:center;transform:rotate(-1deg);box-shadow:inset 0 1px #ffffffb8}.resource-page .resource-card-body{background:repeating-linear-gradient(#0000 0 29px,#bcab911f 29px 30px);align-self:center;min-width:0;padding:3px 0 7px}.resource-page .resource-card-actions{border-left:1px dashed #d5c7b3;grid-template-columns:minmax(132px,1fr) auto auto;align-content:center;align-self:stretch;gap:10px;max-width:none;padding:23px 0 0 18px;display:grid;position:relative}.resource-page .resource-card-actions:before{content:"文具工具";color:#aa8556;font:10px var(--font-song);letter-spacing:.16em;position:absolute;top:1px;left:18px}.resource-page .resource-card-actions:after{content:"";background:var(--paperclip-metal-icon) center / contain no-repeat;filter:drop-shadow(0 1px 1px #58452847);pointer-events:none;width:13px;height:34px;position:absolute;top:12px;left:-7px;transform:rotate(7deg)}.resource-page .resource-open-link{background:#f3f8f4;border-radius:3px;min-height:38px}.resource-page .resource-card-actions .v2-link{color:#527267;white-space:nowrap;border-bottom:1px solid #d7c9b5;justify-content:center;align-items:center;gap:5px;min-height:34px;padding:5px 4px;display:inline-flex}.resource-page .resource-card-actions .v2-link:hover{color:var(--paper-moss);border-bottom-color:var(--paper-moss)}@media (width<=1100px){.resource-page .resource-result-head{grid-template-columns:minmax(0,1fr) auto auto}.resource-page .resource-card-list.simple>article{grid-template-columns:58px minmax(0,1fr)}.resource-page .resource-card-actions{border-top:1px dashed #d5c7b3;border-left:0;grid-column:2;grid-template-columns:minmax(140px,max-content) auto auto;align-self:auto;padding:15px 0 0}.resource-page .resource-card-actions:before{top:4px;left:0}.resource-page .resource-card-actions:after{display:none}}@media (width<=760px){.resource-page .resource-result-head{grid-template-columns:1fr auto}.resource-page .resource-card-list.simple>article{grid-template-columns:44px minmax(0,1fr);gap:12px;padding:21px 15px 16px}.resource-page .resource-card-actions{grid-column:1/-1;grid-template-columns:minmax(120px,1fr) auto auto;padding-top:17px}.resource-page .resource-card-actions:before{top:4px}}.search-box,.resource-search,.student-directory-search,.dorm-search-box,.operation-log-search,.dashboard-focus-search,.action-search,.judgment-search{box-sizing:border-box;color:#8a7f6e;background:#fffdf7e6;border:1px solid #d8cdbb;border-radius:3px;align-items:center;gap:9px;height:40px;min-height:40px;padding:0 12px;transition:border-color .18s,box-shadow .18s,background-color .18s;display:flex;box-shadow:inset 0 1px #ffffffb8,0 1px 2px #5845280b}.search-box:focus-within,.resource-search:focus-within,.student-directory-search:focus-within,.dorm-search-box:focus-within,.operation-log-search:focus-within,.dashboard-focus-search:focus-within,.action-search:focus-within,.judgment-search:focus-within{background:#fffdf8;border-color:#ad9168;box-shadow:0 0 0 3px #ab82501f,inset 0 1px #fffc}.search-box>span,.search-box>.ui-icon,.resource-search>.ui-icon,.student-directory-search>.ui-icon,.dorm-search-box>.ui-icon,.operation-log-search>.ui-icon,.dashboard-focus-search>.ui-icon,.action-search>.ui-icon,.judgment-search>.ui-icon{color:#8f806a;flex:none}.search-box input,.resource-search input,.student-directory-search input,.dorm-search-box input,.operation-log-search input,.dashboard-focus-search input,.action-search input,.judgment-search input{min-width:0;height:100%;color:var(--paper-ink);font:inherit;background:0 0;border:0;outline:0;flex:1;padding:0;font-size:12px}.search-box input::placeholder,.resource-search input::placeholder,.student-directory-search input::placeholder,.dorm-search-box input::placeholder,.operation-log-search input::placeholder,.dashboard-focus-search input::placeholder,.action-search input::placeholder,.judgment-search input::placeholder{color:#a59a88}.dorm-search-box kbd{color:#9a8c77;background:#f8f1e5;border-color:#d8cdbb;border-radius:2px}.work-page .work-task-panel,.work-page .work-reminder-panel{border-top:8px solid #b98e5a;overflow:visible}.work-page .work-task-panel:before{content:"";background:radial-gradient(13px 4px at 50% 60%,#70562e66 0 58%,#0000 62%),linear-gradient(#ecd9b0 0 20%,#d3b278 34%,#b48f58 58%,#dcc190 80%,#c6a26c 100%);border:1px solid #8f6b3d;border-bottom:0;border-radius:8px 8px 0 0;width:76px;height:20px;position:absolute;top:-17px;left:calc(50% - 38px);box-shadow:inset 0 1px #ffffffa6,0 2px 3px #58452838}.work-page .work-task-list>button:hover,.work-page .work-reminder-panel>article:hover{background:var(--paper-sheet-warm)}.recognition-page .recognition-section{border-top:5px solid #bb8c4d}.recognition-page .recognition-section:nth-child(2){border-top-color:#9b6b60}.recognition-page .recognition-table-head{color:#776f63;background:#f4ecdc}.recognition-page .recognition-table article{border-bottom-color:var(--paper-line-soft)}.party-page .party-editor,.party-page .party-list{border-top:5px solid #a56b5d}.party-page .party-editor:after{content:"组织关系记录";color:#a56b5db8;font:10px var(--font-song);border:1px solid #a56b5d85;padding:3px 7px;position:absolute;top:15px;right:22px;transform:rotate(-6deg)}.operation-log-page .operation-log-list{background:#fcf8ee;border-left:6px solid #9c865f;overflow:hidden}.operation-log-page .operation-log-list:before{content:"ARCHIVE";color:#97815abf;letter-spacing:.2em;text-shadow:0 0 1px #97815a66;pointer-events:none;font:700 10px Georgia,serif;position:absolute;top:16px;right:19px;transform:rotate(4deg)}.operation-log-page .operation-log-row{border-bottom-color:var(--paper-line-soft)}.inbox-page .inbox-compose,.inbox-page .inbox-list{background:var(--paper-sheet);border-top:6px solid #b18a56;border-radius:3px}.inbox-page .inbox-compose:before{content:"✉";color:#b18a5680;font:22px Georgia,serif;position:absolute;top:13px;right:23px}.inbox-page .inbox-list>article{border-bottom-color:var(--paper-line-soft)}.system-settings-page .settings-card,.system-settings-page>form,.system-settings-page>section{border-color:var(--paper-line);box-shadow:var(--paper-shadow);background:#fffaf1;border-radius:4px}.system-settings-page .settings-page-header:after{content:"⌁";color:#ab825080;font:38px Georgia,serif;position:absolute;bottom:-4px;right:18px;transform:rotate(-14deg)}.system-settings-page .settings-page-header{position:relative}@media (width<=760px){.page-content:before{font-size:8px;top:8px;right:14px}.dashboard-data-hero:before{right:24px}.calendar-page .calendar-workspace .panel{padding-left:26px}.calendar-page .work-calendar-panel:before{left:7px}.students-page .student-directory-panel:after,.students-page .students-panel:after{display:none}}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics){box-shadow:none;background:0 0;border:0}.action-stats:after{content:none}.action-stats{gap:12px}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article{--note-paper:#f8f1d9;isolation:isolate;color:var(--paper-ink);background:var(--paper-crease), var(--note-paper);border:1px solid #97825d33;border-radius:3px 3px 9px;transition:box-shadow .18s;position:relative;overflow:hidden;transform:none;box-shadow:0 1px 2px #5341250f,1px 5px 10px -5px #53412533}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article:nth-child(3n+2){--note-paper:#edf1e5}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article:nth-child(3n){--note-paper:#f3eae2}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article:is(.warning,.soon,.medium){--note-paper:#faf0d9}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article:is(.students,.running,.active,.low,.completed,.closed){--note-paper:#eaf0e4}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article:is(.pending,.overdue,.high){--note-paper:#f7e8e1}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article:before{content:"";width:auto;height:7px;box-shadow:none;pointer-events:none;background:linear-gradient(#7e663c0f,#0000);border:0;border-radius:0;position:absolute;inset:0 0 auto;transform:none}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article:after{content:"";background:var(--paper-fold);opacity:1;width:18px;height:18px;box-shadow:none;pointer-events:none;border:0;border-radius:0;position:absolute;inset:auto 0 0 auto;transform:none}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article :is(small,em){color:#726f63}.dashboard-hero-metrics>article>:is(strong,span){color:#365448}.dashboard-hero-metrics>article>.ui-icon{color:#587667;background:#ffffff50;border-color:#cbd6c8}.resource-page .resource-card-list.simple>article{background:var(--paper-crease), var(--paper-sheet);border-radius:5px;gap:18px;transform:none;box-shadow:0 1px 2px #58452808,0 5px 14px -8px #58452824}.resource-page .resource-card-list.simple>article:nth-child(2n){transform:none}.resource-page .resource-card-body{background:0 0}.resource-page .resource-card-body h3{line-height:1.5}.resource-page .resource-card-body p{line-height:1.8}.resource-page .resource-card-meta{flex-wrap:wrap;row-gap:5px}.resource-page .resource-card-meta small{min-width:0}.resource-page .resource-card-actions:before{content:none}.resource-page .resource-card-actions{padding-top:10px}.resource-page .resource-card-actions:after{top:15px}.resource-page .resource-card-list.simple>article:after{content:"";background:var(--paper-fold);filter:drop-shadow(-2px 3px 2px #53412524);pointer-events:none;width:20px;height:20px;position:absolute;bottom:0;right:0}.resource-page .resource-card-list.simple>article:before{background:linear-gradient(#ffffff59,#fff0 48%),linear-gradient(90deg,#e7d5b466 0 5%,#e7d5b4ad 8% 92%,#e7d5b466 95% 100%);border:0;border-radius:1.5px;width:44px;height:13px;top:-6px;left:33px;box-shadow:0 2px 3px #58452826,inset 0 1px #ffffff5c}.resource-page .resource-open-link{grid-column:auto}.resource-page .resource-open-link:hover{color:var(--paper-moss);background:#e8eee7}.resource-page .resource-result-head>.primary-button{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}:is(.work-task-panel,.work-reminder-panel,.student-directory-panel){background-image:var(--paper-crease)}.work-page .work-reminder-panel:before{content:"";background:var(--paperclip-metal-icon) center / contain no-repeat;filter:drop-shadow(0 1px 1px #5845284d);pointer-events:none;width:13px;height:34px;position:absolute;top:-15px;left:10px;transform:rotate(-8deg)}.leave-page .leave-table-caption{background:var(--paper-crease), #f7efe1;color:#88694d}.page-content{line-height:1.55}.page-content :is(h2,h3,h4){letter-spacing:.025em}.page-content :is(button,input,select,textarea),.v2-dialog :is(button,input,select,textarea){font-family:inherit}:is(.page-content,.v2-dialog,.system-settings-page) button{cursor:pointer;transition:color .16s,background-color .16s,border-color .16s,box-shadow .16s}:is(.page-content,.v2-dialog,.system-settings-page) :is(button,a,input,select,textarea):focus-visible{outline-offset:3px;outline:2px solid #729183}:is(.page-content,.v2-dialog,.system-settings-page) button:disabled{cursor:not-allowed;opacity:.48;box-shadow:none}.primary-button,.secondary-button,.ghost-button,.danger-button{border-radius:5px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:9px 14px;font-weight:650;line-height:1.35;display:inline-flex}.primary-button{background:linear-gradient(#416355,#36584d);border:1px solid #304f44;box-shadow:inset 0 1px #ffffff18,0 2px 4px #36584d14}.primary-button:hover:not(:disabled){background:#304f44;box-shadow:inset 0 1px #ffffff12,0 3px 7px #36584d24}:is(.secondary-button,.ghost-button){background:#fffdf7;border:1px solid #d5cbbb;box-shadow:0 1px 2px #58452806}.danger-button{color:#9e5348;box-shadow:none;background:#fcf2ee;border:1px solid #dfc3ba}.danger-button:hover:not(:disabled){background:#f7e7e1}.v2-link{text-underline-offset:4px}:is(.page-content,.v2-dialog) .icon-badge{border:1px solid #ffffff70;border-radius:9px;box-shadow:inset 0 1px #ffffff50}:is(.v2-form,.resource-editor,.resource-tag-quick-editor,.settings-form-grid,.profile-edit-form,.recognition-form,.party-editor,.import-row-editor,.housing-ai-dialog) :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),select,textarea){box-sizing:border-box;color:#3d5148;background:#fffdf9;border:1px solid #d9d0c2;border-radius:5px;min-width:0;min-height:38px;padding:8px 11px;line-height:1.5;box-shadow:inset 0 1px 2px #58452804}:is(.v2-form,.resource-editor,.resource-tag-quick-editor,.settings-form-grid,.profile-edit-form,.recognition-form,.party-editor,.import-row-editor) :is(input,select,textarea):focus{border-color:#8ca596;box-shadow:0 0 0 3px #72918315}:is(.v2-form,.resource-editor,.settings-form-grid,.profile-edit-form) textarea{resize:vertical;min-height:104px}:is(.v2-form,.resource-editor,.resource-tag-quick-editor,.settings-form-grid) label{color:#667267;line-height:1.6}:is(.page-content,.v2-dialog) input[type=checkbox]:not(.switch__input),:is(.page-content,.v2-dialog) input[type=radio]:not(.settings-radio-input){accent-color:var(--paper-moss)}:is(.search-box,.resource-search,.student-directory-search,.dorm-search-box,.operation-log-search,.dashboard-focus-search,.action-search,.judgment-search){color:#7f806f;border-radius:5px;min-width:0;box-shadow:inset 0 1px 2px #58452804}:is(.search-box,.resource-search,.student-directory-search,.dorm-search-box,.operation-log-search,.dashboard-focus-search,.action-search,.judgment-search) input{box-shadow:none;font-weight:400}:is(.search-box,.resource-search,.student-directory-search,.dorm-search-box,.operation-log-search,.dashboard-focus-search,.action-search,.judgment-search) input::placeholder{color:#868577}:is(.search-box,.resource-search,.student-directory-search,.dorm-search-box,.operation-log-search,.dashboard-focus-search,.action-search,.judgment-search):focus-within{border-color:#8ca596;box-shadow:0 0 0 3px #72918315}.v2-dialog{color:#3d5148;background:#fffdf8;border:1px solid #d8cfc0;border-radius:10px;box-shadow:0 24px 70px -20px #302b2240,0 4px 12px #302b2210}.v2-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#24382f38}.v2-dialog>header{background:#f8f3ea;border-bottom:1px solid #e6ded1}.v2-dialog>header h2{font-family:var(--font-song);letter-spacing:.025em;font-weight:600}.v2-dialog>header>button{color:#7c8174;background:0 0;border-radius:6px;place-items:center;width:32px;height:32px;padding:0;display:grid}.v2-dialog>header>button:hover:not(:disabled){background:#eae4d8}.v2-dialog.v2-drawer{border-right:0;border-radius:0}:is(.student-quick-drawer,.dorm-room-drawer,.dorm-building-drawer,.task-detail-drawer){background:#fffdf8;border-left:1px solid #dcd3c4;box-shadow:-12px 0 38px -15px #302b2230}:is(.student-more-menu,.student-filter-menu,.account-menu){background:#fffdf8;border-color:#ddd3c4;border-radius:7px;box-shadow:0 10px 26px -10px #302b2233}:is(.student-more-menu,.student-filter-menu,.account-menu) button:hover{background:#f2eee4}:is(.profile-info-section,.profile-section,.settings-card,.import-preview-rows-panel,.generic-preview-records article){background:#fffdf8;border-color:#e3dbce;border-radius:6px}:is(.student-directory-table,.attendance-table,.leave-table){font-variant-numeric:tabular-nums}:is(.student-directory-table,.attendance-table,.leave-table) th{color:#697265;font-weight:650}:is(.student-directory-table,.attendance-table,.leave-table) td{border-color:#e9e4db}:is(.leave-type,.attendance-type-chip,.attendance-status-chip,.resource-tags span,.resource-tags button){border-radius:4px;box-shadow:inset 0 0 0 1px #61735d09}:is(.leave-filter-tabs,.dorm-filter-tabs,.recognition-tabs,.student-quick-filters,.action-status-tabs) button{border-radius:5px;font-weight:600}:is(.leave-filter-tabs,.dorm-filter-tabs,.recognition-tabs,.student-quick-filters,.action-status-tabs) button.active{box-shadow:inset 0 0 0 1px #36584d18}:is(.resource-empty,.leave-empty,.attendance-empty,.work-empty,.recognition-empty,.operation-log-empty,.profile-empty-box){color:#7d8275;line-height:1.8}:is(.resource-empty,.profile-empty-box){background:#faf6ee;border-color:#ded5c6}:is(.toast,.v2-error,.v2-dialog-error,.form-notice,.form-error,.profile-edit-error,.settings-message,.student-export-error,.student-bulk-edit-error,.course-schedule-feedback){overflow-wrap:anywhere;border-radius:7px;align-items:flex-start;gap:9px;min-width:0;padding:10px 12px;line-height:1.55;display:flex;box-shadow:0 10px 24px -12px #302b2238}:is(.toast,.form-notice,.settings-message.success){color:#2d6d52;background:#eef7f0;border:1px solid #cfe0d5;border-left:4px solid #4aa675}.import-preview-warning{color:#81643b;background:#fff8e8;border:1px solid #ead8b5;border-left:4px solid #c49347;border-radius:7px;padding:10px 12px 10px 39px;display:block;position:relative;box-shadow:0 10px 24px -12px #302b2229}.import-preview-warning:before{content:"!";color:#fffdf8;background:#c49347;border-radius:50%;place-items:center;width:18px;height:18px;font-size:11px;font-weight:800;display:grid;position:absolute;top:11px;left:12px}.import-preview-warning strong{color:#89642f}.import-preview-warning p{color:#816f56}:is(.v2-error,.v2-dialog-error,.form-error,.profile-edit-error,.settings-message:not(.success),.student-export-error,.student-bulk-edit-error,.course-schedule-feedback){color:#93473d;background:#fff1ed;border:1px solid #e7ccc3;border-left:4px solid #c46252}:is(.toast,.form-notice,.settings-message.success):before{content:"✓";color:#fffdf8;background:#4aa675;border-radius:50%;flex:0 0 18px;place-items:center;width:18px;height:18px;margin-top:1px;font-size:11px;font-weight:800;display:grid}:is(.v2-error,.v2-dialog-error,.form-error,.profile-edit-error,.settings-message:not(.success),.student-export-error,.student-bulk-edit-error,.course-schedule-feedback):before{content:"!";color:#fffdf8;background:#c46252;border-radius:50%;flex:0 0 18px;place-items:center;width:18px;height:18px;margin-top:1px;font-size:11px;font-weight:800;display:grid}.toast{z-index:80;min-width:min(300px,100vw - 48px);max-width:360px;font-size:12px;position:fixed;bottom:24px;right:24px}.v2-error{z-index:120;width:min(360px,100vw - 48px);max-width:none;font-size:13px;position:fixed;top:22px;left:auto;right:24px;transform:none}.v2-dialog-error{margin:16px 24px 0}.v2-error button{color:currentColor;cursor:pointer;background:0 0;border:0;flex:none;margin-left:auto;padding:0 2px;font-size:20px;line-height:1}.form-notice,.form-error,.profile-edit-error,.v2-dialog-error,.settings-message,.student-export-error,.student-bulk-edit-error,.course-schedule-feedback{font-size:11px}@media (width<=520px){.toast,.v2-error{width:auto;min-width:0;max-width:none;left:12px;right:12px}.toast{bottom:12px}.v2-error{top:12px}}.login-page{background:var(--paper-bg)}.login-card.form{color:#3d5148;background:#fffdf8;border:1px solid #ded4c3;border-radius:10px;box-shadow:0 18px 46px -20px #58452835}.login-card.form:hover{border-color:#cfc2ac;transform:none}.login-card.form #heading{color:#36584d;font-family:var(--font-song)}.login-card.form :is(.login-form-heading p,.login-account-list small){color:#7b8071}.login-card.form .field{color:#3d5148;background:#faf7ef;border:1px solid #d9d0c2;border-radius:5px;box-shadow:inset 0 1px 2px #58452805}.login-card.form .field:focus-within{border-color:#8ca596;box-shadow:0 0 0 3px #72918315}.login-card.form .input-field{color:#3d5148;box-shadow:none}.login-card.form .input-icon{color:#7a8d7c;stroke:currentColor}.login-card.form :is(.button1,.button3){color:#526c5c;background:#f0ede3}.login-card.form .button2{color:#fffdf8;background:#36584d}.login-card.form :is(.button1,.button3):hover{color:#36584d;background:#e7e6d9}.login-card.form .button2:hover{background:#2e4c41}@media (width<=760px){.resource-page .resource-result-head{grid-template-columns:minmax(0,1fr) auto;gap:9px}.resource-page .resource-search{grid-area:1/1/auto/-1}.resource-page .resource-result-head>span{grid-column:2}.resource-page .resource-card-actions{padding-top:12px}.v2-dialog:not(.v2-drawer){border-radius:8px}}@media (prefers-reduced-motion:reduce){:is(.page-content,.v2-dialog,.login-page) *,:is(.page-content,.v2-dialog,.login-page) :before,:is(.page-content,.v2-dialog,.login-page) :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.system-settings-page .settings-radio-input{background:#f5efe3;border:1px solid #ded6c8;border-radius:6px;gap:5px;margin-bottom:14px;padding:5px;position:relative;box-shadow:inset 0 1px #ffffffbf,0 5px 16px #5845280f}.system-settings-page .settings-radio-input label{color:#48564f;letter-spacing:.01em;border-radius:4px;padding:10px 12px;font-size:12px;font-weight:800;transition:color .18s,background-color .18s,box-shadow .18s,transform .18s}.system-settings-page .settings-radio-input label+label{border-left:1px solid #9d8f7747}.system-settings-page .settings-radio-input label:hover{color:var(--paper-moss);background:#fffdf7a3}.system-settings-page .settings-radio-input label.is-active{color:#315d50;background:var(--paper-sheet);animation:.3s settings-radio-select;position:relative;box-shadow:0 2px 8px #5845281c,inset 0 1px #ffffffd6}.system-settings-page .settings-radio-input label.is-active:before,.system-settings-page .settings-radio-input label.is-active:after{content:"";background:var(--paper-brass);opacity:0;pointer-events:none;border-radius:50%;width:4px;height:4px;position:absolute;left:50%}.system-settings-page .settings-radio-input label.is-active:before{animation:.5s forwards settings-radio-particle-up;top:-7px;transform:translate(-50%)}.system-settings-page .settings-radio-input label.is-active:after{animation:.5s forwards settings-radio-particle-down;bottom:-7px;transform:translate(-50%)}.party-page .party-editor:after{display:none}@keyframes settings-radio-select{0%{transform:scale(.96)}55%{transform:scale(1.025)}to{transform:scale(1)}}@keyframes settings-radio-particle-up{0%{opacity:0;transform:translate(-50%)}45%{opacity:.72}to{opacity:0;transform:translate(-50%,-8px)}}@keyframes settings-radio-particle-down{0%{opacity:0;transform:translate(-50%)}45%{opacity:.72}to{opacity:0;transform:translate(-50%,8px)}}:is(.work-content-switch,.calendar-view-switch,.calendar-category-tabs,.leave-filter-tabs,.dorm-filter-tabs,.dorm-floor-tabs,.recognition-tabs,.student-quick-filters,.action-status-tabs,.attendance-range-switch,.dashboard-risk-tabs,.resource-sidebar nav,.profile-tabs,.student-data-tabs,.judgment-tabs,.judgment-quick-filters,.party-archive-options){--paper-switch-particle:var(--paper-brass)}:is(.work-content-switch,.calendar-view-switch,.calendar-category-tabs,.leave-filter-tabs,.dorm-filter-tabs,.dorm-floor-tabs,.recognition-tabs,.student-quick-filters,.action-status-tabs,.attendance-range-switch,.dashboard-risk-tabs,.resource-sidebar nav,.profile-tabs,.student-data-tabs,.judgment-tabs,.judgment-quick-filters,.party-archive-options) button{transition:color .18s,background-color .18s,border-color .18s,box-shadow .18s,transform .18s;position:relative}:is(.work-content-switch,.calendar-view-switch,.calendar-category-tabs,.leave-filter-tabs,.dorm-filter-tabs,.dorm-floor-tabs,.recognition-tabs,.student-quick-filters,.action-status-tabs,.attendance-range-switch,.dashboard-risk-tabs,.resource-sidebar nav,.profile-tabs,.student-data-tabs,.judgment-tabs,.judgment-quick-filters,.party-archive-options) button.active{animation:.3s settings-radio-select}:is(.work-content-switch,.calendar-view-switch,.calendar-category-tabs,.leave-filter-tabs,.dorm-filter-tabs,.dorm-floor-tabs,.recognition-tabs,.student-quick-filters,.action-status-tabs,.attendance-range-switch,.dashboard-risk-tabs,.resource-sidebar nav,.profile-tabs,.student-data-tabs,.judgment-quick-filters,.party-archive-options) button.active:before,:is(.work-content-switch,.calendar-view-switch,.calendar-category-tabs,.leave-filter-tabs,.dorm-filter-tabs,.dorm-floor-tabs,.recognition-tabs,.student-quick-filters,.action-status-tabs,.attendance-range-switch,.dashboard-risk-tabs,.resource-sidebar nav,.profile-tabs,.student-data-tabs,.judgment-quick-filters,.party-archive-options) button.active:after{background:var(--paper-switch-particle);content:"";opacity:0;pointer-events:none;border-radius:50%;width:4px;height:4px;position:absolute;left:50%}:is(.work-content-switch,.calendar-view-switch,.calendar-category-tabs,.leave-filter-tabs,.dorm-filter-tabs,.dorm-floor-tabs,.recognition-tabs,.student-quick-filters,.action-status-tabs,.attendance-range-switch,.dashboard-risk-tabs,.resource-sidebar nav,.profile-tabs,.student-data-tabs,.judgment-quick-filters,.party-archive-options) button.active:before{animation:.5s forwards settings-radio-particle-up;top:-7px;transform:translate(-50%)}:is(.work-content-switch,.calendar-view-switch,.calendar-category-tabs,.leave-filter-tabs,.dorm-filter-tabs,.dorm-floor-tabs,.recognition-tabs,.student-quick-filters,.action-status-tabs,.attendance-range-switch,.dashboard-risk-tabs,.resource-sidebar nav,.profile-tabs,.student-data-tabs,.judgment-quick-filters,.party-archive-options) button.active:after{animation:.5s forwards settings-radio-particle-down;bottom:-7px;transform:translate(-50%)}.calendar-view-switch{--paper-switch-particle:#7698b5}.dashboard-risk-tabs,.calendar-category-tabs,.leave-filter-tabs,.dorm-filter-tabs,.dorm-floor-tabs,.recognition-tabs,.student-quick-filters,.action-status-tabs,.attendance-range-switch,.resource-sidebar nav,.profile-tabs,.student-data-tabs,.judgment-tabs,.judgment-quick-filters,.party-archive-options,.work-content-switch{--paper-switch-particle:var(--paper-moss)}.dorm-status-options label{transition:color .18s,background-color .18s,border-color .18s,box-shadow .18s,transform .18s;position:relative}.dorm-status-options label.active{animation:.3s settings-radio-select}.dorm-status-options label.active:before,.dorm-status-options label.active:after{background:var(--paper-moss);content:"";opacity:0;pointer-events:none;border-radius:50%;width:4px;height:4px;position:absolute;left:50%}.dorm-status-options label.active:before{animation:.5s forwards settings-radio-particle-up;top:-7px;transform:translate(-50%)}.dorm-status-options label.active:after{animation:.5s forwards settings-radio-particle-down;bottom:-7px;transform:translate(-50%)}@media (width<=720px){.system-settings-page .settings-radio-input label{padding:9px 10px}}.dorm-management-page .dorm-building-grid>.dorm-building-card-wrap>button{border-radius:9px 9px 3px;grid-template-columns:minmax(0,1fr);gap:0;height:132px;min-height:0;padding:14px 106px 14px 15px}.dorm-management-page .dorm-building-grid .building-card-info strong{letter-spacing:-.02em;font-size:20px}.dorm-management-page .dorm-building-grid .building-card-info small{margin-top:4px;font-size:10px}.dorm-management-page .dorm-building-grid .building-card-info .building-card-metrics em{font-size:11px}.dorm-management-page .dorm-building-card-wrap>.dorm-building-status-select{width:96px;height:29px;padding:0 7px;font-size:10px;top:10px;right:10px}.dorm-management-page>:is(.dorm-building-backdrop,.dorm-room-backdrop){pointer-events:auto;position:fixed;inset:0}.dorm-management-page>.dorm-building-backdrop{z-index:70}.main-panel>.page-content.dorm-management-page.has-building-drawer{z-index:20}.dorm-management-page.has-building-drawer>.dorm-room-backdrop{z-index:72}@media (width<=1120px){.dorm-management-page .dorm-building-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.dorm-management-page .dorm-building-grid{grid-template-columns:1fr;padding:10px 12px 12px}.dorm-management-page .dorm-building-grid>.dorm-building-card-wrap>button{height:118px;padding:12px 94px 12px 13px}.dorm-management-page .dorm-building-card-wrap>.dorm-building-status-select{width:86px;top:9px;right:9px}}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article{--note-marker:#bd914029;--note-marker-light:#bd914014;background:linear-gradient(103deg, transparent 0 21%, var(--note-marker-light) 21.4% 24.2%, transparent 24.8%), linear-gradient(103deg, transparent 0 69%, var(--note-marker-light) 69.4% 71.2%, transparent 71.8%), var(--paper-crease), var(--note-paper);border-color:#8b70453d;border-radius:5px 4px 7px 3px;box-shadow:1px 2px #8365350f,2px 7px 13px -7px #53412547}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article:nth-child(3n+2){--note-marker:#5c916826;--note-marker-light:#5c916813}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article:nth-child(3n){--note-marker:#ba705b24;--note-marker-light:#ba705b12}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article:before{background:linear-gradient(90deg, transparent 0 3%, var(--note-marker-light) 5% 86%, transparent 88% 100%), linear-gradient(100deg, transparent 0 7%, var(--note-marker) 9% 70%, transparent 73% 100%);opacity:.88;filter:blur(.35px);width:46%;height:6px;box-shadow:none;border:0;border-radius:52% 46% 55% 43%;inset:9px auto auto 12px;transform:rotate(-1.6deg)}:is(.metric-grid,.calendar-metrics,.resource-metrics,.student-metrics,.leave-stats,.leave-header-stats,.dorm-overview-stats,.judgment-kpi-grid,.action-stats,.day-stat-grid,.import-preview-metrics,.student-account-summary,.dashboard-hero-metrics)>article:after{background:var(--paper-fold);filter:drop-shadow(-2px 3px 2px #53412529);width:22px;height:22px;transform:rotate(.8deg)}.party-page{--party-red:#b83a2f;--party-red-dark:#8f291f;--party-paper:#fffdf8;--party-line:#e8dfd1}.party-page .party-stage-overview{border:1px solid var(--party-line);background:linear-gradient(#fffdf8fa,#faf7eff5);border-radius:13px 13px 6px;margin-bottom:14px;overflow:hidden;box-shadow:0 12px 30px #42342312}.party-module-hero{background:linear-gradient(105deg,#f8f0e3 0%,#fffdf8 52%,#f3eadc 100%);border-bottom:1px solid #eadfce;justify-content:space-between;align-items:stretch;min-height:70px;display:flex;position:relative}.party-module-hero:after{pointer-events:none;content:"";border-bottom:1px solid #9d7b4a2e;border-radius:50%;width:120px;height:34px;position:absolute;bottom:10px;right:30%;transform:rotate(-3deg)}.party-module-tab{color:#fffaf2;background:linear-gradient(135deg,#c94a3b,var(--party-red));clip-path:polygon(0 0,91% 0,100% 100%,0 100%);align-items:center;gap:14px;min-width:340px;padding:13px 48px 13px 24px;display:flex;position:relative;box-shadow:inset 0 1px #fff3}.party-module-tab:before{content:"";border:2px solid #72472b94;border-bottom:0;border-radius:9px 9px 0 0;width:20px;height:8px;position:absolute;top:7px;left:18px;transform:rotate(-9deg)translateY(-10px)}.party-module-tab>span{color:#fff8df;width:36px;height:36px;font:800 19px var(--font-song);background:#7b1c152e;border:1px solid #ffffff5c;border-radius:50%;flex:none;place-items:center;display:grid}.party-module-tab>div{gap:3px;display:grid}.party-module-tab strong{font:800 23px var(--font-song);letter-spacing:.12em}.party-module-tab small{color:#fffaf2b8;letter-spacing:.18em;font-size:8px;font-weight:800}.party-module-motto{z-index:1;color:#a74034;align-content:center;justify-items:end;gap:5px;padding:10px 28px;display:grid;position:relative}.party-module-motto strong{font:700 15px var(--font-kai);letter-spacing:.08em}.party-module-motto small{color:#9b8b78;font-size:9px}.party-page .party-stage-overview-head{margin:0;padding:14px 18px 10px}.party-page .party-stage-overview-head strong{font-size:16px}.party-page .party-stage-overview-head>small{color:#8f8070}.party-page .party-stage-grid{gap:9px;padding:0 18px}.party-page .party-stage-card{background:#ffffffdb;border:1px solid #e7dfd3;border-radius:9px;min-height:112px;padding:12px 13px 10px;box-shadow:0 3px 10px #45372509}.party-page .party-stage-card:after{content:"";background:var(--stage-color);opacity:.045;border-radius:42px 0 0;width:42px;height:42px;position:absolute;bottom:0;right:0}.party-page .party-stage-card.applicant{--stage-color:#d14c42}.party-page .party-stage-card.activist{--stage-color:#2f927c}.party-page .party-stage-card.development{--stage-color:#d18d25}.party-page .party-stage-card.probationary{--stage-color:#3e78bd}.party-page .party-stage-card.member{--stage-color:#c93639}.party-page .party-stage-card:hover{transform:translateY(-2px);box-shadow:0 9px 20px #3a302317}.party-page .party-stage-card.active{border-color:var(--stage-color);background:#fffaf7;box-shadow:0 0 0 2px #b83a2f1a,0 8px 20px #3a302314}.party-page .party-stage-card-top{grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.party-stage-icon{width:35px;height:35px;color:var(--stage-color);font:850 15px var(--font-song);background:#f7ece9;border-radius:9px;place-items:center;display:grid}.party-stage-card.activist .party-stage-icon{background:#e4f3ed}.party-stage-card.development .party-stage-icon{background:#fff1d9}.party-stage-card.probationary .party-stage-icon{background:#e7f0fb}.party-stage-card.member .party-stage-icon{background:#f8e5e5}.party-stage-card-name{gap:2px;min-width:0;display:grid}.party-stage-card-name small{color:var(--stage-color);font-size:10px;font-weight:900}.party-stage-card-name strong{color:#344e47;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.party-page .party-stage-card-top b{font-size:25px}.party-page .party-stage-card>p{color:#7d7b72;min-height:27px;margin:8px 0 0;font-size:9px;line-height:1.5}.party-page .party-stage-card>i{padding-top:6px}.party-page .party-workflow-strip{background:#fffaf1;border-color:#eadfce;margin:11px 18px 16px}.party-page .party-workflow-title{color:#9e4a3c;align-items:center;gap:5px;display:inline-flex}.party-page .party-workflow-title i{color:#fff;background:#c2774b;border-radius:50%;place-items:center;width:15px;height:15px;font-size:9px;font-style:normal;display:grid}.party-page .party-workflow-strip>button{background:#f6efe3;border:1px solid #0000}.party-page .party-workflow-strip>button:hover,.party-page .party-workflow-strip>button.active{color:#a43a31;background:#fff3ee;border-color:#e2b5a8}.party-page .party-list{border:1px solid var(--party-line);border-top:1px solid var(--party-line);background:var(--party-paper);border-radius:12px 12px 5px;box-shadow:0 10px 30px #3b2f1f0e}.party-list-toolbar{border-bottom:1px solid #ece3d7;justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:0 15px;display:flex}.party-stage-tabs{align-self:stretch;min-width:0;display:flex;overflow-x:auto}.party-stage-tabs button{color:#6e7773;font:inherit;cursor:pointer;background:0 0;border:0;flex:none;padding:0 12px;font-size:10px;font-weight:800;position:relative}.party-stage-tabs button:after{content:"";background:0 0;border-radius:2px;height:2px;position:absolute;bottom:0;left:10px;right:10px}.party-stage-tabs button:hover,.party-stage-tabs button.active{color:var(--party-red)}.party-stage-tabs button.active:after{background:var(--party-red)}.party-stage-tabs b{color:inherit;opacity:.72;margin-left:3px;font-size:9px}.party-page .party-list-actions{flex:none}.party-page .party-list-actions .search-box{background:#fffefa;border-color:#dfd5c6;flex:220px;width:auto;min-width:180px;max-width:300px}.party-page .party-create-button{border-color:var(--party-red-dark);color:#fff;white-space:nowrap;background:linear-gradient(#c6483d,#aa3028)}.party-page .party-create-button:hover:not(:disabled){background:var(--party-red-dark)}.party-page .party-create-button>span{margin-right:4px;font-size:15px;line-height:0}.party-page .party-list-head{background:#fffdf8d1;border-bottom:1px solid #ece5db;min-height:49px;padding:10px 16px}.party-page .party-list-head>div:first-child{align-items:baseline;gap:10px;display:flex}.party-page .party-list-head strong{color:#344b45;font-size:13px}.party-page .party-list-head small{color:#8a8176;margin:0;font-size:9px}.party-clear-filter{color:#a2473b;font:inherit;cursor:pointer;background:0 0;border:0;padding:5px 7px;font-size:9px;font-weight:800}.party-page .party-table{overflow-x:auto}.party-page .party-table-head,.party-page .party-table article{grid-template-columns:minmax(170px,1.3fr) minmax(105px,.76fr) minmax(150px,1fr) minmax(115px,.78fr) minmax(145px,1fr) auto;gap:12px;min-width:1000px;padding:11px 15px}.party-page .party-table-head{color:#6f6b62;letter-spacing:.02em;background:#f3eee4;font-size:9px}.party-page .party-table article{background:#ffffff94;border-top:0;border-bottom:1px solid #eee7dd;min-height:60px}.party-page .party-table article:last-child{border-bottom:0}.party-page .party-table article:hover{background:#fffaf2}.party-page .party-student-link{align-items:center;gap:9px;display:flex}.party-student-avatar{color:#596b65;background:linear-gradient(145deg,#f4f4ef,#e8ebe7);border:1px solid #dedfd8;border-radius:50%;flex:none;place-items:center;width:31px;height:31px;font-size:11px;font-weight:850;display:grid;overflow:hidden}.party-student-avatar img{object-fit:cover;width:100%;height:100%}.party-student-summary{gap:3px;min-width:0;display:grid}.party-page .party-student-summary strong{color:#284943;font-size:12px}.party-page .party-student-summary small{margin:0;font-size:9px}.party-page .party-status{color:#65736e;background:#e9eeeb;border-radius:999px;width:max-content;padding:4px 8px;font-size:9px;display:inline-flex}.party-page .party-status.activist{color:#247b69;background:#dff1e9}.party-page .party-status.development{color:#a66c16;background:#fff0d4}.party-page .party-status.probationary{color:#3e6fa6;background:#e4effb}.party-page .party-status.member{color:#b33537;background:#f9e2e2}.party-branch-cell,.party-key-date{gap:4px;min-width:0;display:grid}.party-page .party-branch-cell>strong{color:#465d56;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.party-page .party-branch-cell>small,.party-page .party-key-date>small{margin:0}.party-archive-summary{align-items:center;gap:5px;width:max-content;display:inline-flex!important}.party-archive-summary i{background:#d69524;border-radius:50%;width:6px;height:6px}.party-archive-summary.complete i{background:#269273}.party-archive-summary.missing{color:#b5483e!important}.party-archive-summary.missing i{background:#d8493f}.party-page .party-key-date time{color:#455f58;font-size:10px;font-weight:750}.party-relation-cell{color:#536861;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.party-page .party-row-actions{flex-wrap:nowrap}.party-page .party-row-actions .secondary-button{color:#426058;background:#fffefa;border-color:#ded4c5;min-height:29px;padding:5px 9px;font-size:9px}.party-more-button{color:#8b5a4e;min-width:38px;height:29px;font:inherit;cursor:pointer;background:#fffefa;border:1px solid #ded4c5;border-radius:6px;padding:0 7px;font-size:9px;font-weight:750}.party-more-button:disabled{color:#9aac9f;background:#f0f2ee}@media (width<=1120px){.party-page .party-stage-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.party-list-toolbar{flex-direction:column;align-items:stretch;padding-top:8px}.party-stage-tabs{min-height:42px}.party-page .party-list-actions{justify-content:flex-end;padding-bottom:10px}.party-page .party-list-actions .search-box{width:min(420px,100%)}}@media (width<=720px){.party-module-hero{min-height:62px}.party-module-tab{min-width:235px;padding:11px 34px 11px 16px}.party-module-tab>span{width:31px;height:31px}.party-module-tab strong{font-size:18px}.party-module-motto{display:none}.party-page .party-stage-overview-head{align-items:flex-start;padding:13px 13px 9px}.party-page .party-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 13px}.party-page .party-workflow-strip{flex-direction:row;margin:10px 13px 13px}.party-page .party-workflow-strip>button{width:auto}.party-list-toolbar{padding:7px 10px 0}.party-page .party-list-actions{flex-direction:column;align-items:stretch}.party-page .party-list-actions .search-box{width:100%}.party-page .party-list-head{flex-direction:row;align-items:center}}@media (width<=430px){.party-page .party-stage-grid{grid-template-columns:1fr}.party-module-tab{clip-path:none;min-width:100%}.party-page .party-list-head>div:first-child{flex-direction:column;align-items:flex-start;gap:2px}}.paper-pile{position:relative}.paper-pile.is-stack:before,.paper-pile.is-stack:after{content:"";z-index:0;background:linear-gradient(#fffdf7,#fbf5e6);border:1px solid #cfc2a8;border-radius:4px;position:absolute;box-shadow:1px 2px #8b755029}.paper-pile.is-stack:before{inset:-6px -4px 6px 4px;transform:rotate(1.4deg)}.paper-pile.is-stack:after{inset:-10px 4px 10px -4px;transform:rotate(-1.8deg)}.paper-pile>*{z-index:1;position:relative}.calendar-page .calendar-month-view{position:relative}.calendar-page .calendar-month-view:before{content:"";z-index:2;filter:drop-shadow(0 1px 1px #4634184d);pointer-events:none;background:radial-gradient(circle at 24px,#0000 0 4.2px,#a98d5f 4.2px 5.2px,#e2cf9f 5.2px 5.9px,#8f7850 5.9px 6.8px,#0000 6.8px),radial-gradient(circle at 72px,#0000 0 4.2px,#a98d5f 4.2px 5.2px,#e2cf9f 5.2px 5.9px,#8f7850 5.9px 6.8px,#0000 6.8px);width:96px;height:15px;position:absolute;top:0;left:50%;transform:translate(-50%)}.calendar-page .day-timeline:after{content:"";top:5px;bottom:5px;left:calc(var(--timeline-axis) + 1px);pointer-events:none;background-image:linear-gradient(#b9c9c1 0 1px,#0000 1px);background-repeat:repeat-y;background-size:7px 27px;width:7px;position:absolute}.page-content mark,.v2-dialog mark{color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:linear-gradient(100deg,#0000 0 4%,#e4ba6094 8% 92%,#0000 96%);border-radius:2px;padding:0 1px}.calendar-page .month-cell.today{isolation:isolate}.calendar-page .month-cell.today:before{content:"";z-index:-1;filter:blur(.4px);pointer-events:none;background:linear-gradient(90deg,#0000 0 4%,#d8a64f6b 9% 88%,#0000 94%);border-radius:52% 46% 55% 43%;width:44%;height:9px;position:absolute;top:7px;left:7px;transform:rotate(-1.8deg)}.dorm-room-drawer:before{content:"";filter:drop-shadow(0 1px 1px #46341838);pointer-events:none;background:radial-gradient(circle,#0000 0 1.5px,#8f7850 1.5px 2.5px,#d8c496 2.5px 3.1px,#8f7850 3.1px 3.8px,#0000 3.8px) 12px 5px/8px 8px no-repeat,radial-gradient(circle,#0000 0 1.5px,#8f7850 1.5px 2.5px,#d8c496 2.5px 3.1px,#8f7850 3.1px 3.8px,#0000 3.8px) 40px 5px/8px 8px no-repeat,radial-gradient(circle,#0000 0 1.5px,#8f7850 1.5px 2.5px,#d8c496 2.5px 3.1px,#8f7850 3.1px 3.8px,#0000 3.8px) 68px 5px/8px 8px no-repeat,linear-gradient(#d3ac74,#b28453) 0 0/88px 5px no-repeat;width:88px;height:13px;position:absolute;top:0;left:24px}.dorm-room-drawer:after{content:"";pointer-events:none;background:radial-gradient(circle at 50% 3.5px,#0000 0 1.7px,#e6d3a4 1.9px);border-radius:3px;width:16px;height:17px;position:absolute;top:9px;left:60px;transform:rotate(2deg);box-shadow:inset 0 1px #fff9,0 2px 3px #46341838}.dorm-management-page.page-shell{flex-direction:column;gap:0;padding-top:20px;padding-bottom:26px;display:flex}.dorm-management-page>.page-shell-body{gap:18px}.dorm-management-page>.page-shell-body>.panel{flex:none}.dorm-management-page>.page-shell-body>.panel>.dorm-section-head{gap:18px;min-height:72px;padding:16px 20px}.dorm-management-page>.page-shell-body>.dorm-building-overview>.dorm-section-head{align-items:center}.dorm-management-page .dorm-building-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;padding:16px 18px 18px}.dorm-management-page .dorm-building-grid>.dorm-building-card-wrap>button{height:152px;padding:18px 150px 18px 18px}.dorm-management-page .dorm-building-grid .building-card-metrics{gap:6px;margin-top:14px}.dorm-management-page .dorm-building-card-wrap>.dorm-building-status-select{width:128px;height:34px;font-size:11px;top:13px;right:13px}.dorm-management-page>.page-shell-body>.panel .dorm-unstructured-list article{gap:18px;min-height:72px;padding:14px 20px}.dorm-management-page .dorm-unstructured-note{font-size:11px}@media (width<=1360px){.dorm-management-page>.page-shell-body>.panel>.dorm-section-head{flex-wrap:wrap;align-items:flex-start}.dorm-management-page>.page-shell-body>.panel>.dorm-section-head>div:first-child{flex:100%}.dorm-management-page .dorm-head-tools{flex:100%;grid-template-columns:minmax(220px,1fr) auto;justify-content:flex-start;align-items:center;gap:10px;display:grid}.dorm-management-page .dorm-inspection-actions{grid-column:1/-1}.dorm-management-page .dorm-search-box{grid-column:1;width:100%;min-width:220px;max-width:none}}@media (width<=720px){.dorm-management-page>.page-shell-body{gap:14px}.dorm-management-page>.page-shell-body>.panel>.dorm-section-head{gap:12px;padding:15px 16px}.dorm-management-page>.page-shell-body>.dorm-building-overview>.dorm-section-head{align-items:flex-start}.dorm-management-page .dorm-head-tools{grid-template-columns:minmax(0,1fr) auto;gap:9px 10px;width:100%;display:grid}.dorm-management-page .dorm-inspection-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.dorm-management-page .dorm-inspection-actions>button{justify-content:center;width:100%}.dorm-management-page .dorm-inspection-actions>button:last-child{grid-column:1/-1}.dorm-management-page .dorm-search-box{grid-column:1/-1;width:100%;min-width:0;max-width:none}.dorm-management-page .dorm-filter-tabs{grid-column:2;max-width:100%}.dorm-management-page .dorm-building-grid{grid-template-columns:minmax(0,1fr);gap:12px;padding:14px}.dorm-management-page .dorm-building-grid>.dorm-building-card-wrap>button{height:148px;padding:17px 144px 17px 16px}.dorm-management-page .dorm-building-card-wrap>.dorm-building-status-select{width:122px;top:10px;right:10px}.dorm-management-page>.page-shell-body>.panel .dorm-unstructured-list article{gap:10px;padding:13px 16px}}.dorm-management-page .dorm-special-panels{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;width:100%;display:grid}.dorm-management-page .dorm-special-panel{flex:none;min-width:0}.dorm-management-page .dorm-special-panel>.dorm-section-head{flex-wrap:wrap;align-items:flex-start;gap:8px 14px;min-height:0;padding:15px 18px 12px}.dorm-management-page .dorm-special-panel>.dorm-section-head>div:first-child{flex:100%;margin-right:0}.dorm-management-page .dorm-special-panel .dorm-unstructured-actions{flex:auto;justify-content:space-between;min-width:0}.dorm-management-page .dorm-special-panel .dorm-unstructured-note{white-space:normal;min-width:0;line-height:1.5}.dorm-management-page .dorm-special-panel .dorm-unstructured-actions .secondary-button{flex:none}.dorm-management-page .dorm-special-panel .dorm-unstructured-list article{grid-template-columns:minmax(0,.75fr) minmax(0,1fr) auto;gap:12px;min-height:72px;padding:14px 18px}@media (width<=1100px){.dorm-management-page .dorm-special-panels{grid-template-columns:minmax(0,1fr)}}@media (width<=720px){.dorm-management-page .dorm-special-panel>.dorm-section-head{gap:8px 12px;padding:14px 16px 11px}.dorm-management-page .dorm-special-panel .dorm-unstructured-list article{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:13px 16px}.dorm-management-page .dorm-special-panel .dorm-location-text{grid-area:2/1/auto/-1}}.metric-cards{background:0 0;border:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;min-width:0;display:grid}.metric-card{--metric-paper:#f8f1d9;--metric-ink:#365448;--metric-accent:#8d6c32;isolation:isolate;min-width:0;min-height:92px;color:var(--metric-ink);text-align:left;background:var(--paper-crease), var(--metric-paper);cursor:pointer;border:1px solid #8b70453d;border-radius:4px 4px 12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 16px;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid;position:relative;overflow:hidden;box-shadow:1px 2px #8365350f,2px 7px 13px -7px #53412547}.metric-card:not(.has-icon){grid-template-columns:minmax(0,1fr) auto}.metric-card:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#bd914029,#bd91400a);border-radius:3px;width:46%;height:6px;position:absolute;top:9px;left:12px;transform:rotate(-1.5deg)}.metric-card:after{content:"";background:var(--paper-fold);pointer-events:none;width:22px;height:22px;position:absolute;bottom:0;right:0}.metric-card:hover{z-index:1;border-color:color-mix(in srgb, var(--metric-accent) 50%, #fff);transform:translateY(-2px);box-shadow:2px 4px #83653514,3px 10px 16px -8px #53412557}.metric-card:active{transform:translateY(0)}.metric-card:focus-visible{outline:3px solid color-mix(in srgb, var(--metric-accent) 50%, #fff);outline-offset:3px}.metric-card[aria-pressed=true]{border-color:color-mix(in srgb, var(--metric-accent) 62%, #fff);box-shadow:inset 0 -3px var(--metric-accent), 2px 4px 0 #83653514, 3px 10px 16px -8px #53412547}.metric-card-icon{border:1px solid color-mix(in srgb, var(--metric-accent) 28%, #fff);width:42px;height:42px;color:var(--metric-accent);background:#ffffff73;border-radius:11px;place-items:center;display:grid}.metric-card-copy,.metric-card-copy small,.metric-card-copy strong,.metric-card-copy em{min-width:0;display:block}.metric-card-copy small{color:color-mix(in srgb, var(--metric-ink) 72%, #8c8474);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:800;overflow:hidden}.metric-card-copy strong{color:var(--metric-ink);font:700 28px/1 Georgia, var(--font-song);margin-top:6px}.metric-card-copy em{color:#726f63;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:10px;font-style:normal;line-height:1.4;overflow:hidden}.metric-card-arrow{color:var(--metric-accent);opacity:.38;align-self:end;transition:opacity .18s,transform .18s}.metric-card:hover .metric-card-arrow,.metric-card[aria-pressed=true] .metric-card-arrow{opacity:.86;transform:translate(2px)}.metric-card--mint{--metric-paper:#eaf0e4;--metric-ink:#2f6352;--metric-accent:#4a8a73}.metric-card--blue{--metric-paper:#eaf2f5;--metric-ink:#326b82;--metric-accent:#4b8cac}.metric-card--rose{--metric-paper:#f6e8e2;--metric-ink:#a85243;--metric-accent:#b86656}.metric-card--amber{--metric-paper:#faf0d9;--metric-ink:#996526;--metric-accent:#b27d32}.metric-card--purple{--metric-paper:#eee9f8;--metric-ink:#634c9d;--metric-accent:#7860bd}.metric-card--slate{--metric-paper:#ecefec;--metric-ink:#4f645d;--metric-accent:#698179}.metric-cards--hero .metric-card{gap:10px;min-height:104px;padding:12px 13px}.metric-cards--hero .metric-card-icon{width:36px;height:36px}.metric-cards--hero .metric-card-copy small{letter-spacing:.01em;font-size:14px}.metric-cards--hero .metric-card-copy strong{margin-top:4px;font-size:32px}.metric-cards--hero .metric-card-copy em{color:#5f5c52;margin-top:5px;font-size:10px;line-height:1.45}.metric-cards--compact{gap:9px}.metric-cards--compact .metric-card{gap:9px;min-height:76px;padding:11px 12px}.metric-cards--compact .metric-card-copy strong{margin-top:4px;font-size:24px}.metric-cards--compact .metric-card-copy em{margin-top:4px;font-size:9px}.metric-cards--compact .metric-card-icon{border-radius:9px;width:34px;height:34px}@media (width<=1050px){.metric-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.metric-cards{gap:8px}.metric-card{gap:9px;min-height:82px;padding:12px}.metric-card-icon{width:36px;height:36px}.metric-card-copy strong{font-size:24px}.metric-card-copy em{font-size:9px}.metric-card-arrow{display:none}}.sidebar.sidebar-stationery{--sidebar-gold:#d2b887;background:radial-gradient(at 0 0,#70845b20,#0000 54%),linear-gradient(158deg,#274b3e 0%,#193e35 38%,#102f29 76%,#0d2623 100%);border-right:1px solid #cbb58d24;box-shadow:inset -1px 0 #ead9b90a,7px 0 24px #142c2514}.sidebar-stationery:before{opacity:.7;pointer-events:none;background:url(/sidebar-botanical-warm.svg) 100% 100%/100% no-repeat,url(/sidebar-botanical.svg) 100% 100%/100% no-repeat;animation:none;inset:0;transform:none}.sidebar-stationery:after{opacity:1;filter:none;background:linear-gradient(#0000 56%,#091f1b1f 76%,#091f1b78 100%),url(/sidebar-botanical-shadow.svg) 100% 100%/108% no-repeat;height:auto;animation:none;inset:0}.sidebar-stationery>.sidebar-ambient{z-index:0;color:#cbb384;opacity:.085;pointer-events:none;background:radial-gradient(currentColor,#0000 67%);height:320px;transition:top .42s,color .35s,opacity .3s;position:absolute;inset:28% -65% auto;transform:translateY(-50%)}.sidebar-stationery[data-ambient=students]>.sidebar-ambient{color:#a4d4b9;top:53%}.sidebar-stationery[data-ambient=more]>.sidebar-ambient{color:#c9b49c;top:78%}.sidebar-stationery[data-ambient=rest]>.sidebar-ambient{opacity:.035;top:34%}.sidebar-stationery .brand{align-items:center;gap:12px;padding:2px 5px 23px}.sidebar-stationery .brand:after{background:linear-gradient(90deg,#0000,#d2b88730,#0000)}.sidebar-stationery .brand-mark-image{background:linear-gradient(145deg,#fffdf5,#efe4ce);border:1px solid #decdaa;border-radius:14px 14px 7px;flex:0 0 48px;width:48px;height:52px;padding:3px;transition:transform .2s,box-shadow .2s;animation:.42s ease-out backwards sidebar-brand-enter;box-shadow:inset 0 1px #fff,0 4px 9px #071d2530}.sidebar-stationery .brand-mark-image img{object-fit:contain;filter:drop-shadow(0 1px 1px #775b3318);width:100%;max-width:100%;height:100%}.sidebar-stationery .brand-copy{flex:1;min-width:0}.sidebar-stationery .brand-copy strong{color:#f1e7ce;font-family:var(--font-song);letter-spacing:.16em;font-size:25px;font-weight:600;line-height:1.2;transition:color .2s;animation:.38s ease-out 70ms backwards sidebar-brand-enter}.sidebar-stationery .brand-tagline{color:#b8c7b8;letter-spacing:.04em;width:auto;margin-top:7px;font-size:10px;font-weight:400;line-height:1.9;transition:color .2s;animation:.38s ease-out .13s backwards sidebar-brand-enter}@media (hover:hover){.sidebar-stationery .brand:hover .brand-mark-image{transform:translateY(-2px)rotate(-2deg);box-shadow:inset 0 1px #fff,0 6px 12px #071d2538}.sidebar-stationery .brand:hover strong{color:#fff6e3}.sidebar-stationery .brand:hover .brand-tagline{color:#d2dbca}}@keyframes sidebar-brand-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.sidebar-stationery .sidebar-ai-entry{background:linear-gradient(125deg,#eee2bd0c,#122f2a55);border-color:#cbb58d30;transition:background-color .2s,border-color .2s;box-shadow:inset 0 1px #f2e9d009,0 3px 9px #071d2512}.sidebar-stationery .sidebar-ai-entry:is(:hover,.active){background:#12342c99;border-color:#d2b88770;transform:none;box-shadow:inset 2px 0 #c9ac77}.sidebar-stationery .sidebar-ai-entry .nav-ai-icon,.sidebar-stationery .sidebar-ai-entry.active .nav-ai-icon{color:#d2bf97;box-shadow:none;background:#d2b88712}.sidebar-stationery .nav-ai-copy strong{color:#eee6d3}.sidebar-stationery .nav-ai-copy small{color:#b3c2b5}.sidebar-stationery .sidebar-nav .sidebar-group-toggle{transition:color .2s,background-color .2s}.sidebar-stationery .sidebar-nav .sidebar-group-toggle.expanded{color:#e4d6b9;background:linear-gradient(90deg,#bc9b6312,#0000 90%)}.sidebar-stationery .sidebar-nav .sidebar-group-toggle.expanded .nav-icon{color:#c9b187}.sidebar-stationery .sidebar-group-arrow{color:#aebaa7;transition:transform .22s}.sidebar-stationery .sidebar-group-items{animation:.2s ease-out sidebar-menu-enter}@keyframes sidebar-menu-enter{0%{opacity:.3}to{opacity:1}}.sidebar-stationery .sidebar-nav .sidebar-group-items>button{color:#becdc2;transition:color .18s,background-color .18s}@media (width>=1081px){.sidebar-stationery .sidebar-nav .sidebar-group-items>button{padding-left:27px}}.sidebar-stationery .sidebar-nav .sidebar-group-items>button:hover{color:#f0e6d1;background:#cfb6860c;transform:none}.sidebar-stationery .sidebar-nav .sidebar-group-items>button.active{color:#f6ecd7;box-shadow:none;background:0 0;border-color:#0000}.sidebar-stationery .sidebar-nav .sidebar-group-items>button:is(:hover,.active) .nav-icon{color:#d2b887;transform:none}.sidebar-stationery .sidebar-nav-glider{background:linear-gradient(#0000,#bfa16a 27%,#efdbad 50%,#bfa16a 73%,#0000);border:0;border-radius:999px;width:2px;transition:transform .55s cubic-bezier(.37,1.95,.66,.56),opacity .2s,box-shadow .3s;left:0;right:auto;box-shadow:0 0 7px #d2b887aa,0 0 16px #d2b88755}.sidebar-stationery .sidebar-group-items{--sidebar-nav-step:45px}.sidebar-stationery .sidebar-group-items:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(#0000,#d2b8873d 15% 85%,#0000);width:1px;position:absolute;top:8px;bottom:8px;left:0}.sidebar-stationery .sidebar-nav-glider:before{content:"";filter:blur(7px);pointer-events:none;background:linear-gradient(90deg,#d2b88772,#0000 78%);border-radius:50%;width:54px;height:60%;position:absolute;top:20%;left:2px;transform:translateY(0)}.sidebar-stationery .sidebar-nav-glider:after{content:"";opacity:1;pointer-events:none;background:linear-gradient(90deg,#d2b8871c,#0000 76%);border-radius:0 24px 24px 0;width:126px;height:100%;position:absolute;top:0;left:2px}@media (width<=1080px){.sidebar-stationery .sidebar-group-items{--sidebar-nav-step:43px}}.sidebar-stationery button:focus-visible{outline-offset:-2px;outline:2px solid #d2b887}.sidebar-stationery .sidebar-foot{-webkit-backdrop-filter:blur(8px);background:linear-gradient(125deg,#fff4d90a,#d4e9de06);border:1px solid #c9bda32e;border-radius:9px;gap:9px;padding:12px 10px;box-shadow:inset 0 1px #fff4d908}.sidebar-stationery .sidebar-foot strong{color:#dedcc9;font-weight:600}.sidebar-stationery .sidebar-foot div>span{color:#adbdaf;font-size:9px;line-height:1.7}.sidebar-stationery .sidebar-status-dot{background:#c3a771;border-radius:50%;flex:0 0 6px;width:6px;height:6px;margin-top:5px;box-shadow:0 0 0 3px #c3a77112}.sidebar-stationery .sidebar-status-dot.is-ready{background:#83bf98;box-shadow:0 0 0 3px #83bf9814}@media (width<=1080px){.sidebar-stationery .brand{padding:0 0 20px}.sidebar-stationery .brand-mark-image{flex-basis:40px;width:40px;height:44px}.sidebar-stationery .sidebar-foot{justify-content:center;padding:12px 0}.sidebar-stationery .sidebar-status-dot{margin-top:0}}@media (width<=760px){.sidebar-stationery:before,.sidebar-stationery>.sidebar-ambient{display:none}.sidebar-stationery .sidebar-nav .sidebar-group-items>button.active{background:#12342cb8;box-shadow:inset 0 -2px #d2b887}}@media (prefers-reduced-motion:reduce){.sidebar-stationery *,.sidebar-stationery :before,.sidebar-stationery :after{transition:none!important;animation:none!important}.sidebar-stationery .brand:hover .brand-mark-image{transform:none}}.course-image-import{max-height:calc(75 * var(--vh1));gap:12px;padding:18px;display:grid;overflow:auto}.course-image-import p{font-size:12px;line-height:1.6}.course-image-item{border:1px solid #d8cdbb;border-radius:8px;padding:12px}.course-image-item header{justify-content:space-between;gap:12px;display:flex}.course-image-item fieldset{border:0;flex-wrap:wrap;gap:12px;padding:0;display:flex}.course-image-item label{align-items:center;gap:6px;display:flex}.course-image-item input,.course-image-item select{border:1px solid #d8cdbb;border-radius:4px;padding:6px}.course-image-table{width:100%;overflow:auto}.course-image-table table{width:100%;min-width:950px}.course-image-table td input{width:130px}.course-image-table td input[type=number]{width:60px}.course-image-table td input[type=checkbox]{width:auto}.class-check-page{--class-check-columns:104px repeat(7, minmax(132px, 1fr));gap:8px;padding-top:10px}.class-check-page:before{content:"CLASS LEDGER  /  WEEKLY"}.class-check-page .class-check-filter-panel{background:#fffdf7;border-color:#ddd2bf;border-radius:6px;box-shadow:0 5px 16px -12px #58452842}.class-check-page .class-check-filter-field select,.class-check-page .class-check-week-control>button{color:#36584d;background:#fffdf8;border-color:#d8cdbb;border-radius:6px}.class-check-page .class-check-week-control>button:hover{background:#f6f0e4;border-color:#bfa77d}.class-check-page .class-check-today-button{color:#705b39;background:#faf4e8;border-color:#cdbb99}.class-check-page .class-check-schedule-panel{background:#fffdf7;border-color:#d8cdbb;border-radius:6px 6px 3px;flex-direction:column;flex:auto;min-height:0;display:flex;box-shadow:0 8px 24px -18px #58452850}.class-check-page .class-check-schedule-panel>.class-check-schedule-heading{flex:none}.class-check-page .class-check-table-wrap{flex:auto;min-height:0}.class-check-page .class-check-schedule-panel:before{background:radial-gradient(circle,#bca98a 0 2px,#f5efe3 2.5px 4.5px,#0000 5px) top/10px 46px repeat-y}.class-check-page .class-check-schedule-panel:after{opacity:.48;background:#d9b8aa}.class-check-page .class-check-schedule-heading{background:linear-gradient(90deg,#f8f1e5,#fffdf7 52%);border-bottom-color:#ded4c4;min-height:42px;padding-top:6px;padding-bottom:6px}.class-check-page .class-check-schedule-heading strong{color:#304f45;font:600 17px/1.2 var(--font-song);letter-spacing:.04em}.class-check-page .class-check-schedule-heading>div:first-child>span{color:#8b806e}.class-check-page .class-check-notice{color:#81673c;background:#fbf2df;border-color:#e1d1af}.class-check-page .class-check-notice i{background:#b78b4d}.class-check-page .class-check-result{color:#6e7d72;font-weight:650}.class-check-page .class-check-table-wrap{scrollbar-color:#c7b797 #f3eee4;background-color:#fffdf7;background-image:repeating-linear-gradient(#0000 0 31px,#b59c7410 31px 32px);grid-template-rows:58px repeat(5,minmax(94px,1fr));overflow:auto}.class-check-page .class-check-table{grid-template-columns:var(--class-check-columns);min-width:1028px}.class-check-page .class-check-table-head{z-index:8;color:#455e54;background:#eee5d6;border-bottom:1px solid #cfc0a7;position:sticky;top:0;box-shadow:0 3px 8px -7px #58452870}.class-check-page .class-check-table-head>div,.class-check-page .class-check-period-title{border-left:1px solid #d9cebc;position:relative}.class-check-page .class-check-table-head>div:first-of-type{border-left:0}.class-check-page .class-check-table-head b{letter-spacing:.05em;font-size:12px}.class-check-page .class-check-table-head small{color:#867b69;font-size:9px}.class-check-page .class-check-table-head em{color:#fffaf0;background:#4f7c6c;border-radius:3px;padding:2px 4px;font-size:7px;font-style:normal;font-weight:700;position:absolute;top:6px;right:7px}.class-check-page .class-check-table-head>div.is-today{color:#244f43;background:#dce9df;box-shadow:inset 0 3px #739786}.class-check-page .class-check-table-head>div.is-today small{color:#547365}.class-check-page .class-check-table-head>div.is-weekend:not(.is-today){background:#f2e9dc}.class-check-page .class-check-period-title{z-index:10;color:#756343;letter-spacing:.05em;background:#e7dcc9;font-weight:700;position:sticky;left:0}.class-check-page .class-check-table-row{background:#fffdf7b8;border-bottom:1px solid #e4dccf;min-height:94px}.class-check-page .class-check-table-row:last-child{border-bottom:0}.class-check-page .class-check-period{z-index:5;color:#445f54;background-color:#f4eee3;background-image:repeating-linear-gradient(#0000 0 27px,#a88c6212 27px 28px);border-right:1px solid #d8cebd;position:sticky;left:0;box-shadow:3px 0 8px -8px #58452880}.class-check-page .class-check-period strong{letter-spacing:.03em;font-size:11px}.class-check-page .class-check-period small{color:#8a7e6c;font-size:8px}.class-check-page .class-check-slot{background-color:#fffdf78f;background-image:repeating-linear-gradient(#0000 0 27px,#a88c620b 27px 28px);border-left:1px solid #e4dccf;padding:7px;position:relative}.class-check-page .class-check-slot.is-today{background-color:#edf5efcc;box-shadow:inset 2px 0 #8eaa9c26,inset -2px 0 #8eaa9c18}.class-check-page .class-check-slot.is-weekend:not(.is-today){background-color:#fbf7efb5}.class-check-page .class-check-slot-empty{color:#c8bdac;font:15px/1 Georgia,serif}.class-check-page .class-check-course{--course-accent:#548e78;--course-ink:#315f51;isolation:isolate;border:1px solid color-mix(in srgb, var(--course-accent) 28%, #d8d0c3);border-left:3px solid var(--course-accent);min-height:78px;color:var(--course-ink);text-align:left;width:100%;font:inherit;cursor:pointer;background:linear-gradient(115deg,#ffffff52,#0000 46%),#edf5ef;border-radius:5px 5px 9px 4px;gap:5px;padding:9px 10px 8px;transition:border-color .16s,box-shadow .16s;position:relative;overflow:hidden;box-shadow:1px 2px 5px -4px #58452870}.class-check-page .class-check-course:before{content:"";pointer-events:none;background:#d5b97838;width:30px;height:7px;position:absolute;top:-2px;left:52%;transform:translate(-50%)rotate(-1.5deg)}.class-check-page .class-check-course:after{content:"";background:var(--paper-fold);pointer-events:none;width:13px;height:13px;position:absolute;bottom:0;right:0}.class-check-page .class-check-course:hover{border-color:var(--course-accent);box-shadow:1px 4px 9px -6px #58452880}.class-check-page .class-check-course-class{max-width:100%;color:var(--course-ink);background:color-mix(in srgb, var(--course-accent) 12%, transparent);border-radius:3px;justify-self:start;padding:2px 5px;font-size:8px;font-weight:700}.class-check-page .class-check-course strong{color:#29483f;font-size:11px;line-height:1.35}.class-check-page .class-check-course-meta{color:#68776f;flex-wrap:wrap;align-items:center;gap:2px 8px;margin-top:1px;font-size:8px;display:flex}.class-check-page .class-check-course-meta span{text-overflow:ellipsis;white-space:nowrap;display:inline;overflow:hidden}.class-check-page .class-check-course-meta .class-check-location{max-width:100%;color:var(--course-accent);align-items:center;gap:3px;font-size:10.5px;font-weight:650;display:inline-flex}.class-check-page .class-check-course-meta .class-check-location>svg{flex:none}.class-check-page .class-check-course-meta .class-check-course-teacher{color:#68776f}.class-check-page .class-check-course-blue{--course-accent:#698da7;--course-ink:#526f84;background-color:#edf3f6}.class-check-page .class-check-course-amber{--course-accent:#b58a43;--course-ink:#80622d;background-color:#faf2df}.class-check-page .class-check-course-purple{--course-accent:#907ba2;--course-ink:#6f5d7e;background-color:#f3eff4}.class-check-page .class-check-slot{padding:5px}.class-check-page .class-check-slot .class-check-course{gap:6px;height:100%;padding:10px 12px}.class-check-page .class-check-slot .class-check-course-class{padding:3px 6px;font-size:9px}.class-check-page .class-check-slot .class-check-course strong{font-size:13px}.class-check-page .class-check-slot .class-check-course-meta{gap:3px 10px;font-size:9px}.class-check-page .class-check-slot .class-check-location{font-size:11.5px}.class-check-page .class-check-slot .paper-pile.is-stack{flex-direction:column;height:100%;display:flex}.class-check-page .class-check-slot .paper-pile.is-stack>.class-check-course{flex:auto;height:auto}.class-check-page .class-check-pile-count{font-size:9.5px;top:4px;right:4px}.class-check-page .course-schedule-feedback{color:#9c4f41;background:#fff4f0;border:1px solid #e6c3b9;border-radius:6px;margin:-5px 0 0;padding:9px 12px;font-size:10px}.class-check-page .class-check-filter-panel{grid-template-columns:minmax(150px,.75fr) minmax(200px,1.3fr) minmax(150px,.75fr) minmax(128px,.65fr) auto auto;min-height:48px;padding:6px 12px;display:grid}.class-check-page .class-check-filter-panel .class-check-notice{grid-column:1/-1}.class-check-page .class-check-import-button{white-space:nowrap;grid-column:-2/-1;justify-self:end}.class-check-page .class-check-schedule-foot{color:#7d7361;background:linear-gradient(#faf6ec,#f5f0e3);border-top:1px solid #e2d9c6;flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:8px 26px;min-height:64px;padding:9px 18px;font-size:11px;display:flex}.class-check-page .class-check-schedule-foot strong{color:#426252;font:700 12px/1 Georgia,serif}.class-check-page .class-check-schedule-foot em{color:#6e7d72;font-style:normal;font-weight:650}.class-check-page .class-check-foot-week{align-items:center;gap:10px;margin-left:auto;display:flex}.class-check-page .class-check-schedule-foot .class-check-week-control{margin-left:0}.class-check-page .class-check-slot-add{color:#cfc5b4;cursor:pointer;background:0 0;border:0;place-items:center;width:100%;height:100%;font:15px/1 sans-serif;transition:color .15s;display:grid}.class-check-page .class-check-slot:hover .class-check-slot-add{color:#9b8f7c}.class-check-page .class-check-slot-add:hover{color:var(--paper-moss)}.class-check-page .class-check-slot-add-tile{color:#8a7f6c;cursor:pointer;text-align:center;background:0 0;border:1px dashed #c9bda6;border-radius:5px;place-items:center;gap:5px;min-height:92px;padding:12px;display:grid}.class-check-page .class-check-slot-add-tile>span{color:var(--paper-moss);font-size:20px;line-height:1}.class-check-page .class-check-slot-add-tile strong{font-size:12px}.class-check-page .class-check-slot-add-tile small{color:#9a8f7c;font-size:10px}.class-check-page .class-check-slot-add-tile:hover{border-color:var(--paper-moss);color:#3d6b52;background:#f6f2e6}.class-check-page .class-check-filter-field>span{white-space:nowrap;flex-shrink:0}.class-check-page .class-check-filter-field{min-width:0}.class-check-page .class-check-filter-field select{width:100%}.class-check-page .class-check-week-control button:disabled{opacity:.35;cursor:not-allowed}.class-check-page .class-check-course-stack{align-self:stretch;gap:6px;width:100%;display:grid}.class-check-page .class-check-pile{width:100%}.class-check-page .paper-pile.is-stack:before{inset:-4px -3px 4px 3px}.class-check-page .paper-pile.is-stack:after{inset:-7px 3px 7px -3px}.class-check-page .class-check-pile-count{z-index:2;color:#6b5b3e;white-space:nowrap;background:#fbf3e2;border:1px solid #cdbb99;border-radius:999px;padding:1px 6px;font-size:8px;font-style:normal;font-weight:800;position:absolute;top:3px;right:3px}.v2-dialog.class-check-slot-dialog{width:min(880px,100vw - 32px);height:min(calc(78 * var(--vh1)),720px);max-height:calc(88 * var(--vh1));flex-direction:column;padding-bottom:18px;display:flex;overflow:hidden}.v2-dialog.class-check-slot-dialog>header{flex:none}.class-check-slot-scroll{flex:auto;min-height:0;padding:16px 22px 0;overflow-y:auto}.class-check-slot-grid{grid-template-columns:repeat(auto-fill,minmax(248px,1fr));align-content:start;gap:16px;display:grid}.class-check-page .class-check-slot-grid .class-check-course{gap:8px;min-height:112px;padding:14px 16px 12px}.class-check-page .class-check-slot-grid .class-check-course-class{padding:3px 7px;font-size:10.5px}.class-check-page .class-check-slot-grid .class-check-course strong{font-size:16px}.class-check-page .class-check-slot-grid .class-check-course-meta{gap:4px 12px;margin-top:2px;font-size:11px}.class-check-page .class-check-slot-grid .class-check-location{font-size:12px}.class-check-page .class-check-slot-grid .class-check-location>svg{width:13px;height:13px}.class-check-page .course-schedule-empty{text-align:center;background:#fffdf7;justify-items:center;gap:9px;min-height:360px;padding:70px 24px;display:grid}.class-check-page .course-schedule-empty>span{color:#9b7950;border:1px solid #cdbb99;border-radius:50%;place-items:center;width:54px;height:54px;font:700 18px Georgia,serif;display:grid}.class-check-page .course-schedule-empty h2{color:#304f45;font:600 24px var(--font-song);margin:8px 0 0}.class-check-page .course-schedule-empty p{color:#7b7468;max-width:580px;margin:0 0 8px;line-height:1.7}.class-check-page .course-schedule-inline-empty{color:#62746c;place-items:center;gap:6px;min-height:260px;display:grid}.class-check-page .course-schedule-inline-empty p{color:#8a8174;margin:0}.course-config-form{gap:18px;padding:18px 22px 22px;display:grid}.course-config-basics{grid-template-columns:1.4fr 1fr .6fr;gap:12px;display:grid}.course-config-form label{gap:5px;min-width:0;display:grid}.course-config-form label>span{color:#6e7c75;font-size:9px;font-weight:750}.course-config-form input{color:#334d44;width:100%;font:inherit;background:#fff;border:1px solid #d6ddd8;border-radius:6px;outline:0;padding:9px 10px;font-size:11px}.course-config-form input:focus{border-color:#6f998a;box-shadow:0 0 0 2px #6f998a1f}.course-period-editor{background:#fffdf8;border:1px solid #ddd4c6;border-radius:8px;overflow:hidden}.course-period-editor-head{background:#f6efe4;border-bottom:1px solid #e4dccf;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.course-period-editor-head>div{gap:3px;display:grid}.course-period-editor-head strong{color:#38584e;font-size:12px}.course-period-editor-head small{color:#8a7e6c;font-size:8px}.course-period-list{max-height:340px;display:grid;overflow:auto}.course-period-item{border-top:1px solid #eee7dc;grid-template-columns:24px minmax(80px,.7fr) minmax(130px,1.3fr) minmax(95px,.75fr) minmax(95px,.75fr) 28px;align-items:end;gap:8px;padding:9px 12px;display:grid}.course-period-item:first-child{border-top:0}.course-period-item>b{color:#a08d70;text-align:center;align-self:center;font:700 13px Georgia,serif}.course-period-item>button{color:#a96a5e;background:0 0;border:0;align-self:center;font-size:17px}.course-period-item>button:disabled{color:#c9c5bd}.course-dialog-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.course-dialog-actions.module-form-footer{z-index:2;border-top:1px solid var(--line);background:#fffdf9f7;justify-content:space-between;align-items:center;margin:0 -20px -18px;padding:14px 20px 18px;position:sticky;bottom:0;box-shadow:0 -8px 18px #2d3c360d}.course-import-summary{grid-template-columns:repeat(3,110px) minmax(180px,1fr);gap:8px;padding:16px 20px 10px;display:grid}.course-import-summary>div{background:#f6faf7;border:1px solid #dce5df;border-radius:7px;justify-content:space-between;align-items:baseline;padding:9px 11px;display:flex}.course-import-summary>div span{color:#718078;font-size:9px}.course-import-summary>div strong{color:#315f51;font:700 18px Georgia,serif}.course-import-summary>div.has-error{background:#fff3ef;border-color:#e7c4ba}.course-import-summary>div.has-error strong{color:#ae5143}.course-import-summary>p{color:#756c60;text-overflow:ellipsis;white-space:nowrap;align-self:center;margin:0;font-size:10px;overflow:hidden}.course-import-note{color:#7b7468;margin:0 20px 10px;font-size:9px}.course-import-table-wrap{border-block:1px solid #e1e6e2;max-height:420px;overflow:auto}.course-import-table{border-collapse:collapse;width:100%;min-width:980px;font-size:9px}.course-import-table th{z-index:1;color:#68766f;text-align:left;white-space:nowrap;background:#eef3ef;padding:9px 8px;position:sticky;top:0}.course-import-table td{color:#586861;vertical-align:top;border-top:1px solid #e8ece9;max-width:220px;padding:9px 8px}.course-import-table td:nth-child(7){white-space:normal}.course-import-table td>span{color:#287157;white-space:nowrap;background:#e3f1ea;border-radius:999px;padding:3px 6px;font-weight:750;display:inline-block}.course-import-table tr.is-error td{background:#fff8f5}.course-import-table tr.is-error td>span{color:#a74e42;background:#f8ddd6}.course-import-table tr.is-skip td>span{color:#8b6b36;background:#f6ead3}.course-import-table td:last-child button{color:#9d655a;background:0 0;border:0;font-size:9px}.course-import-dialog .course-dialog-actions{padding:14px 20px 18px}.course-detail-sheet{gap:14px;padding:20px 24px 24px;display:grid}.course-detail-sheet>span{color:#9a8059;font-size:9px;font-weight:750}.course-detail-sheet>h3{color:#2f5046;font:600 22px var(--font-song);margin:0}.course-detail-sheet dl{border-top:1px solid #e5ded3;margin:0}.course-detail-sheet dl>div{border-bottom:1px solid #ece6dc;grid-template-columns:86px 1fr;gap:12px;padding:10px 2px;display:grid}.course-detail-sheet dt{color:#8a8175;font-size:9px}.course-detail-sheet dd{color:#435a52;margin:0;font-size:10px;font-weight:650}.course-detail-sheet>section{gap:9px;display:grid}.course-detail-sheet>section>header{color:#405b52;justify-content:space-between;display:flex}.course-detail-sheet>section>header span{color:#89958f;font-size:9px}.course-detail-sheet>section>p{color:#7e8883;margin:0;font-size:9px;line-height:1.6}.course-detail-students{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:210px;display:grid;overflow:auto}.course-detail-students button{color:#35584d;text-align:left;background:#f7fbf8;border:1px solid #dce6e0;border-radius:6px;gap:2px;padding:8px 9px;display:grid}.course-detail-students button small{color:#89958f;font-size:8px}@media (width<=1000px){.class-check-page{--class-check-columns:96px repeat(7, minmax(126px, 1fr))}.class-check-page .class-check-table{min-width:978px}.class-check-page .class-check-filter-panel{grid-template-columns:1fr 1.4fr 1fr}}@media (width<=720px){.class-check-page .class-check-table-wrap{grid-template-rows:54px repeat(5,90px)}.class-check-page .class-check-table-head em{margin-top:2px;padding:1px 4px;position:static}.class-check-page .class-check-course{min-height:74px}.class-check-page .class-check-filter-panel,.course-config-basics,.course-period-item{grid-template-columns:1fr}.course-period-item>b{display:none}.course-period-item>button{justify-self:end}.course-import-summary{grid-template-columns:repeat(3,1fr)}.course-import-summary>p{grid-column:1/-1}.course-detail-students{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.class-check-page .class-check-course{transition:none}}.leave-page .leave-table-wrap{background:#fffdf7;border-color:#d8cdbb;padding:0;overflow:hidden}.leave-page .leave-table-toolbar{box-shadow:none;background:#fffaf0;border:0;border-bottom:1px dashed #d9ccb8;border-radius:0;margin:0;padding:12px 14px 0}.leave-page .leave-table-toolbar.selection-mode{padding:12px 14px}.leave-page .leave-page-actions,.leave-page .leave-selection-actions,.leave-page .leave-selection-toolbar,.leave-page .leave-selection-count{align-items:center;display:flex}.leave-page .leave-page-actions,.leave-page .leave-selection-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}.leave-page .leave-page-actions .primary-button,.leave-page .leave-page-actions .secondary-button,.leave-page .leave-selection-actions .secondary-button,.leave-page .leave-selection-actions .danger-button{min-height:38px;padding:9px 12px}.leave-page .leave-selection-toolbar{justify-content:space-between;gap:16px}.leave-page .leave-selection-count{color:#3f5f54;gap:8px;font-size:11px}.leave-page .leave-selection-count>span{color:#fff;background:#4f8672;border-radius:50%;place-items:center;width:23px;height:23px;display:grid}.leave-page .leave-clear-selection{color:#6c7b73;cursor:pointer;background:0 0;border:0;padding:7px 2px;font-size:10px;font-weight:750}.leave-page .leave-clear-selection span{vertical-align:-1px;margin-right:3px;font-size:16px}.leave-page .leave-table{table-layout:fixed;border-collapse:collapse;color:#465a51;width:100%;min-width:0}.leave-page .leave-table-caption{caption-side:top;color:#88694d;font:14px var(--font-song);letter-spacing:.2em;text-align:left;background:#fffaf0;border-bottom:1px dashed #d9ccb8;padding:13px 18px 11px;position:sticky;left:0}.leave-page .leave-table th{z-index:2;color:#665d4f;text-align:center;white-space:nowrap;background:#f1e8d9;border-bottom:1px solid #d6c7b0;height:48px;padding:11px 14px;font-size:12px;font-weight:800;line-height:1.25;position:sticky;top:0}.leave-page .leave-table th:first-child{width:4%}.leave-page .leave-table th:nth-child(2){width:10%}.leave-page .leave-table th:nth-child(3){width:12%}.leave-page .leave-table th:nth-child(4){width:15%}.leave-page .leave-table th:nth-child(5){width:8%}.leave-page .leave-table th:nth-child(6){width:20%}.leave-page .leave-table th:nth-child(7){width:7%}.leave-page .leave-table th:nth-child(8){width:11%}.leave-page .leave-table th:nth-child(9){width:13%}.leave-page .leave-select-head,.leave-page .leave-select-cell{width:42px;text-align:center!important;padding-left:5px!important;padding-right:5px!important}.leave-page .leave-checkbox-hit-area{cursor:pointer;border-radius:6px;place-items:center;width:28px;height:28px;display:inline-grid}.leave-page .leave-checkbox-hit-area:hover{background:#4f86721a}.leave-page .leave-checkbox-hit-area input{accent-color:#4f8672;cursor:pointer;width:15px;height:15px}.leave-page .leave-record-row{cursor:pointer;background:#fffdf7;transition:background-color .16s,box-shadow .16s}.leave-page .leave-record-row:nth-child(2n){background:#fdf9f1}.leave-page .leave-record-row:hover,.leave-page .leave-record-row.expanded{background:#faf1df}.leave-page .leave-record-row td{color:#53645b;text-align:center;vertical-align:middle;border-bottom:1px solid #eee6d9;height:66px;padding:11px 14px;font-size:12px;line-height:1.4;overflow:hidden}.leave-page .leave-record-row td>strong{color:#344f45;white-space:nowrap;font-size:14px}.leave-page .leave-student-id{color:#687b75;letter-spacing:.02em;white-space:nowrap;font-size:12px}.leave-page .leave-class-name{color:#466c60;text-overflow:ellipsis;white-space:nowrap;margin-inline:auto;font-size:12px;line-height:1.4;display:block;overflow:hidden}.leave-page .leave-type{color:#4d6d60;white-space:nowrap;background:#eef5ee;border:1px solid #dce8df;border-radius:5px;padding:5px 8px;font-size:11px;font-weight:800;display:inline-flex}.leave-page .leave-record-row .leave-type,.leave-page .leave-record-row .leave-days,.leave-page .leave-record-row .leave-status{margin-inline:auto}.leave-page .leave-record-row time{color:#5c6e64;white-space:nowrap;font-size:11px;display:block}.leave-page .leave-date-range{justify-items:center;gap:5px;display:grid}.leave-page .leave-date-range time{justify-content:center;align-items:center;gap:6px;display:flex}.leave-page .leave-date-range time i{color:#4b776d;background:#e8f1ed;border-radius:5px;flex:none;place-items:center;width:16px;height:16px;font-size:8px;font-style:normal;font-weight:900;display:inline-grid}.leave-page .leave-date-range time+time i{color:#87704a;background:#f5eddf}.leave-page .leave-days{color:#35564b;white-space:nowrap;align-items:baseline;gap:3px;font:700 18px Georgia,serif;display:inline-flex}.leave-page .leave-days small{color:#77847c;font:800 10px PingFang SC,sans-serif}.leave-page .leave-cell-ellipsis{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.leave-page .leave-proof{color:#9a8b78;white-space:nowrap;background:#f2ede4;border:1px solid #e2d8c8;border-radius:5px;align-items:center;padding:4px 7px;font-size:9px;font-weight:750;display:inline-flex}.leave-page .leave-proof.has-proof{color:#4f7662;background:#e9f2e8;border-color:#d3e3d8}.leave-page .leave-status{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:6px 8px;font-size:11px;font-weight:800;display:inline-flex}.leave-page .leave-status i{color:currentColor;background:#ffffffa6;border-radius:50%;place-items:center;width:16px;height:16px;font-size:11px;font-style:normal;display:inline-grid}.leave-page .leave-status>b{font-size:11px;font-weight:850}.leave-page .leave-status>small{opacity:.72;white-space:nowrap;border-left:1px solid;align-items:center;padding-left:6px;font-weight:700;color:currentColor!important;margin:0 0 0 1px!important;font-size:9px!important;display:inline-flex!important}.leave-page .leave-status.active{color:#966a24;background:#fbf0dc}.leave-page .leave-status.overdue{color:#b14f40;background:#fbe7e2}.leave-page .leave-status.closed{color:#28765c;background:#e6f2eb}.leave-page .leave-row-actions{flex-wrap:nowrap;justify-content:center;align-items:center;gap:6px;display:flex}.leave-page .leave-row-actions button{color:#53675b;min-width:0;min-height:26px;font:inherit;white-space:nowrap;cursor:pointer;background:#fffdf7;border:1px solid #d5c6af;border-radius:4px;padding:4px 8px;font-size:10px;font-weight:800;line-height:1;transition:background-color .14s,border-color .14s,color .14s}.leave-page .leave-row-actions button:hover{background:#f5eddf;border-color:#bdac91}.leave-page .leave-row-actions .leave-action-return{color:#8d682d;background:#fff6e3;border-color:#e2c991}.leave-page .leave-row-actions .leave-action-edit{color:#5e7068}.leave-page .leave-row-actions .leave-action-delete{color:#9c5d4f;border-color:#e5c9c0}.leave-page .leave-row-actions .leave-action-delete:hover{color:#8a4638;background:#fbeeea;border-color:#d8ab9d}.leave-page a.leave-proof{text-decoration:none}.leave-page .leave-proof.has-proof{background:var(--paperclip-icon) 5px 50% / 8px 18px no-repeat, #e9f2e8;padding-left:19px}.leave-page a.leave-proof:hover{background:#dfeee2;border-color:#8db8a0}.leave-page a.leave-proof.has-proof:hover{background:var(--paperclip-icon) 5px 50% / 8px 18px no-repeat, #dfeee2;border-color:#8db8a0}.leave-page .leave-detail-file{color:#4f7662;text-underline-offset:2px;-webkit-text-decoration:underline #c4d9c9;text-decoration:underline #c4d9c9}.leave-editor-datetime{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:7px;display:grid}.leave-editor-datetime span{color:#8a7964;font-size:12px;font-weight:800}.leave-days-auto{color:#8a7964;background:#fffdf7;border:1px dashed #c4b79d;border-radius:8px;padding:11px 12px;font-size:12px;font-weight:800}.leave-proof-upload{gap:7px;min-width:0;display:grid}.leave-proof-upload>label{min-width:0}.leave-proof-upload input[type=file]{color:#53645b;background:#fffdf7;padding:8px;font-size:11px}.leave-proof-upload small{color:#8a7964;font-size:10px;font-weight:500}.leave-proof-file-picked{color:#4f7662;background:#edf6ee;border:1px solid #d5e3d8;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:7px 8px;font-size:10px;display:flex}.leave-proof-file-picked span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.leave-proof-file-picked button{color:#9c5d4f;cursor:pointer;background:0 0;border:0;flex:none;padding:2px 0;font-size:10px}.leave-page .leave-detail-row td{background:repeating-linear-gradient(#fffaf0f5 0 27px,#e1d6c373 28px,#fffaf0f5 29px);border-bottom:1px solid #dfcfb8;padding:0!important}.leave-page .leave-detail-content{text-align:left;border-top:1px dashed #d8c6a9;grid-template-columns:minmax(0,1.7fr) minmax(180px,.8fr) minmax(0,1.2fr);gap:0;padding:0 18px;display:grid}.leave-page .leave-detail-content>div{background:0 0;border:0;border-right:1px dashed #c4ae8c99;border-radius:0;align-content:center;gap:6px;min-width:0;min-height:76px;padding:13px 18px;display:grid}.leave-page .leave-detail-content>div:last-child{border-right:0}.leave-page .leave-detail-content span{color:#9a7a52;letter-spacing:.06em;font-size:10px;font-weight:850}.leave-page .leave-detail-content strong{color:#4f6158;overflow-wrap:anywhere;text-align:left;font-size:12px;font-weight:650;line-height:1.55;overflow:hidden}.leave-page .leave-folder-tabs{z-index:1;scrollbar-width:none;background:0 0;border:0;border-radius:0;flex-wrap:nowrap;align-items:flex-end;gap:7px;min-width:0;margin:0 0 -1px;padding:8px 14px 0 22px;display:flex;position:relative;overflow-x:auto}.leave-page .leave-folder-tabs::-webkit-scrollbar{display:none}.leave-page .leave-folder-tabs>button{box-sizing:border-box;color:#6d6350;min-width:152px;max-width:none;height:46px;font:700 13px/1 var(--font-song);letter-spacing:.05em;text-align:left;white-space:nowrap;cursor:pointer;clip-path:polygon(0 100%,0 36%,13px 36%,26px 0,calc(100% - 12px) 0,100% 12px,100% 100%);background:linear-gradient(#f0e7d3,#e6dbc4);border:0;border-radius:0;flex:none;align-items:center;gap:10px;padding:4px 20px 0 34px;transition:background .15s;display:inline-flex}.leave-page .leave-folder-tabs>button:hover{color:#6d6350;background:linear-gradient(#f5edda,#ecdfc8)}.leave-page .leave-folder-tabs>button b{color:#7d6f55;text-align:center;background:#faf3e2;border-radius:999px;min-width:0;margin:0;padding:3px 8px;font:700 10px/1 Georgia,serif}.leave-page .leave-folder-tabs>button:before,.leave-page .leave-folder-tabs>button:after{animation:none;display:none}.leave-page .leave-folder-tabs>button.active{color:#fff8e8;box-shadow:none;background:linear-gradient(#40695a,#33544a);animation:none}.leave-page .leave-folder-tabs>button.active b{color:#33544a;background:#eaf2e6}.leave-page .leave-folder-tabs>button:focus-visible{outline-offset:-4px;outline:2px solid #9a7945}@media (width<=820px){.leave-page .leave-selection-toolbar{flex-direction:column;align-items:stretch;gap:10px}.leave-page .leave-selection-actions{justify-content:flex-start}.leave-page .leave-table-wrap{overflow-x:auto}.leave-page .leave-table{min-width:980px}.leave-page .leave-detail-content{grid-template-columns:1fr;padding:0 14px}.leave-page .leave-detail-content>div{border-bottom:1px dashed #c4ae8c8c;border-right:0;min-height:58px}.leave-page .leave-detail-content>div:last-child{border-bottom:0}}.page-content.office-page.office-grades{gap:0}.office-grades .page-shell-body{min-height:0}.grades-page .grades-status-nav{align-items:flex-end;gap:4px;min-height:0;margin-bottom:0;padding:14px 12px 0;display:flex}.grades-page .grades-status-nav>button{appearance:none;color:var(--paper-muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-bottom:0;border-radius:10px 14px 0 0;padding:12px 20px 14px;font-size:13px}.grades-page .grades-status-nav>button b{opacity:.72;font-variant-numeric:tabular-nums;margin-left:8px;font:600 14px Georgia,serif}.grades-page .grades-status-nav>button:not(.active):hover{color:var(--paper-ink);background:#ab825017}.grades-page .grades-status-nav>button.active{border-color:var(--paper-line);background:var(--paper-sheet);color:var(--paper-moss);box-shadow:inset 0 3px 0 var(--paper-clay);z-index:1;margin-bottom:-1px;font-weight:600;position:relative}.grades-page .grades-status-nav>button.active b{opacity:1}.grades-page .grades-status-nav>button:nth-child(2).active{box-shadow:inset 0 3px 0 var(--paper-moss)}.grades-page .grades-status-nav>button:nth-child(3).active{box-shadow:inset 0 3px 0 var(--paper-clay)}.grades-page .grades-status-nav>button:nth-child(4).active{box-shadow:inset 0 3px 0 var(--amber)}.grades-page .grades-status-nav>.grades-nav-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;margin-left:auto;display:inline-flex}.grades-page .grades-selection-nav{border:1px solid var(--paper-line);background:var(--paper-sheet-warm);box-shadow:var(--paper-shadow);border-radius:4px 10px 10px 4px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:12px 18px;display:flex}.grades-page .grades-selection-nav strong{font:600 14px/1.4 var(--font-song);letter-spacing:.06em;color:var(--paper-moss);align-items:center;gap:8px;display:inline-flex}.grades-page .grades-selection-actions{align-items:center;gap:14px;display:inline-flex}.grades-page .grades-register{border:1px solid var(--paper-line);border-left:6px solid var(--paper-clay);background:var(--paper-sheet);min-height:0;box-shadow:3px 4px 0 var(--paper-line-soft), var(--paper-shadow);border-radius:4px 10px 10px 4px;flex-direction:column;flex:auto;display:flex;position:relative;overflow:visible}.grades-page .grades-register:before{content:"";pointer-events:none;border-left:2px dashed #a86e5e52;position:absolute;top:16px;bottom:16px;left:9px}.grades-page .grades-staple{background:linear-gradient(180deg, #cfae74, var(--paper-brass));z-index:2;border-radius:1px;width:15px;height:5px;position:absolute;left:-5px;transform:rotate(-9deg);box-shadow:0 1px 1px #45361f59}.grades-page .grades-register-head{background:var(--paper-sheet);padding:16px 24px 14px}.grades-page .grades-register-tag{border:1px solid var(--paper-line);color:var(--paper-muted);font:11px/1.4 var(--font-song);letter-spacing:.22em;white-space:nowrap;border-radius:2px;margin-left:auto;padding:4px 10px}.grades-page .grades-head-search{flex:auto;max-width:440px;margin:0 24px}.grades-page .grades-search-box{width:100%}.grades-page .grades-filter{font:12px var(--font-song);letter-spacing:.06em;color:var(--paper-muted);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.grades-page .grades-filter select{border:1px solid var(--paper-line);background:var(--paper-sheet-warm);border-radius:6px;max-width:180px;padding:6px 8px;font-size:12px}.grades-page .grades-table-scroll{flex:auto;min-height:0;overflow:auto}.grades-page .grades-table{border-collapse:collapse;width:100%}.grades-page .grades-table th{text-align:center;color:var(--paper-muted);background:var(--paper-sheet-warm);border-bottom:1px solid var(--paper-line);white-space:nowrap;z-index:1;padding:10px 12px;font-size:11px;font-weight:600;position:sticky;top:0}.grades-page .grades-table td{border-bottom:1px solid var(--paper-line-soft);color:var(--paper-ink);vertical-align:top;text-align:center;padding:11px 12px;font-size:12.5px}.grades-page .grades-table tbody tr:hover{background:var(--paper-sheet-warm)}.grades-page .grades-student-row{cursor:pointer}.grades-page .grades-student-row.is-open td{background:var(--paper-sheet-warm);border-bottom-color:#0000}.grades-page .grades-student-cell{min-width:96px}.grades-page .grades-student-cell .grades-student-link{display:inline-block}.grades-page .grades-student-no{color:var(--paper-muted);font-variant-numeric:tabular-nums;margin-top:2px;font-size:11px;display:block}.grades-page .grades-student-link{appearance:none;font:inherit;color:var(--paper-moss);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.grades-page .grades-student-link:hover{text-decoration:underline}.grades-page .grades-student-missing{color:var(--paper-muted)}.grades-page .grades-class-name{text-overflow:ellipsis;white-space:nowrap;max-width:150px;color:var(--paper-muted);display:inline-block;overflow:hidden}.grades-page .grades-avg{font-variant-numeric:tabular-nums;font:700 15px/1.3 Georgia,serif}.grades-page .grades-count{font-variant-numeric:tabular-nums;white-space:nowrap;font:700 13px/1.4 Georgia,serif}.grades-page .grades-count.is-fail{color:var(--paper-clay)}.grades-page .grades-count.is-pending{color:var(--amber)}.grades-page .grades-count-none{color:var(--paper-muted);opacity:.55}.grades-page .grades-records-note{color:var(--paper-muted);white-space:nowrap;font-size:11.5px}.grades-page .grades-expand-cell{text-align:center;width:56px}.grades-page .grades-expand-button{appearance:none;border:1px solid var(--paper-line);background:var(--paper-sheet);color:var(--paper-muted);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.grades-page .grades-expand-button:hover{border-color:var(--paper-moss);color:var(--paper-moss)}.grades-page .grades-expand-button svg{transition:transform .15s;display:block}.grades-page .grades-expand-button.is-open{color:var(--paper-moss);border-color:var(--paper-moss)}.grades-page .grades-expand-button.is-open svg{transform:rotate(180deg)}.grades-page .grades-detail-row td{background:var(--paper-sheet-warm);padding:0 20px 16px 62px}.grades-page .grades-detail{flex-direction:column;gap:12px;display:flex}.grades-page .grades-detail-term{border:1px dashed var(--paper-line);background:var(--paper-sheet);border-radius:6px;padding:12px 14px 8px}.grades-page .grades-detail-term-name{font:600 13px/1.4 var(--font-song);letter-spacing:.08em;color:var(--paper-moss);align-items:baseline;gap:8px;margin-bottom:6px;display:inline-flex}.grades-page .grades-detail-term-name i{color:var(--paper-muted);font:400 11px Georgia,serif}.grades-page .grades-detail-table{border-collapse:collapse;width:100%}.grades-page .grades-detail-table th{border-bottom:1px solid var(--paper-line-soft);background:0 0;padding:4px 10px;font-size:10.5px;position:static}.grades-page .grades-detail-table td{border-bottom:1px dashed var(--paper-line-soft);background:0 0;padding:7px 10px;font-size:12px}.grades-page .grades-detail-table th:first-child,.grades-page .grades-detail-table td:first-child{text-align:left}.grades-page .grades-detail-table tr:last-child td{border-bottom:0}.grades-page .grades-detail-table tr.grades-fail-row{background:#d9635214}.grades-page .grades-detail-table tr.grades-fail-row:hover{background:#d963521a}.grades-page .grades-course{font-weight:600;display:block}.grades-page .grades-course-meta{color:var(--paper-muted);margin-top:2px;font-size:11px;display:block}.grades-page .grades-score{font-variant-numeric:tabular-nums;font:700 15px/1.3 Georgia,serif}.grades-page .grades-score.is-fail{color:var(--paper-clay)}.grades-page .grades-stamp{font:600 12px/1.6 var(--font-song);letter-spacing:.14em;white-space:nowrap;border:1.5px solid;border-radius:4px;align-items:center;gap:5px;padding:2px 10px;display:inline-flex;transform:rotate(-2deg)}.grades-page .grades-stamp i{font-style:normal;font-weight:700}.grades-page .grades-stamp.is-pass{color:var(--paper-moss)}.grades-page .grades-stamp.is-fail{color:var(--paper-clay)}.grades-page .grades-stamp.is-pending{color:var(--amber)}.grades-page .grades-row-actions{white-space:nowrap;gap:6px;display:inline-flex}.grades-page .grades-action-button{appearance:none;border:1px solid var(--paper-line);background:var(--paper-sheet);color:var(--paper-ink);cursor:pointer;border-radius:4px;padding:3px 10px;font-size:11px}.grades-page .grades-action-button:hover{border-color:var(--paper-moss);color:var(--paper-moss)}.grades-page .grades-action-button.is-danger{color:var(--paper-clay)}.grades-page .grades-action-button.is-danger:hover{border-color:var(--paper-clay);color:var(--paper-clay)}.grades-page .grades-action-button:disabled{opacity:.5;cursor:default}.grades-page .grades-empty{text-align:center;background:linear-gradient(var(--paper-sheet), var(--paper-sheet)) center / 600px 100% no-repeat, repeating-linear-gradient(transparent 0 41px, var(--paper-line-soft) 41px 42px);flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:8px;min-height:300px;padding:40px 24px;display:flex}.grades-page .grades-empty strong{color:var(--paper-moss);font:600 20px/1.5 var(--font-song);letter-spacing:.06em}.grades-page .grades-empty p{max-width:460px;color:var(--paper-muted);margin:0;font-size:12px;line-height:1.8}.grades-page .grades-empty-actions{gap:10px;margin-top:16px;display:flex}@media (width<=760px){.page-content.office-grades{gap:0;padding:16px 12px}.grades-page .grades-status-nav{overflow-x:auto}.grades-page .grades-status-nav>button{padding:12px 14px}.grades-page .grades-status-nav>.grades-nav-actions{width:100%;margin-left:0}.grades-page .grades-register-head{flex-wrap:wrap;gap:10px}.grades-page .grades-head-search{flex-basis:100%;max-width:none;margin:0}.grades-page .grades-detail-row td{padding:0 12px 12px 16px}}.party-page .party-cabinet{box-shadow:none;background:0 0;border:0;border-radius:0;margin-bottom:0;overflow:visible}.party-folder-rack{isolation:isolate;grid-template-columns:1.2fr repeat(5,minmax(0,1fr));align-items:end;gap:7px;padding:22px 10px 0;display:grid}.party-folder{--folder-color:#af5044;--folder-tint:#f2dfd6;color:#664039;background:linear-gradient(100deg,#ffffff3d,transparent),var(--folder-color);text-align:left;cursor:pointer;border:0;border-radius:12px 15px 0 0;min-width:0;height:84px;padding:7px 5px 0;transition:transform .26s,filter .26s;display:block;position:relative;transform:translateY(0);box-shadow:inset 0 1px 2px #ffffff75,2px -2px 5px #5f493b16}.party-folder:before{content:"";z-index:-1;background:var(--folder-color);transform-origin:0 100%;border-radius:12px 14px 0 0;width:57%;height:22px;position:absolute;top:-10px;left:0;transform:skew(16deg);box-shadow:inset 0 2px 2px #ffffff50}.party-folder.activist{--folder-color:#659988;--folder-tint:#e0ede1;color:#326e5c}.party-folder.development{--folder-color:#bd9259;--folder-tint:#f4e5ca;color:#91601f}.party-folder.probationary{--folder-color:#7da5bb;--folder-tint:#e1eaf0;color:#3d708e}.party-folder.member{--folder-color:#c78482;--folder-tint:#f4dddd;color:#a34843}.party-folder-all{--folder-color:#a93129;--folder-tint:#f3dcd0}.party-folder:hover{filter:brightness(1.025);transform:translateY(-7px)}.party-folder.active{z-index:2;transform:translateY(-10px)}.party-folder:focus-visible{outline-offset:5px;outline:3px solid #a9473c}.party-folder.active:after{content:"";z-index:3;pointer-events:none;border:3px solid #9a9488;border-radius:9px;width:12px;height:38px;position:absolute;top:-25px;right:18px;transform:rotate(9deg);box-shadow:inset 1px 0 1px #fff,1px 2px 2px #423b3650}.party-folder-paper{background:linear-gradient(118deg,#0000 65%,#d5c6ac15 66%,#0000 68%),repeating-linear-gradient(0deg,#fffdf820 0 3px,#b8a37c06 4px 5px),linear-gradient(130deg,#fffdf8,#f3ecdd);border:1px solid #e5dac8;border-radius:9px 12px 0 0;flex-direction:column;height:calc(100% + 8px);padding:9px 11px;display:flex;position:relative;box-shadow:0 -1px 3px #fff9,inset -3px 0 5px #a0845720}.party-folder-paper:after{content:"";pointer-events:none;background:linear-gradient(70deg,#0000 40%,#aa947d20 47%,#fffdf7 52%);border-radius:0 11px 0 14px;width:19px;height:39px;position:absolute;top:0;right:0}.party-folder-heading{align-items:center;gap:8px;display:flex}.party-folder-heading>span:last-child{min-width:0}.party-folder-heading strong{font:700 clamp(12px,1vw,16px) var(--font-song);white-space:nowrap;display:block}.party-folder-icon{background:var(--folder-tint);width:32px;height:34px;font:800 20px var(--font-song);border-radius:10px;flex:none;place-items:center;display:grid}.party-folder-count{margin-top:3px;font-size:10px;display:block}.party-folder-count b{font:700 20px Georgia,serif}.party-folder-motto{color:#9a342d;font:700 clamp(11px,1vw,16px)/1.4 var(--font-kai);white-space:nowrap;display:block}.party-cabinet-rail{z-index:4;background:repeating-linear-gradient(2deg,#0000 0 4px,#9363340b 5px,#fff7e417 6px,#0000 8px),linear-gradient(#dfc09a,#d3ae80 80%,#bd9265);border:1px solid #c09e74;border-radius:10px 10px 4px 4px;justify-content:space-between;align-items:center;gap:20px;min-height:66px;padding:12px 18px;display:flex;position:relative;box-shadow:inset 0 2px 1px #fff5,0 -4px 8px #77512b18,0 3px 6px #61422420}.party-cabinet-note{color:#9b654a;font:16px var(--font-kai);background:linear-gradient(120deg,#f5e3bf,#fff3d8);flex:none;padding:8px 16px;position:relative;transform:rotate(-3deg);box-shadow:1px 3px 4px #75533828}.party-cabinet-note:before{content:"";background:#f8ead496;width:45px;height:14px;position:absolute;top:-7px;left:34%;transform:rotate(4deg)}.party-page .party-cabinet-rail .party-list-actions{flex-direction:row;flex:auto;justify-content:flex-end;gap:9px;padding:0;display:flex}.party-page .party-cabinet-rail .search-box{background:#fffbf0c9;border-color:#bb976f;border-radius:22px;flex:260px;min-width:240px;max-width:none}.party-page .party-cabinet .party-workflow-strip{background:#faf4e8;border:1px solid #e3d7c4;border-top:0;border-radius:0;margin:0;padding:11px 16px}.party-page .party-list{border-radius:0 0 9px 9px;margin-top:0}@media (width<=1450px){.party-folder-rack{scrollbar-width:thin;scrollbar-color:#c5ad89 transparent;padding:20px 10px 0;display:flex;overflow-x:auto}.party-folder{flex:0 0 165px;height:84px}.party-folder-all{flex-basis:205px}.party-folder-paper{padding:8px 10px}.party-folder-motto,.party-folder-heading strong{font-size:14px}.party-folder.active{transform:translateY(-10px)}.party-cabinet-rail{gap:12px;min-height:56px;padding:8px 14px}.party-page .party-workflow-strip{scrollbar-width:thin;flex-flow:row;gap:6px;margin:6px 14px 10px;padding:8px 10px;overflow-x:auto}.party-page .party-workflow-strip>*{white-space:nowrap;flex:none}.party-page .party-list-head{min-height:49px;padding:10px 14px}.party-page .party-record-table th,.party-page .party-record-table td{padding:12px 9px}}@media (width<=720px){.party-folder-rack{padding-top:17px}.party-cabinet-rail{flex-wrap:wrap;gap:14px;padding:12px}.party-cabinet-note{font-size:14px}.party-page .party-cabinet-rail .party-list-actions{flex-wrap:wrap;width:100%}.party-page .party-cabinet-rail .search-box{flex:1;width:auto;min-width:180px}.party-folder{height:84px}.party-folder-paper{padding:8px 10px}}@media (prefers-reduced-motion:reduce){.party-folder{transition:none}}.party-record-table-wrap{overflow-x:auto}.party-page .party-record-table{table-layout:fixed;border-collapse:collapse;color:#455d55;width:100%;min-width:0;font-size:12px}.party-page .party-record-table th{text-align:center;color:#777266;background:#f3eee4;border-bottom:1px solid #e6dccb;padding:15px 18px;font-size:11px;font-weight:750}.party-page .party-record-table td{text-align:center;vertical-align:middle;overflow-wrap:anywhere;border-bottom:1px solid #eee5d8;padding:16px 18px;line-height:1.6}.party-page .party-record-table tbody tr:hover{background:#fffaf2}.party-page .party-record-table tbody tr:last-child td{border-bottom:0}.party-page .party-record-table .party-student-link{text-align:center;justify-content:center;width:100%}.party-page .party-record-table .party-student-summary strong{font-size:14px}.party-page .party-record-table .party-student-summary small{font-size:11px;line-height:1.45}.party-page .party-record-table .party-student-avatar{width:36px;height:36px}.party-page .party-record-table .party-status{font-size:11px}.party-page .party-record-table time{font-variant-numeric:tabular-nums;color:#3e6358;font-weight:650}.party-cell-secondary{color:#8a918a;margin-top:4px;font-size:11px;display:block}.party-cell-muted{color:#a29684}.party-relation-lines{justify-items:center;gap:5px;display:grid}.party-relation-lines>span{justify-content:center;align-items:baseline;gap:7px;display:flex}.party-relation-lines small{color:#9a8e7c;flex:none;font-size:10px}.party-record-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.party-record-actions>button,.party-record-more>summary{color:#49675d;min-height:30px;font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #dccfbb;border-radius:6px;padding:4px 8px;font-size:11px;list-style:none}.party-record-more>summary::-webkit-details-marker{display:none}.party-record-more>summary:after{content:"⌄";color:#9b8e7b;margin-left:4px}.party-record-more[open]>summary{background:#eff4ec;border-color:#b9cbbb}.party-record-more>div{gap:3px;margin-top:6px;padding:4px 0;display:grid}.party-record-more button{color:#49675d;font:inherit;text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:5px 0;font-size:11px}.party-record-more .party-end-action{color:#a65345}@media (width<=720px){.party-page .party-record-table{min-width:860px}}.party-detail-page .party-material-files a{background:var(--paperclip-icon) 4px 50% / 8px 15px no-repeat, #edf6f2;padding-left:17px}.party-rail-heading{color:#493e30;flex-wrap:wrap;flex:none;align-items:baseline;gap:6px 12px;min-width:0;display:flex}.party-rail-heading strong{font:700 16px var(--font-song)}.party-rail-heading small{color:#66543f;white-space:nowrap;font-size:12px}@media (width<=1100px){.party-cabinet-rail{flex-wrap:wrap}.party-page .party-cabinet-rail .party-list-actions{margin-left:auto}}.discipline-status-nav{background:#fffdf8;border:1px solid #e4dacb;border-radius:10px 10px 0 0;gap:8px;padding:16px;display:flex}.discipline-status-nav button{color:#527168;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:10px 16px;font-size:12px}.discipline-status-nav button.active{color:#fff;background:linear-gradient(135deg,#245851,#406b56);box-shadow:inset 0 1px #c8bd8080}.discipline-status-nav b{opacity:.65;margin-left:5px}.discipline-status-nav .primary-button{color:#fff;background:#245851}.discipline-management-page .recognition-search-toolbar{background:#fffdf8;border-top:0;border-radius:0 0 8px 8px;margin:0 0 14px;padding:18px}.discipline-management-page .discipline-search-controls{grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(125px,1fr)) auto}.discipline-management-page .discipline-filter{gap:7px;font-size:11px}.discipline-management-page .discipline-filter select{background:#fffefb;border-color:#ded5c8;min-height:38px}.discipline-content-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.discipline-content-layout.has-detail{grid-template-columns:minmax(0,1fr) 350px}.discipline-content-layout>div{min-width:0}.discipline-management-page .discipline-ledger{background:#fffdf9;border:1px solid #e3d8c9;box-shadow:0 8px 25px #59482c0b}.discipline-management-page .discipline-ledger>.recognition-section-head>button{display:none}.discipline-management-page .discipline-ledger .recognition-section-head{padding:15px 18px}.discipline-management-page .discipline-ledger .section-kicker{display:none}.discipline-management-page .discipline-ledger h3{font-size:15px}.discipline-management-page .discipline-ledger .recognition-table.discipline-table .recognition-table-head,.discipline-management-page .discipline-ledger .recognition-table.discipline-table article{grid-template-columns:minmax(104px,.95fr) minmax(95px,.85fr) minmax(135px,1.2fr) minmax(88px,.68fr) minmax(80px,.7fr) minmax(98px,.9fr) minmax(72px,.68fr) minmax(94px,.85fr);gap:8px;min-width:0;padding:12px 14px}.discipline-management-page .discipline-ledger .recognition-table-head{color:#827a6b;background:#f3eee2;font-size:11px}.discipline-management-page .discipline-table article>span small{white-space:normal;overflow-wrap:anywhere}.discipline-management-page .discipline-table article{border-color:#eee6d9;font-size:12px}.discipline-management-page .discipline-table article.selected{background:#edf4ef;box-shadow:inset 3px 0 #387865}.discipline-management-page .discipline-table article:hover{background:#f5f7f0}.discipline-management-page .discipline-table article small{font-size:11px}.discipline-ledger .discipline-status{font-size:10.5px;border:1px solid #0000!important;border-radius:999px!important;gap:0!important;padding:2px 9px!important}.discipline-ledger .discipline-status:before{content:none!important;display:none!important}.discipline-ledger .discipline-status.active{color:#9c5d4f!important;background:#fbeeea!important;border-color:#e5c9c0!important}.discipline-ledger .discipline-status.lifted{color:#2f6b4f!important;background:#e7f2ec!important;border-color:#c6ded0!important}.discipline-ledger .discipline-status.revoked{color:#6d6759!important;background:#f1efe7!important;border-color:#ddd6c8!important}.discipline-ledger .discipline-level{letter-spacing:.05em;white-space:nowrap;border:0;border-left:3px solid;border-radius:3px;justify-self:center;align-items:center;width:max-content;padding:2.5px 9px 2.5px 8px;font-size:10.5px;font-weight:800;display:inline-flex}.discipline-ledger .discipline-level.is-0{color:#5c665f;background:#edf0ea}.discipline-ledger .discipline-level.is-1{color:#8a6a1f;background:#f7edcf}.discipline-ledger .discipline-level.is-2{color:#9a4d12;background:#f9e2cb}.discipline-ledger .discipline-level.is-3{color:#a03f1c;background:#f8d7c2}.discipline-ledger .discipline-level.is-4{color:#93261c;background:#f6cec6}.discipline-ledger .discipline-level.is-5{color:#fff6ef;background:#7c2d24;border-left-color:#4e1a13}.discipline-ledger .discipline-table article{cursor:pointer}.discipline-ledger .discipline-table article.is-open{background:#fffdf6}.discipline-expand{background:#fffdf6;border-bottom:1px dashed #e3d8c9;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr);gap:0;padding:2px 16px;display:grid}.discipline-expand-field{text-align:left;border-right:1px dashed #c4ae8c99;align-content:center;gap:5px;min-width:0;min-height:60px;padding:10px 18px;display:grid}.discipline-expand-field:first-child{padding-left:2px}.discipline-expand-field:last-child{border-right:0}.discipline-expand-field>span{color:#8b8475;font-size:10px;font-weight:800}.discipline-expand-field p{color:#4a5348;margin:0;font-size:12.5px;line-height:1.8}.discipline-expand-files{flex-wrap:wrap;gap:7px;display:flex}.discipline-expand .discipline-file-link{margin-top:0;padding:8px 11px;font-size:11px}@media (width<=760px){.discipline-expand{grid-template-columns:1fr}.discipline-expand-field{border-bottom:1px dashed #c4ae8c99;border-right:0;min-height:0}.discipline-expand-field:last-child{border-bottom:0}}.discipline-detail-panel{background:#fffdfa;border:1px solid #dfceaf;border-top:3px solid #c9a566;border-radius:8px;position:sticky;top:12px;overflow:hidden;box-shadow:0 7px 25px #6d523422}.discipline-detail-panel>header{color:#a4752f;background:#faf5ea;justify-content:space-between;align-items:center;padding:13px 17px;display:flex}.discipline-detail-panel>header button{color:#7f8478;cursor:pointer;background:0 0;border:0;font-size:21px}.discipline-detail-identity{align-items:center;gap:11px;padding:20px 17px;display:flex}.discipline-detail-identity>span{color:#35665a;background:#e7eeea;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:20px;display:grid}.discipline-detail-identity strong{color:#244e45}.discipline-detail-identity small{color:#8b9289;margin-top:6px;font-size:11px;display:block}.discipline-detail-panel>section{padding:0 17px 18px}.discipline-detail-panel h3{color:#3a6257;margin:4px 0 13px;font-size:13px}.discipline-detail-panel h3 small{color:#929487;font-size:10px;font-weight:400}.discipline-detail-panel dl{gap:10px;margin:0;display:grid}.discipline-detail-panel dl>div{grid-template-columns:70px 1fr;gap:9px;font-size:12px;line-height:1.6;display:grid}.discipline-detail-panel dt{color:#969181}.discipline-detail-panel dd{color:#4c6259;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.discipline-detail-panel>footer{border-top:1px solid #ebe0cf;padding:15px 17px}.discipline-detail-panel>footer button{width:100%}.discipline-detail-empty{color:#aaa391;background:#faf7f0;border-radius:6px;padding:10px;font-size:12px}.discipline-file-link{color:#3d6559;border:1px solid #ebe2d5;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;margin-top:7px;padding:11px;font-size:12px;text-decoration:none;display:flex}.discipline-file-link span{overflow-wrap:anywhere;min-width:0}.discipline-file-link small{color:#a29c8f;margin-top:4px;font-size:10px;display:block}.discipline-management-page .discipline-file-link{background:var(--paperclip-icon) 7px 50% / 10px 22px no-repeat;padding-left:28px}.discipline-file-editor{background:#faf8f2;border:1px dashed #d7ccbb;border-radius:8px;gap:10px;padding:14px;display:grid}.discipline-file-editor label{color:#49645a;gap:8px;font-size:12px;display:grid}.discipline-file-editor small{color:#949385;font-size:11px}.discipline-file-editor>div{justify-content:space-between;gap:10px;font-size:12px;display:flex}.discipline-file-editor button{color:#a65f4e;cursor:pointer;background:0 0;border:0}@media (width<=1100px){.discipline-content-layout.has-detail{grid-template-columns:minmax(0,1fr) 310px}.discipline-management-page .discipline-search-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.discipline-management-page .discipline-search-controls>.search-box{grid-column:1/-1}}@media (width<=980px){.discipline-management-page .discipline-ledger .recognition-table.discipline-table .recognition-table-head,.discipline-management-page .discipline-ledger .recognition-table.discipline-table article{grid-template-columns:minmax(84px,.9fr) minmax(75px,.85fr) minmax(105px,1.15fr) minmax(80px,.65fr) minmax(70px,.72fr) minmax(80px,.9fr) minmax(64px,.66fr) minmax(76px,.82fr);gap:6px;padding:10px}}@media (width<=760px){.discipline-content-layout.has-detail{grid-template-columns:minmax(0,1fr)}.discipline-detail-panel{grid-row:1;position:relative;top:auto}.discipline-status-nav{flex-wrap:wrap;gap:4px}.discipline-status-nav button{padding:9px}.discipline-management-page .discipline-search-controls{grid-template-columns:1fr}.discipline-management-page .discipline-search-controls>.search-box{grid-column:auto}}@media (width<=720px){.discipline-management-page .discipline-ledger .recognition-table.discipline-table .recognition-table-head,.discipline-management-page .discipline-ledger .recognition-table.discipline-table article{min-width:760px}}.discipline-management-page .discipline-ledger .recognition-section-head.discipline-ledger-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 18px;padding:14px 18px 12px;display:grid}.discipline-ledger .discipline-ledger-title{gap:2px;display:grid}.discipline-ledger-controls{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;display:flex}.discipline-ledger-controls .search-box{flex:240px;min-width:0;height:38px}.discipline-ledger-controls .discipline-filter{color:#7d7466;white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:inline-flex}.discipline-ledger-controls .discipline-filter select{color:#4c5b54;background:#fffefb;border-color:#ded5c8;border-radius:6px;min-height:34px;font-size:11px}.discipline-ledger-controls .secondary-button{min-height:34px;padding:6px 11px;font-size:11px}.discipline-ledger-motto{color:#a24a3c;font:700 14px/1.6 var(--font-kai);letter-spacing:.14em;opacity:.85;white-space:nowrap;grid-area:1/2;justify-self:end}.discipline-management-page .discipline-status-nav{margin-bottom:14px}.discipline-detail-panel>header{background:linear-gradient(#f8f1e0,#f2e8d3);border-bottom:1px solid #ddcda9;position:relative}.discipline-detail-panel:before{content:"";z-index:1;pointer-events:none;border:2px solid #9a9184;border-bottom:0;border-radius:4px 4px 0 0;width:24px;height:9px;position:absolute;top:9px;left:16px;transform:rotate(-1deg);box-shadow:0 2px 2px #4634182e,inset 0 1px #ffffff80}.discipline-detail-panel:after{content:"";filter:drop-shadow(-2px -2px 2px #5341251f);pointer-events:none;background:linear-gradient(135deg,#0000 0 47%,#7b60392e 51%,#ecdcb9 56%,#d9c294 100%);width:26px;height:26px;position:absolute;bottom:0;right:0}.discipline-seal{z-index:2;color:#b2493b;font:700 13px/1 var(--font-song);letter-spacing:.16em;opacity:.82;mix-blend-mode:multiply;pointer-events:none;border:2.5px solid;border-radius:5px;padding:5px 10px;position:absolute;top:56px;right:16px;transform:rotate(-8deg)}.discipline-seal.lifted{color:#2e7d63;transform:rotate(-5deg)}.discipline-seal.revoked{color:#87817a;transform:rotate(-11deg)}.discipline-management-page .discipline-table article{position:relative;overflow:hidden}.discipline-management-page .discipline-table article:has(.discipline-status.revoked):after{content:"";pointer-events:none;background:linear-gradient(225deg,#fffdf9 0 46%,#7b603933 50%,#fffdf9eb 55%,#fffdf9 60%);width:22px;height:22px;position:absolute;top:0;right:0}@media (width<=1100px){.discipline-ledger-controls .search-box{flex-basis:100%}}@media (width<=760px){.discipline-ledger .recognition-section-head.discipline-ledger-head{grid-template-columns:1fr}.discipline-ledger-controls{order:3}.discipline-ledger-motto{grid-area:auto;justify-self:start}}.paper-time-field{width:100%;min-width:0;font-family:system-ui,sans-serif;font-weight:400;display:block}.paper-time-entry{align-items:stretch;gap:4px;min-width:0;display:flex}.paper-time-entry>input:not([type=hidden]){flex:1;width:0!important;min-width:0!important;min-height:40px!important;font-family:system-ui,sans-serif!important;font-size:13px!important}.paper-time-field button{cursor:pointer;font:500 12px/1.4 system-ui,sans-serif}.paper-time-field .paper-time-trigger{color:#365d4e;background:#f0eddf;border:1px solid #c9c4b3;border-radius:6px;flex:none;align-items:center;gap:4px;padding:6px 9px;font-size:17px;display:flex}.paper-time-trigger span{font-size:11px}.paper-time-panel{color:#364f43;background:#fffcf4;border:1px solid #d6ccba;border-radius:9px;gap:12px;min-width:0;margin-top:8px;padding:14px;display:grid;box-shadow:0 4px 12px #69583716}.paper-time-panel-title{flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:13px;font-weight:700;display:flex}.paper-time-panel-title small{color:#847b6b;font-size:10px;font-weight:400}.paper-time-shortcuts{flex-wrap:wrap;gap:6px;display:flex}.paper-time-shortcuts button,.paper-time-footer button{color:#526b57;cursor:pointer;background:#f7f2e5;border:1px solid #ddd3bf;border-radius:5px;padding:6px 9px;font:500 12px/1.4 system-ui,sans-serif}.paper-time-month-nav{align-items:center;gap:5px;min-width:0;display:flex}.paper-time-month-nav select,.paper-time-clock-selects select{color:#344e42;flex:1;min-height:36px;background:#fffdf7!important;border:1px solid #d7cfbc!important;width:auto!important;min-width:0!important;padding:7px 4px!important;font:500 13px system-ui,sans-serif!important}.paper-time-month-nav button{color:#456854;background:0 0;border:0;padding:2px 8px;font-size:22px}.paper-time-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.paper-time-calendar small{text-align:center;color:#8b816e;padding:3px 0;font-size:11px}.paper-time-calendar button{color:#4c5547;background:0 0;border:1px solid #0000;border-radius:5px;min-height:32px;padding:4px 0}.paper-time-calendar button.today{border-color:#8fa78c}.paper-time-calendar button.selected{color:#fff;background:#365d4e}.paper-time-field button:hover:not(:disabled),.paper-time-shortcuts button:hover:not(:disabled){color:#2f503f;background:#e4ecde}.paper-time-field button:disabled{opacity:.35;cursor:not-allowed}.paper-time-field button:focus-visible,.paper-time-field select:focus-visible,.paper-time-shortcuts button:focus-visible{outline-offset:2px;outline:2px solid #597b5c}.paper-time-clock{border-top:1px dashed #d7cdb9;gap:8px;padding-top:10px;display:grid}.paper-time-clock-selects{gap:8px;display:flex}.paper-time-footer{border-top:1px solid #e3dac8;gap:8px;padding-top:10px;display:flex}.paper-time-footer .paper-time-done{color:#fff;background:#365d4e;border-color:#365d4e;margin-left:auto}.paper-time-range{gap:9px;min-width:0;display:grid}.paper-time-range-fields{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.paper-time-range-fields>.paper-time-range-field{background:#fffdf8;border:1px solid #e5dece;border-radius:8px;min-width:0;padding:10px 10px 11px}.paper-time-caption{color:#847762;margin-bottom:5px;font:500 11px system-ui,sans-serif;display:block}.paper-time-summary{color:#60715d;font:400 12px/1.5 system-ui,sans-serif}.paper-time-error{color:#a84435;font:400 12px/1.5 system-ui,sans-serif}.paper-date-time-parts{gap:8px;width:100%;min-width:0;font-family:system-ui,sans-serif;font-weight:400;display:grid}.paper-date-parts,.paper-clock-parts{color:#526b57;align-items:center;gap:6px;font:500 12px/1.4 system-ui,sans-serif;display:grid}.paper-date-parts{grid-template-columns:minmax(0,1.35fr) auto minmax(0,.8fr) auto minmax(0,.8fr) auto}.paper-clock-parts{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto}.paper-date-parts input,.paper-clock-parts input{box-sizing:border-box;color:#344e42;background:#fffdf7;border:1px solid #d7cfbc;border-radius:6px;width:100%;min-width:0;min-height:38px;padding:7px 8px;font:500 13px system-ui,sans-serif}.paper-clock-parts small{color:#8a8272;grid-column:1/-1;font-size:11px;font-weight:400}.paper-date-parts input:focus,.paper-clock-parts input:focus{outline-offset:1px;border-color:#6f9d88;outline:2px solid #6f9d8833}.paper-time-deadline-date{box-sizing:border-box;color:#344e42;background:#fffdf7;border:1px solid #d7cfbc;border-radius:6px;width:100%;min-height:40px;padding:8px 10px;font:500 13px system-ui,sans-serif}.paper-time-deadline-clock{color:#526b57;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:2px;display:flex}.paper-time-deadline-clock-label{font:500 12px/1.4 system-ui,sans-serif}.paper-time-deadline-clock-fields{align-items:center;gap:5px;font:500 12px/1.4 system-ui,sans-serif;display:flex}.paper-time-deadline-clock-fields input{box-sizing:border-box;color:#344e42;background:#fffdf7;border:1px solid #d7cfbc;border-radius:6px;padding:6px 7px;font:500 13px system-ui,sans-serif;width:58px!important;min-width:58px!important;min-height:36px!important}.paper-time-deadline-clock-fields input::placeholder{color:#9a927f}.paper-time-deadline-options{gap:7px}.paper-time-deadline-options button.selected{color:#315c4d;background:#e4f0e7;border-color:#3f7563;box-shadow:inset 0 -2px #3f7563}.wb-time-grid{grid-template-columns:minmax(0,1fr)!important}.wb-draft:has(.paper-time-range){width:min(390px,100vw - 60px)}.wb-draft .paper-time-range-fields{grid-template-columns:minmax(0,1fr)}.course-period-item:has(.paper-time-panel){align-items:start}@media (width<=620px){.paper-time-range-fields{grid-template-columns:minmax(0,1fr)}.paper-time-panel{padding:10px}.paper-time-calendar button{min-height:38px}.paper-time-trigger span{display:none}.paper-time-range-fields>.paper-time-range-field{padding:9px}.paper-date-parts,.paper-clock-parts{gap:5px}.paper-date-parts input,.paper-clock-parts input{min-height:36px;padding:6px 7px}}.paper-schedule-range{gap:13px}.paper-schedule-range .paper-time-range-fields{grid-template-columns:minmax(0,1fr);gap:0}.paper-schedule-range .paper-time-range-fields>.paper-time-range-field{background:0 0;border:0;border-bottom:1px dashed #d9e2db;border-radius:0;padding:0 0 16px;position:relative}.paper-schedule-range .paper-time-range-fields>.paper-time-range-field+.paper-time-range-field{padding-top:16px}.paper-schedule-range .paper-time-caption{color:#486b5c;align-items:center;gap:7px;margin-bottom:9px;font-size:14px;font-weight:750;display:flex}.paper-schedule-range .paper-time-caption:before{content:"";background:#f5faf4;border:2px solid #6b9a83;border-radius:50%;width:8px;height:8px;display:block}.paper-schedule-range .paper-time-range-field+.paper-time-range-field .paper-time-caption:before{background:#fff8e8;border-color:#c4934b}.paper-schedule-range .paper-date-time-parts,.paper-schedule-range .paper-date-parts,.paper-schedule-range .paper-clock-parts{gap:7px}.paper-schedule-range .paper-date-parts{grid-template-columns:120px auto 68px auto 68px auto;justify-content:start}.paper-schedule-range .paper-clock-parts{grid-template-columns:92px auto 92px auto;justify-content:start}.paper-schedule-range .paper-date-parts input,.paper-schedule-range .paper-clock-parts input{min-height:40px}.paper-schedule-range .paper-time-shortcuts{padding-top:1px}@media (width<=620px){.paper-schedule-range .paper-date-parts{grid-template-columns:104px auto 60px auto 60px auto}.paper-schedule-range .paper-clock-parts{grid-template-columns:78px auto 78px auto}}.students-page.student-folio{height:calc(calc(100 * var(--vh1)) - 92px);flex-direction:column;gap:0;min-height:0;padding-top:20px;display:flex;overflow:hidden}.students-page.student-folio>.folio-heading{flex:none;min-width:0;margin-bottom:22px}.students-page.student-folio>.folio-class-index{flex:none;min-width:0;margin:0}.students-page.student-folio>.student-directory-panel{flex:auto;min-height:0;overflow:hidden}.students-page.student-folio:before,.calendar-page.planner-notebook:before{display:none}.folio-heading{color:#36584d;justify-content:space-between;align-items:center;gap:20px;margin:0 0 24px;display:flex}.folio-heading h2{font:600 28px/1.4 var(--font-song);letter-spacing:.08em;margin:7px 0}.folio-heading p{color:#817765;margin:0;font-size:12px;line-height:1.7}.folio-heading>div>span{letter-spacing:.16em;color:#947b54;font-size:10px}.folio-edition{font:14px/1.6 var(--font-kai);color:#817052;white-space:nowrap;border-left:1px solid #bfa77f;padding:10px 0 10px 20px}.student-folio .student-directory-panel{background:#fffdf7;border:1px solid #cdbb9b;border-left:8px solid #567364;border-radius:4px 12px 12px 4px;margin-top:0;position:relative;box-shadow:3px 4px #e8dfcc,5px 7px #d9cbb1,0 16px 30px #58452812}.student-folio .student-directory-panel:before,.student-folio .student-directory-panel:after{display:none}.student-folio .student-directory-toolbar{background:#faf5e9;border-bottom:1px solid #dfd2b9}.student-folio .student-directory-table th{color:#7c715f;background:#f3edde}.student-folio .student-directory-table tbody tr{background:#fffdf7}.student-folio .student-directory-table tbody tr:nth-child(2n){background:#faf7ef}.student-folio .student-directory-table tbody tr:hover{background:#edf3e9}.student-folio .directory-student i{background:#e7ece0;border:3px solid #fffdf7;border-radius:3px;outline:1px solid #d9cbb3;box-shadow:1px 2px 3px #55452b16}.student-folio .student-number-cell{letter-spacing:.04em;font-family:Georgia,serif}.student-folio .student-directory-empty{padding:60px 20px}.student-folio .student-directory-empty strong{font:21px var(--font-song);color:#58715f}.student-folio .student-status-chip{background:color-mix(in srgb, currentColor 10%, #fffdf7)!important;box-shadow:none!important;border:0!important;border-radius:999px!important;gap:6px!important;padding:4px 11px 4px 9px!important;font-size:11px!important}.student-folio .student-status-chip:before{content:""!important;background:currentColor!important;border-radius:50%!important;flex:0 0 5px!important;width:5px!important;height:5px!important;font-size:0!important}.student-folio .student-status-chip.status-normal{color:#3f6b52!important}.student-folio .student-status-chip.status-on-leave{color:#8a6428!important}.student-folio .student-status-chip.status-attendance-alert{color:#a04a38!important}.v2-dialog.v2-profile-dialog .student-folio-detail{background:#f5efdf;grid-template-rows:auto minmax(0,1fr);grid-template-columns:128px minmax(0,1fr);display:grid;overflow:hidden}.student-folio-detail .profile-page-header{background:#eee6d4;border-bottom:1px solid #cfbea1;grid-column:1/-1;padding:22px 28px;position:relative;top:auto}.student-folio-detail .profile-name-line h2{font-family:var(--font-song);letter-spacing:.08em}.student-folio-detail .profile-avatar{border:5px solid #fffdf6;border-radius:3px;outline:1px solid #c8b999;box-shadow:2px 3px 5px #70583b1c}.student-folio-detail .profile-tabs{-webkit-backdrop-filter:none;backdrop-filter:none;background:#e8e0ce;border:0;border-right:1px solid #d7c8ae;flex-direction:column;grid-area:2/1;gap:9px;padding:24px 0 20px 12px;display:flex;position:static;overflow:auto}.student-folio-detail .folio-index-label{color:#92836c;letter-spacing:.13em;padding:0 10px 12px;font-size:11px}.student-folio-detail .profile-tabs button:first-of-type{--tab-accent:#4a6b58}.student-folio-detail .profile-tabs button:nth-of-type(2){--tab-accent:#4a6f8d}.student-folio-detail .profile-tabs button:nth-of-type(3){--tab-accent:#a8823e}.student-folio-detail .profile-tabs button:nth-of-type(4){--tab-accent:#a8563e}.student-folio-detail .profile-tabs button:nth-of-type(5){--tab-accent:#7d5a86}.student-folio-detail .profile-tabs button:nth-of-type(6){--tab-accent:#4e7d7d}.student-folio-detail .profile-tabs button:nth-of-type(7){--tab-accent:#7a6f5d}.student-folio-detail .profile-tabs button{border:1px solid #d2c4ab;border-left:3px solid color-mix(in srgb, var(--tab-accent,#9a8c6f) 40%, transparent);text-align:left;color:#756a55;background:#f2ebdb;border-right:0;border-radius:7px 0 0 7px;align-items:center;gap:10px;padding:14px 10px;font-size:12px;animation:none;display:flex}.student-folio-detail .profile-tabs button:hover{border-left-color:var(--tab-accent,#9a8c6f)}.student-folio-detail .profile-tabs button small{color:var(--tab-accent,#998565);font:700 11px Georgia,serif}.student-folio-detail .profile-tabs button.active{color:#36584d;border-left:4px solid var(--tab-accent,#36584d);box-shadow:none;background:#fffdf7}.student-folio-detail .profile-tabs button.active small{color:var(--tab-accent,#36584d)}.student-timetable{background:#fffdf7;border:1px solid #e2d8c5;border-radius:10px;overflow:auto}.student-timetable-grid{text-align:center;grid-template-columns:76px repeat(7,minmax(0,1fr));min-width:660px;display:grid}.student-timetable-cell{border-bottom:1px solid #ece4d5;border-right:1px solid #ece4d5;min-width:0;padding:5px 6px}.student-timetable-cell:nth-child(8n){border-right:0}.student-timetable-corner,.student-timetable-dayhead,.student-timetable-period{background:#f3edde;align-content:center;place-items:center;gap:2px;display:grid}.student-timetable-corner{color:#8a7c5f;font-size:10px;font-weight:750}.student-timetable-dayhead{color:#586a64;font-size:11.5px;font-weight:750}.student-timetable-dayhead em{color:#c08a2e;font-size:9px;font-style:normal}.student-timetable-dayhead.is-today,.student-timetable-slot.is-today{background:#fdf4df}.student-timetable-dayhead.is-today em,.student-timetable-slot.is-today{color:#c08a2e}.student-timetable-dayhead.is-weekend,.student-timetable-slot.is-weekend{background:#f7f4e9}.student-timetable-dayhead.is-weekend{color:#8b8475}.student-timetable-period strong{color:#586a64;font-size:11px}.student-timetable-period small{color:#9a917e;white-space:nowrap;font-size:9px}.student-timetable-slot{flex-direction:column;gap:4px;display:flex}.student-timetable-card{text-align:left;background:#e9f1e7;border:1px solid #cfe0d4;border-left:3px solid #6f8a79;border-radius:5px;gap:2px;padding:5px 7px;display:grid}.student-timetable-card strong{color:#2f5a48;font-size:11px;line-height:1.35}.student-timetable-card small{color:#6b7f6f;overflow-wrap:anywhere;font-size:9px;line-height:1.4}.profile-module-link{color:#2b7567;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;flex:none;padding:2px 4px;font-size:11.5px;font-weight:750}.profile-module-link:hover{text-underline-offset:3px;text-decoration:underline}.student-grade-tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:14px;display:grid}.student-grade-tiles .status-stat strong.is-warning{color:#a8543f}.student-grade-block{gap:8px;display:grid}.student-grade-block+.student-grade-block{margin-top:14px}.student-grade-term-head{justify-content:space-between;align-items:baseline;gap:10px;padding:2px 2px 0;display:flex}.student-grade-term-head strong{color:#36584d;font:700 13px/1.4 var(--font-song)}.student-grade-term-head em{color:#75857e;font-size:11px;font-style:normal}.student-folio-detail .profile-tabs button:before,.student-folio-detail .profile-tabs button:after{display:none}.student-folio-detail>.profile-tab-content,.student-folio-detail>.profile-academic-content{background:#fffdf7;grid-area:2/2;height:auto;min-height:0;padding:24px;overflow:auto}.student-folio-detail .profile-section{box-shadow:none;background:#fffdf7;border-color:#e2d8c5}.student-folio-detail .profile-info-section h3{font-family:var(--font-song);color:#486452;border-bottom:1px solid #d9cfb8;padding-bottom:9px}.student-folio-detail .profile-info-grid>div{border-bottom:1px solid #ece4d5;padding-bottom:9px}.student-folio-detail .profile-side-column .profile-section{background:#f8f3e6;border-top:3px solid #ac9165}.student-folio-detail .student-record-list{border-left:1px solid #c7b89a;margin-left:8px;padding-left:22px}.student-folio-detail .student-record-card{background:#fdf9ef;border:1px solid #e2d6bf;border-radius:2px 8px 8px 2px;position:relative;box-shadow:2px 3px #ece3d0}.student-folio-detail .student-record-card:before{content:"";background:#6d8978;border:2px solid #fffdf7;border-radius:50%;width:9px;height:9px;position:absolute;top:26px;left:-28px}.planner-notebook .work-calendar-panel{border:1px solid #bca888;border-top:7px solid #536b5b;border-radius:5px 10px 10px 5px;padding-left:0;box-shadow:2px 4px #e6dcc6,4px 7px #cfc0a3,0 16px 28px #59432314}.planner-notebook .work-calendar-panel:before{display:none}.calendar-page.planner-notebook .calendar-workspace{flex:auto;min-height:0}.calendar-page.planner-notebook .work-calendar-panel{flex-direction:column;height:100%;min-height:0;display:flex}.planner-notebook .calendar-planner-head{background:#f7f1e3;border-bottom:1px solid #d6c9af;flex:none;padding:14px 20px 12px}.planner-notebook .calendar-planner-layout{background:#fffdf7;flex:auto;grid-template-rows:minmax(0,1fr);grid-template-columns:190px minmax(0,1fr) 232px;min-height:0}.planner-notebook .calendar-planner-layout.is-dayless{grid-template-columns:190px minmax(0,1fr)}.planner-notebook .calendar-planner-layout>*{min-height:0}.planner-notebook .calendar-control-sidebar{scrollbar-width:thin;background:#eee7d7;border-color:#d5c7ad;flex-direction:column;gap:12px;padding:16px 12px;display:flex;overflow-y:auto}.planner-notebook .calendar-filter-panel{flex:none;margin-top:0}.planner-notebook .calendar-main-surface{scrollbar-width:thin;background:#fffdf7;min-width:0;overflow:auto}.planner-notebook .calendar-week-view{grid-template-columns:50px repeat(7,minmax(0,1fr));height:100%;min-height:0;display:grid}.planner-notebook .calendar-week-view>section{background:#fffdf7;border-right:1px solid #e2d7c2;flex-direction:column;min-width:0;min-height:0;display:flex}.planner-notebook .calendar-week-view>section:nth-last-child(-n+2){background:#f7f4e9}.planner-notebook .calendar-week-view>section.selected{background:#f0f4e9}.planner-notebook .calendar-week-view>section>header{border-bottom:1px solid #d9ccb3;flex:0 0 56px;padding:0}.planner-notebook .calendar-month-view{flex-direction:column;height:100%;display:flex}.planner-notebook .calendar-month-view .month-grid{flex:auto;grid-auto-rows:minmax(64px,1fr);min-height:0}.planner-notebook .calendar-month-view .month-cell{min-height:0;overflow:hidden}.planner-notebook .calendar-mini{background:#fffaf0;border-color:#d7c9b0;border-radius:3px;flex:none;box-shadow:1px 2px #ddd0b7}.planner-notebook .planner-day-select{color:#36584d;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;height:100%;padding:8px 12px;display:flex}.planner-notebook .planner-day-select>span{flex-direction:column;gap:6px;font-size:11px;display:flex}.planner-notebook .planner-day-select i{color:#967244;font-size:9px;font-style:normal}.planner-notebook .planner-today>header{box-shadow:inset 0 4px #a6814c}.planner-notebook .planner-today .planner-day-select strong{color:#fff9eb;clip-path:polygon(0 0,100% 0,100% 100%,50% 87%,0 100%);background:#36584d;padding:9px 6px 15px}.planner-notebook .planner-time-gutter{background:#f7f1e3;border-right:1px solid #d9ccb3;flex-direction:column;min-width:0;display:flex}.planner-notebook .planner-time-gutter>header{border-bottom:1px solid #d9ccb3;flex:0 0 56px}.planner-notebook .planner-time-rail{flex:auto;min-height:0;position:relative}.planner-notebook .planner-time-rail>span{color:#9a8c6f;font-size:9px;line-height:1;position:absolute;right:6px;transform:translateY(-50%)}.planner-notebook .planner-day-tools{flex:0 0 32px;padding:5px 8px;display:flex}.planner-notebook .planner-day-tools .planner-add-entry{color:#817357;text-align:center;cursor:pointer;background:#fffdf780;border:1px dashed #cbbd9f;border-radius:2px;flex:1;min-height:0;padding:3px;font-size:10px}.planner-notebook .planner-day-rail{background:repeating-linear-gradient(#c7bba22e 0 1px,#0000 1px 7.14286%);flex:auto;min-height:0;position:relative}.planner-notebook .planner-free-time{color:#938b78;text-align:center;pointer-events:none;place-items:center;margin:0;font-size:11px;line-height:1.8;display:grid;position:absolute;inset:0}.planner-notebook .calendar-week-view .calendar-chip{overflow-wrap:anywhere;white-space:normal;border-radius:2px;min-height:0;padding:11px 9px;box-shadow:1px 2px 3px #6454350c}.planner-notebook .calendar-week-view .calendar-chip.schedule{background:#e8eee2;border-left:3px solid #71907b}.planner-notebook .calendar-week-view .calendar-chip strong{font-size:12px;line-height:1.6}.planner-notebook .calendar-week-view .calendar-chip em{color:#67725e;font-size:10px;font-style:normal}.planner-notebook .calendar-week-view .planner-grid-chip{z-index:2;overflow-wrap:anywhere;white-space:normal;text-align:left;cursor:pointer;border-radius:2px;flex-direction:column;gap:0;min-height:30px;padding:2px 6px;display:flex;position:absolute;overflow:hidden;box-shadow:1px 2px 3px #6454350c}.planner-notebook .calendar-week-view .planner-grid-chip em{white-space:nowrap;text-overflow:ellipsis;flex:none;font-size:9px;line-height:1.4;overflow:hidden}.planner-notebook .calendar-week-view .planner-grid-chip strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.35;display:-webkit-box;overflow:hidden}.planner-notebook .calendar-week-view .planner-grid-chip small{white-space:nowrap;text-overflow:ellipsis;margin-top:0;font-size:9px;line-height:1.3;overflow:hidden}.planner-notebook .calendar-week-view .planner-grid-chip.active{outline-offset:1px;outline:2px solid #a77d43}.planner-notebook .calendar-selected-sidebar{background:#faf4e5;border-left:1px solid #d2c1a0;padding:18px 14px}.planner-notebook .calendar-selected-sidebar>header{border-bottom:2px solid #c8b590;padding-bottom:15px}.planner-notebook .calendar-selected-sidebar h3{font-family:var(--font-song)}.planner-notebook .calendar-selected-list>button{border-bottom:1px solid #e1d4bd}.planner-notebook .calendar-view-switch button.active{color:#fff9eb;box-shadow:none;background:#36584d;animation:none}.planner-notebook .calendar-view-switch button:before,.planner-notebook .calendar-view-switch button:after{display:none}.semester-calendar-import{max-height:calc(72 * var(--vh1));gap:12px;display:grid;overflow:auto}.semester-calendar-import>p{margin:0;font-size:12px;line-height:1.7}.semester-calendar-import .semester-calendar-hint{color:#8c4a1d;background:#fdf3e7;border:1px solid #e8c9a8;border-radius:8px;padding:8px 12px}.semester-calendar-import input[type=file]{font-size:12px}.semester-calendar-table{border:1px solid #d8cdbb;border-radius:8px;width:100%;overflow:auto}.semester-calendar-table table{border-collapse:collapse;width:100%;min-width:780px;font-size:12px}.semester-calendar-table th,.semester-calendar-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #eee5d4;padding:7px 8px}.semester-calendar-table thead th{color:#7c715f;background:#f7f1e3;font-size:11px;position:sticky;top:0}.semester-calendar-table td input,.semester-calendar-table td select{color:#3d514a;font:inherit;background:#fffdf7;border:1px solid #d8cdbb;border-radius:4px;padding:5px 6px}.semester-calendar-table td input[type=text],.semester-calendar-table td input:not([type]){width:170px}.semester-calendar-table td input[type=date]{width:128px}.semester-calendar-table td input[type=time]{width:88px}.semester-calendar-table td label{color:#987544;align-items:center;gap:5px;font-size:10px;display:inline-flex}.semester-calendar-table tr[data-status=skip]{opacity:.55}.semester-calendar-notes{color:#7d6f55;font-size:11px}.semester-calendar-notes ul{margin:6px 0 0;padding-left:18px;line-height:1.7}.student-folio button:focus-visible,.student-folio-detail button:focus-visible,.planner-notebook button:focus-visible{outline-offset:3px;outline:2px solid #9a7945}@media (width<=1250px){.calendar-page.planner-notebook{height:auto;min-height:calc(calc(100 * var(--vh1)) - 92px);display:block;overflow-y:auto}.calendar-page.planner-notebook .work-calendar-panel{height:auto}.planner-notebook .calendar-planner-layout{grid-template-rows:none;grid-template-columns:155px minmax(0,1fr)}.planner-notebook .calendar-week-view{height:auto;min-height:560px}.planner-notebook .calendar-month-view{height:auto}.planner-notebook .calendar-month-view .month-grid{grid-auto-rows:minmax(92px,auto)}.planner-notebook .calendar-selected-sidebar{border-top:1px solid #d2c1a0;border-left:0;grid-column:1/-1}}@media (width<=760px){.students-page.student-folio{height:calc(calc(100 * var(--vh1)) - 76px - 68px);min-height:0;display:flex;overflow:hidden}.students-page.student-folio>.student-directory-panel{min-height:0;overflow:hidden}.folio-heading{margin-bottom:18px}.folio-heading h2{font-size:23px}.folio-edition{display:none}.v2-dialog.v2-profile-dialog .student-folio-detail{grid-template-rows:auto auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.student-folio-detail .profile-tabs{flex-direction:row;grid-area:2/1;gap:4px;padding:8px 10px 0}.student-folio-detail .folio-index-label{display:none}.student-folio-detail .profile-tabs button{border-radius:6px 6px 0 0;gap:5px;padding:12px 9px}.student-folio-detail>.profile-tab-content,.student-folio-detail>.profile-academic-content{grid-area:3/1;padding:14px}.planner-notebook .calendar-planner-layout{grid-template-columns:minmax(0,1fr)}.planner-notebook .calendar-control-sidebar{border-bottom:1px solid #d5c7ad;border-right:0}.planner-notebook .calendar-planner-head{padding:14px}}.student-folio .folio-class-index{z-index:1;scrollbar-width:none;align-items:flex-end;min-width:0;margin-bottom:-1px;padding:8px 14px 0 22px;display:flex;position:relative;overflow-x:auto}.student-folio .folio-class-index::-webkit-scrollbar{display:none}.student-folio .folio-grade-index{flex:none;align-items:flex-end;gap:7px;min-width:0;display:flex}.student-folio .folio-grade-index>button{box-sizing:border-box;color:#6d6350;min-width:152px;height:46px;font:700 13px/1 var(--font-song);letter-spacing:.05em;white-space:nowrap;cursor:pointer;clip-path:polygon(0 100%,0 36%,13px 36%,26px 0,calc(100% - 12px) 0,100% 12px,100% 100%);background:linear-gradient(#f0e7d3,#e6dbc4);border:0;flex:none;align-items:center;gap:10px;padding:4px 20px 0 34px;transition:background .15s;display:inline-flex}.student-folio .folio-grade-index>button:hover{background:linear-gradient(#f5edda,#ecdfc8)}.student-folio .folio-grade-index>button small{color:#7d6f55;background:#faf3e2;border-radius:999px;padding:3px 8px;font:700 10px/1 Georgia,serif}.student-folio .folio-grade-index>button[aria-pressed=true]{color:#fff8e8;background:linear-gradient(#40695a,#33544a)}.student-folio .folio-grade-index>button[aria-pressed=true] small{color:#33544a;background:#eaf2e6}.student-folio .folio-class-index button:focus-visible{outline-offset:-4px;outline:2px solid #9a7945}.student-folio .student-class-chipbar{background:#fffdf7;border-bottom:1px solid #e7ddc9;flex-wrap:wrap;align-items:center;gap:12px;min-width:0;padding:11px 18px;display:flex}.student-folio .student-class-chipbar-label{color:#8b7d63;letter-spacing:.04em;flex:none;font-size:11px;font-weight:750}.student-folio .student-class-chips{flex-wrap:wrap;flex:auto;align-items:center;gap:7px;min-width:0;display:flex}.student-folio .student-class-chip{color:#6d6350;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:#faf5e9;border:1px solid #d8ccb2;border-radius:999px;align-items:center;gap:6px;max-width:240px;padding:6px 13px;font-size:11px;font-weight:650;display:inline-flex;overflow:hidden}.student-folio .student-class-chip:hover{background:#f3f2e6;border-color:#b9c8b4}.student-folio .student-class-chip.active{color:#33544a;background:#e9f1e7;border-color:#36584d;font-weight:750}.student-folio .student-class-chip i{color:#6f8a79;flex:none;font-size:12px;font-style:normal;line-height:1}.student-folio .student-class-more{flex:none;position:relative}.student-folio .student-class-more>button{color:#7d6f55;cursor:pointer;background:#fffdf7;border:1px dashed #c9bda2;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:11px;display:inline-flex}.student-folio .student-class-more>button:hover{color:#5d5443;border-color:#a99a76}.student-folio .student-class-more-menu{z-index:6;background:#fffdf7;border:1px solid #d8ccb2;border-radius:8px;gap:2px;min-width:180px;max-height:250px;padding:5px;display:grid;position:absolute;top:calc(100% + 5px);left:0;overflow:auto;box-shadow:0 12px 26px #5845281f}.student-folio .student-class-more-menu button{color:#5d5443;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px 10px;font-size:11px}.student-folio .student-class-more-menu button:hover{background:#f4efdf}.student-folio .student-class-filtered{color:#8b7d63;flex:none;align-items:center;gap:6px;margin-left:auto;font-size:11px;display:inline-flex}.student-folio .student-class-filtered strong{color:#33544a;font-weight:750}.student-folio .student-class-clear{color:#2b7567;cursor:pointer;background:0 0;border:0;flex:none;padding:0;font-size:11px;font-weight:750}.student-folio .student-class-clear:hover{text-underline-offset:3px;text-decoration:underline}@media (width<=760px){.student-folio .folio-class-index{padding:6px 8px 0 10px}.student-folio .folio-grade-index{gap:5px}.student-folio .folio-grade-index>button{gap:8px;min-width:132px;height:42px;padding:3px 14px 0 27px;font-size:12px}.student-folio .student-class-chipbar{gap:9px;padding:10px 13px}.student-folio .student-class-filtered{margin-left:0}}.students-page .student-directory-empty-actions{justify-content:center;gap:var(--space-2);margin-top:var(--space-1);display:flex}@media (width<=600px){.student-folio .student-directory-table-wrap{overflow:hidden auto}.student-folio .student-directory-table,.student-folio .student-directory-table tbody{width:100%;min-width:0;display:block}.student-folio .student-directory-table thead{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.student-folio .student-directory-table tbody{gap:9px;padding:10px 9px;display:grid}.student-folio .student-directory-table tbody tr{background:#fffdf7;border:1px solid #d9cdb7;border-radius:7px;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:10px;display:grid;position:relative}.student-folio .student-directory-table td{box-sizing:border-box;color:#586a64;white-space:normal;overflow-wrap:anywhere;background:#fffefa;border:1px solid #e8e0d2;border-radius:5px;min-width:0;max-width:none;height:auto;min-height:46px;padding:7px 8px;font-size:10px;line-height:1.45;display:block;overflow:hidden;width:auto!important}.student-folio .student-directory-table td:before{color:#8b8475;margin-bottom:4px;font-size:9px;font-weight:750;display:block}.student-folio .student-directory-table td:first-child{z-index:1;background:0 0;border:0;border-radius:0;min-height:0;padding:0;display:grid;position:absolute;top:14px;left:12px;overflow:visible;width:20px!important}.student-folio .student-directory-table td:nth-child(2){background:0 0;border:0;border-bottom:1px solid #e6dece;border-radius:0;grid-area:1/1/auto/-1;min-height:42px;padding:2px 3px 8px 30px}.student-folio .student-directory-table td:nth-child(2):before{display:none}.student-folio .student-directory-table td:nth-child(3):before{content:"学号"}.student-folio .student-directory-table td:nth-child(4):before{content:"学院"}.student-folio .student-directory-table td:nth-child(5):before{content:"专业"}.student-folio .student-directory-table td:nth-child(6):before{content:"班级"}.student-folio .student-directory-table td:nth-child(7):before{content:"状态"}.student-folio .student-directory-table td:nth-child(8):before{content:"政治面貌"}.student-folio .student-directory-table td:nth-child(9):before{content:"联系方式"}.student-folio .student-directory-table .directory-student{gap:7px}.student-folio .student-directory-table .directory-student>i{width:30px;height:30px}.student-folio .student-directory-table .directory-student strong{font-size:13px}.student-folio .student-directory-table .directory-stack small{white-space:normal;overflow-wrap:anywhere}}.status-overview{flex-direction:column;gap:14px;display:flex}.status-overview-badge{color:#6b5d3f;background:#faf6ec;border:1px solid #e6dece;border-radius:10px;align-items:center;gap:12px;padding:14px 16px;display:flex}.status-overview-badge strong{color:#3d3423;font-size:15px;display:block}.status-overview-badge small{color:#8a7c5f;margin-top:2px;display:block}.status-overview-badge svg{flex:none}.status-overview-badge.active{background:#f5efdf;border-color:#d8cdb2}.status-overview-badge.alert{color:#a2632f;background:#fdf3e7;border-color:#e8c9a8}.status-overview-badge.alert strong{color:#8c4a1d}.status-overview-badge.alert small{color:#b07a4a}.status-signal-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.status-signal-list li{color:#6b5d3f;border-bottom:1px dashed #e6dece;align-items:center;gap:11px;padding:11px 4px;display:flex}.status-signal-list li:last-child{border-bottom:0}.status-signal-list li svg{opacity:.75;flex:none}.status-signal-list li div{flex:auto;min-width:0}.status-signal-list li strong{color:#3d3423;font-size:13.5px;font-weight:600;display:block}.status-signal-list li small{color:#8a7c5f;overflow-wrap:anywhere;margin-top:1px;display:block}.status-signal-list li.alert strong{color:#8c4a1d}.status-signal-list li.alert svg{color:#b07a4a;opacity:1}.status-signal-list li>button{color:#6b5d3f;cursor:pointer;background:#fffdf7;border:1px solid #d8cdb2;border-radius:7px;flex:none;padding:3px 10px;font-size:12px}.status-signal-list li>button:hover{background:#f5efdf}.status-overview-badge{position:relative}.status-overview-flag{color:#6b5d3f;white-space:nowrap;background:#fffdf7;border:1px solid #d8cdb2;border-radius:999px;flex:none;margin-left:auto;padding:4px 10px;font-size:11px;font-weight:750}.status-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.status-stat{color:inherit;font:inherit;text-align:left;background:#faf6ec;border:1px solid #e6dece;border-radius:10px;align-content:start;gap:3px;padding:12px 14px;display:grid}button.status-stat{cursor:pointer;transition:border-color .15s,background .15s}button.status-stat:hover{background:#f5efdf;border-color:#cdbfa2}.status-stat small{color:#8b7d63;letter-spacing:.08em;font-size:10px;font-weight:750}.status-stat strong{font:700 15px/1.3 var(--font-song);color:#3d3423}.status-stat span{color:#8a7c5f;font-size:10.5px}.status-columns{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:12px;display:grid}.status-columns.single{grid-template-columns:1fr}.status-block-title{color:#8b7d63;letter-spacing:.08em;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;font-size:11px;font-weight:750;display:flex}.status-block-title button{color:#2b7567;font:inherit;cursor:pointer;background:0 0;border:0;flex:none;font-size:11px;font-weight:750}.status-block-title button:hover{text-underline-offset:3px;text-decoration:underline}.status-signals-block,.status-facts,.status-recent{background:#faf6ec;border:1px solid #e6dece;border-radius:10px;padding:13px 14px}.status-facts dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin:0;display:grid}.status-facts dl>div{border-bottom:1px dashed #e6dece;padding:7px 1px}.status-facts dt{color:#8a7c5f;font-size:10px}.status-facts dd{color:#3d3423;overflow-wrap:anywhere;margin:2px 0 0;font-size:12px}.status-recent-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.status-recent-list button{color:inherit;font:inherit;text-align:left;cursor:pointer;background:#fffdf7;border:1px solid #eee5d4;border-radius:8px;align-content:start;gap:3px;padding:9px 11px;display:grid}.status-recent-list button:hover{background:#f5efdf}.status-recent-list strong{color:#3d3423;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.status-recent-list small{color:#8a7c5f;font-size:10px}@media (width<=760px){.status-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.status-columns,.status-columns.single,.status-facts dl,.status-recent-list{grid-template-columns:1fr}}.student-folio .student-status-chip.status-leave-overdue{color:#8f2f22!important}.student-folio .student-status-chip.status-discipline{color:#8c4a1d!important}.student-folio .student-status-chip.status-grade-alert{color:#7d5a1f!important}.student-folio .student-status-chip.status-care{color:#6b5b8a!important}.student-folio .student-status-chip.status-suspended,.student-folio .student-status-chip.status-withdrawn,.student-folio .student-status-chip.status-graduated{color:#5f6b7a!important}.casebook-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.casebook-heading small{color:#997d53;letter-spacing:.15em;font-size:10px}.casebook-heading h2{color:#36584d;font:600 27px/1.4 var(--font-song);letter-spacing:.07em;margin:7px 0}.casebook-heading p{color:#827764;margin:0;font-size:12px;line-height:1.7}.casebook-heading>span{color:#8d7757;font:14px var(--font-kai);border-left:1px solid #c6b18a;padding:12px 0 12px 18px}.discipline-casebook:before,.leave-routing-folder:before{display:none}.discipline-casebook .discipline-status-nav{scrollbar-width:thin;background:0 0;border:0;border-radius:0;flex-wrap:nowrap;align-items:stretch;gap:6px;margin:0;padding:6px 14px 0;display:flex;overflow-x:auto}.discipline-casebook .discipline-status-nav>button{color:#7a694c;box-shadow:none;background:#e9ddc5;border:1px solid #c6b390;border-bottom:0;border-radius:9px 9px 0 0;flex:none;padding:14px 20px;font-size:12px;animation:none}.discipline-casebook .discipline-status-nav>button.active{color:#fff8e7;background:#426252;border-color:#426252;box-shadow:inset 0 3px #b9aa7c}.discipline-casebook .discipline-status-nav>.secondary-button{margin-left:auto}.discipline-casebook .discipline-status-nav>.primary-button{color:#fff8e7;background:#426252;border:1px solid #426252;border-radius:6px;margin-bottom:7px}.discipline-casebook .discipline-content-layout{background:#e9ddc6;border:1px solid #c9b38d;border-top:5px solid #b79c71;border-radius:4px 10px 10px 4px;padding:14px;box-shadow:2px 4px #d3c3a5,0 12px 24px #604b2b10}.discipline-casebook .discipline-ledger{background:#fffdf7;border:1px solid #d8c9ae;border-radius:3px}.discipline-casebook .discipline-ledger-head{background:#faf4e7;border-bottom:1px solid #dccdb1}.discipline-casebook .discipline-ledger h3{font-family:var(--font-song);font-size:18px}.discipline-casebook .discipline-ledger-motto{color:#947958;font-size:12px}.discipline-casebook .discipline-table article{background:#fffdf7;border-color:#e9dfcd}.discipline-casebook .discipline-table article:nth-child(odd){background:#faf7ef}.discipline-casebook .discipline-table article.selected{background:#edf2e7;box-shadow:inset 3px 0 #5e806b}.discipline-casebook .discipline-detail-panel{max-height:calc(calc(100 * var(--vh1)) - 135px);background:#fffaf0;border:1px solid #c9b48f;border-radius:3px 8px 8px 3px;top:110px;overflow-y:auto;box-shadow:3px 4px #d5c5a8}.discipline-casebook .discipline-detail-panel>header{background:#f0e3ca;padding:18px}.discipline-casebook .discipline-detail-panel:before{display:none}.discipline-casebook .discipline-seal{margin:16px 18px 0 auto;font-size:11px;display:table;position:static;transform:rotate(-4deg)}.discipline-casebook .discipline-detail-identity{padding-top:16px}.discipline-casebook .discipline-detail-panel h3{font-family:var(--font-song);border-bottom:1px solid #dfd1b8;padding-bottom:9px}.discipline-casebook .discipline-detail-panel dl>div{border-bottom:1px solid #eee4d2;padding-bottom:8px}.discipline-casebook .discipline-detail-panel>footer{background:#faf2e2}.leave-routing-folder .leave-table-wrap{background:#fffdf7;border:1px solid #c8b795;border-top:6px solid #74907d;border-radius:3px 9px 9px 3px;margin-top:0;padding:0;overflow-x:auto;box-shadow:2px 4px #e1d5bb,4px 7px #cfc0a1}.leave-routing-folder .leave-table-wrap:before,.leave-routing-folder .leave-table-wrap:after{display:none}.leave-routing-folder .leave-table-toolbar{background:#f2ebdb;border-bottom:1px solid #d8caaf;padding:18px}.leave-routing-folder .leave-table-caption{text-align:left;color:#64745b;font:600 18px var(--font-song);letter-spacing:.12em;background:#fffdf7;padding:18px 24px}.leave-routing-folder .leave-table thead th{color:#84745a;background:#f7f0e0;border-color:#dfd1b7}.leave-routing-folder .leave-record-row{background:#fffdf7}.leave-routing-folder .leave-record-row:nth-of-type(2n){background:#faf7ef}.leave-routing-folder .leave-record-row.expanded{background:#edf2e6;box-shadow:inset 3px 0 #6b8b73}.leave-routing-folder .leave-status{background:0 0;border:1px solid;border-radius:4px;padding:5px 8px;font-size:11px}.leave-routing-folder .leave-status.cancelled{color:#87847b;background:#f0eee8}.leave-routing-folder .leave-days{color:#496b58;font-size:22px}.leave-routing-folder .leave-detail-content{background:#faf3e4;border:1px solid #d5c4a4;border-left:4px solid #b49766;border-radius:2px;margin:12px 20px 20px;padding:20px;box-shadow:2px 3px #e5d8bf}.leave-routing-folder .leave-routing-summary{border-bottom:1px dashed #ccba96;grid-column:1/-1;padding-bottom:14px}.leave-routing-folder .leave-detail-content strong{overflow-wrap:anywhere}.leave-routing-folder .leave-row-actions button{border-radius:4px}.leave-routing-folder .leave-empty{background:#fffdf7;padding:60px 24px}.discipline-casebook button:focus-visible,.leave-routing-folder button:focus-visible{outline-offset:3px;outline:2px solid #967747}@media (width<=1100px){.discipline-casebook .discipline-content-layout.has-detail{grid-template-columns:minmax(0,1fr)}.discipline-casebook .discipline-detail-panel{grid-row:1;max-height:none;position:relative;top:auto}}@media (width<=760px){.casebook-heading>span{display:none}.casebook-heading h2{font-size:23px}.discipline-casebook .discipline-status-nav{padding-left:4px}.discipline-casebook .discipline-status-nav>button{padding:12px}.discipline-casebook .discipline-content-layout{padding:8px}.leave-routing-folder .leave-detail-content{margin:8px;padding:14px}}.discipline-casebook{box-sizing:border-box;height:calc(calc(100 * var(--vh1)) - 92px);flex-direction:column;min-height:0;display:flex;overflow:hidden}.discipline-casebook .discipline-status-nav{flex:none;min-height:68px;padding:6px 14px 0}.discipline-casebook .discipline-content-layout{flex:auto;min-height:0;padding:12px;display:grid;overflow:hidden}.discipline-casebook .discipline-content-layout>div,.discipline-casebook .recognition-single-section{flex-direction:column;min-height:0;display:flex}.discipline-casebook .discipline-ledger{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.discipline-casebook .discipline-ledger .discipline-ledger-head{flex:none;grid-template-rows:auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px 20px;padding:13px 18px;display:grid}.discipline-casebook .discipline-ledger-title{grid-area:1/1;min-width:max-content}.discipline-casebook .discipline-ledger-controls{flex-wrap:nowrap;grid-area:1/2;align-items:center;gap:8px;min-width:0;display:flex}.discipline-casebook .discipline-ledger-controls .search-box{flex:230px;min-width:150px;height:36px}.discipline-casebook .discipline-ledger-controls .discipline-filter{flex:none;align-items:center;gap:6px;display:inline-flex}.discipline-casebook .discipline-ledger-controls .discipline-filter select{width:132px;min-height:36px}.discipline-casebook .discipline-ledger-controls>.secondary-button{flex:none;min-height:36px}.discipline-casebook .discipline-ledger-motto{white-space:nowrap;grid-area:1/3}.discipline-casebook .discipline-ledger .recognition-table{flex:auto;min-height:0;overflow:auto}.discipline-casebook .discipline-ledger .recognition-empty{flex:auto;min-height:0}.discipline-casebook .discipline-empty-state{color:#9b9688;text-align:center;background-color:#0000;background-image:linear-gradient(90deg,#0000 0 49.8%,#e5d9c3 50%,#0000 50.2%),linear-gradient(#fffdf7,#fbf6e9);background-position:50% 58%,50%;background-repeat:no-repeat;background-size:100% 1px,100% 100%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;align-content:center;justify-items:center;gap:9px;padding:48px 24px;display:grid}.discipline-casebook .discipline-empty-state>span{color:#a88552;width:42px;height:42px;font:22px/1 var(--font-song);background:#f4ead5;border:1px solid #c8b58f;border-radius:4px;place-items:center;display:grid;box-shadow:2px 3px #e7dbc3}.discipline-casebook .discipline-empty-state strong{color:#647665;font:600 17px var(--font-song)}.discipline-casebook .discipline-empty-state small{color:#a19b8b;font-size:11px}@media (width<=1250px){.discipline-casebook .discipline-ledger .discipline-ledger-head{grid-template-columns:minmax(0,1fr) auto}.discipline-casebook .discipline-ledger-controls{grid-area:2/1/auto/-1}.discipline-casebook .discipline-ledger-motto{grid-area:1/2}}@media (width<=760px){.discipline-casebook{height:calc(calc(100 * var(--vh1)) - 76px - 68px)}.discipline-casebook .discipline-status-nav{min-height:55px}.discipline-casebook .discipline-content-layout{padding:8px}.discipline-casebook .discipline-ledger .discipline-ledger-head{grid-template-columns:1fr;gap:9px;padding:13px 14px}.discipline-casebook .discipline-ledger-title,.discipline-casebook .discipline-ledger-controls,.discipline-casebook .discipline-ledger-motto{grid-area:auto/1}.discipline-casebook .discipline-ledger-motto{justify-self:start}.discipline-casebook .discipline-ledger-controls{flex-wrap:wrap}.discipline-casebook .discipline-ledger-controls .search-box{flex-basis:100%}.discipline-casebook .discipline-ledger-controls .discipline-filter{flex:140px}.discipline-casebook .discipline-ledger-controls .discipline-filter select{flex:auto;width:auto}.discipline-casebook .discipline-ledger-controls>.secondary-button{flex:100px}}.resource-page.resource-bookshelf{height:calc(calc(100 * var(--vh1)) - 92px);box-sizing:border-box;min-height:0;overflow:hidden}.resource-bookshelf:before{display:none}.resource-bookshelf .resource-workspace{align-items:stretch;min-height:0;overflow:hidden}.resource-bookshelf .resource-results{flex-direction:column;min-height:0;display:flex;overflow:hidden}.resource-bookshelf .resource-sidebar{scrollbar-width:thin;background:#efe6d5;border:1px solid #c7b697;border-top:5px solid #96774e;border-radius:4px;min-height:0;max-height:none;position:relative;top:auto;overflow-y:auto}.resource-bookshelf .resource-sidebar h3{font-family:var(--font-song)}.resource-bookshelf .resource-result-head{background:#fbf7ed;grid-template-columns:minmax(0,1fr) auto auto}.resource-bookshelf .resource-card-list.simple.bookshelf-volumes{background:linear-gradient(90deg,#74573816,#0000 12% 88%,#74573816),#e4d5bc;border:8px solid #b3946d;border-top-width:12px;border-radius:6px;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 24px;margin:16px 0 20px;padding:25px 24px 32px;display:grid;overflow:hidden;box-shadow:inset 0 4px 14px #60462621}.resource-bookshelf .resource-card-list.simple>article.resource-book{--book-cloth:#4e6c5a;border:1px solid #cabca3;border-left:12px solid var(--book-cloth);background:linear-gradient(90deg,#6c5c3b10,#0000 20%),#fffaf0;border-radius:4px 10px 7px 4px;flex-direction:column;align-items:stretch;gap:14px;min-width:0;padding:22px 18px 18px 26px;display:flex;position:relative;transform:none;box-shadow:5px 2px #f2e9d8,7px 3px #b5a88e,9px 5px 10px #503b2933}.resource-bookshelf .resource-book[data-format=政策]{--book-cloth:#9b794e}.resource-bookshelf .resource-book[data-format=模板]{--book-cloth:#8c6661}.resource-bookshelf .resource-book[data-format=工具]{--book-cloth:#587586}.resource-bookshelf .resource-card-list.simple>article.resource-book:before{content:"";width:1px;height:auto;box-shadow:none;background:#b8a88255;border:0;position:absolute;top:0;bottom:0;left:4px}.resource-bookshelf .resource-card-list.simple>article.resource-book:after{content:"";filter:none;pointer-events:none;background:linear-gradient(#d5b58b,#b28c5c 50%,#987047 51%,#ac855a);border-top:1px solid #ead4af;width:auto;height:15px;position:absolute;bottom:-22px;left:-36px;right:-26px;box-shadow:0 6px 8px #543b2826}.resource-bookshelf .resource-book .resource-format{width:auto;height:auto;color:var(--book-cloth);background:0 0;border-radius:0;justify-content:flex-start;gap:9px;font-size:11px;display:flex}.resource-bookshelf .resource-book .resource-card-body{flex-direction:column;flex:1;display:flex}.resource-bookshelf .resource-book .resource-card-meta{flex-direction:column;align-items:flex-start;gap:8px}.resource-bookshelf .resource-book .resource-card-meta small{white-space:normal;overflow-wrap:anywhere;font-size:10px}.resource-bookshelf .resource-book h3{font:600 21px/1.6 var(--font-song);color:var(--book-cloth);overflow-wrap:anywhere;margin:17px 0 12px}.resource-bookshelf .resource-book p{font-size:12px;line-height:1.8}.resource-bookshelf .resource-book .resource-card-actions{border-top:1px solid #ddd0b6;flex-wrap:wrap;justify-content:flex-start;gap:10px;max-width:none;margin-top:4px;padding-top:14px;display:flex}.resource-bookshelf .resource-card-actions:after{display:none}.resource-bookshelf .resource-book .resource-open-link{color:#fffaf0;background:var(--book-cloth);border:0;border-radius:4px;justify-content:center;gap:7px;width:100%;display:flex}.resource-bookshelf .resource-book .resource-favorite{background:#f5ebd6;border-radius:0 0 5px 5px;padding:7px;top:12px;right:12px}.resource-bookshelf .resource-book:hover{outline:1px solid #ac956b}.resource-bookshelf .resource-pagination{margin-top:10px}.resource-bookshelf button:focus-visible{outline-offset:3px;outline:2px solid #aa854c}@media (width<=1200px){.resource-bookshelf .bookshelf-volumes.resource-card-list.simple{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=800px){.resource-bookshelf .resource-workspace{grid-template-columns:minmax(0,1fr)}.resource-bookshelf .resource-sidebar{max-height:230px;position:static}}@media (width<=520px){.resource-bookshelf .bookshelf-volumes.resource-card-list.simple{grid-template-columns:minmax(0,1fr);padding-inline:20px}.resource-bookshelf .resource-result-head{grid-template-columns:1fr auto}.resource-bookshelf .resource-search{grid-area:auto/1/auto/-1}}.resource-bookshelf .resource-card-list.simple.bookshelf-volumes{scrollbar-width:thin;min-height:0;box-shadow:none;background:0 0;border:0;flex-direction:column;flex:auto;gap:10px;margin:12px 0 20px;padding:0 4px 12px;display:flex;overflow-y:auto}.resource-bookshelf .resource-card-list.simple>article.resource-book{border:1px solid #d8cdb8;border-left:5px solid var(--book-cloth);background:var(--paper-crease), var(--paper-sheet);border-radius:5px;flex:none;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:94px;padding:16px 17px;display:grid;box-shadow:0 1px 2px #58452808,0 5px 14px -8px #58452824}.resource-bookshelf .resource-card-list.simple>article.resource-book:before,.resource-bookshelf .resource-card-list.simple>article.resource-book:after{display:none}.resource-bookshelf .resource-book .resource-format{background:color-mix(in srgb, var(--book-cloth) 12%, white);width:54px;height:54px;color:var(--book-cloth);border-radius:8px;justify-content:center;gap:2px;display:grid}.resource-bookshelf .resource-book .resource-card-body{display:block}.resource-bookshelf .resource-book .resource-card-meta{flex-direction:row;align-items:center;gap:8px;display:flex}.resource-bookshelf .resource-book .resource-card-meta small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.resource-bookshelf .resource-book h3{font:600 15px/1.5 var(--font-song);color:#28423b;margin:8px 0 4px}.resource-bookshelf .resource-book p{margin:5px 0 0;font-size:11px;line-height:1.6}.resource-bookshelf .resource-book .resource-tags{margin-top:8px;padding-top:0}.resource-bookshelf .resource-book .resource-card-actions{border-top:0;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;max-width:230px;margin-top:0;padding-top:0;display:flex}.resource-bookshelf .resource-book .resource-open-link{width:auto;color:var(--paper-moss);background:#f5faf8;border:1px solid #b9d5cb;border-radius:8px;justify-content:center;gap:7px;display:inline-flex}.resource-bookshelf .resource-book .resource-open-link:hover{color:#fff;background:var(--paper-moss)}.resource-bookshelf .resource-book .resource-favorite{background:0 0;padding:0;top:9px;right:12px}@media (width<=1100px){.resource-bookshelf .resource-card-list.simple>article.resource-book{grid-template-columns:52px minmax(0,1fr)}.resource-bookshelf .resource-book .resource-card-actions{grid-column:2;justify-content:flex-start;max-width:none}}.resource-bookshelf .resource-book .resource-card-actions>.danger-button{grid-column:1/-1;justify-self:end}@media (width<=760px){.resource-page.resource-bookshelf{height:calc(calc(100 * var(--vh1)) - 76px - 68px)}.resource-bookshelf .resource-workspace{grid-template-rows:auto minmax(0,1fr)}.resource-bookshelf .resource-sidebar{max-height:185px}.resource-bookshelf .resource-card-list.simple>article.resource-book{grid-template-columns:44px minmax(0,1fr);gap:10px;padding:14px}.resource-bookshelf .resource-book .resource-format{width:42px;height:42px}.resource-bookshelf .resource-book .resource-card-meta{flex-wrap:wrap}.resource-bookshelf .resource-book .resource-card-actions{grid-column:1/-1;justify-content:flex-start}}.resource-bookshelf .resource-book .resource-favorite-toggle{z-index:2;color:#fffaf0;min-width:91px;font:700 11px/1.1 var(--font-song);white-space:nowrap;cursor:pointer;background:#302f2b;border:0;border-radius:10px;align-items:center;gap:8px;padding:8px 11px 8px 9px;transition:background .2s,color .2s,box-shadow .2s;display:inline-flex;position:absolute;top:9px;right:12px;overflow:hidden;box-shadow:0 5px 12px #392d2026}.resource-bookshelf .resource-book .resource-favorite-toggle:hover{background:#3e4138;box-shadow:0 7px 15px #392d2033}.resource-bookshelf .resource-book .resource-favorite-toggle:focus-visible{outline-offset:3px;outline:2px solid #aa854c}.resource-bookshelf .resource-favorite-toggle .resource-favorite-heart{color:#f2eadb;flex:none;transition:fill .2s,stroke .2s,transform .2s;display:block}.resource-bookshelf .resource-favorite-toggle.active{color:#fff4ec;background:#3a312f}.resource-bookshelf .resource-favorite-toggle.active .resource-favorite-heart{fill:#ef5b54;stroke:#ef5b54;animation:1s resource-favorite-heart}.resource-bookshelf .resource-favorite-action{min-width:43px;display:grid;position:relative;overflow:hidden}.resource-bookshelf .resource-favorite-action>span{grid-area:1/1;transition:transform .35s,opacity .35s}.resource-bookshelf .resource-favorite-action .option-1{opacity:1;transform:translateY(0)}.resource-bookshelf .resource-favorite-action .option-2{opacity:0;transform:translateY(100%)}.resource-bookshelf .resource-favorite-toggle.active .option-1{opacity:0;transform:translateY(-100%)}.resource-bookshelf .resource-favorite-toggle.active .option-2{opacity:1;transform:translateY(0)}@keyframes resource-favorite-heart{0%,to{transform:scale(1)}25%{transform:scale(1.25)}50%{transform:scale(1)}75%{transform:scale(1.2)}}.resource-bookshelf .resource-book .resource-card-body{padding-right:0}.resource-bookshelf .resource-book .resource-card-actions{border-left:1px dashed #cdbb9b;grid-template-columns:repeat(2,minmax(0,1fr));place-content:center stretch;align-self:stretch;gap:7px;max-width:246px;padding-left:14px;display:grid}.resource-bookshelf .resource-book .resource-card-actions>.resource-favorite-toggle,.resource-bookshelf .resource-book .resource-card-actions>.resource-open-link{grid-column:1/-1}.resource-bookshelf .resource-book .resource-card-actions>.resource-favorite-toggle{box-sizing:border-box;justify-content:center;width:100%;min-width:0;position:static}.resource-bookshelf .resource-book .resource-card-actions>.resource-open-link{width:100%}.resource-bookshelf .resource-book .resource-card-actions>.v2-link{white-space:nowrap;background:#fffaf0;border-radius:7px;min-height:31px;padding:6px 8px}@media (width<=760px){.resource-bookshelf .resource-book .resource-favorite-toggle{min-width:84px;padding:7px 9px 7px 8px;top:8px;right:8px}.resource-bookshelf .resource-book .resource-card-actions{border-top:1px dashed #cdbb9b;border-left:0;grid-column:1/-1;max-width:none;padding-top:10px;padding-left:0}}@media (prefers-reduced-motion:reduce){.resource-bookshelf .resource-favorite-toggle,.resource-bookshelf .resource-favorite-toggle .resource-favorite-heart,.resource-bookshelf .resource-favorite-action>span{transition:none;animation:none}}.resource-bookshelf .resource-card-list.simple>article.resource-book{grid-template-columns:48px minmax(0,1fr) 230px;gap:10px 14px;min-height:0;padding:12px 14px;display:grid}.resource-bookshelf .resource-book .resource-format{width:44px;height:44px}.resource-bookshelf .resource-book .resource-card-meta{gap:7px}.resource-bookshelf .resource-book .resource-card-body{min-width:0}.resource-bookshelf .resource-book h3{margin:4px 0 2px;font-size:14px;line-height:1.4}.resource-bookshelf .resource-book p{margin-top:2px;line-height:1.45}.resource-bookshelf .resource-book .resource-tags{gap:4px;margin-top:5px}.resource-bookshelf .resource-book .resource-card-actions{border-top:0;border-left:1px dashed #cdbb9b;grid-template-columns:repeat(3,minmax(0,1fr));align-content:center;align-self:stretch;gap:5px;width:230px;max-width:230px;padding:23px 0 0 11px;display:grid;position:relative}.resource-bookshelf .resource-book .resource-card-actions>.resource-favorite-toggle{grid-column:auto;width:auto;min-width:82px;padding:6px 8px;position:absolute;top:2px;right:0}.resource-bookshelf .resource-book .resource-card-actions>.resource-open-link{grid-column:1/-1;width:100%;min-height:31px;padding:5px 8px}.resource-bookshelf .resource-book .resource-card-actions>.v2-link{min-width:0;min-height:29px;padding:4px 3px;font-size:10px}.resource-bookshelf .resource-book .resource-card-actions>.danger-button{grid-column:auto;justify-self:stretch;min-width:0;min-height:29px;padding:4px 5px;font-size:10px}@media (width<=1100px){.resource-bookshelf .resource-card-list.simple>article.resource-book{grid-template-columns:44px minmax(0,1fr) minmax(190px,23%);gap:8px 12px}.resource-bookshelf .resource-book .resource-format{width:42px;height:42px}.resource-bookshelf .resource-book .resource-card-actions{border-top:0;border-left:1px dashed #cdbb9b;grid-column:3;grid-template-columns:repeat(3,minmax(0,1fr));align-self:stretch;gap:5px;width:auto;max-width:none;padding:23px 0 0 10px;display:grid}.resource-bookshelf .resource-book .resource-card-actions>.resource-favorite-toggle{min-width:78px;padding:6px 8px;position:absolute;top:2px;right:0}.resource-bookshelf .resource-book .resource-card-actions>.resource-open-link{width:100%}.resource-bookshelf .resource-book .resource-card-actions>.danger-button{white-space:nowrap;gap:3px;min-width:0;padding-inline:2px;font-size:9px}}@media (width<=760px){.resource-bookshelf .resource-card-list.simple>article.resource-book{grid-template-columns:40px minmax(0,1fr);gap:8px 10px;padding:12px;display:grid}.resource-bookshelf .resource-book .resource-format{width:38px;height:38px}.resource-bookshelf .resource-book .resource-card-actions{border-top:1px dashed #cdbb9b;border-left:0;flex-wrap:wrap;grid-column:1/-1;align-self:auto;gap:6px;padding:8px 0 0;display:flex}.resource-bookshelf .resource-book .resource-card-actions>.resource-favorite-toggle{position:static}.resource-bookshelf .resource-book .resource-card-actions>.resource-open-link{width:auto}}.resource-bookshelf .resource-browse-bar{color:var(--paper-muted);align-items:center;gap:12px;padding:0 4px;font-size:12px;display:flex}.resource-browse-bar>button{border:1px solid var(--paper-line);background:var(--paper-sheet);color:var(--paper-moss);border-radius:5px;padding:6px 10px}.resource-browse-bar>button:last-child{margin-left:auto}.resource-bookshelf .resource-card-list.simple>article.resource-book{grid-template-columns:44px minmax(0,1fr) minmax(150px,188px) auto;gap:8px 14px;min-height:0;padding:10px 14px}.resource-bookshelf .resource-book .resource-card-actions{border:0;flex-flow:row;justify-content:flex-end;align-items:center;gap:8px;width:auto;min-width:0;padding:0;display:flex;position:relative}.resource-bookshelf .resource-book .resource-card-actions>.resource-open-link{grid-area:auto;width:auto;min-width:92px;min-height:30px;margin:0;padding:5px 10px}.resource-save-icon,.resource-more>summary{width:30px;height:30px;color:var(--paper-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;padding:0;display:grid}.resource-save-icon:hover,.resource-more>summary:hover{border-color:var(--paper-line);background:var(--paper-sheet-warm)}.resource-save-icon.active{color:var(--paper-brass);background:var(--paper-brass-soft)}.resource-save-icon.active svg{fill:var(--paper-brass-soft)}.resource-more{position:relative}.resource-more>summary{font-size:20px;line-height:1;list-style:none}.resource-more>summary::-webkit-details-marker{display:none}.resource-more[open]{z-index:10}.resource-more>div{z-index:20;border:1px solid var(--paper-line);background:var(--paper-sheet);border-radius:8px;min-width:140px;padding:6px;display:grid;position:absolute;top:38px;right:0;box-shadow:0 6px 20px #243c3020}.resource-more>div button{text-align:left;color:var(--paper-moss);white-space:nowrap;background:0 0;border:0;border-radius:4px;padding:9px 12px;font-size:12px}.resource-more>div button:hover{background:var(--paper-moss-soft)}.resource-more>div .resource-remove{color:#a34c40;border-top:1px solid var(--paper-line-soft)}.resource-bookshelf .resource-title-button{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.resource-title-button:hover{text-underline-offset:4px;text-decoration:underline}.resource-bookshelf .resource-book h3{margin:2px 0 1px;font-size:14px}.resource-bookshelf .resource-book p{white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;font-size:11px;line-height:1.5;overflow:hidden}.resource-bookshelf .resource-book .resource-card-meta{color:var(--paper-muted);font-size:10.5px}.resource-bookshelf .resource-book .resource-card-tags{border-left:1px dashed #d5c8ac;flex-wrap:wrap;align-content:center;align-items:center;gap:4px;min-width:0;padding-left:13px;display:flex}.resource-bookshelf .resource-book .resource-tag-chip{background:var(--paper-sheet-warm);border:1px solid #d9cdb2;border-radius:999px;align-items:center;max-width:100%;display:inline-flex}.resource-bookshelf .resource-book .resource-tag-chip>button:first-child{color:#7a6f58;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:0;border-radius:999px 0 0 999px;padding:2px 3px 2px 8px;font-size:10.5px;overflow:hidden}.resource-bookshelf .resource-book .resource-tag-chip.is-active{border-color:var(--paper-moss);background:var(--paper-moss-soft)}.resource-bookshelf .resource-book .resource-tag-chip.is-active>button:first-child{color:var(--paper-moss);font-weight:700}.resource-bookshelf .resource-book .resource-tag-remove{color:#a3826b;cursor:pointer;opacity:0;background:0 0;border:0;border-radius:50%;width:17px;height:17px;padding:0;font-size:12px;line-height:1;transition:opacity .12s}.resource-bookshelf .resource-book .resource-tag-chip:hover .resource-tag-remove,.resource-bookshelf .resource-book .resource-tag-remove:focus-visible{opacity:1}.resource-bookshelf .resource-book .resource-tag-remove:hover{color:#a34c40;background:#f7e8e2}.resource-bookshelf .resource-book .resource-tag-add{color:#8a7a5c;cursor:pointer;background:0 0;border:1px dashed #c9b995;border-radius:999px;align-items:center;gap:3px;padding:2.5px 8px;font-size:10.5px;display:inline-flex}.resource-bookshelf .resource-book .resource-tag-add:hover{color:#6d5c3c;background:var(--paper-sheet-warm);border-color:#aa8b52}.resource-bookshelf .resource-book .resource-tag-input{background:#fffdf7;border:1px solid #c9b995;border-radius:999px;width:104px;min-height:0;padding:3px 8px;font-size:10.5px}.resource-bookshelf .resource-tag-toolbar{flex-shrink:0}.resource-bookshelf .resource-tag-pills{flex-wrap:wrap;max-height:130px;overflow:auto}.resource-preview{color:var(--paper-ink);gap:20px;display:grid}.resource-preview>p{white-space:pre-wrap;margin:0;line-height:1.9}.resource-preview-kind,.resource-preview-tags{color:var(--paper-muted);font-size:12px}.resource-preview dl{background:var(--paper-sheet-warm);border-radius:6px;grid-template-columns:100px 1fr;gap:12px;margin:0;padding:18px;font-size:13px;display:grid}.resource-preview dt{color:var(--paper-muted)}.resource-preview dd{overflow-wrap:anywhere;margin:0}.resource-preview-tags{flex-wrap:wrap;gap:10px;display:flex}.resource-preview footer{border-top:1px solid var(--paper-line);justify-content:flex-end;gap:10px;padding-top:16px;display:flex}@media (width<=1150px){.resource-bookshelf .resource-card-list.simple>article.resource-book{grid-template-columns:44px minmax(0,1fr) minmax(140px,30%);gap:8px 12px;padding:10px 12px}.resource-bookshelf .resource-book .resource-card-actions{grid-area:2/2/auto/-1;justify-content:flex-start}}@media (width<=760px){.resource-bookshelf .resource-card-list.simple>article.resource-book{grid-template-columns:40px minmax(0,1fr)}.resource-bookshelf .resource-book .resource-card-tags{border-top:1px dashed #d5c8ac;border-left:0;grid-column:1/-1;align-content:flex-start;padding-top:7px;padding-left:0}}.resource-bookshelf .resource-book h3 .resource-title-button{font:600 14px/1.45 var(--font-song)}.resource-book:last-child:not(:first-child) .resource-more>div{top:auto;bottom:38px}.v2-dialog.resource-editor-dialog{width:min(820px,100vw - 40px);max-height:min(calc(88 * var(--vh1)), 860px);overflow:auto}.v2-dialog.resource-editor-dialog .resource-editor{gap:14px;padding:18px 24px 22px}.v2-dialog.resource-editor-dialog .resource-editor>label,.v2-dialog.resource-editor-dialog .resource-choice-set{min-width:0;color:var(--paper-moss);gap:7px;font-size:12px}.v2-dialog.resource-editor-dialog .resource-editor>label{gap:6px;font-weight:650;display:grid}.v2-dialog.resource-editor-dialog .resource-choice-set{border:0;margin:0;padding:0;display:grid}.v2-dialog.resource-editor-dialog .resource-choice-set legend{color:var(--paper-moss);margin:0 0 1px;padding:0;font-size:12px;font-weight:650}.v2-dialog.resource-editor-dialog .resource-editor-choice-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.v2-dialog.resource-editor-dialog .resource-choice-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.v2-dialog.resource-editor-dialog .resource-category-choice .resource-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-dialog.resource-editor-dialog .resource-choice-grid button{border:1px solid var(--paper-line);min-width:0;min-height:38px;color:var(--paper-moss);background:var(--paper-sheet);font:inherit;text-align:left;cursor:pointer;border-radius:7px;justify-content:flex-start;align-items:center;gap:7px;padding:7px 9px;font-size:11.5px;font-weight:650;display:flex}.v2-dialog.resource-editor-dialog .resource-choice-grid button:hover{background:#f4f8f2;border-color:#9cb8a8}.v2-dialog.resource-editor-dialog .resource-choice-grid button.active{border-color:var(--paper-moss);color:var(--paper-moss);background:var(--paper-moss-soft);box-shadow:inset 0 -3px var(--paper-moss)}.v2-dialog.resource-editor-dialog .resource-choice-grid button>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.v2-dialog.resource-editor-dialog .resource-editor input,.v2-dialog.resource-editor-dialog .resource-editor select,.v2-dialog.resource-editor-dialog .resource-editor textarea{min-height:40px;padding:9px 11px;font-size:12.5px}.v2-dialog.resource-editor-dialog .resource-editor textarea{min-height:82px}.v2-dialog.resource-editor-dialog .resource-editor footer{border-top:1px solid var(--paper-line-soft);gap:8px;margin-top:1px;padding-top:12px}.resource-import-content{color:var(--paper-moss);gap:12px;padding:18px 22px 20px;display:grid}.resource-import-content>p{color:var(--paper-muted);margin:0;font-size:12px;line-height:1.6}.resource-import-counts{border:1px solid var(--paper-line);background:var(--paper-sheet-warm);border-radius:8px;flex-wrap:wrap;align-items:center;gap:14px;padding:10px 12px;font-size:12px;display:flex}.resource-import-counts strong{color:#277560}.resource-import-table-wrap{border:1px solid var(--paper-line);border-radius:8px;max-height:min(52vh,480px);overflow:auto}.resource-import-table-wrap table{border-collapse:collapse;text-align:left;width:100%;font-size:11px}.resource-import-table-wrap th,.resource-import-table-wrap td{border-bottom:1px solid var(--paper-line-soft);text-overflow:ellipsis;white-space:nowrap;max-width:260px;padding:8px 10px;overflow:hidden}.resource-import-table-wrap th{color:var(--paper-muted);background:var(--paper-sheet-warm);position:sticky;top:0}.resource-import-table-wrap tr[data-status=error] td:last-child{color:#a84d43}.resource-import-table-wrap tr[data-status=skip] td:last-child{color:#9b793d}.resource-import-content footer{border-top:1px solid var(--paper-line-soft);justify-content:flex-end;gap:8px;padding-top:10px;display:flex}.schedule-import-content,.conversation-import-content,.notice-import-content{color:var(--paper-moss);gap:12px;padding:18px 22px 20px;display:grid}.schedule-import-content>p,.conversation-import-content>p,.notice-import-content>p{color:var(--paper-muted);margin:0;font-size:12px;line-height:1.6}.schedule-import-content>div,.conversation-import-content>div,.notice-import-content>div{border:1px solid var(--paper-line);background:var(--paper-sheet-warm);border-radius:8px;gap:14px;padding:10px 12px;font-size:12px;display:flex}.schedule-import-content>div strong,.conversation-import-content>div strong,.notice-import-content>div strong{color:#277560}.schedule-import-content>section,.conversation-import-content>section,.notice-import-content>section{border:1px solid var(--paper-line);border-radius:8px;max-height:min(52vh,480px);overflow:auto}.schedule-import-content table,.conversation-import-content table,.notice-import-content table{border-collapse:collapse;text-align:left;width:100%;font-size:11px}.schedule-import-content th,.schedule-import-content td,.conversation-import-content th,.conversation-import-content td,.notice-import-content th,.notice-import-content td{border-bottom:1px solid var(--paper-line-soft);text-overflow:ellipsis;white-space:nowrap;max-width:260px;padding:8px 10px;overflow:hidden}.schedule-import-content th,.conversation-import-content th,.notice-import-content th{color:var(--paper-muted);background:var(--paper-sheet-warm);position:sticky;top:0}.schedule-import-content td small,.conversation-import-content td small,.notice-import-content td small{color:var(--paper-muted);display:block}.schedule-import-content tr[data-status=error] td:last-child,.conversation-import-content tr[data-status=error] td:last-child,.notice-import-content tr[data-status=error] td:last-child{color:#a84d43}.schedule-import-content tr[data-status=skip] td:last-child,.conversation-import-content tr[data-status=skip] td:last-child,.notice-import-content tr[data-status=skip] td:last-child{color:#9b793d}.schedule-import-content footer,.conversation-import-content footer,.notice-import-content footer{border-top:1px solid var(--paper-line-soft);justify-content:flex-end;gap:8px;padding-top:10px;display:flex}@media (width<=760px){.v2-dialog.resource-editor-dialog{width:calc(100vw - 20px);max-height:calc(92 * var(--vh1))}.v2-dialog.resource-editor-dialog .resource-editor{gap:13px;padding:16px 15px 18px}.v2-dialog.resource-editor-dialog .resource-editor-choice-row{grid-template-columns:1fr;gap:12px}.v2-dialog.resource-editor-dialog .resource-category-choice .resource-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=440px){.v2-dialog.resource-editor-dialog .resource-format-choice .resource-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.assistant-plan-dialog{background:#faf7ef;width:min(780px,100vw - 32px);overflow:hidden}.assistant-plan-form{max-height:calc(calc(88 * var(--vh1)) - 74px);flex-direction:column;display:flex}.assistant-plan-form>section,.assistant-plan-form>.assistant-plan-error,.assistant-plan-form>.assistant-plan-grid{margin-left:24px;margin-right:24px}.assistant-plan-summary{background:linear-gradient(135deg,#f4f8f3,#fffaf0);border:1px solid #d6dfd7;border-radius:12px;grid-template-columns:48px minmax(0,1fr) auto;align-items:start;gap:13px;margin-top:20px;padding:15px;display:grid}.assistant-plan-mark{color:#fff9e9;letter-spacing:.08em;background:#315f55;border-radius:11px;place-items:center;width:44px;height:44px;font-family:Georgia,serif;font-weight:800;display:grid;box-shadow:inset 0 0 0 1px #ffffff35,0 7px 15px #315f5525}.assistant-plan-summary>div{min-width:0}.assistant-plan-summary small{color:#8c795a;letter-spacing:.12em;margin-bottom:4px;font-size:10px;font-weight:800;display:block}.assistant-plan-summary strong{color:#25453f;font-size:16px;line-height:1.5;display:block}.assistant-plan-summary p{color:#74817c;overflow-wrap:anywhere;margin:6px 0 0;font-size:12px;line-height:1.6}.assistant-plan-summary>span{color:#426d63;white-space:nowrap;background:#e2eee8;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800}.assistant-plan-summary-input{box-sizing:border-box;color:#25453f;width:100%;font:inherit;background:#ffffffb8;border:1px solid #d5dfd8;border-radius:7px;padding:5px 7px;font-size:16px;font-weight:700;line-height:1.5}.assistant-plan-summary-input:focus{outline-offset:1px;background:#fff;outline:2px solid #91afa6}.assistant-plan-checks{color:#665b49;background:#f8f0df;border-left:3px solid #bd985a;margin-top:12px;padding:10px 13px}.assistant-plan-checks strong{font-size:12px}.assistant-plan-checks ul{gap:4px;margin:6px 0 0;padding-left:18px;font-size:11px;line-height:1.55;display:grid}.assistant-plan-followup{background:#f6f8f3;border:1px solid #d6dfd7;border-radius:12px;gap:9px;padding:12px 13px;display:grid}.followup-chat-head{align-items:center;gap:9px;display:flex}.followup-chat-mark{background:#fff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid;overflow:hidden;box-shadow:inset 0 0 0 1px #dbe4da}.followup-chat-mark img{width:22px;height:22px}.followup-chat-head strong{color:#315f55;font-size:12px;display:block}.followup-chat-head small{color:#78847f;font-size:10px;display:block}.followup-chat-row{align-items:flex-end;gap:8px;display:flex}.followup-chat-row textarea{resize:none;min-height:40px;max-height:120px;color:var(--ink);font:inherit;background:#fff;border:1px solid #ccd8d1;border-radius:10px;flex:auto;padding:9px 11px}.followup-chat-row textarea:focus{outline-offset:1px;outline:2px solid #56736466}.followup-chat-send{color:#fffaee;cursor:pointer;background:#36584d;border:1px solid #3b5a4d;border-radius:10px;flex:none;place-items:center;width:40px;height:40px;transition:background .15s;display:grid}.followup-chat-send:hover:not(:disabled){background:#294c40}.followup-chat-send:disabled{opacity:.45;cursor:not-allowed}.assistant-plan-error{color:#943a2c;background:#fff0eb;border:1px solid #e5b2a6;border-radius:8px;margin-bottom:0;padding:10px 12px;font-size:12px;margin-top:12px!important}.assistant-plan-grid{flex:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;min-height:0;margin-top:16px;padding-bottom:18px;display:grid;overflow-y:auto}.assistant-plan-grid label{color:#53635f;align-content:start;gap:7px;min-width:0;font-size:12px;font-weight:800;display:grid}.assistant-plan-grid label>span:first-child{letter-spacing:.03em}.assistant-plan-grid input,.assistant-plan-grid select,.assistant-plan-grid textarea,.assistant-plan-grid output{box-sizing:border-box;width:100%;min-width:0;color:var(--ink);font:inherit;background:#fff;border:1px solid #d4dcd6;border-radius:8px;padding:10px 11px;font-weight:500}.assistant-plan-grid output{color:#61746d;background:#f1f4ef;align-items:center;min-height:41px;display:flex}.assistant-plan-grid textarea{resize:vertical;min-height:72px}.assistant-plan-grid label>small{color:#7a8983;font-size:10px;font-weight:500}.assistant-plan-wide{grid-column:1/-1}.assistant-plan-grid .paper-time-field,.assistant-plan-grid .paper-time-entry{width:100%}.assistant-plan-grid .paper-time-entry>input:first-child{flex:1;min-width:0}.ai-upload-coming.ready{background:#e2f1e9;box-shadow:inset 0 0 0 1px #bddbcf;color:#286c59!important}.assistant-plan-form>footer{background:#fffdf7;border-top:1px solid #ddd7c8;justify-content:flex-end;gap:9px;padding:14px 24px 18px;display:flex;box-shadow:0 -7px 18px #58491d10}.assistant-plan-missing-hint{color:#963f31;align-self:center;margin-right:auto;font-size:11px}.assistant-review-dialog{width:min(860px,100vw - 32px)}.assistant-review-dialog .assistant-plan-form{overflow:hidden}.assistant-review-list{flex:auto;gap:12px;min-height:0;margin:14px 24px 16px;padding-right:4px;display:grid;overflow-y:auto}.assistant-review-item{background:#fffdf8;border:1px solid #d8cdb7;border-radius:9px;min-height:0;overflow:hidden;box-shadow:0 7px 18px #59491f0d}.assistant-review-item>header{background:linear-gradient(105deg,#f4eddd,#fffdf8);border-bottom:1px solid #e2d8c5;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px 16px;padding:15px 18px;display:grid}.assistant-review-item>header>div{grid-column:1}.assistant-review-item>header small{color:#8f7956;letter-spacing:.1em;font-size:10px;font-weight:800}.assistant-review-item>header h3{color:#294d44;margin:4px 0 2px;font-family:Songti SC,STSong,serif;font-size:18px}.assistant-review-item>header p{color:#72817c;margin:0;font-size:11px}.assistant-review-choice{color:#365e54;grid-column:1/-1;align-items:center;gap:8px;width:max-content;font-size:12px;font-weight:800;display:flex}.assistant-review-choice input{accent-color:#365e54;width:16px;height:16px}.assistant-item-status{color:#756a57;white-space:nowrap;background:#eee8dc;border-radius:999px;grid-area:2/2;align-self:center;padding:5px 9px;font-size:10px;font-style:normal;font-weight:800}.assistant-item-status.succeeded{color:#285d4f;background:#dcece4}.assistant-item-status.failed,.assistant-item-status.blocked{color:#963f31;background:#f8dfd8}.assistant-item-status.executing{color:#765c20;background:#f5e6ba}.assistant-review-fields{overflow:visible;margin:0!important;padding:18px!important}.assistant-review-item.excluded{opacity:.65}.assistant-review-result{color:#315e52;background:#eef7f1;border:1px solid #c9dfd2;border-radius:8px;align-items:center;gap:10px;margin:18px;padding:14px;display:flex}.assistant-review-result strong{font-family:Songti SC,STSong,serif;font-size:16px}.assistant-review-result span{font-size:12px}.assistant-review-warnings{color:#765d31;background:#fff8e8;border-bottom:1px solid #eadfc9;gap:5px;padding:10px 18px;font-size:11px;display:grid}.assistant-review-warnings span:before{content:"需核对 · ";font-weight:800}.assistant-review-fields select[multiple]{min-height:92px;padding:7px}.assistant-review-summary-input{box-sizing:border-box;resize:vertical;color:#61716b;width:100%;min-height:48px;font:inherit;background:#fffefa;border:1px solid #d7d2c7;border-radius:7px;margin-top:5px;padding:7px 9px;font-size:11px;font-weight:500;line-height:1.6;display:block}.assistant-review-summary-input:focus{outline-offset:1px;outline:2px solid #a8bdb5}@media (width<=680px){.assistant-plan-dialog{width:calc(100vw - 16px);max-height:calc(94 * var(--vh1))}.assistant-plan-form{max-height:calc(calc(94 * var(--vh1)) - 70px)}.assistant-plan-summary{grid-template-columns:42px 1fr}.assistant-plan-summary>span{grid-column:2}.assistant-plan-grid{grid-template-columns:1fr}.assistant-plan-wide{grid-column:auto}.assistant-plan-form>footer button{flex:1}}.assistant-basis{margin:8px 0 0}.assistant-basis-toggle{color:#6d6350;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:#fdfbf4;border:1px dashed #d8cdb6;border-radius:5px;max-width:100%;padding:5px 9px;font-size:10px;overflow:hidden}.assistant-basis-toggle:hover{border-color:#c9bb9c}.assistant-basis-source{color:#5c5344;background:#fbf8f0;border-radius:5px;margin:7px 0 0;padding:8px 10px;font-size:10px;line-height:1.8}.assistant-basis-source mark{color:#4a4234;background:#ffe9a8;border-radius:3px;padding:1px 3px;font-weight:700}.assistant-basis.is-missing{color:#8a6a33;background:#f7efdd;border-radius:5px;margin:8px 0 0;padding:5px 9px;font-size:10px;line-height:1.6}.assistant-query-pick{background:#f4faf7;border:1px dashed #bfd5cd;border-radius:8px;gap:6px;margin:8px 0 0;padding:10px 12px;display:grid}.assistant-query-status{color:#7c8a83;margin:0;font-size:11px;line-height:1.6}.assistant-query-status.is-ok{color:#2f6a58;font-weight:700}.assistant-query-row{cursor:pointer;background:#fff;border:1px solid #dfe7e1;border-radius:6px;align-items:center;gap:8px;padding:7px 9px;display:flex}.assistant-query-row:hover{border-color:#8e9d80}.assistant-query-row.is-picked{background:#e9f5f0;border-color:#2d8d7d}.assistant-query-row input{flex:none}.assistant-query-row span{color:#314d46;overflow-wrap:anywhere;min-width:0;font-size:11.5px;line-height:1.5}.assistant-record-ref{color:#8a5a2c;background:#fbf8ef;border:1px dashed #d5c7ad;border-radius:6px;padding:7px 9px;font-size:11px;display:block}.v2-dialog.assistant-review-dialog{background:#faf9f5;flex-direction:column;width:min(960px,100vw - 32px);max-height:calc(100vh - 24px);display:flex;overflow:hidden}.assistant-review-dialog>header{background:#faf9f5;flex:none;padding:18px 24px}.assistant-review-dialog>header h2{font-size:23px;line-height:1.3}.assistant-review-dialog .assistant-plan-form{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.review-overview{background:#f1f5ef;border-bottom:1px solid #e5e7df;flex:none;justify-content:space-between;align-items:center;gap:20px;padding:18px 24px;display:flex}.review-overview>div{min-width:0}.review-eyebrow{color:#7c897f;letter-spacing:.1em;margin-bottom:5px;font-size:11px;display:block}.review-overview strong{color:#31594d;overflow-wrap:anywhere;font-size:16px;line-height:1.6;display:block}.review-readiness{color:#39654f;background:#e1ecdf;border-radius:20px;flex:none;padding:6px 10px;font-size:11px}.review-readiness.is-pending{color:#84632b;background:#f3e9d2}.review-columns{flex:auto;min-height:0;display:flex;overflow:hidden}.review-scroll-body{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;align-content:start;gap:12px;min-width:0;min-height:0;padding:20px 24px;display:grid;overflow-y:auto}.review-side{background:#f6f8f3;border-left:1px solid #e2e6dc;flex-direction:column;flex:0 0 300px;gap:10px;min-width:0;padding:14px;display:flex;overflow-y:auto}.review-side .assistant-plan-followup{background:0 0;border:0;flex-direction:column;gap:9px;padding:0;display:flex}.assistant-review-dialog .assistant-review-list{grid-auto-rows:max-content;gap:16px;min-height:auto;margin:0;padding:0;display:grid;overflow:visible}.assistant-review-dialog .assistant-review-item{min-height:auto;box-shadow:none;background:#fffefa;border:1px solid #dce2d8;border-radius:12px;overflow:visible}.assistant-review-dialog .assistant-review-item>header{background:0 0;border-bottom:1px solid #e9ece4;border-radius:12px 12px 0 0;align-items:center;gap:12px;padding:14px 18px;display:flex}.assistant-review-dialog .assistant-review-item>header>div{flex:1;order:-1;align-items:center;gap:10px;min-width:0;display:flex}.review-step-number{letter-spacing:.06em;color:#899887;font-variant-numeric:tabular-nums;font-size:11px}.assistant-review-dialog .assistant-review-item>header h3{font:600 16px/1.5 var(--font-sans,sans-serif);color:#365a4c;margin:0}.assistant-review-dialog .assistant-review-choice{white-space:nowrap;gap:5px;font-size:11px;font-weight:500}.assistant-review-dialog .assistant-review-choice input{width:14px;height:14px;margin:0}.assistant-review-dialog .assistant-item-status{background:#f1f1e9;padding:4px 7px;font-size:10px;font-weight:500}.assistant-review-dialog .assistant-review-fields{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-height:auto;display:grid;overflow:visible;padding:18px!important}.assistant-review-dialog .assistant-review-fields label{gap:7px;font-size:12px;font-weight:500}.assistant-review-dialog .assistant-review-fields :is(input,select,textarea,output){background:#fff;border-color:#dce1d7;border-radius:7px;min-height:40px;padding:10px 11px;font-size:13px}.assistant-review-dialog .assistant-review-fields textarea{min-height:66px;line-height:1.6}.review-field-label{color:#536457;align-items:center;gap:7px;font-size:12px;font-weight:500;display:flex}.review-field-label :is(small,em){font-size:10px;font-style:normal;font-weight:400}.review-field-label em{color:#9a9e92}.review-field-label small{color:#987433;background:#f7efd9;border-radius:4px;padding:2px 5px}.review-field-label i{color:#a78950;font-style:normal}.assistant-review-dialog .review-field-missing :is(input,select,textarea){background:#fffdf6;border-color:#d9bb77}.review-student-field{gap:8px;display:grid}.review-student-card{background:#f2f5ee;border:1px solid #e5eade;border-radius:9px;align-items:center;gap:12px;padding:12px;display:flex}.review-student-avatar{color:#627554;background:#e1e9da;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:15px;display:grid}.review-student-card>div{gap:4px;min-width:0;display:grid}.review-student-card strong{color:#364f3f;font-size:14px}.review-student-card>div>span{color:#86907f;overflow-wrap:anywhere;font-size:11px}.review-student-card button{color:#56725b;background:0 0;border:0;flex:none;margin-left:auto;padding:6px;font-size:11px}.review-source{color:#879181;border-top:1px solid #e9ece4;padding:11px 18px;font-size:11px;line-height:1.7}.review-source>summary{cursor:pointer;width:fit-content}.review-source>summary:hover{color:#365a4c}.review-source blockquote{color:#65725e;overflow-wrap:anywhere;background:#f5f6ef;border-left:2px solid #b9c7ad;margin:10px 0 2px;padding:8px 12px}.review-source p{margin:8px 0 0}.review-source ul{padding-left:18px}.review-source label{gap:6px;margin-top:12px;display:grid}.review-source input{color:#536457;background:#fff;border:1px solid #dce1d7;border-radius:6px;padding:9px}.review-global-notes{color:#8b7956;background:#faf7ed;border:1px solid #e8dfcc;border-radius:8px;margin-top:16px}.assistant-review-dialog .assistant-plan-followup{margin:0}.review-field-hint{color:#7a8983;font-size:10px;line-height:1.5}.review-original-request{border:0;margin-top:8px;padding:10px 0 0}.review-context-note{color:#856d3f;background:#f8efd9;border-radius:8px;padding:12px;font-size:12px}.assistant-review-dialog .assistant-plan-form>footer{box-shadow:none;background:#fffefa;border-top:1px solid #e2e6dc;flex:none;align-items:center;gap:12px;padding:16px 24px}.assistant-review-dialog .assistant-plan-form>footer button{white-space:nowrap;min-height:40px;font-size:13px}.assistant-review-dialog .assistant-plan-form>footer .primary-button{margin-left:auto}.assistant-review-dialog .assistant-plan-missing-hint{color:#937138;font-size:11px;line-height:1.5}@media (width<=600px){.v2-dialog.assistant-review-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.assistant-review-dialog>header{padding:16px}.review-columns{display:block;overflow-y:auto}.review-scroll-body{padding:14px 12px;overflow:visible}.review-side{border-top:1px solid #e2e6dc;border-left:0;padding:12px}.review-overview{align-items:flex-start;gap:10px;padding:14px 16px}.review-overview strong{font-size:14px}.review-readiness{padding:5px 7px;font-size:10px}.assistant-review-dialog .assistant-review-fields{grid-template-columns:1fr;gap:14px;padding:14px!important}.assistant-review-dialog .assistant-review-item>header{flex-wrap:wrap;gap:8px;padding:12px}.assistant-review-dialog .assistant-review-item>header h3{font-size:14px}.assistant-review-dialog .assistant-plan-form>footer{flex-wrap:wrap;gap:8px;padding:12px}.assistant-review-dialog .assistant-plan-missing-hint{flex-basis:100%;order:-1}.review-student-card{gap:8px}}.ai-chat-launcher{width:46px;height:46px;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;outline:0;place-items:center;padding:0;display:grid;position:relative}.ai-chat-launcher:before{content:"";z-index:0;filter:blur(3px);background:radial-gradient(circle,#f6ce6057,#f6ce6000 72%);border-radius:50%;transition:all .2s;position:absolute;inset:4px}.ai-chat-launcher>img{z-index:1;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 6px 8px #3d2c173d);transform-origin:50% 72%;grid-area:1/1;width:100%;height:100%;animation:3.4s ease-in-out infinite ai-bee-float;position:relative}.ai-chat-launcher:hover:before{background:radial-gradient(circle,#f6ce6080,#f6ce6000 72%);inset:1px}.ai-chat-launcher:hover>img{animation:.7s ease-in-out infinite alternate ai-bee-wave}.ai-chat-launcher:focus-visible{border-radius:50%;box-shadow:0 0 0 3px #2f817642}.ai-chat-launcher i{z-index:2;color:#fffaee;background:#c98a2e;border-radius:99px;min-width:17px;padding:2px 5px;font:700 10px/1.4 ui-sans-serif,system-ui,sans-serif;position:absolute;top:-1px;right:-1px;box-shadow:0 2px 5px #3d2c1747}@keyframes ai-bee-float{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-4px)rotate(2deg)}}@keyframes ai-bee-wave{0%{transform:translateY(-2px)rotate(-4deg)scale(1.01)}to{transform:translateY(-4px)rotate(5deg)scale(1.04)}}@media (prefers-reduced-motion:reduce){.ai-chat-launcher>img,.ai-chat-welcome>img,.ai-chat-thinking>img,.ai-chat-typing i,.ai-chat-float,.ai-chat-row{animation:none}.ai-chat-send,.ai-chat-suggest button,.ai-chat-welcome>img{transition:none}}.ai-chat-float{z-index:45;width:min(430px,100vw - 28px);height:min(640px,calc(86 * var(--vh1)));transform-origin:100% 0;background:#fffdf7;border:1px solid #cdbb9b;border-left:5px solid #567364;border-radius:0 12px 12px 10px;flex-direction:column;animation:.22s ease-out ai-float-open;display:flex;position:fixed;bottom:22px;right:22px;overflow:hidden;box-shadow:3px 4px #e8dfcc,0 18px 40px #5845282b}.ai-chat-float.is-closing{animation:.22s ease-in forwards ai-float-out}.ai-chat-scrim{z-index:44;background:0 0;position:fixed;inset:0}.ai-chat-scrim.is-closing{pointer-events:none}.ai-chat-float-head{background:radial-gradient(circle at 1px 1px,#e8d5a340 1.2px,#0000 0) 0 0/12px 12px,linear-gradient(#f8f3e6,#f3ecda);border-bottom:1px dashed #d9c9a4;flex:none;align-items:center;gap:10px;padding:12px 14px;display:flex}.ai-chat-float-mark{background:radial-gradient(circle,#f6ce6073,#f6ce6000 74%);border-radius:50%;flex:none;place-items:center;width:38px;height:38px;display:grid;position:relative}.ai-chat-float-mark>img{object-fit:contain;filter:drop-shadow(0 3px 5px #3d2c1733);pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%}.ai-chat-float-head>div{flex:auto;min-width:0}.ai-chat-float-head strong{color:#36584d;font:700 15px/1.4 var(--font-song,serif);letter-spacing:.06em;display:block}.ai-chat-float-head small{color:#94886f;font-size:10px;display:block}.ai-chat-float-head>button{color:#60735e;cursor:pointer;background:#fffaf0;border:1px solid #cbbb9b;border-radius:6px;flex:none;place-items:center;width:28px;height:28px;display:grid}.ai-chat-float-head>button:hover{background:#f8f4e9;border-color:#8e9d80}.ai-chat-float-transcript{scrollbar-width:thin;scrollbar-color:#d9c9a4 transparent;flex-direction:column;flex:auto;gap:10px;min-height:0;padding:14px 14px 10px;display:flex;overflow-y:auto}.ai-chat-row{animation:.18s ease-out ai-float-in;display:flex}.ai-chat-row.is-user{justify-content:flex-end}.ai-chat-bubble{border-radius:10px;max-width:88%;margin:0;padding:9px 12px;font-size:12.5px;line-height:1.7}.ai-chat-bubble.is-user{color:#fffaee;overflow-wrap:anywhere;background:#36584d;border-bottom-right-radius:3px}.ai-chat-bubble.is-assistant{color:#3f4a46;background:#fff;border:1px solid #e7dcc4;border-top-left-radius:3px}.ai-chat-bubble.is-files{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ai-chat-files-note{flex-basis:100%}.ai-chat-file-chip{text-overflow:ellipsis;white-space:nowrap;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:99px;align-items:center;gap:5px;max-width:100%;padding:3px 8px;font-size:11px;display:inline-flex;overflow:hidden}.ai-chat-notice{border-radius:8px;max-width:92%;margin:0;padding:7px 11px;font-size:11.5px;line-height:1.6}.ai-chat-notice.is-error{color:#9a4b3d;background:#fbe9e5}.ai-chat-notice.is-info{color:#6d6350;background:#f6f1e5}.ai-chat-bubble.is-answer{justify-items:start;gap:8px;max-width:94%;display:grid}.ai-chat-answer-what{color:#3f4a46;margin:0;font-weight:600}.ai-chat-bubble.is-answer .query-result-table{max-height:220px;overflow:auto}.ai-chat-plan{background:#fbf8ef;border:1px solid #d8ccb2;border-left:4px solid #567364;border-radius:3px 9px 9px 3px;gap:9px;width:94%;margin:0;padding:11px 12px;display:grid}.ai-chat-plan[data-status=completed]{background:#f7faf5;border-left-color:#3f8a68}.ai-chat-plan[data-status=failed],.ai-chat-plan[data-status=partial-failed]{border-left-color:#b0653f}.ai-chat-plan>header{align-items:center;gap:8px;display:flex}.ai-chat-plan>header .ai-chat-mark{flex:none;place-items:center;width:24px;height:24px;display:grid}.ai-chat-plan>header .ai-chat-mark>img{object-fit:contain;filter:drop-shadow(0 2px 3px #3d2c172e);width:100%;height:100%}.ai-chat-plan>header strong{color:#425d50;overflow-wrap:anywhere;flex:auto;min-width:0;font-size:12.5px;line-height:1.5}.ai-chat-plan>header em{color:#7a5a2c;background:#f6ead6;border-radius:3px;flex:none;padding:2px 6px;font-size:9.5px;font-style:normal;font-weight:750}.ai-chat-plan ol{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ai-chat-plan li{grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:7px;display:grid}.ai-chat-plan li small{color:#8b8272;font-size:9.5px}.ai-chat-plan li>div{min-width:0}.ai-chat-plan li strong{color:#3f4a46;font-size:11.5px;line-height:1.5;display:block}.ai-chat-plan li span{color:#7c8a83;font-size:10.5px;line-height:1.55;display:block}.ai-chat-plan li em{color:#5c6b64;background:#eef0ec;border-radius:3px;padding:1px 6px;font-size:9px;font-style:normal;font-weight:750}.ai-chat-plan li.succeeded em{color:#2f6a58;background:#e4f1e9}.ai-chat-plan li.failed em,.ai-chat-plan li.blocked em{color:#9a4b3d;background:#fbe9e5}.ai-chat-plan li.ai-chat-plan-more{color:#9a8f78;grid-template-columns:1fr;font-size:10.5px}.ai-chat-plan-ask{color:#8a5a2c;background:#f8ead6;border-radius:5px;margin:0;padding:6px 9px;font-size:10.5px;line-height:1.6}.ai-chat-card-button{color:#fffaee;cursor:pointer;background:#36584d;border:1px solid #3b5a4d;border-radius:6px;justify-self:start;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:750;display:inline-flex}.ai-chat-card-button:hover:not(:disabled){background:#294c40}.ai-chat-card-button:disabled{opacity:.5;cursor:not-allowed}.ai-chat-card-hint{color:#9a8f78;margin:0;font-size:10px;line-height:1.6}.ai-chat-file{background:#fbf8ef;border:1px solid #d8ccb2;border-left:4px solid #ad9164;border-radius:3px 9px 9px 3px;gap:8px;width:94%;margin:0;padding:11px 12px;display:grid}.ai-chat-file.is-error{background:#fdf6f2;border-left-color:#b0653f}.ai-chat-file>header{align-items:center;gap:8px;display:flex}.ai-chat-file-icon{color:#63795f;background:#e9ecdf;border-radius:3px;flex:none;place-items:center;width:24px;height:27px;display:grid}.ai-chat-file>header strong{color:#425d50;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:12px;overflow:hidden}.ai-chat-file>header em{color:#7a5a2c;background:#f6ead6;border-radius:3px;flex:none;padding:2px 6px;font-size:9.5px;font-style:normal;font-weight:750}.ai-chat-file.is-error>header em{color:#9a4b3d;background:#fbe9e5}.ai-chat-file-what{color:#6d7a74;margin:0;font-size:11px;line-height:1.6}.ai-chat-file-what strong{color:#3f6a58}.ai-chat-file-why{color:#9a8f78;font-size:10px;display:block}.ai-chat-file.is-error .ai-chat-plan-ask{color:#9a4b3d;background:#fbe9e5}.ai-chat-float-input{background:#f6f1e5;border-top:1px solid #e7dcc4;flex:none;align-items:flex-end;gap:8px;padding:10px 12px 12px;display:flex}.ai-chat-float-input textarea{color:#3d5147;resize:none;background:#fffdf7;border:1px solid #d5c7ad;border-radius:8px;flex:auto;min-height:44px;max-height:110px;padding:8px 10px;font-size:12.5px;line-height:1.6}.ai-chat-float-input textarea:focus{outline-offset:1px;outline:2px solid #56736466}.ai-chat-attach{color:#3b5a4d;cursor:pointer;background:#fffaf0;border:1px solid #cbbb9b;border-radius:9px;flex:none;place-items:center;width:40px;height:40px;transition:transform .15s,border-color .15s,background .15s;display:grid}.ai-chat-attach:hover:not(:disabled){background:#eef4ee;border-color:#567364;transform:scale(1.06)}.ai-chat-attach:disabled{opacity:.45;cursor:not-allowed}.ai-chat-send{color:#fffaee;cursor:pointer;background:#36584d;border:1px solid #3b5a4d;border-radius:9px;flex:none;place-items:center;width:40px;height:40px;transition:transform .15s,background .15s;display:grid}.ai-chat-send:hover:not(:disabled){background:#294c40;transform:scale(1.06)rotate(-4deg)}.ai-chat-send:disabled{opacity:.45;cursor:not-allowed}@media (width<=520px){.ai-chat-float{width:calc(100vw - 20px);height:calc(92 * var(--vh1));bottom:10px;right:10px}}.ai-chat-compose{background:#fdfaf2;border:1px solid #d8ccb2;border-left:4px solid #8a6a3f;border-radius:3px 9px 9px 3px;gap:8px;width:94%;margin:0;padding:11px 12px;display:grid}.ai-chat-compose>header{align-items:center;gap:8px;display:flex}.ai-chat-compose>header .ai-chat-mark{flex:none;place-items:center;width:24px;height:24px;display:grid}.ai-chat-compose>header .ai-chat-mark>img{object-fit:contain;filter:drop-shadow(0 2px 3px #3d2c172e);width:100%;height:100%}.ai-chat-compose>header strong{color:#5a4a30;overflow-wrap:anywhere;flex:auto;min-width:0;font-size:12.5px;line-height:1.5}.ai-chat-compose-body{color:#3f4a46;max-height:240px;font:12px/1.8 var(--font-song,serif);white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border:1px solid #e7dcc4;border-radius:6px;margin:0;padding:9px 10px;overflow:auto}.ai-chat-clarify{background:#f6f1e5;border:1px solid #d8ccb2;border-left:4px solid #567364;border-radius:3px 9px 9px 3px;gap:7px;width:94%;margin:0;padding:11px 12px;display:grid}.ai-chat-clarify-ask{color:#425d50;margin:0;font-size:12px;font-weight:700}.ai-chat-clarify button{color:#3b5a4d;text-align:left;cursor:pointer;background:#fffaf0;border:1px solid #cbbb9b;border-radius:6px;width:100%;padding:9px 11px;font-size:12px;font-weight:750;display:block}.ai-chat-clarify button:hover:not(:disabled){background:#eef4ee;border-color:#567364}.ai-chat-clarify button:disabled{opacity:.5;cursor:not-allowed}.ai-chat-steps{color:#9a8f78;margin:0;font-size:10.5px}.ai-chat-step-block{gap:4px;min-width:0;display:grid}.ai-chat-step-block small{color:#9a8f78;font-size:9.5px}.ai-chat-welcome{text-align:center;justify-items:center;gap:7px;margin:auto 0;padding:16px 10px 8px;display:grid}.ai-chat-welcome>img{object-fit:contain;transform-origin:50% 80%;width:104px;height:104px;transition:filter .25s;animation:3.4s ease-in-out infinite ai-bee-float}.ai-chat-welcome:hover>img{filter:drop-shadow(0 10px 16px #3d2c1742)}.ai-chat-welcome-greet{color:#425d50;font:700 15px/1.5 var(--font-song,serif);letter-spacing:.05em;margin:2px 0 0}.ai-chat-welcome-hint{color:#9a8f78;max-width:320px;margin:0;font-size:11.5px;line-height:1.8}.ai-chat-suggest{flex-wrap:wrap;justify-content:center;gap:7px;margin-top:6px;display:flex}.ai-chat-suggest button{color:#8a5a2c;cursor:pointer;background:#fffaf0;border:1px solid #e3d3a8;border-radius:99px;padding:6px 12px;font-size:11.5px;font-weight:650;transition:border-color .15s,background .15s,transform .15s}.ai-chat-suggest button:hover:not(:disabled){background:#fdf3dc;border-color:#c98a2e;transform:translateY(-1px)}.ai-chat-suggest button:disabled{opacity:.5;cursor:not-allowed}.ai-chat-thinking{color:#7c8a83;background:#f0efe6;border-radius:8px;align-items:center;gap:8px;max-width:92%;margin:0;padding:6px 12px 6px 8px;font-size:11.5px;line-height:1.6;display:flex}.ai-chat-thinking>img{object-fit:contain;flex:none;width:24px;height:24px;animation:1.2s ease-in-out infinite ai-bee-float}.ai-chat-typing{flex:none;gap:4px;display:inline-flex}.ai-chat-typing i{background:#c98a2e;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite ai-typing}.ai-chat-typing i:nth-child(2){animation-delay:.15s}.ai-chat-typing i:nth-child(3){animation-delay:.3s}@keyframes ai-typing{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}@keyframes ai-float-open{0%{opacity:0;transform:scale(.55)translateY(10%)}to{opacity:1;transform:none}}@keyframes ai-float-in{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:none}}@keyframes ai-float-out{0%{opacity:1;transform:none}to{opacity:0;transform:translate(-8%,-6%)scale(.1)}}.handover-dialog{z-index:62;width:min(760px,100vw - 32px);height:min(760px,calc(100 * var(--vh1) - 48px));background:#fffdf7;border:1px solid #cdbb9b;border-top:5px solid #567364;border-radius:12px 12px 10px 10px;flex-direction:column;margin:auto;display:flex;position:fixed;inset:0;overflow:hidden;box-shadow:0 24px 64px #58452840}.handover-head{background:#f6f1e5;border-bottom:1px solid #e7dcc4;flex:none;align-items:center;gap:10px;padding:13px 16px;display:flex}.handover-mark{color:#fffaee;background:#36584d;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font:800 13px/1 ui-sans-serif,system-ui,sans-serif;display:grid}.handover-head>div{flex:auto;min-width:0}.handover-head strong{color:#36584d;font:700 16px/1.4 var(--font-song,serif);letter-spacing:.06em;display:block}.handover-head small{color:#94886f;font-size:10.5px;display:block}.handover-head>button{color:#60735e;cursor:pointer;background:#fffaf0;border:1px solid #cbbb9b;border-radius:6px;flex:none;place-items:center;width:28px;height:28px;display:grid}.handover-head>button:hover{background:#f8f4e9;border-color:#8e9d80}.handover-dialog:before{content:"";z-index:-1;background:#3f33204f;position:fixed;inset:0}@media (width<=640px){.handover-dialog{width:calc(100vw - 16px);height:calc(100 * var(--vh1) - 24px)}}.redact-preview{gap:15px;padding:2px 4px 0;display:grid}.redact-preview-head{align-items:flex-start;gap:10px;display:flex}.redact-preview-mark{color:#fffaee;background:#567364;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.redact-preview-head>div{flex:auto;min-width:0}.redact-preview-head strong{color:#3f4a46;font:700 13.5px/1.5 var(--font-song,serif);display:block}.redact-preview-head small{color:#7c7360;margin-top:2px;font-size:11px;line-height:1.6;display:block}.redact-preview-level{color:#7a5a2c;letter-spacing:.04em;background:#f6ead6;border:1px solid #cdb89b;border-radius:99px;flex:none;padding:3px 9px;font-size:10px;font-weight:750}.redact-preview-what{background:#fff;border:1px solid #e0d5bd;border-radius:10px;gap:4px;margin:0;padding:12px 14px;display:grid}.redact-preview-what-title{color:#8b8272;letter-spacing:.05em;margin:0;font-size:10.5px;font-weight:700}.redact-preview-what-text{color:#3f4a46;overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.7}.redact-preview-map{gap:7px;display:grid}.redact-preview-map-title{color:#8b8272;letter-spacing:.05em;margin:0;font-size:10.5px;font-weight:700}.redact-preview-map ul{gap:5px;margin:0;padding:0;list-style:none;display:grid}.redact-preview-map li{background:#fff;border:1px solid #e7dcc4;border-radius:7px;align-items:center;gap:8px;padding:6px 9px;font-size:11.5px;display:flex}.redact-preview-map li>i{color:#60735e;background:#eef1e7;border-radius:4px;flex:none;padding:2px 6px;font-size:9.5px;font-style:normal;font-weight:750}.redact-preview-map li>b{color:#3f4a46;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-weight:650;overflow:hidden}.redact-preview-map li>span{color:#b3a98f;flex:none}.redact-preview-map li>code{color:#7a5a2c;text-overflow:ellipsis;white-space:nowrap;background:#f6ead6;border-radius:4px;flex:0 auto;min-width:0;padding:1px 6px;font-family:inherit;font-weight:700;overflow:hidden}.redact-preview-map li>em{color:#a89d85;flex:none;align-items:center;gap:3px;font-size:9.5px;font-style:normal;display:inline-flex}.redact-preview-map li.is-revealed{background:#fdf6e7;border-color:#cdb89b}.redact-reveal{color:#425d50;cursor:pointer;background:#fffaf0;border:1px solid #cdbb9b;border-radius:5px;flex:none;padding:3px 8px;font-size:10px;font-weight:700}.redact-reveal:hover{background:#f8f4e9;border-color:#8e9d80}.redact-preview-custom{gap:8px;display:grid}.redact-preview-custom label{gap:6px;display:grid}.redact-preview-custom label>span{color:#8b8272;letter-spacing:.03em;font-size:11px;font-weight:700}.redact-custom-row{gap:7px;display:flex}.redact-custom-row input{color:#3f4a46;background:#fff;border:1px solid #d8ccb2;border-radius:7px;flex:auto;min-width:0;padding:7px 10px;font-size:12px}.redact-custom-row input:focus{border-color:#567364;outline:none;box-shadow:0 0 0 3px #56736422}.redact-custom-list{flex-wrap:wrap;gap:6px;display:flex}.redact-custom-chip{color:#7a5a2c;background:#fbe9b855;border:1px solid #e0b95b66;border-radius:99px;align-items:center;gap:6px;max-width:100%;padding:3px 9px;font-size:11px;display:inline-flex}.redact-custom-chip button{color:#9a4b3d;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:16px;height:16px;padding:0;font-size:12px;line-height:1;display:grid}.redact-custom-chip button:hover{background:#f3ddd5}.redact-preview-ask{color:#8a6a3a;background:#fdf3dd;border-radius:6px;margin:0;padding:6px 9px;font-size:11px;line-height:1.6}.redact-preview-note{color:#a89d85;border-top:1px dashed #e7dcc4;margin:0;padding-top:10px;font-size:10.5px;line-height:1.8}.redact-preview-actions{justify-content:flex-end;gap:9px;display:flex}.ai-workspace-page.inbox-stationery{--inbox-ink:#36584d;--inbox-rule:#ded2ba;--inbox-sheet:#fffdf7;min-height:calc(calc(100 * var(--vh1)) - 92px);color:var(--inbox-ink);background:0 0;padding:26px clamp(18px,2.8vw,42px) 38px}.inbox-stationery:before{display:none}.inbox-stationery .ai-upload-modebar{background:0 0;border:0;border-radius:0;align-items:flex-end;gap:20px;width:100%;max-width:1400px;min-height:52px;margin:0 auto;padding:0 18px 0 0}.inbox-stationery .inbox-page-index{color:#fff9e9;background:#36584d;border:1px solid #36584d;border-bottom:0;border-radius:12px 12px 0 0;align-items:center;gap:10px;padding:15px 25px;display:flex;box-shadow:inset 0 3px #ffffff14}.inbox-stationery .inbox-page-index strong{color:inherit;font:700 17px/1.4 var(--font-song,serif);letter-spacing:.1em}.inbox-stationery .ai-workspace-composer{grid-template-columns:minmax(0,1fr) 310px;align-items:stretch;gap:24px;width:100%;max-width:1400px}.inbox-stationery .ai-workspace-panel{background:var(--inbox-sheet);-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid #cdbb9b;border-left:7px solid #567364;border-radius:0 9px 9px 3px;min-width:0;position:relative;box-shadow:3px 4px #e8dfcc,5px 7px #d9cbb1,0 12px 28px #5845280b}.inbox-stationery .ai-workspace-input-form{background:0 0;flex-direction:column;gap:0;margin:0;padding:20px 28px 0;display:flex}.inbox-stationery .ai-upload-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin:0 0 13px;padding:0;display:flex}.inbox-stationery .ai-upload-heading strong{color:var(--inbox-ink);font:700 clamp(21px,2vw,28px)/1.5 var(--font-song,serif);letter-spacing:.05em}.inbox-stationery .inbox-note-stamp{color:#94774d;font:15px/1.4 var(--font-kai,serif);letter-spacing:.12em;border:1px solid #b69b71;border-radius:3px;flex:none;padding:5px 9px;transform:rotate(5deg)}.inbox-stationery .ai-workspace-input-form textarea{box-sizing:border-box;resize:vertical;color:#3d5147;width:100%;min-height:180px;max-height:320px;font:16px/29px var(--font-song,serif);box-shadow:none;background:repeating-linear-gradient(#0000 0 31px,#dcd2bd80 31px 32px);border:0;border-left:2px solid #c7947b55;border-radius:0;margin:0;padding:0 12px;display:block}.inbox-stationery .ai-workspace-input-form textarea::placeholder{color:#aaa08b;opacity:1;font-size:14px}.inbox-stationery .ai-workspace-input-form textarea:focus{outline-offset:5px;box-shadow:none;outline:2px solid #56736466}.inbox-writing-footer{color:#948670;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin:12px 0 20px;font-size:11px;display:flex}.inbox-stationery .ai-upload-dropzone{min-height:76px;box-shadow:none;background:#f6f1e5;border:1px dashed #c9b999;border-radius:5px;align-items:center;gap:12px;margin:0 0 14px;padding:14px 16px;display:flex}.inbox-stationery .ai-upload-dropzone:hover{background:#f0f0e5;border-color:#567364}.inbox-stationery .ai-upload-dropzone-icon{color:#667c69;background:#e8e8d9;border-radius:3px;width:34px;height:38px}.inbox-stationery .ai-upload-dropzone strong{color:#536756;font-size:13px}.inbox-stationery .ai-upload-dropzone small{color:#958871;font-size:11px;line-height:1.6}.inbox-stationery .ai-upload-queue{max-height:180px;margin:0 0 14px;overflow:auto}.inbox-stationery .ai-upload-queue-item{border-color:var(--inbox-rule);background:#faf6eb;border-radius:4px}.inbox-stationery .ai-workspace-input-tools{border-top:1px solid var(--inbox-rule);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin:0;padding:17px 0;display:flex}.inbox-stationery .ai-workspace-submit{color:#fffaee;background:#36584d;border:1px solid #3b5a4d;border-radius:6px;flex:none;justify-content:center;align-items:center;gap:10px;width:auto;min-height:44px;padding:10px 19px;font-size:13px;display:inline-flex;box-shadow:inset 0 2px #ffffff17,0 3px 6px #36584d15}.inbox-stationery .ai-workspace-submit:hover{background:#294c40;transform:none}.inbox-stationery button:disabled{opacity:.5;cursor:not-allowed}.inbox-stationery button:focus-visible,.inbox-stationery [role=button]:focus-visible{outline-offset:3px;outline:2px solid #567364}.inbox-stationery .ai-upload-progress{border-color:var(--inbox-rule);background:#f5f0e3;margin:0 20px 18px}.inbox-stationery .ai-upload-progress-track i{background:#567364}.inbox-material-column{flex-direction:column;gap:12px;min-width:0;min-height:0;padding-top:0;display:flex}.inbox-material-column>.ai-upload-history{flex:auto;min-height:0}.inbox-stationery .ai-upload-history.ai-upload-history-compact{background:#f4eddd;border:1px solid #cbbb9d;border-top:5px solid #ad9164;border-radius:4px 7px 7px 4px;flex-direction:column;width:100%;max-width:none;min-height:0;margin:0;padding:0;display:flex;overflow:hidden;box-shadow:2px 3px #e4d8c1}.inbox-stationery .ai-upload-history-compact .ai-upload-history-head{background:0 0;border-color:#e0d4bd;align-items:flex-start;gap:10px;margin:0;padding:15px 14px 12px}.inbox-stationery .ai-upload-history-compact .ai-upload-history-head>div:first-child{flex:auto;gap:4px;min-width:0}.inbox-stationery .ai-upload-history-compact .ai-upload-history-head strong{color:#486452;font:700 19px/1.35 var(--font-song,serif)}.inbox-stationery .ai-upload-history-compact .ai-upload-history-head span{color:#948670;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.5;overflow:hidden}.inbox-stationery .ai-upload-history-controls{flex:none;align-items:center;gap:5px;display:flex}.inbox-stationery .ai-upload-history-view-all,.inbox-stationery .ai-upload-history-refresh{color:#60735e;white-space:nowrap;cursor:pointer;background:#fffaf0;border:1px solid #cbbb9b;border-radius:4px;padding:5px 7px;font-size:10px;font-weight:750}.inbox-stationery .ai-upload-history-view-all:hover,.inbox-stationery .ai-upload-history-refresh:hover{background:#f8f4e9;border-color:#8e9d80}.inbox-stationery .ai-upload-history-files{scrollbar-width:thin;flex:auto;gap:0;min-height:0;padding:0 12px 10px;display:grid;overflow:auto}.inbox-stationery .ai-upload-history-file{border-top:1px solid #e0d4bb;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:4px 8px;padding:10px 2px;display:grid}.inbox-stationery .ai-upload-history-file-icon{color:#63795f;background:#e9ecdf;border-radius:3px;grid-area:1/1;place-items:center;width:25px;height:29px;display:grid}.inbox-stationery .ai-upload-history-file-icon.excel{color:#4b795f;background:#e5ecdc}.inbox-stationery .ai-upload-history-file-icon.plan{color:#7a5a2c;background:#f6ead6}.inbox-stationery .ai-upload-history-plan-errors{color:#9a4b3d;grid-column:1/-1;margin:6px 0 0;padding-left:16px;font-size:9px;line-height:1.6}.inbox-stationery .ai-upload-history-file-icon.search{color:#4a6b7a;background:#e2ebee}.inbox-stationery .ai-upload-history-file.is-turn .ai-upload-history-file-main strong{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.inbox-stationery .ai-upload-history-turn-detail{min-width:0;max-height:min(calc(34 * var(--vh1)),260px);border-top:1px dashed #dfe6dd;grid-area:3/1/auto/-1;margin-top:6px;padding-top:8px;overflow:auto}.inbox-stationery .ai-upload-history-turn-detail .query-result-table table{min-width:320px}.inbox-stationery .ai-upload-history-turn-detail .query-actions{margin-top:8px}.inbox-stationery .ai-upload-history-compose-body{color:#425d50;font:12px/1.8 var(--font-song,serif);white-space:pre-wrap;overflow-wrap:anywhere;background:#fbfdf8;border:1px dashed #dfe6dd;border-radius:5px;max-height:260px;margin:6px 0 0;padding:8px 10px;overflow:auto}.inbox-stationery .ai-upload-history-file-main{grid-area:1/2;gap:3px;min-width:0;display:grid}.inbox-stationery .ai-upload-history-file-main strong{color:#425d50;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.inbox-stationery .ai-upload-history-file-main small{color:#948670;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1.45;overflow:hidden}.inbox-stationery .ai-upload-history-file-actions{flex-wrap:wrap;grid-area:2/2;align-items:center;gap:5px;display:flex}.inbox-stationery .ai-upload-history-compact .ai-upload-history-task-status{border-radius:3px;padding:3px 6px;font-size:9px}.inbox-stationery .ai-upload-history-open,.inbox-stationery .ai-upload-history-download{color:#60735e;cursor:pointer;background:#fffaf0;border:1px solid #cbbb9b;border-radius:3px;padding:3px 7px;font-size:9px;font-weight:750}.inbox-stationery .ai-upload-history-open:hover,.inbox-stationery .ai-upload-history-download:hover{background:#f8f4e9;border-color:#8e9d80}.inbox-stationery .ai-upload-history-empty{color:#96866b;text-align:left;background:#fbf7ec;border:1px dashed #d5c7ad;border-radius:4px;justify-items:start;gap:5px;margin:0 12px 12px;padding:14px 12px;display:grid}.inbox-stationery .ai-upload-history-empty strong{color:#61735d;font-size:11px}.inbox-stationery .ai-upload-history-empty span{color:#96866b;font-size:10px;line-height:1.6}.inbox-stationery .ai-upload-history-full-list{width:100%;max-width:none;box-shadow:none;background:#faf6ec;border-color:#d5c7ad;border-radius:5px;margin:0;padding:16px}.inbox-stationery .ai-upload-history-full-list .ai-upload-history-files{max-height:none;padding:0;overflow:visible}.intake-hint{color:#6d6350;background:#fdfbf4;border:1px dashed #dbd2bd;border-radius:5px;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:9px 0 0;padding:8px 10px;font-size:10px;line-height:1.6;display:flex}.intake-hint>svg{color:#a89170;flex:none}.intake-hint-what strong{color:#4a4234}.intake-hint-path{color:#7c8a83;align-items:center;gap:5px;display:inline-flex}.intake-hint-path b{color:#2f6a58;background:#e6f1ea;border-radius:3px;padding:1px 6px;font-weight:800}.intake-hint.is-local .intake-hint-path b{color:#5c6b64;background:#eef0ec}.intake-hint.is-image-ai .intake-hint-path b{color:#8a5a2c;background:#f8ead6}.intake-hint-sensitive{color:#9a4b3d;background:#fbe9e5;border-radius:3px;padding:1px 6px;font-weight:700}.intake-hint-hits{color:#a9a08d;margin-left:auto}.inbox-stationery .ai-upload-modebar{flex:none}@media (width>=821px) and (height>=681px){.inbox-material-column{min-height:0}}.inbox-history-full-page{width:100%;max-width:1400px;height:calc(calc(100 * var(--vh1)) - 158px);flex-direction:column;gap:12px;min-height:380px;margin:0 auto;display:flex}.inbox-history-full-page>header{color:#8b806b;border-bottom:1px solid #ded2ba;justify-content:space-between;align-items:center;gap:12px;padding:0 2px 10px;font-size:11px;display:flex}.inbox-history-full-page>header button{color:#536756;cursor:pointer;background:#fffdf7;border:1px solid #cbbb9b;border-radius:4px;padding:8px 11px;font-size:12px;font-weight:750}.inbox-history-full-page>header button:hover{background:#f8f4e9;border-color:#8e9d80}.inbox-history-full-page-content{scrollbar-width:thin;flex:1;min-height:0;padding:2px 4px 8px;overflow:auto}@media (width<=1100px){.inbox-stationery .ai-workspace-composer{grid-template-columns:minmax(0,1fr) 260px;gap:18px}.inbox-stationery .ai-workspace-input-form{padding:20px 20px 0}}@media (width<=820px){.ai-workspace-page.inbox-stationery{padding:18px 16px 30px}.inbox-stationery .ai-workspace-composer{grid-template-columns:minmax(0,1fr)}.inbox-material-column{grid-template-columns:minmax(0,1fr);margin-top:7px}.inbox-stationery .ai-upload-modebar{flex-wrap:wrap-reverse;gap:10px}}@media (width<=820px),(height<=680px){.inbox-material-column{height:auto;max-height:calc(100vh - 205px);overflow:auto}.inbox-stationery .ai-upload-history.ai-upload-history-compact{min-height:0;max-height:none}.inbox-stationery .ai-upload-history-files{flex:none;max-height:clamp(100px,22vh,165px)}.inbox-history-full-page{height:calc(100vh - 125px);min-height:300px}}@media (width<=520px){.inbox-material-column{grid-template-columns:1fr}.inbox-stationery .ai-workspace-input-form{padding:18px 16px 0}.inbox-stationery .ai-workspace-submit{width:100%}.inbox-stationery .inbox-page-index{padding:12px 18px}}.inbox-examples{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 12px;display:flex}.inbox-examples-label{color:#948670;font-size:11px}.inbox-example-chip{color:#6d6350;cursor:pointer;background:#fbf7ec;border:1px dashed #c9b999;border-radius:99px;padding:5px 10px;font-size:11px}.inbox-example-chip:hover:not(:disabled){color:#36584d;background:#f0f4ec;border-style:solid;border-color:#567364}.inbox-example-chip:disabled{opacity:.5;cursor:not-allowed}:is(.status,.record-status,.account-status,.settings-account-status,.settings-switch-status,.api-status,.student-status-chip,.attendance-status-chip,.dorm-status-pill,.work-task-status,.calendar-task-status,.priority-chip,.discipline-status,.party-status,.party-material-status,.aid-status,.assistant-item-status,.ai-recent-file-status,.ai-upload-history-status,.ai-upload-history-task-status,.attention-reason,.status-frame){box-sizing:border-box;white-space:nowrap;align-items:center;gap:6px;box-shadow:none!important;background:0 0!important;border:1px solid!important;border-radius:5px!important;padding:5px 8px!important;display:inline-flex!important}:is(.status,.record-status,.account-status,.settings-account-status,.settings-switch-status,.api-status,.student-status-chip,.attendance-status-chip,.dorm-status-pill,.work-task-status,.calendar-task-status,.priority-chip,.discipline-status,.party-status,.party-material-status,.aid-status,.assistant-item-status,.ai-recent-file-status,.ai-upload-history-status,.ai-upload-history-task-status,.attention-reason,.status-frame):not(.leave-status):before{color:currentColor;content:"·";background:#ffffffb8;border-radius:50%;flex:0 0 16px;place-items:center;width:16px;height:16px;font-size:12px;font-weight:900;line-height:1;display:inline-grid}:is(.status,.record-status,.account-status,.settings-account-status,.settings-switch-status,.api-status,.student-status-chip,.attendance-status-chip,.dorm-status-pill,.work-task-status,.calendar-task-status,.priority-chip,.discipline-status,.party-status,.party-material-status,.aid-status,.assistant-item-status,.ai-recent-file-status,.ai-upload-history-status,.ai-upload-history-task-status,.attention-reason,.status-frame):is(.normal,.done,.closed,.returned,.complete,.completed,.granted,.ready,.succeeded,.lifted,.running,.status-done,.status-closed,.status-complete,.status-normal,.status-succeeded):before{content:"✓"}:is(.status,.record-status,.account-status,.settings-account-status,.settings-switch-status,.api-status,.student-status-chip,.attendance-status-chip,.dorm-status-pill,.work-task-status,.calendar-task-status,.priority-chip,.discipline-status,.party-status,.party-material-status,.aid-status,.assistant-item-status,.ai-recent-file-status,.ai-upload-history-status,.ai-upload-history-task-status,.attention-reason,.status-frame):is(.abnormal,.overdue,.exception,.failed,.blocked,.missing,.rejected,.urgent,.cancelled,.status-overdue,.status-failed,.status-cancelled,.status-alert,.status-rejected):before{content:"!"}.status-frame.status-open,.status-frame.status-in_progress,.status-frame.status-doing,.status-frame.status-todo,.status-frame.status-scheduled{color:#357c99!important}.status-frame.status-done,.status-frame.status-closed,.status-frame.status-complete,.status-frame.status-normal,.status-frame.status-succeeded{color:#2f785f!important}.status-frame.status-cancelled,.status-frame.status-overdue,.status-frame.status-failed,.status-frame.status-alert,.status-frame.status-rejected{color:#b54b41!important}:is(.party-archive-summary,.party-archive-pill,.party-detail-stage-pill){box-sizing:border-box;white-space:nowrap;align-items:center;gap:5px;width:max-content;box-shadow:none!important;background:0 0!important;border:1px solid!important;border-radius:5px!important;padding:4px 7px!important;display:inline-flex!important}.party-archive-summary i{flex:0 0 7px;width:7px;height:7px}.party-archive-summary.complete,.party-archive-pill.complete{color:#2f785f!important}.party-archive-summary.pending,.party-archive-pill.pending{color:#996b20!important}.party-archive-summary.missing,.party-archive-pill.missing{color:#b54b41!important}.party-status.pending{color:#996b20!important}.party-status.running{color:#357c99!important}.party-status.completed{color:#2f785f!important}:is(.party-detail-stage-pill,.party-page .party-status):is(.applicant,.activist,.development,.probationary,.member){letter-spacing:.02em;font-weight:800;border:0!important;border-radius:999px!important;gap:0!important;padding:4px 11px!important}:is(.party-detail-stage-pill,.party-page .party-status):is(.applicant,.activist,.development,.probationary,.member):before{content:none!important;display:none!important}:is(.party-detail-stage-pill,.party-page .party-status).applicant{color:#65736e!important;background:#e9eeeb!important}:is(.party-detail-stage-pill,.party-page .party-status).activist{color:#247b69!important;background:#dff1e9!important}:is(.party-detail-stage-pill,.party-page .party-status).development{color:#a66c16!important;background:#fff0d4!important}:is(.party-detail-stage-pill,.party-page .party-status).probationary{color:#3e6fa6!important;background:#e4effb!important}:is(.party-detail-stage-pill,.party-page .party-status).member{color:#b33537!important;background:#f9e2e2!important}.party-relation-lines>span{color:#2f785f;white-space:nowrap;background:0 0;border:1px solid #c8d8d0;border-radius:5px;align-items:center;gap:4px;padding:3px 6px;display:inline-flex}.party-relation-lines>span.missing{color:#b54b41;border-color:#e2aaa2}.party-detail-page .profile-tags>span{white-space:nowrap;background:0 0;border:1px solid;border-radius:5px;align-items:center;padding:4px 7px;display:inline-flex}.priority-chip.priority-normal:before,.priority-chip.priority-important:before{content:"·"}.priority-chip.priority-urgent:before{content:"!"}:is(.wb-priority-pill,.dashboard-priority-list>button>em,.dashboard-agenda-list>button>em){box-sizing:border-box;white-space:nowrap;align-items:center;gap:4px;box-shadow:none!important;background:0 0!important;border:1px solid!important;border-radius:5px!important;padding:4px 7px!important;display:inline-flex!important}:is(.wb-priority-pill,.dashboard-priority-list>button>em,.dashboard-agenda-list>button>em):before{color:currentColor;content:"·";background:#ffffffb8;border-radius:50%;flex:0 0 13px;place-items:center;width:13px;height:13px;font-size:10px;font-weight:900;line-height:1;display:inline-grid}:is(.wb-priority-pill,.dashboard-priority-list>button>em,.dashboard-agenda-list>button>em).priority-urgent:before,:is(.wb-priority-pill,.dashboard-priority-list>button>em,.dashboard-agenda-list>button>em).overdue:before{content:"!"}.wb-note-body .status-frame,.wb-temp-grid article .status-frame,.wb-work-page-head .status-frame{font-size:inherit;gap:3px;padding:2px 5px!important}.wb-note-body .status-frame:before,.wb-temp-grid article .status-frame:before,.wb-work-page-head .status-frame:before{flex-basis:12px;width:12px;height:12px;font-size:9px}.work-list-page{height:calc(calc(100 * var(--vh1)) - 92px);box-sizing:border-box;color:#34554d;flex-direction:column;gap:12px;min-width:0;min-height:0;padding:18px 22px 16px;display:flex;overflow:hidden}.work-list-page button{cursor:pointer}.work-list-page button:focus-visible{outline-offset:3px;outline:2px solid #328775}.work-list-page .primary-button,.work-list-page .secondary-button{white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:7px 12px;font-size:12px;display:inline-flex}.work-list-page .work-overview{background:linear-gradient(105deg,#fffef9f5,#fffdf6d9);border:1px solid #dfd1ba;border-radius:12px;grid-template-columns:minmax(0,1.2fr) minmax(300px,1fr);gap:26px;padding:20px 26px 14px;display:grid;position:relative;box-shadow:0 4px 16px #624c2910}.work-list-page .work-paper-tab{color:#805f33;background:linear-gradient(#fffaf0,#f5eddd);border:1px solid #e3d5bd;border-radius:10px 10px 3px 3px;align-items:center;gap:10px;margin:0;padding:10px 17px;font-size:14px;font-weight:700;display:inline-flex}.work-list-page .work-overview>.work-paper-tab{position:absolute;top:-13px;left:8px}.work-list-page .work-paper-tab small{letter-spacing:.8px;color:#a08051;font-size:10px;font-weight:500}.work-list-page .work-overview-copy{align-items:center;gap:18px;min-width:0;display:flex}.work-list-page .work-overview-copy>div{min-width:0}.work-list-page .work-overview-icon{color:#18836c;background:#e2f0e9;border-radius:11px;flex:0 0 54px;place-items:center;height:54px;display:grid}.work-list-page .work-overview-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.work-list-page .work-overview-title h2{font:700 20px/1.35 Georgia,var(--font-song);color:#193f38;overflow-wrap:anywhere;margin:0}.work-list-page .work-overview-copy p{color:#738078;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 8px;font-size:12px;line-height:1.6;display:-webkit-box;overflow:hidden}.work-list-page .work-meta{color:#77857e;flex-wrap:wrap;align-items:center;gap:10px 16px;font-size:11px;display:flex}.work-list-page .work-meta span,.work-list-page .work-meta button{align-items:center;gap:6px;display:inline-flex}.work-list-page .work-meta button{color:#2e7b69;background:0 0;border:0;padding:0;font-size:11px}.work-list-page .work-overview-progress{border-left:1px solid #e1e6df;align-self:center;padding-left:24px}.work-list-page .work-progress-stack{gap:7px;display:grid}.work-list-page .work-progress-item{min-width:0}.work-list-page .work-progress-caption{color:#78847e;justify-content:space-between;align-items:center;margin-bottom:3px;font-size:11px;display:flex}.work-list-page .work-progress-caption strong{color:#2b6f5d;margin-left:5px;font:700 13px Georgia,serif}.work-list-page .work-progress-caption b{color:#6e897d;font-size:10px}.work-list-page .work-progress-track{background:#e9eeea;border:3px solid #fff;border-radius:8px;height:10px;margin-bottom:0;position:relative;overflow:hidden;box-shadow:0 1px 4px #3153461a}.work-list-page .work-progress-track:after{content:"";pointer-events:none;background-image:linear-gradient(90deg,#2b544852 0 1px,#0000 1px);background-repeat:repeat-x;background-size:10% 100%;position:absolute;inset:0}.work-list-page .work-progress-track>span{border-radius:inherit;background:linear-gradient(90deg,#21614f,#389780);height:100%;display:block}.work-list-page .work-progress-track.deadline>span{background:linear-gradient(90deg,#e1a061,#f3c879)}.work-list-page .work-progress-track.deadline.overdue>span{background:linear-gradient(90deg,#c96c5c,#e39a82)}.work-list-page .work-list-layout{flex:1;grid-template-columns:230px minmax(0,1fr) 320px;align-items:stretch;gap:12px;min-width:0;min-height:0;display:grid}.work-list-page .work-list-cases,.work-list-page .work-list-tasks,.work-list-page .work-task-detail{background:#fffdf9;border:1px solid #e5dfd3;border-radius:9px;min-width:0;box-shadow:0 4px 14px #58432507}.work-list-page .work-list-cases{background:linear-gradient(160deg,#fffefb,#f2f6f1);flex-direction:column;align-self:stretch;height:auto;min-height:0;display:flex;overflow:hidden}.work-list-page .work-list-cases>header,.work-list-page .work-list-tasks>header{justify-content:space-between;align-items:center;gap:10px;padding:16px 14px;display:flex}.work-list-page .work-list-layout h3{color:#294a41;margin:0;font-size:15px}.work-list-page .work-list-layout header h3{border-left:3px solid #cfb17d;padding-left:9px}.work-list-page .work-list-layout header h3 small{color:#a18a68;margin-left:6px;font-size:10px;font-weight:400}.work-list-page .work-list-cases>header .secondary-button{padding:6px 8px;font-size:11px}.work-list-page .work-case-head-actions{align-items:center;gap:5px;display:flex}.work-list-page .work-independent-switch{color:#397565;white-space:nowrap;background:#f7fbf7;border:1px solid #d8e4dc;border-radius:6px;justify-content:center;align-items:center;gap:4px;min-height:30px;padding:6px 8px;font-size:11px;display:inline-flex}.work-list-page .work-independent-switch:hover,.work-list-page .work-independent-switch.selected{color:#246b5a;background:#e4f2ea;border-color:#9bcbb8}.work-list-page .work-case-items{flex:1;align-content:start;gap:8px;min-height:0;padding:0 8px 12px;display:grid;overflow:hidden}.work-list-page .work-case-items>button{text-align:left;color:#397b68;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:20px minmax(0,1fr) 24px;align-items:center;gap:10px;min-width:0;padding:14px 12px;display:grid}.work-list-page .work-case-items>button:hover{background:#edf3ed}.work-list-page .work-case-items>button.selected{background:#e4f1e9;border-color:#b5d8c9;box-shadow:inset 3px 0 #288a71}.work-list-page .work-case-items:not(.independent-items)>button{position:relative}.work-list-page .work-case-items:not(.independent-items)>button+button:before{content:"";pointer-events:none;border-top:1px dashed #cddbd2;position:absolute;top:-5px;left:14px;right:14px}.work-list-page .work-case-copy{min-width:0}.work-list-page .work-case-copy strong{color:#285b4e;overflow-wrap:anywhere;font-size:13px;display:block}.work-list-page .work-case-copy small{color:#7c8a81;margin-top:6px;font-size:11px;display:block}.work-list-page .work-case-count{background:#d1e7dc;border-radius:50%;place-items:center;height:23px;font-size:11px;display:grid}.work-list-page .work-case-pagination{background:#ffffff47;border-top:1px solid #e2e7e2;margin-top:0;padding:7px 8px}.work-list-page .work-case-pagination.page-pager{color:#87958d;justify-content:center;gap:8px;min-height:38px;padding:5px 8px;font-size:10px}.work-list-page .work-case-pagination .page-pager-pages{gap:1px}.work-list-page .work-case-pagination .page-pager-pages>button:not([aria-label]){color:#708079;width:26px;height:26px;box-shadow:none;background:0 0;border:0;border-radius:6px;font-size:11px;transform:none}.work-list-page .work-case-pagination .page-pager-pages>button:not([aria-label]):before,.work-list-page .work-case-pagination .page-pager-pages>button:not([aria-label]):after{display:none}.work-list-page .work-case-pagination .page-pager-pages>button:not([aria-label]):hover{color:#2f7868;background:#edf5f0;border:0}.work-list-page .work-case-pagination .page-pager-pages>button:not([aria-label]).active{color:#287562;box-shadow:none;background:#e3f1ea;border:0;transform:none}.work-list-page .work-case-pagination .page-pager-pages>button[aria-label]{color:#7b8a83;background:0 0;border:0;border-radius:6px;width:26px;height:26px;padding:0}.work-list-page .work-case-pagination .page-pager-pages>button[aria-label]:hover:not(:disabled){color:#2f7868;background:#edf5f0}.work-list-page .work-case-pagination .page-pager-ellipsis{color:#a6b0aa;width:14px;height:26px;font-size:11px}.work-list-page .work-case-pagination .page-pager-size{color:#87958d;gap:4px;font-size:10px}.work-list-page .work-case-pagination .page-pager-size select{color:#4d6a5d;background:#fff;border-color:#d8e4dc;border-radius:6px;height:26px;padding:0 18px 0 6px;font-size:10px}.work-list-page .work-task-pagination.page-pager{color:#87958d;background:#ffffff47;border-top:1px solid #e2e7e2;flex:none;justify-content:center;gap:8px;min-height:38px;padding:5px 8px;font-size:10px}.work-list-page .work-task-pagination .page-pager-pages{gap:1px}.work-list-page .work-task-pagination .page-pager-pages>button:not([aria-label]){color:#708079;width:26px;height:26px;box-shadow:none;background:0 0;border:0;border-radius:6px;font-size:11px;transform:none}.work-list-page .work-task-pagination .page-pager-pages>button:not([aria-label]):before,.work-list-page .work-task-pagination .page-pager-pages>button:not([aria-label]):after{display:none}.work-list-page .work-task-pagination .page-pager-pages>button:not([aria-label]):hover{color:#2f7868;background:#edf5f0;border:0}.work-list-page .work-task-pagination .page-pager-pages>button:not([aria-label]).active{color:#287562;box-shadow:none;background:#e3f1ea;border:0;transform:none}.work-list-page .work-task-pagination .page-pager-pages>button[aria-label]{color:#7b8a83;background:0 0;border:0;border-radius:6px;width:26px;height:26px;padding:0}.work-list-page .work-task-pagination .page-pager-pages>button[aria-label]:hover:not(:disabled){color:#2f7868;background:#edf5f0}.work-list-page .work-task-pagination .page-pager-ellipsis{color:#a6b0aa;width:14px;height:26px;font-size:11px}.work-list-page .work-overview-actions{z-index:1;align-items:center;gap:8px;display:flex;position:absolute;top:-13px;right:8px}.work-list-page .work-export-scope{color:var(--muted);white-space:nowrap;font-size:10px;font-weight:650}.work-list-page .work-overview-actions .work-delete-current{color:#fff;cursor:pointer;background:#b84f42;border:1px solid #b84f42;border-radius:7px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:7px 12px;font-size:11px;font-weight:800;display:inline-flex;box-shadow:0 3px 8px #a4483d28}.work-list-page .work-overview-actions .work-delete-current:hover{background:#963b31;border-color:#963b31;box-shadow:0 4px 10px #963b3138}.work-list-page .work-list-head-actions{flex-wrap:wrap;gap:7px;display:flex}.work-list-page .work-task-filters{flex-wrap:wrap;gap:7px;padding:0 14px 14px;display:flex}.work-list-page .work-task-filters button{color:#6b7870;background:#f7f7f2;border:1px solid #e7e7df;border-radius:7px;align-items:center;gap:7px;padding:7px 10px;font-size:11px;display:inline-flex}.work-list-page .work-task-filters button span{background:#ffffff70;border-radius:20px;padding:2px 5px;font-size:10px}.work-list-page .work-task-filters button.selected{color:#fff;background:#345e50;border-color:#345e50}.work-list-page .work-task-filters{scrollbar-width:thin;flex-wrap:nowrap;flex:none;align-items:center;gap:6px;min-width:0;padding:0 14px 14px;overflow:auto}.work-list-page .work-task-filters button{color:#4d675d;text-align:left;white-space:nowrap;background:#fff9;border:1px solid #b8c7bc;border-radius:8px;align-items:center;gap:6px;min-width:128px;max-width:220px;padding:7px 10px;display:flex}.work-list-page .work-task-filters button:hover{background:#fff;border-color:#6e9b88}.work-list-page .work-task-filters button.active{color:#315f50;background:#dbeae0;border-color:#4f8672;box-shadow:inset 0 -3px #4f8672}.work-list-page .work-task-filters button strong{text-overflow:ellipsis;font-size:12px;overflow:hidden}.work-list-page .work-task-filters button span{color:#7d8c83;background:0 0;margin-left:auto;padding:0;font-size:11px}.work-list-page .work-task-filters button.active span{color:#315f50}.work-list-page .work-list-tasks{flex-direction:column;min-height:0;display:flex;overflow:hidden}.work-list-page .work-task-cards{flex:1;align-content:start;gap:10px;min-height:0;padding:0 12px 14px;display:grid;overflow:auto}.work-list-page .work-task-card{background:#fffefb;border:1px solid #e8e5dc;border-radius:9px;min-width:0;transition:box-shadow .18s;box-shadow:0 3px 9px #54432a05}.work-list-page .work-task-title-row{align-items:center;gap:6px;min-width:0;display:flex}.work-list-page .work-task-card{background:linear-gradient(135deg,#fbfdf9,#f0f6f0);border-color:#cfe0d4}.work-list-page .work-task-card.selected{background:linear-gradient(120deg,#e2f2e6,#eef8ef);border-color:#8fc0a8;box-shadow:inset 3px 0 #238774,0 4px 14px #2e7d5f22}.work-list-page .work-task-card .work-task-icon{color:#2f7d5f;background:#e7f2ea}.work-list-page .work-task-main{text-align:left;background:0 0;border:0;grid-template-columns:38px minmax(0,1fr) auto;align-items:start;gap:12px;width:100%;padding:12px 16px 10px;display:grid}.work-list-page .work-task-icon{color:#a5792f;background:#fcf0d0;border-radius:10px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.work-list-page .work-task-copy{min-width:0}.work-list-page .work-task-copy strong{color:#214a40;overflow-wrap:anywhere;font-size:14px;line-height:1.45;display:block}.work-list-page .work-task-copy em{-webkit-line-clamp:2;color:#7a857d;-webkit-box-orient:vertical;margin-top:3px;font-size:11px;font-style:normal;line-height:1.55;display:-webkit-box;overflow:hidden}.work-list-page .work-task-status{white-space:nowrap;color:#9c701d;background:#fff0c3;border-radius:8px;justify-content:center;align-self:start;align-items:center;padding:5px 10px;font-size:11px;font-weight:600;line-height:1.3;display:inline-flex}.work-list-page :is(.work-task-status,.priority-chip){box-shadow:none!important;border:0!important;border-radius:999px!important;gap:0!important}.work-list-page :is(.work-task-status,.priority-chip):before,.work-list-page :is(.work-task-status,.priority-chip):after{content:none!important;display:none!important}.work-list-page .priority-chip>svg{display:none}.work-list-page .work-task-status.doing{color:#357c99!important;background:#e4eff5!important}.work-list-page .work-task-status.done{color:#28806a!important;background:#e2f1e8!important}.work-list-page .work-task-status.cancelled{color:#81857c!important;background:#edeeea!important}.work-list-page .work-task-status.overdue{color:#b85e46!important;background:#fbe8e1!important}.work-list-page .work-task-status:not(.doing):not(.done):not(.cancelled):not(.overdue){color:#9c701d!important;background:#fff0c3!important}.work-list-page .priority-chip.priority-normal{color:#2f785f!important;background:#e1f1e7!important}.work-list-page .priority-chip.priority-important{color:#996b20!important;background:#fff0cd!important}.work-list-page .priority-chip.priority-urgent{color:#aa4f43!important;background:#ffe2dd!important}.work-list-page .work-task-card footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:0 16px 10px 64px;display:flex}.work-list-page .work-task-card footer .work-list-head-actions{margin-left:auto}.work-list-page .work-task-card footer button{min-height:30px;padding:5px 10px;font-size:11px}.work-list-page .urgent,.work-list-page .overdue{color:#b05b45}.work-list-page .important{color:#ae8036}.work-list-page .work-task-detail{height:auto;min-height:0;padding:0 18px 18px;position:relative;overflow:auto}.work-list-page .work-task-detail>.work-paper-tab{color:#805f33;margin-left:-10px;font-size:14px}.work-list-page .work-detail-heading{flex-wrap:wrap;align-items:center;gap:10px;padding:24px 0 18px;display:flex}.work-list-page .work-detail-heading h3{overflow-wrap:anywhere;flex:1;min-width:100px;line-height:1.65}.work-list-page .work-task-detail section{border-bottom:1px solid #e7e9e0;padding:15px 0}.work-list-page .work-task-detail h4{color:#3e6557;margin:0 0 9px;font-size:12px}.work-list-page .work-task-detail p{color:#758178;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.9}.work-list-page .work-task-detail dl{border-bottom:1px solid #e7e9e0;gap:14px;margin:0;padding:20px 0;font-size:12px;display:grid}.work-list-page .work-task-detail dl>div{justify-content:space-between;gap:12px;display:flex}.work-list-page .work-task-detail dt{color:#829087;flex-shrink:0}.work-list-page .work-task-detail dd{text-align:right;overflow-wrap:anywhere;margin:0}.work-list-page .work-task-detail dd small{margin-top:4px;display:block}.work-list-page .work-detail-schedules{gap:8px;margin:12px 0;display:grid}.work-list-page .work-detail-schedules button{text-align:left;color:#43745e;background:#f7faf4;border:1px solid #dce6db;border-radius:6px;align-items:center;gap:8px;padding:10px;font-size:12px;display:flex}.work-list-page .work-detail-schedules button span{overflow-wrap:anywhere;flex:1}.work-list-page .work-detail-schedules small{color:#8b958a;margin-top:5px;font-size:10px;display:block}.work-list-page .work-detail-actions{flex-wrap:wrap;gap:8px;padding-top:18px;display:flex}.work-list-page .work-detail-actions button{flex:1}.work-list-page .work-delete-task-prominent{color:#a4483d;cursor:pointer;background:#fff0ed;border:1px solid #e1aaa0;border-radius:8px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:40px;margin:16px 0 0;font-size:12px;font-weight:800;display:flex}.work-list-page .work-delete-task-prominent:hover{color:#92362d;background:#fde3df;border-color:#c9776a}.work-list-page .work-overview-copy p{color:#4f625a;font-size:15px;font-weight:500;line-height:1.75}.work-list-page .work-meta button.work-time-link{color:#2f6fa3;text-underline-offset:3px;font-size:12px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px}.work-list-page .work-meta button.work-time-link:hover:not(:disabled){color:#1f5684}.work-list-page .work-meta button.work-time-link:disabled{color:#829087;cursor:default;text-decoration:none}.work-list-page .work-delete-task-prominent{color:#fff;background:#b84f42;border-color:#b84f42;min-height:42px;font-size:13px;box-shadow:0 3px 8px #a4483d28}.work-list-page .work-delete-task-prominent:hover{color:#fff;background:#963b31;border-color:#963b31;box-shadow:0 4px 10px #963b3138}.work-list-page .work-delete-work{color:#a18b7c;background:0 0;border:0;align-self:center;margin:16px auto 4px;padding:6px;font-size:11px;display:block}.work-list-page .work-delete-work:hover{color:#a94d38}.work-list-page .work-linked-schedules{color:#7a887f;margin:0 14px 14px;font-size:11px}.work-list-page .work-linked-schedules summary{cursor:pointer;padding:6px 0}.work-list-page .work-list-schedule-strip{flex-wrap:wrap;gap:6px;padding-top:8px;display:flex}.work-list-page .work-list-schedule-chip{border:1px solid #dce6db;border-radius:5px;max-width:100%;display:flex;overflow:hidden}.work-list-page .work-list-schedule-chip button{color:#63816b;overflow-wrap:anywhere;background:#f3f7f0;border:0;padding:6px;font-size:11px}.work-list-page .work-list-schedule-chip button:last-child{color:#a15e4c;border-left:1px solid #dce6db;padding:6px 10px}.work-list-page .work-list-empty{text-align:center;color:#94a091;justify-items:center;gap:12px;padding:50px 18px;font-size:12px;line-height:1.8;display:grid}.work-list-page .work-list-empty strong{color:#63806b;font-size:14px}@media (width>=1600px){.work-list-page .work-list-layout{grid-template-columns:270px minmax(0,1fr) 370px}}@media (width<=1250px){.work-list-page .work-list-layout{grid-template-columns:210px minmax(0,1fr)}.work-list-page .work-task-detail{grid-column:2}.work-list-page .work-list-cases{grid-row:1/span 2}.work-list-page .work-overview{grid-template-columns:1fr;gap:20px}.work-list-page .work-overview-progress{border-top:1px solid #e1e6df;border-left:0;padding:16px 0 0}}@media (width<=720px){.work-list-page{padding:24px 10px 12px}.work-list-page .work-list-layout{flex-direction:column;display:flex}.work-list-page .work-list-layout>*{box-sizing:border-box;width:100%}.work-list-page .work-list-cases{height:auto;min-height:0}.work-list-page .work-case-items{flex:none;display:flex;overflow:auto}.work-list-page .work-case-items>button{flex:0 0 210px}.work-list-page .work-overview{padding:34px 15px 16px}.work-list-page .work-overview-actions{right:8px}.work-list-page .work-overview-actions .work-delete-current{min-height:32px;padding:6px 9px;font-size:10px}.work-list-page .work-overview-icon{flex-basis:48px;height:48px}.work-list-page .work-overview-title h2{font-size:20px}.work-list-page .work-overview-copy{align-items:flex-start;gap:12px}.work-list-page .work-list-tasks>header{flex-wrap:wrap}.work-list-page .work-task-main{grid-template-columns:34px minmax(0,1fr);gap:10px;padding:14px 12px}.work-list-page .work-task-main>.work-task-status{grid-column:2;justify-self:start}.work-list-page .work-task-icon{width:34px;height:34px}.work-list-page .work-task-card footer{padding:0 12px 14px}}@media (width<=1250px){.work-list-page{height:auto;min-height:calc(calc(100 * var(--vh1)) - 92px);overflow:visible}.work-list-page .work-list-layout{flex:none}.work-list-page .work-list-tasks,.work-list-page .work-task-detail{height:auto;overflow:visible}.work-list-page .work-task-cards{overflow:visible}}@media (width<=720px){.work-list-page{min-height:calc(calc(100 * var(--vh1)) - 76px)}.work-list-page .work-list-tasks,.work-list-page .work-task-detail{overflow:visible}}.work-list-page .work-list-cases{perspective:1100px;transform-style:preserve-3d;transform-origin:0}.work-list-page .work-list-cases.list-swap-forward{animation:.42s cubic-bezier(.3,.7,.3,1) work-list-swap-forward}.work-list-page .work-list-cases.list-swap-backward{animation:.42s cubic-bezier(.3,.7,.3,1) work-list-swap-backward}@keyframes work-list-swap-forward{0%{opacity:1;transform:none}40%{opacity:0;transform:translate(-18px)}46%{opacity:0;transform:translate(22px)}to{opacity:1;transform:none}}@keyframes work-list-swap-backward{0%{opacity:1;transform:none}40%{opacity:0;transform:translate(18px)}46%{opacity:0;transform:translate(-22px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.work-list-page .work-list-cases.list-swap-forward,.work-list-page .work-list-cases.list-swap-backward{animation:none}}.work-list-page .work-independent-bookmark{cursor:pointer;background:linear-gradient(145deg,#3f806c,#2d5e50);border:0;border-radius:10px;flex:0 0 45px;place-items:center;width:45px;height:45px;transition:transform .2s,box-shadow .2s,background .2s;display:grid;position:relative;box-shadow:inset 0 1px #fff5,0 5px 10px #2c5d4b2b}.work-list-page .work-independent-bookmark:hover{background:linear-gradient(145deg,#4b9279,#326b5a);transform:translateY(-2px);box-shadow:inset 0 1px #fff6,0 8px 14px #2c5d4b35}.work-list-page .work-independent-bookmark:active{transform:translateY(0)scale(.97)}.work-list-page .work-independent-bookmark input{display:none}.work-list-page .work-independent-bookmark-icon{width:23px;height:23px;overflow:visible}.work-list-page .work-independent-bookmark-icon path{stroke-dasharray:200 0;stroke-dashoffset:0;stroke:#fff;fill:#ddd0;stroke-width:1.8px;stroke-linejoin:round;transition-duration:.5s;transition-delay:0s}.work-list-page .work-independent-bookmark input:checked+.work-independent-bookmark-icon path{fill:#fff;transition-delay:.5s;animation:.5s linear work-bookmark}.work-list-page .work-independent-bookmark:has(input:focus-visible){outline-offset:3px;outline:2px solid #328775}@keyframes work-bookmark{0%{stroke-dasharray:0 200;stroke-dashoffset:80px}to{stroke-dasharray:200 0}}.work-list-page .work-case-items.independent-items>button{background:#fbfdf8}.work-list-page .work-case-items.independent-items>button:hover{background:#edf5ef}.work-list-page .work-case-items.independent-items .work-case-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.work-list-page .work-case-items.independent-items .work-case-count{color:#2e7865;background:#dcefe4}@media (prefers-reduced-motion:reduce){.work-list-page .work-list-cases.page-flip-forward,.work-list-page .work-list-cases.page-flip-backward{animation:none}.work-list-page .work-independent-bookmark-icon path{transition:none;animation:none!important}}.whiteboard-page{height:calc(calc(100 * var(--vh1)) - 128px);box-sizing:border-box;padding-top:18px;padding-bottom:18px;overflow:hidden}.whiteboard-page>.work-board{box-sizing:border-box;flex-direction:column;height:100%;display:flex}.work-board{color:#344d46;background:#fafbf6;border:10px solid #bb9669;border-radius:14px;min-width:0;overflow:hidden;box-shadow:inset 0 0 15px #544b3322,0 9px 24px #493e2314}.wb-pagebar button,.wb-work-actions button{color:inherit;cursor:pointer;background:#fff9;border:1px solid #b8c7bc;border-radius:8px;padding:8px 11px}.wb-pagebar button:hover,.wb-work-actions button:hover{background:#fff;border-color:#6e9b88}.wb-pagebar button:disabled{cursor:not-allowed;opacity:.45}.wb-pagebar{background:#efeadd;border-bottom:1px solid #cfc8b6;align-items:center;gap:8px;padding:9px 13px;display:flex}.wb-page-arrow{width:32px;height:32px;font-size:24px;line-height:1;padding:0!important}.wb-page-tabs{scrollbar-width:thin;flex:1;gap:6px;min-width:0;display:flex;overflow:auto}.wb-page-tabs button{text-align:left;white-space:nowrap;align-items:center;gap:6px;min-width:128px;max-width:220px;padding:7px 10px;display:flex}.wb-page-tabs button.active{background:#dbeae0;border-color:#4f8672;box-shadow:inset 0 -3px #4f8672}.wb-page-tabs span{color:#6e9b83;font-size:14px}.wb-page-tabs strong{text-overflow:ellipsis;font-size:12px;overflow:hidden}.wb-page-tabs small{color:#7d8c83;margin-left:auto}.wb-add-work{flex:none;color:#fff!important;background:#315d4f!important;border-color:#315d4f!important}.wb-layout{flex:auto;grid-template-columns:164px minmax(0,1fr);height:0;min-height:0;display:grid}.wb-tools{background:#e8ece180;border-right:1px solid #c8d2c2;flex-direction:column;padding:18px 13px;display:flex;overflow:visible}.wb-pins{color:#b65e46;letter-spacing:13px;text-shadow:0 2px 2px #2d231459;margin-bottom:13px}.wb-tool-heading{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.wb-tool-heading strong{font-size:12px}.wb-tool-heading button{color:#557967;cursor:pointer;background:0 0;border:0;font-size:11px}.wb-new-note{color:#574b30;cursor:grab;border:0;width:132px;min-height:126px;padding:18px 10px;font-size:14px;font-weight:750;transform:rotate(-4deg);box-shadow:2px 5px 9px #0002}.wb-new-note:active{cursor:grabbing}.wb-new-note small{margin-top:12px;font-size:11px;font-weight:400;line-height:1.8;display:block}.wb-collapsed-note{color:#574b30;cursor:grab;border:1px dashed #a77e45;justify-content:center;align-items:center;gap:8px;width:132px;height:52px;font-size:21px;display:flex;transform:rotate(-2deg);box-shadow:2px 4px 8px #0002}.wb-collapsed-note small{font-size:12px;font-weight:700}.wb-collapsed-note:active{cursor:grabbing}.wb-tools .wb-swatches{gap:8px;padding:16px 5px;display:flex}.wb-swatches button{cursor:pointer;border:1px solid #0002;border-radius:50%;width:21px;height:21px}.wb-swatches button[aria-pressed=true]{outline-offset:2px;outline:2px solid #486d60}.wb-tool-note{background:#fff9;border-left:3px solid #c99e55;border-radius:0 8px 8px 0;gap:4px;padding:10px 9px;display:grid}.wb-tool-note strong{font-size:12px}.wb-tool-note span,.wb-tools>p{color:#65756b;font-size:11px;line-height:1.75}.wb-tools>p{margin:18px 3px}.work-board .yellow{background-color:#f8e6a3}.work-board .pink{background-color:#f4d2d1}.work-board .mint{background-color:#d8ebcd}.work-board .blue{background-color:#d2e6f1}.wb-scroll{overscroll-behavior:contain;height:100%;min-height:0;max-height:none;overflow:auto}.wb-page-flip{height:100%}.wb-page-flip.wb-flip-next{transform-origin:0;animation:.45s cubic-bezier(.2,.65,.3,1) both wb-flip-next}.wb-page-flip.wb-flip-prev{transform-origin:100%;animation:.45s cubic-bezier(.2,.65,.3,1) both wb-flip-prev}@keyframes wb-flip-next{0%{opacity:.3;filter:drop-shadow(-14px 8px 22px #1f2a2433);transform:perspective(1600px)rotateY(-42deg)}55%{opacity:1}to{opacity:1;filter:none;transform:none}}@keyframes wb-flip-prev{0%{opacity:.3;filter:drop-shadow(14px 8px 22px #1f2a2433);transform:perspective(1600px)rotateY(42deg)}55%{opacity:1}to{opacity:1;filter:none;transform:none}}@media (prefers-reduced-motion:reduce){.wb-page-flip.wb-flip-next,.wb-page-flip.wb-flip-prev{animation:none}}.wb-work-page{flex-direction:column;min-width:760px;height:100%;display:flex}.wb-work-page-head,.wb-temp-panel>header{background:#fffaf0;border-bottom:1px solid #e3ddcf;flex:none;justify-content:space-between;align-items:flex-start;gap:16px;padding:24px 30px 18px;display:flex}.wb-work-page-head h2,.wb-temp-panel h2{font:700 27px/1.2 "KaiTi","STKaiti",var(--font-song);letter-spacing:.03em;margin:3px 0 4px}.wb-work-page-head p,.wb-temp-panel p{color:#7a8175;margin:0;font-size:12px}.wb-work-actions{gap:8px;display:flex}.wb-work-actions button.danger,.wb-temp-grid button.danger{color:#a54737;border-color:#e6b8ac}.section-kicker{letter-spacing:.16em;color:#a67d45;font-size:10px}.wb-canvas{background-color:#f9faf5;background-image:radial-gradient(#6f8b7730 1px,#0000 1px);background-size:22px 22px;flex:1 1 0;min-height:0;position:relative;overflow:hidden;height:auto!important}.wb-empty{color:#708074;text-align:center;width:320px;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.wb-empty strong{font:500 28px/1.35 KaiTi,STKaiti,serif}.wb-empty p{font-size:14px}.wb-empty small{font-size:12px}.wb-node{z-index:1;width:176px;height:146px;position:absolute}.wb-node:hover,.wb-node.selected{z-index:5}.wb-paper{color:#39483c;border-radius:2px 2px 15px;width:176px;height:116px;position:relative;transform:rotate(1deg);box-shadow:1px 2px 3px #3434261f,4px 8px 14px #3434262e}.wb-paper.task{background-image:repeating-linear-gradient(#0000 0 25px,#536b3d15 26px 27px)}.wb-pin{color:#0000;cursor:grab;touch-action:none;z-index:2;background:radial-gradient(circle at 32% 28%,#ffffffe6 0 7%,#fff0 36%),radial-gradient(circle at 50% 46%,#d4705c 0 56%,#b04a37 76%,#93392a 100%);border:0;border-radius:50%;width:26px;height:26px;padding:0;font-size:0;line-height:0;position:absolute;top:-13px;left:75px;box-shadow:0 3px 5px #281e0f52,inset 0 -2px 3px #3c0a004d,inset 0 2px 2px #ffffff59}.wb-pin:active{cursor:grabbing}.wb-pin:focus-visible{outline-offset:2px;outline:2px solid #427d6b}.wb-note-body{text-align:left;cursor:grab;width:100%;height:100%;color:inherit;touch-action:none;background:0 0;border:0;flex-direction:column;gap:6px;padding:19px 13px 11px;display:flex}.wb-note-body:active{cursor:grabbing}.wb-note-body small{opacity:.76;align-items:center;gap:5px;font-size:9px;display:flex}.wb-note-body strong{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:15px;line-height:1.32;display:-webkit-box;overflow:hidden}.wb-note-body span{white-space:nowrap;text-overflow:ellipsis;margin-top:auto;font-size:9px;overflow:hidden}.wb-note-body em{color:#4d7584;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:3px;margin-top:0;font-size:9px;font-style:normal;display:flex;overflow:hidden}.wb-task-actions{align-items:center;gap:5px;margin:7px 0 0 9px;display:flex}.wb-task-actions button,.wb-temp-actions button{color:#4a7564;cursor:pointer;background:#fff9;border:1px solid #b9c9bc;border-radius:50%;place-items:center;width:25px;height:25px;display:grid;box-shadow:1px 2px 4px #0001}.wb-task-actions button:hover,.wb-temp-actions button:hover{color:#fff;background:#3c715d;border-color:#3c715d}.wb-task-actions button.completed,.wb-temp-actions button.completed{color:#26735f;background:#d8eee3;border-color:#a7d0bd}.wb-task-actions button:disabled,.wb-temp-actions button:disabled{cursor:default;opacity:.85}.wb-menu{background:#263d36;border-radius:0 7px 7px;flex-direction:column;width:183px;padding:7px 7px 7px 12px;display:flex;position:absolute;top:0;left:100%;box-shadow:4px 7px 14px #0002}.wb-menu button{color:#fff;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;padding:9px;font-size:12px;display:flex;position:relative}.wb-menu button:hover,.wb-menu button:focus-visible{background:#3e584e;outline:none}.wb-menu button.danger{color:#ffc5b7}.wb-menu button.danger:hover{background:#6d3b38}.wb-menu svg{width:15px;height:15px}.wb-menu .wb-swatches{gap:7px;padding:8px 5px 3px;display:flex}.wb-paper.task{background:#fffef5;border:1px solid #d4dcca;border-radius:2px 2px 15px;transform:rotate(0);box-shadow:2px 4px 8px #313c2814}.wb-node .wb-pin{width:20px;height:20px;top:-10px;left:78px}.wb-node .wb-menu>button:nth-of-type(2){box-sizing:border-box;justify-content:center;align-items:center;line-height:0;display:flex}.wb-node .wb-menu>button svg{stroke-width:2px;display:block}.wb-draft{z-index:10;color:#3c493a;border-radius:3px;gap:11px;width:292px;padding:19px 20px;display:grid;position:absolute;box-shadow:3px 8px 20px #0003}.wb-draft strong{font:700 17px/1.3 var(--font-song)}.wb-draft input,.wb-draft select{width:100%;min-width:0;color:inherit;font:inherit;background:#fff9;border:1px solid #c9b77a;border-radius:5px;padding:8px 9px}.wb-draft label{gap:4px;font-size:11px;display:grid}.wb-draft small{font-size:11px;line-height:1.5}.wb-time-mode{grid-template-columns:50px 1fr;align-items:center;display:grid}.wb-time-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.wb-draft>div:last-child{justify-content:flex-end;gap:9px;display:flex}.wb-draft>div:last-child button{color:#fff;cursor:pointer;background:#385d4e;border:0;border-radius:5px;padding:8px 12px}.wb-draft>div:last-child button:first-child{color:#4e5b50;background:#fffa}.wb-draft button:disabled{opacity:.5;cursor:wait}.wb-inbox-draft{z-index:20;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.wb-temp-panel{background:#f8f8f2;flex-direction:column;height:100%;min-height:0;display:flex}.wb-temp-panel>header{background:#f8f8f2}.wb-temp-panel>header>strong{color:#4f7462;font:700 22px Georgia,serif}.wb-temp-grid{background-image:linear-gradient(#6f8b7711 1px,#0000 1px),linear-gradient(90deg,#6f8b7711 1px,#0000 1px);background-size:30px 30px;flex:1 1 0;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));align-content:start;gap:16px;min-height:0;padding:24px 30px;display:grid;overflow:hidden}.wb-temp-grid article{cursor:grab;background:#fffef5;border:1px solid #d4dcca;min-height:148px;padding:21px 17px 12px;transition:transform .15s,box-shadow .15s;position:relative;box-shadow:2px 4px 8px #313c2814}.wb-temp-grid article:hover,.wb-temp-grid article.selected{border-color:#86aa92;transform:translateY(-3px);box-shadow:3px 8px 14px #313c2830}.wb-temp-grid article small{color:#7f8b82;font-size:10px;display:block}.wb-temp-grid article strong{color:#33493e;margin-top:12px;font-size:15px;line-height:1.45;display:block}.wb-temp-grid article em{color:#517b6c;margin-top:10px;font-size:11px;font-style:normal;display:block}.wb-temp-pin{color:#0000;background:radial-gradient(circle at 32% 28%,#ffffffe6 0 8%,#fff0 38%),radial-gradient(circle at 50% 46%,#c26b55 0 56%,#a34936 78%,#8c3a2a);border-radius:50%;width:18px;height:18px;font-size:0;position:absolute;top:-11px;left:calc(50% - 9px);box-shadow:0 2px 4px #281e0f4d,inset 0 -2px 2px #3c0a0047,inset 0 1px 1px #fff6}.wb-priority-pill{white-space:nowrap;border-radius:999px;align-items:center;padding:2px 5px;font-size:8px;font-weight:800;line-height:1;display:inline-flex}.wb-priority-pill.priority-normal{color:#2f785f;background:#e1f1e7}.wb-priority-pill.priority-important{color:#996b20;background:#fff0cd}.wb-priority-pill.priority-urgent{color:#aa4f43;background:#ffe2dd}.wb-note-body small .wb-priority-pill,.wb-temp-grid article small .wb-priority-pill{margin-left:1px}.wb-work-page-head p .wb-priority-pill{vertical-align:middle;margin-left:2px}.wb-temp-actions{gap:6px;margin-top:12px;display:flex}.wb-temp-grid article footer{gap:8px;margin-top:10px;display:flex}.wb-temp-grid article footer button{color:#4b7861;cursor:pointer;background:0 0;border:0;font-size:11px}.wb-temp-grid article footer button.danger{color:#a54737}.wb-temp-empty{text-align:center;color:#718176;grid-column:1/-1;padding:100px 10px}.wb-temp-empty strong{font:500 24px KaiTi,STKaiti,serif}.wb-temp-empty p{margin-top:10px}.wb-warning{color:#a4533e;background:#fff2e9;margin:0;padding:7px 16px;font-size:12px}.wb-recycle-bin{margin-top:auto;padding-top:18px;position:relative}.wb-recycle-trigger{color:#945646;cursor:pointer;background:#fff5f1;border:1px dashed #c18a77;border-radius:12px;justify-items:center;gap:4px;width:100%;min-height:104px;padding:13px 8px 10px;transition:transform .15s,background .15s,border-color .15s;display:grid;position:relative}.wb-recycle-trigger:hover,.wb-recycle-bin.open .wb-recycle-trigger,.wb-recycle-bin.drag-over .wb-recycle-trigger{background:#ffeae4;border-color:#a85c49;transform:translateY(-2px)}.wb-recycle-bin.drag-over .wb-recycle-trigger{box-shadow:0 0 0 3px #a85c4940,0 6px 14px #a85c4938}.wb-recycle-trigger span{font-size:12px;font-weight:800}.wb-recycle-trigger small{color:#a57468;font-size:9px}.wb-recycle-trigger b{color:#fff;background:#a85c49;border-radius:999px;min-width:19px;padding:3px 5px;font-size:10px;position:absolute;top:8px;right:10px}.wb-recycle-trigger svg{stroke-width:1.55px}.wb-recycle-popover{z-index:20;color:#5a514d;background:#fffaf7;border:1px solid #d9b7aa;border-radius:10px;width:230px;padding:10px;position:absolute;bottom:0;left:calc(100% + 10px);box-shadow:5px 8px 20px #49352d2b}.wb-recycle-popover header{border-bottom:1px solid #f0ded8;justify-content:space-between;align-items:center;gap:8px;padding:2px 3px 8px;display:flex}.wb-recycle-popover header strong{font-size:12px}.wb-recycle-popover header span{color:#a57468;font-size:10px}.wb-recycle-popover header .wb-recycle-clear{color:#a54737;cursor:pointer;background:#fff4f1;border:1px solid #e2b1a6;border-radius:5px;margin-left:auto;padding:3px 6px;font-size:10px}.wb-recycle-popover header .wb-recycle-clear:hover{color:#fff;background:#b85a48;border-color:#b85a48}.wb-recycle-popover>div{border-bottom:1px solid #f4e8e3;align-items:center;gap:8px;padding:8px 3px;display:flex}.wb-recycle-popover>div span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:11px;overflow:hidden}.wb-recycle-popover>div button{color:#9b5949;cursor:pointer;background:0 0;border:0;font-size:11px}.wb-recycle-popover>p{color:#9a837c;margin:8px 3px;font-size:10px;line-height:1.5}.wb-action-info{color:#3f7385!important;background:#eef7fa!important;border-color:#a9ced8!important}.wb-action-info:hover{color:#fff!important;background:#4b8798!important;border-color:#4b8798!important}.wb-task-actions button:first-child,.wb-temp-actions button:first-child{color:#3f7385;background:#eef7fa;border-color:#a9ced8}.wb-task-actions button:first-child:hover,.wb-temp-actions button:first-child:hover{color:#fff;background:#4b8798;border-color:#4b8798}.wb-task-actions button:nth-child(2),.wb-temp-actions button:nth-child(2){color:#2c7b59;background:#e1f3e8;border-color:#a9d4bb}.wb-task-actions button:nth-child(2):hover,.wb-temp-actions button:nth-child(2):hover{color:#fff;background:#3d8b68;border-color:#3d8b68}.wb-action-success{color:#2c7b59!important;background:#e1f3e8!important;border-color:#a9d4bb!important}.wb-action-success:hover{color:#fff!important;background:#3d8b68!important;border-color:#3d8b68!important}.wb-action-success:disabled{color:#2c7b59!important;background:#e1f3e8!important;border-color:#a9d4bb!important}.wb-action-secondary{color:#5d766b!important;background:#fff!important;border-color:#b9cfc1!important}.wb-action-secondary:hover{color:#315d4f!important;background:#edf6ef!important;border-color:#7fae94!important}.wb-action-primary{color:#fff!important;background:#3d715e!important;border-color:#3d715e!important}.wb-action-primary:hover{background:#2f5d4e!important;border-color:#2f5d4e!important}.wb-action-edit{color:#8b6b2f!important;background:#fff8e8!important;border-color:#dec78e!important}.wb-action-edit:hover{color:#6c4e1e!important;background:#f8e9bf!important;border-color:#cba966!important}.wb-menu button:nth-of-type(2){color:#bce9ce}.wb-menu button:nth-of-type(2):hover{background:#2f654d}.wb-menu button:nth-of-type(3){color:#f2d491}.wb-menu button:nth-of-type(3):hover{background:#665333}.wb-menu button:nth-of-type(4){color:#ffc5b7}.wb-menu button:nth-of-type(4):hover{background:#6d3b38}.wb-node .wb-task-actions{z-index:6;margin:0;position:absolute;top:123px;left:30px}.wb-node .wb-menu{width:176px;height:148px;box-shadow:none;pointer-events:none;background:0 0;border-radius:0;padding:0;display:block;top:0!important;left:0!important;right:auto!important}.wb-node .wb-menu>button{z-index:7;pointer-events:auto;border:1px solid;border-radius:50%;place-items:center;width:25px;height:25px;padding:0;font-size:0;line-height:1;display:grid;position:absolute;box-shadow:1px 2px 4px #0001}.wb-node .wb-menu>button:nth-of-type(2){width:28px;height:28px;top:7px;right:2px;color:#fff!important;background:#3d715e!important;border-color:#3d715e!important}.wb-node .wb-menu>button:nth-of-type(2):hover{background:#2f5d4e!important;border-color:#2f5d4e!important}.wb-node .wb-menu>button:nth-of-type(3){top:123px;left:0;color:#8b6b2f!important;background:#fff8e8!important;border-color:#dec78e!important}.wb-node .wb-menu>button:nth-of-type(3):hover{color:#6c4e1e!important;background:#f8e9bf!important;border-color:#cba966!important}.wb-node .wb-menu>button:nth-of-type(4){top:123px;left:90px;color:#a54737!important;background:#fff0ec!important;border-color:#e6b8ac!important}.wb-node .wb-menu>button:nth-of-type(4):hover{color:#fff!important;background:#b85a48!important;border-color:#b85a48!important}.wb-node .wb-menu .wb-swatches{display:none}.wb-node .wb-task-actions button,.wb-node .wb-menu>button{white-space:nowrap;transition:width .2s,transform .2s,filter .2s,opacity .2s,background-color .2s;overflow:hidden}.wb-node .wb-task-actions button:after{content:attr(title);opacity:0;max-width:0;margin-left:0;font-size:0;transition:max-width .2s,margin-left .2s,font-size .2s,opacity .2s;overflow:hidden}.wb-node .wb-task-actions button:hover,.wb-node .wb-task-actions button:focus-visible{z-index:9}.wb-node .wb-task-actions button:hover:after,.wb-node .wb-task-actions button:focus-visible:after{opacity:1}.wb-node .wb-menu>button:hover,.wb-node .wb-menu>button:focus-visible{z-index:9;border-radius:999px;justify-content:flex-start;gap:6px;width:92px;padding-left:8px;font-size:11px;display:flex}.wb-node .wb-menu>button:nth-of-type(2):hover,.wb-node .wb-menu>button:nth-of-type(2):focus-visible{width:92px;right:2px}.wb-node .wb-menu>button:nth-of-type(4):hover,.wb-node .wb-menu>button:nth-of-type(4):focus-visible{transform:translate(-65px)}.wb-node .wb-task-actions button svg,.wb-node .wb-menu>button svg,.wb-temp-grid article .wb-temp-actions button svg{flex:none;width:14px;height:14px}.wb-temp-grid article .wb-temp-actions{z-index:4;align-items:center;gap:6px;margin:0;display:flex;position:absolute;bottom:12px;left:17px}.wb-temp-grid article .wb-temp-actions button{white-space:nowrap;cursor:pointer;border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:25px;height:25px;padding:0;font-size:0;line-height:1;transition:width .2s,transform .2s,filter .2s,opacity .2s,background-color .2s;display:flex;position:relative;overflow:hidden;box-shadow:1px 2px 4px #0001}.wb-temp-grid article .wb-temp-actions button:first-child{color:#8b6b2f;background:#fff8e8;border-color:#dec78e}.wb-temp-grid article .wb-temp-actions button:nth-child(2){color:#3f7385;background:#eef7fa;border-color:#a9ced8}.wb-temp-grid article .wb-temp-actions button:nth-child(3){color:#2c7b59;background:#e1f3e8;border-color:#a9d4bb}.wb-temp-grid article .wb-temp-actions button:nth-child(4){color:#a54737;background:#fff0ec;border-color:#e6b8ac}.wb-temp-grid article .wb-temp-actions button:hover,.wb-temp-grid article .wb-temp-actions button:focus-visible{z-index:9}.wb-temp-grid article .wb-temp-actions button:after{content:attr(title);opacity:0;max-width:0;margin-left:0;font-size:0;transition:max-width .2s,margin-left .2s,font-size .2s,opacity .2s;overflow:hidden}.wb-temp-grid article .wb-temp-actions button:hover:after,.wb-temp-grid article .wb-temp-actions button:focus-visible:after{opacity:1}.wb-tool-toggle{color:#557967}.wb-recycle-popover>div button.wb-action-success{color:#2f805b!important;background:0 0!important;border:0!important}.wb-recycle-popover>div button.wb-action-success:hover{background:#e1f3e8!important}@media (width<=760px){.whiteboard-page{height:calc(calc(100 * var(--vh1)) - 102px);padding-top:12px;padding-bottom:12px}.work-board{border-width:6px}.wb-pagebar{padding:8px}.wb-page-tabs button{min-width:112px}.wb-add-work{font-size:11px}.wb-layout{grid-template-columns:1fr}.wb-tools{border-bottom:1px solid #c8d2c2;border-right:0;align-items:center;gap:12px;padding:12px;display:flex;overflow:visible}.wb-pins,.wb-tools>p,.wb-tool-note{display:none}.wb-new-note{flex-shrink:0;width:112px;min-height:70px;transform:none}.wb-new-note small{margin-top:4px}.wb-collapsed-note{flex-shrink:0;width:112px}.wb-recycle-bin{flex:0 0 112px;margin-top:0;padding-top:0}.wb-recycle-trigger{min-height:70px}.wb-recycle-popover{bottom:calc(100% + 8px);left:auto;right:0}.wb-scroll{min-height:0}.wb-work-page{min-width:650px}.wb-work-page-head,.wb-temp-panel>header{padding:18px 20px}.wb-temp-grid{grid-template-columns:repeat(2,minmax(150px,1fr));gap:12px;padding:20px}.wb-draft{max-width:calc(100vw - 42px);transform:translate(-50%,-50%);position:fixed!important;top:50%!important;left:50%!important}.wb-menu{top:calc(100% + 7px);left:auto;right:-8px}}.wb-node{width:220px;height:178px}.wb-node .wb-paper.task{box-sizing:border-box;width:220px;height:148px}.wb-node .wb-note-body{padding:21px 17px 44px}.wb-node .wb-pin{left:100px}.wb-node .wb-task-actions{z-index:6;margin:0;position:absolute;top:auto;bottom:12px;left:48px}.wb-node .wb-menu{width:220px;height:148px;top:0!important;left:0!important;right:auto!important}.wb-node .wb-menu>button:nth-of-type(2){top:16px;right:14px}.wb-node .wb-menu>button:nth-of-type(3){top:auto;bottom:12px;left:17px}.wb-node .wb-menu>button:nth-of-type(4){top:auto;bottom:12px;left:110px}.wb-temp-grid article:hover,.wb-temp-grid article.selected{transform:none!important}.wb-node .wb-task-actions{width:55px!important;height:25px!important;margin:0!important;display:block!important;position:absolute!important;inset:auto auto 12px 48px!important}.wb-temp-grid article .wb-temp-actions{width:118px!important;height:25px!important;margin:0!important;display:block!important;position:absolute!important;inset:auto auto 12px 17px!important}.wb-node .wb-task-actions button,.wb-temp-grid article .wb-temp-actions button{box-sizing:border-box;border-radius:50%!important;flex:none!important;place-items:center!important;width:25px!important;min-width:25px!important;max-width:25px!important;height:25px!important;padding:0!important;font-size:0!important;line-height:0!important;transition:none!important;display:grid!important;position:absolute!important;top:0!important;left:0!important;overflow:visible!important;transform:none!important}.wb-node .wb-task-actions button:nth-child(2){left:30px!important}.wb-temp-grid article .wb-temp-actions button:nth-child(2){left:31px!important}.wb-temp-grid article .wb-temp-actions button:nth-child(3){left:62px!important}.wb-temp-grid article .wb-temp-actions button:nth-child(4){left:93px!important}.wb-node .wb-menu>button{box-sizing:border-box;border-radius:50%!important;place-items:center!important;width:25px!important;height:25px!important;padding:0!important;font-size:0!important;line-height:0!important;transition:none!important;display:grid!important;position:absolute!important;overflow:visible!important;transform:none!important}.wb-node .wb-menu>button:first-child{display:none!important}.wb-node .wb-menu>button:nth-of-type(2){width:28px!important;height:28px!important;top:16px!important;left:auto!important;right:14px!important}.wb-node .wb-menu>button:nth-of-type(3){inset:auto auto 12px 17px!important}.wb-node .wb-menu>button:nth-of-type(4){inset:auto auto 12px 110px!important}.wb-node .wb-task-actions button svg,.wb-node .wb-menu>button svg,.wb-temp-grid article .wb-temp-actions button svg{visibility:visible!important;flex:none!important;width:14px!important;height:14px!important;margin:0!important;display:block!important;overflow:visible!important}.wb-node .wb-task-actions button:after,.wb-node .wb-menu>button:after,.wb-temp-grid article .wb-temp-actions button:after{z-index:30;color:#fff;content:attr(title);pointer-events:none;white-space:nowrap;background:#263d36;border:1px solid #527367;border-radius:6px;width:max-content;max-width:180px;padding:5px 8px;font-weight:600;line-height:1.2;display:block;position:absolute;top:calc(100% + 7px);left:50%;box-shadow:3px 5px 12px #0003;opacity:0!important;margin:0!important;font-size:11px!important;transition:opacity .12s!important;transform:translate(-50%)!important}.wb-node .wb-menu>button:nth-of-type(2):after{content:"添加子任务";left:auto;right:0;transform:none!important}.wb-node .wb-menu>button:nth-of-type(3):after,.wb-node .wb-menu>button:nth-of-type(4):after{top:auto;bottom:calc(100% + 7px)}.wb-node .wb-menu>button:nth-of-type(3):after{content:"编辑任务"}.wb-node .wb-menu>button:nth-of-type(4):after{content:"删除任务"}.wb-node .wb-task-actions button:hover:after,.wb-node .wb-task-actions button:focus-visible:after,.wb-node .wb-menu>button:hover:after,.wb-node .wb-menu>button:focus-visible:after,.wb-temp-grid article .wb-temp-actions button:hover:after,.wb-temp-grid article .wb-temp-actions button:focus-visible:after{opacity:1!important}.wb-page-tabs{align-items:stretch}.wb-page-tabs button{box-sizing:border-box;flex:none;transform:none!important}.wb-page-tabs button:hover{transform:none!important}.wb-page-tabs button.active{box-shadow:inset 0 -3px #4f8672;transform:none!important}.wb-page-tabs button:focus-visible{outline-offset:2px;outline:2px solid #4f8672;transform:none!important}.wb-note-body :is(.status-frame,.wb-priority-pill),.wb-temp-grid :is(.status-frame,.wb-priority-pill),.wb-work-page-head :is(.status-frame,.wb-priority-pill){box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;gap:0!important;margin:0!important;padding:0!important;display:inline!important}.wb-note-body :is(.status-frame,.wb-priority-pill):before,.wb-temp-grid :is(.status-frame,.wb-priority-pill):before,.wb-work-page-head :is(.status-frame,.wb-priority-pill):before{content:none!important}.wb-temp-grid article .wb-temp-actions button:hover:not(:disabled),.wb-node .wb-task-actions button:hover:not(:disabled){color:#fff!important;background:#3c715d!important;border-color:#3c715d!important}.conversations-page{max-width:1680px}.cnb-strip{border-bottom:1px dashed var(--paper-line);background:linear-gradient(#fdfaf3,#fffdf7);flex-wrap:wrap;grid-area:1/1/auto/-1;align-items:center;gap:10px;padding:10px 12px;display:flex}.cnb-strip .search-box{flex:320px;min-width:0;max-width:900px}.cnb-strip>.primary-button{margin-left:auto}.cnb-pick{color:#6f6a5d;gap:4px;font-size:10px;font-weight:800;display:grid}.cnb-pick select{border:1px solid var(--paper-line);color:#3b4038;background:#fffdf7;border-radius:6px;padding:7px 9px;font-size:11.5px}.cnb-pick.is-small{gap:3px;font-size:9.5px}.cnb-pick.is-small select{padding:5px 7px;font-size:11px}.cnb-bulk{background:#f7f3e7;border:1px dashed #cdc4ae;border-radius:7px;flex-wrap:wrap;align-items:center;gap:9px;padding:7px 12px;display:flex}.cnb-bulk strong{color:#4a4437;font-size:11.5px}.cnb-sheet{border:1px solid var(--paper-line);background:var(--paper-sheet);border-radius:10px;flex:1;grid-template-rows:auto minmax(0,1fr);grid-template-columns:clamp(232px,17vw,300px) minmax(0,1fr);column-gap:18px;min-height:0;display:grid;position:relative;overflow:hidden;box-shadow:0 1px 2px #45361f0a,0 12px 30px -20px #45361f42}.cnb-sheet:after{content:"";pointer-events:none;background-image:linear-gradient(var(--paper-brass) 0 1px, transparent 1px), linear-gradient(90deg, var(--paper-brass) 0 1px, transparent 1px), linear-gradient(var(--paper-brass) 0 1px, transparent 1px), linear-gradient(90deg, var(--paper-brass) 0 1px, transparent 1px);opacity:.5;background-position:12px 12px,12px 12px,calc(100% - 34px) 12px,calc(100% - 12px) 12px;background-repeat:no-repeat;background-size:22px 1px,1px 22px,22px 1px,1px 22px;border-radius:10px;position:absolute;inset:0}.cnb-pagefold{background:var(--paper-fold);pointer-events:none;border-top-left-radius:3px;width:26px;height:26px;position:absolute;bottom:0;right:0;box-shadow:-1px -1px #8b75501f}.cnb-rail-tab{color:#8a6a2f;letter-spacing:.04em;background:#f8f1e2;border:1px solid #e0cfae;border-radius:3px;width:max-content;margin:0 0 4px auto;padding:1px 6px;font-size:9.5px;font-style:normal;font-weight:800;display:block}.cnb-pagefoot{border-top:1px solid var(--paper-line-soft);color:#9c9486;letter-spacing:.1em;flex:none;justify-content:space-between;align-items:baseline;gap:12px;padding:7px 18px 8px 22px;font-size:10px;display:flex}.cnb-pagefoot strong{color:#7d7768;letter-spacing:.04em;font-size:10.5px;font-weight:800}.cnb-watchrow{position:relative}.cnb-watchrow:before{content:"";background:var(--paperclip-metal-icon) center/contain no-repeat;opacity:.9;pointer-events:none;width:17px;height:44px;position:absolute;top:-9px;left:-7px;transform:rotate(-7deg)}.cnb-roster{background:linear-gradient(#fbf7ee,#f7f2e7);border-right:0;flex-direction:column;grid-area:2/1;min-height:0;padding:13px 11px 12px 30px;display:flex;position:relative}.cnb-roster:before{content:"";pointer-events:none;background-image:radial-gradient(circle at 7px 9px,#0000 0 3.4px,#c6bead 3.4px 5px,#8b8375 5px 5.9px,#0000 5.9px);background-repeat:repeat-y;background-size:14px 19px;width:14px;position:absolute;top:58px;bottom:14px;left:5px}.cnb-roster-head{border-bottom:1px solid var(--paper-line);gap:7px;padding-bottom:10px;display:grid}.cnb-scopes{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.cnb-scopes button{border:1px solid var(--paper-line);color:#5f6a5f;cursor:pointer;background:#fffdf7;border-radius:999px;justify-content:center;align-items:baseline;gap:5px;padding:5px 4px;font-size:11px;font-weight:750;display:inline-flex}.cnb-scopes button small{color:#9a9384;font-size:9.5px;font-weight:700}.cnb-scopes button:hover{background:#f4f7f2;border-color:#b7c6b8}.cnb-scopes button.is-active{border-color:var(--paper-moss);color:#33513e;box-shadow:inset 0 -2px 0 var(--paper-moss);background:#eef4ef}.cnb-scopes button.is-active small{color:#527162}.cnb-roster-head select{width:100%}.cnb-roster-list{scrollbar-width:thin;flex:1;align-content:start;gap:7px;min-height:0;padding:10px 2px 6px;display:grid;overflow-y:auto}.cnb-person{border-radius:8px;align-items:stretch;gap:2px;padding:2px 0;display:flex}.cnb-person:hover{background:#faf7ef}.cnb-person.is-picked{background:#f4f1e4}.cnb-person.is-active{box-shadow:inset 0 0 0 1px var(--paper-line), 2px 2px 0 #8b75501a;background:#fffdf6}.cnb-person-main{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;gap:2px;min-width:0;padding:7px 8px 7px 4px;display:grid}.cnb-person-line{align-items:center;gap:6px;min-width:0;display:flex}.cnb-person-line strong{color:#2f3a33;font-size:13.5px}.cnb-person-main small{color:var(--paper-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.cnb-person-foot{color:#97907f;font-size:10.5px}.cnb-tick{cursor:pointer;align-items:center;padding-left:7px;display:flex}.cnb-tick input{opacity:0;width:0;height:0;position:absolute}.cnb-tick span{background:#fffdf7;border:1.4px solid #b8b0a0;border-radius:3px 4px;width:13px;height:13px;display:block}.cnb-tick input:checked+span{border-color:var(--paper-moss);background:var(--paper-moss);box-shadow:inset 0 0 0 2.4px #fffdf7}.cnb-tick input:focus-visible+span{outline:2px solid var(--paper-brass);outline-offset:1px}.cnb-bookmark{background:var(--paper-moss);color:#fdfbf4;letter-spacing:.02em;border-radius:2px 2px 0 0;flex:none;align-items:center;height:15px;margin-bottom:2px;padding:0 6px;font-size:9px;font-style:normal;font-weight:800;display:inline-flex;position:relative}.cnb-bookmark:after{content:"";color:inherit;border-top:3px solid;border-left:3px solid #0000;border-right:3px solid #0000;position:absolute;bottom:-3px;left:50%;transform:translate(-50%)}.cnb-bookmark[data-level=follow]{background:var(--paper-brass)}.cnb-bookmark[data-level=urgent]{background:var(--paper-clay)}.cnb-roster-empty{color:var(--paper-muted);padding:14px 8px;font-size:12px;line-height:1.7}.cnb-pane{flex-direction:column;grid-area:2/2;min-width:0;min-height:0;display:flex;box-shadow:inset 8px 0 10px -10px #45361f73}.cnb-sheet:before{content:"";background:linear-gradient(180deg, transparent, var(--paper-line) 8%, var(--paper-line) 92%, transparent);pointer-events:none;width:1px;position:absolute;top:0;bottom:0;left:calc(clamp(232px,17vw,300px) + 9px)}.cnb-tabs{border-bottom:1px solid var(--paper-line);background:linear-gradient(#fdfaf3,#fffdf7);align-items:flex-end;gap:2px;padding:9px 14px 0;display:flex}.cnb-tabs>button{color:#7d7768;cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:0;border-radius:7px 7px 0 0;align-items:baseline;gap:6px;padding:7px 15px;font-size:12px;font-weight:800;display:inline-flex;position:relative}.cnb-tabs>button small{color:#a49c8c;font-size:9.5px;font-weight:700}.cnb-tabs>button.is-active{background:var(--paper-sheet-warm);border-color:var(--paper-line);color:#2f3a33;box-shadow:inset 0 -3px 0 var(--paper-brass)}.cnb-tabs-scope{color:#8a8375;align-items:center;gap:8px;margin-left:auto;padding-bottom:6px;font-size:10.5px;display:inline-flex}.cnb-stream{scrollbar-width:thin;flex-direction:column;flex:1;min-height:0;padding:8px 18px 8px 22px;display:flex;overflow-y:auto}.cnb-stream:after{content:"";background-image:repeating-linear-gradient(to bottom, transparent 0 61px, color-mix(in srgb, var(--paper-line) 42%, transparent) 61px 62px);flex:1 0 auto;min-height:62px}.cnb-line-head{border-bottom:1px solid var(--paper-line);background:#fbf9f3;grid-template-columns:66px minmax(0,1fr);align-items:stretch;display:grid}.cnb-line-head-date{color:#6d6656;letter-spacing:.06em;text-align:right;justify-content:flex-end;align-items:center;padding-right:14px;font-size:10.5px;font-weight:800;display:flex}.cnb-line-head-line{grid-template-columns:minmax(0,1fr) 158px;align-items:center;padding:8px 14px 8px 16px;display:grid}.cnb-line-head-labels{color:#6d6656;letter-spacing:.06em;grid-template-columns:44px 112px minmax(0,1fr) 72px;align-items:center;gap:16px;font-size:10.5px;font-weight:800;display:grid}.cnb-line-head-labels>*{text-align:left;min-width:0}.cnb-line-head-labels>span:first-child,.cnb-line-head-labels>span:nth-child(2),.cnb-line-head-labels>span:nth-child(4){text-align:center}.cnb-record-head>.cnb-record-cell:first-child,.cnb-record-head>.cnb-record-cell:nth-child(2),.cnb-record-head>.cnb-record-cell:nth-child(4){justify-content:center}.cnb-line-head-actions{color:#6d6656;letter-spacing:.06em;text-align:center;justify-self:center;padding-right:2px;font-size:10.5px;font-weight:800}.cnb-record{border-bottom:1px solid var(--paper-line);grid-template-columns:66px minmax(0,1fr);display:grid}.cnb-record.is-open{background:#fffdf6}.cnb-rail{text-align:right;padding:13px 14px 0 0;position:relative}.cnb-rail:before{content:"";background:var(--paper-line-soft);width:1px;position:absolute;top:0;bottom:0;right:0}.cnb-rail-dot{border:1.5px solid var(--paper-brass);background:var(--paper-sheet);border-radius:50%;width:7px;height:7px;position:absolute;top:17px;right:-3.5px}.cnb-rail-day{color:#6b6355;letter-spacing:.02em;font-family:Georgia,Songti SC,serif;font-size:13px;display:block}.cnb-rail-week{color:#8a8272;font-size:10.5px;display:block}.cnb-line{grid-template-columns:minmax(0,1fr) 158px;align-items:center;padding:12px 14px 12px 16px;display:grid}.cnb-record:hover .cnb-line{background:#fdfbf4}.cnb-record-head{cursor:pointer;background:0 0;border:0;grid-template-columns:44px 112px minmax(0,1fr) 72px;align-items:center;gap:16px;width:100%;min-width:0;padding:0;display:grid}.cnb-record-cell{text-align:left;align-items:center;min-width:0;display:flex}.cnb-clock{color:#7f7767;font-family:Georgia,serif;font-size:12px}.cnb-record-who{color:#5a6a5f;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13.5px;font-weight:800;overflow:hidden}.cnb-record-who:hover{color:var(--paper-moss);text-underline-offset:3px;text-decoration:underline}.cnb-record-head strong{max-width:100%;color:var(--cnb-ink,#3d4a41);letter-spacing:.01em;text-align:left;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700;overflow:hidden}.cnb-record-detail{border-top:1px dashed var(--paper-line-soft);grid-column:1/-1;gap:10px;margin-top:11px;padding-top:11px;display:grid}.cnb-detail-field{gap:4px;display:grid}.cnb-detail-field>span{color:#8b8475;font-size:10px;font-weight:800}.cnb-record-text{color:#3b4038;white-space:pre-wrap;word-break:break-word;background-image:repeating-linear-gradient(to bottom, transparent 0 23px, var(--paper-line-soft) 23px 24px);margin:0;font-size:13.5px;line-height:24px}.cnb-row-actions{justify-content:center;align-items:center;gap:7px;padding-right:2px;display:flex}.cnb-row-action{border:1px solid var(--paper-line);color:#5e7068;cursor:pointer;background:#fffdf7;border-radius:6px;align-items:center;gap:5px;padding:5px 11px;font-size:11px;font-weight:750;display:inline-flex}.cnb-row-action:hover:not(:disabled){background:#f5f1e6;border-color:#c9bea6}.cnb-row-action.is-danger{color:#9c5d4f;border-color:#e5c9c0}.cnb-row-action.is-danger:hover:not(:disabled){background:#fbeeea}.cnb-type{border:1px solid color-mix(in srgb, var(--cnb-ink,#6f6a5d) 45%, transparent);background:var(--cnb-tint,#f2f0e9);color:var(--cnb-ink,#6f6a5d);border-radius:999px;flex:none;padding:3px 10px;font-size:11px;font-style:normal;font-weight:800}.cnb-record-actions{align-items:center;gap:8px;margin-top:9px;display:flex}.cnb-record-actions .danger-button{margin-left:auto}.cnb-record[data-ink=face]{--cnb-ink:#2d4a6b;--cnb-tint:#e2ecf8}.cnb-record[data-ink=phone]{--cnb-ink:#4b4842;--cnb-tint:#ebe9e2}.cnb-record[data-ink=wx]{--cnb-ink:#2a6349;--cnb-tint:#def0e6}.cnb-record[data-ink=visit]{--cnb-ink:#6b4a2a;--cnb-tint:#f3e8d3}.cnb-record[data-ink=care]{--cnb-ink:#35624b;--cnb-tint:#dff0e5}.cnb-record[data-ink=other]{--cnb-ink:#5f5949;--cnb-tint:#ebe9db}.cnb-intake{border:1px solid var(--paper-line);background:var(--paper-sheet-warm);border-radius:8px;gap:7px;margin:8px 14px 2px;padding:9px 11px 10px;display:grid;position:relative;box-shadow:2px 3px #8b75501a}.cnb-intake.is-dropping{outline:2px dashed var(--paper-brass);outline-offset:2px;background:#fffdf4}.cnb-intake-head{align-items:center;gap:9px;display:flex}.cnb-intake-head strong{color:#3a4640;font-size:12.5px}.cnb-intake-ways{color:#9c9486;font-size:10px}.cnb-intake-close{color:#8f8878;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:2px}.cnb-intake-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.cnb-intake-fields>label{gap:4px;display:grid}.cnb-intake-fields>label>span{color:#6f6a5d;font-size:10px;font-weight:800}.cnb-intake-fields input{border:1px solid var(--paper-line);color:#333a34;background:#fffdf7;border-radius:6px;padding:7px 9px;font-size:12px}.cnb-intake-body{gap:4px;display:grid}.cnb-intake-body-head{color:#6f6a5d;align-items:center;gap:9px;font-size:10px;font-weight:800;display:flex}.cnb-intake-body textarea{border:1px solid var(--paper-line);color:#333a34;resize:vertical;background:#fffdf7;border-radius:6px;width:100%;padding:8px 10px;font-family:inherit;font-size:12.5px;line-height:22px}.cnb-intake.is-draft .cnb-intake-body textarea{color:#7c766a;background-image:repeating-linear-gradient(#0000 0 21px,#968d7c52 21px 22px);border-style:dashed;font-style:italic}.cnb-confirm{color:#7f6330;cursor:pointer;background:#f7eeda;border:1px solid #d9c69a;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:10px;font-weight:800;display:inline-flex}.cnb-confirm:hover{background:#f2e6cc}.cnb-intake-foot{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cnb-intake-status{flex-wrap:wrap;flex:1;align-items:center;gap:9px;min-width:0;font-size:10.5px;display:flex}.cnb-draft-badge{color:#8a6a33;background:#f7eeda;border:1px dashed #d9c69a;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-weight:750;display:inline-flex}.cnb-reading,.cnb-note{color:#6b7a6f}.cnb-error{color:#9e4f42}.cnb-intake-actions{align-items:center;gap:8px;display:flex}.cnb-empty{color:var(--paper-muted);text-align:center;justify-items:center;gap:7px;padding:40px 12px;display:grid}.cnb-empty strong{color:#3f4a43;font-size:13.5px}.cnb-empty span{max-width:460px;font-size:11px;line-height:1.8}.cnb-carepane{scrollbar-width:thin;flex:1;min-height:0;padding:12px 14px 14px;overflow-y:auto}.care-fixed-student{border:1px solid var(--paper-line);color:#333a34;background:#f7f4ea;border-radius:6px;gap:2px;padding:7px 9px;font-size:12.5px;display:grid}.care-fixed-student small{color:var(--paper-muted);font-size:10px;font-weight:400}@media (width<=900px){.cnb-sheet{grid-template-columns:1fr}.cnb-roster{max-height:calc(38 * var(--vh1));border-right:0;border-bottom:1px dashed var(--paper-line)}.cnb-intake-fields{grid-template-columns:1fr}}.cnb-field{gap:4px;min-width:0;display:grid}.cnb-field>span{color:#6f6a5d;font-size:10px;font-weight:800}.cnb-student-field{border:1px solid var(--paper-line);background:#fffdf7;border-radius:6px;flex-wrap:wrap;align-items:center;gap:5px;min-height:0;padding:3px 6px;display:flex;position:relative}.cnb-student-field>input{color:#333a34;background:0 0;border:0;flex:1;min-width:110px;padding:5px 2px;font-size:12px}.cnb-student-field>input:focus{outline:none}.cnb-chosen-chip{color:#35513f;background:#f1f6f1;border:1px solid #cbd6cb;border-radius:999px;align-items:center;gap:4px;padding:2px 4px 2px 8px;font-size:11px;font-weight:750;display:inline-flex}.cnb-chosen-chip button{color:#7d8c80;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:13px;line-height:1}.cnb-matches{z-index:5;border:1px solid var(--paper-line);background:#fffdf7;border-radius:7px;margin:0;padding:3px;list-style:none;position:absolute;top:calc(100% + 3px);left:0;right:0;box-shadow:0 10px 24px -14px #45361f66}.cnb-matches button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:space-between;align-items:baseline;gap:10px;width:100%;padding:6px 8px;display:flex}.cnb-matches button:hover{background:#f5f1e6}.cnb-matches button{color:#33413a;font-size:12px}.cnb-matches small{color:var(--paper-muted);font-size:10px}.cnb-intake-fields>.cnb-field:first-child{grid-column:1/-1}.cnb-materials{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.cnb-material{border:1px solid var(--paper-line);color:#46503f;background:#fffdf7;border-radius:6px;align-items:center;gap:6px;max-width:100%;padding:3px 7px;font-size:11px;text-decoration:none;display:inline-flex}.cnb-material small{color:var(--paper-muted);font-size:10px}.cnb-material a,.cnb-material>a{color:inherit;text-decoration:none}.cnb-material button{color:#8f8878;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:13px;line-height:1}.cnb-material.is-image{padding:3px}.cnb-material.is-image img{object-fit:cover;border-radius:4px;width:46px;height:46px;display:block}.cnb-material.is-image small{text-overflow:ellipsis;white-space:nowrap;max-width:96px;overflow:hidden}.cnb-field-wide{grid-column:1/-1}.cnb-intake .v2-choice-grid.is-compact{grid-template-columns:repeat(6,minmax(0,1fr))}.cnb-watchmark{color:#33513e;background:#eef4ef;border-radius:3px;flex:none;padding:1px 6px;font-size:9.5px;font-style:normal;font-weight:800}.cnb-watchrow{border:1px dashed var(--paper-line);color:#5d5849;background:#faf8f1;border-radius:8px;flex-wrap:wrap;align-items:center;gap:9px;margin:0 14px 8px;padding:9px 11px;font-size:11px;display:flex}.cnb-watchrow.is-on{background:#f4f8f4;border-style:solid;border-color:#cbd8cc}.cnb-watchrow .cnb-watchmark{padding:2px 8px;font-size:10px}.cnb-watchrow-basis{text-overflow:ellipsis;white-space:nowrap;color:#3f4a42;flex:260px;min-width:0;overflow:hidden}.cnb-watchrow.is-on .cnb-watchrow-basis{white-space:normal}.cnb-watchrow-meta{color:#90897a;flex:none;font-size:10.5px}.confirm-dialog-native{background:0 0;border:0;width:min(430px,100vw - 32px);max-width:none;max-height:none;margin:auto;padding:0;overflow:visible}.confirm-dialog-native::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#231f1b75}.confirm-dialog-card{color:#30251f;background:#fffafc;border:1px solid #dccfc2;border-radius:20px;width:100%;padding:31px 30px 25px;position:relative;box-shadow:0 24px 60px #271b143d,0 5px 16px #271b141a}.confirm-dialog-close{color:#a49a94;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:32px;height:32px;font-size:25px;line-height:1;display:grid;position:absolute;top:14px;right:15px}.confirm-dialog-close:hover:not(:disabled){color:#4b3b32;background:#f1e9e5}.confirm-dialog-close:disabled{cursor:wait;opacity:.55}.confirm-dialog-content{padding:4px 8px 22px}.confirm-dialog-content h2{color:#30251f;letter-spacing:.02em;margin:0 28px 10px 0;font:700 21px/1.35 Songti SC,SimSun,serif}.confirm-dialog-content p{color:#776d67;margin:0;font-size:13px;line-height:1.75}.confirm-dialog-actions{justify-content:flex-end;gap:12px;padding:0 8px;display:flex}.confirm-dialog-button{cursor:pointer;border:0;border-radius:999px;min-width:112px;height:42px;padding:0 20px;font-size:14px;font-weight:750}.confirm-dialog-button.secondary{color:#684b38;background:#f8dcca}.confirm-dialog-button.secondary:hover:not(:disabled){background:#f2cdb9}.confirm-dialog-button.primary{color:#fff;background:#9b4f20;box-shadow:0 4px 10px #7f3e1833}.confirm-dialog-button.primary:hover:not(:disabled){background:#7f3f19}.confirm-dialog-button:disabled{cursor:wait;opacity:.55}@media (width<=520px){.confirm-dialog-card{padding:28px 20px 21px}.confirm-dialog-actions{gap:8px;padding:0}.confirm-dialog-button{flex:1;min-width:0}}.page-content.office-page{gap:16px;width:100%;max-width:1580px;margin:0 auto;padding:28px 32px 20px}.office-page:before{display:none}.office-page .panel{border-color:var(--paper-line);box-shadow:var(--paper-shadow)}.office-page :is(button,input,select):focus-visible{outline:2px solid var(--paper-moss);outline-offset:3px}.office-page :is(.search-box,select){background-color:var(--paper-sheet)}.office-page :is(.search-box input,select){font-size:12px}.office-page :is(.primary-button,.secondary-button){border-radius:6px;min-height:38px;font-size:12px}.office-page .primary-button{background:var(--paper-moss);border-color:var(--paper-moss)}.office-page .primary-button:disabled{opacity:.55}.office-page .office-paper-art{flex:none;width:144px;height:108px;margin:0 0 12px}.office-register-heading{border-bottom:1px solid var(--paper-line);justify-content:space-between;align-items:center;gap:20px;padding:19px 24px;display:flex}.office-register-heading h2{color:var(--paper-moss);font:600 20px/1.4 var(--font-song);letter-spacing:.06em;margin:0}.office-register-heading>span{color:var(--paper-muted);letter-spacing:.08em;font-size:11px}.recognition-section-head h3,.discipline-ledger .recognition-section-head h3,.attendance-record-heading div strong,.party-cabinet-rail .party-rail-heading strong{color:var(--paper-moss);font:600 20px/1.4 var(--font-song);letter-spacing:.06em;margin:0}.office-page :is(.attendance-empty,.prize-empty,.notice-empty,.discipline-empty-state){text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:40px 24px;display:flex}.office-page :is(.attendance-empty,.prize-empty,.notice-empty,.discipline-empty-state)>strong{color:var(--paper-moss);font:600 20px/1.5 var(--font-song)}.office-page :is(.attendance-empty p,.prize-empty>span,.notice-empty>span,.discipline-empty-state>small){max-width:460px;color:var(--paper-muted);margin:0;font-size:12px;line-height:1.8}.office-page .attendance-empty .primary-button{margin-top:16px}.office-attendance .attendance-head-stack{gap:18px}.office-attendance .metric-cards{gap:16px}.office-attendance .metric-card{min-height:104px;box-shadow:0 3px 0 var(--paper-line-soft), var(--paper-shadow);border-radius:4px 10px 4px 4px;padding:20px 22px}.office-attendance .metric-card:before{opacity:.25;background:currentColor;width:40px;height:4px;top:0;left:22px;transform:none}.office-attendance .metric-card:after{display:none}.office-attendance .metric-card-icon{border:1px solid var(--paper-line);background:0 0;border-radius:50%}.office-attendance .metric-card-copy strong{font-size:28px}.office-attendance .metric-card-copy small{font-size:12px}.office-attendance .attendance-filter-panel{border-radius:8px;gap:12px;margin:0;padding:16px 18px}.office-attendance .attendance-record-panel{border-left:6px solid var(--paper-moss);background:var(--paper-sheet);box-shadow:3px 4px 0 var(--paper-line-soft), var(--paper-shadow);border-radius:4px 10px 10px 4px;padding-left:26px;position:relative;overflow:hidden}.office-attendance .attendance-record-panel:before{content:"";pointer-events:none;background:radial-gradient(circle, var(--paper-bg) 0 3px, var(--paper-line) 3px 4px, transparent 4px) center top / 12px 42px;width:12px;position:absolute;top:85px;bottom:18px;left:7px}.office-attendance .attendance-record-heading{background:var(--paper-sheet);border-bottom:1px solid var(--paper-line);min-height:80px;padding:18px 24px}.office-attendance .attendance-record-heading>div:first-child strong{font:600 20px/1.4 var(--font-song);letter-spacing:.06em}.office-attendance .attendance-record-heading>div:first-child span{color:var(--paper-muted);margin-top:6px;font-size:11px}.office-attendance .attendance-empty{background:linear-gradient(var(--paper-sheet), var(--paper-sheet)) center / 600px 100% no-repeat, repeating-linear-gradient(transparent 0 41px, var(--paper-line-soft) 41px 42px);flex:1;min-height:280px}.office-attendance .attendance-table th{background:var(--paper-sheet-warm);color:var(--paper-muted)}.office-attendance .attendance-table td{border-color:var(--paper-line-soft);font-size:12px}.office-attendance .attendance-range-switch{border:1px solid var(--paper-line);background:var(--paper-sheet-warm);border-radius:6px;padding:3px}.office-attendance .attendance-range-switch button{border-radius:4px}.office-attendance .attendance-range-switch button.active{background:var(--paper-moss);box-shadow:none}.office-prize .prize-toolbar{border-radius:8px;flex:none;gap:16px;padding:16px 20px}.office-prize .prize-toolbar .search-box{flex:1;max-width:none}.office-prize .prize-table{border-left:6px solid var(--paper-brass);background:var(--paper-sheet);min-height:0;box-shadow:3px 4px 0 var(--paper-line-soft), var(--paper-shadow);border-radius:4px 10px 10px 4px;flex-direction:column;flex:1;margin-top:16px;display:flex;overflow:auto}.office-prize .prize-table>:not(.prize-empty){flex-shrink:0}.office-prize .office-register-heading{background:var(--paper-sheet);border-bottom:3px double var(--paper-line)}.office-prize .office-register-heading h2:before{content:"";vertical-align:-3px;background:var(--paper-brass);clip-path:polygon(0 0,100% 0,100% 100%,50% 78%,0 100%);width:8px;height:20px;margin-right:12px;display:inline-block}.office-prize :is(.prize-row,.prize-table-head){padding-left:24px;padding-right:24px}.office-prize .prize-table-head{background:var(--paper-sheet-warm);min-height:44px;font-size:11px}.office-prize .prize-row{border-bottom-style:solid;min-height:74px}.office-prize .prize-empty{background:var(--paper-sheet);flex:1;min-height:280px}.office-notice>.page-shell-body{gap:14px}.office-notice .notice-list{flex-direction:column;flex:1;gap:16px;min-height:0;padding:0 4px 5px 0;display:flex}.office-notice .notice-card{background:var(--paper-sheet);box-shadow:2px 3px 0 var(--paper-line-soft), var(--paper-shadow);border-radius:3px;flex:none;gap:16px;padding:24px 28px;position:relative}.office-notice .notice-card:before{content:"";pointer-events:none;background:repeating-linear-gradient(135deg, var(--paper-moss-soft) 0 12px, var(--paper-sheet) 12px 24px, var(--paper-brass-soft) 24px 36px, var(--paper-sheet) 36px 48px);height:3px;position:absolute;top:0;left:0;right:0}.office-notice .notice-card-head h3{font:600 19px/1.5 var(--font-song)}.office-notice .notice-card-head p{font-size:13px;line-height:1.85}.office-notice .notice-meta{color:var(--paper-muted);font-size:12px}.office-notice .notice-delivery{border:1px solid;border-radius:3px;padding:8px 13px;font-size:11px;transform:rotate(-3deg)}.office-notice .notice-progress{background:var(--paper-moss-soft);border-radius:4px;padding:14px 16px}.office-notice .notice-progress small{color:var(--paper-moss);font-size:12px}.office-notice .notice-card-actions{border-top:1px dashed var(--paper-line);gap:10px;padding-top:16px}.office-notice .notice-card-actions .secondary-button{min-height:34px;font-size:11px}.office-notice .notice-empty{background:var(--paper-sheet);min-height:360px;box-shadow:2px 3px 0 var(--paper-line-soft);border-radius:8px;flex:1;position:relative}.office-notice .notice-empty:after{content:"";border-top:1px dashed var(--paper-line);pointer-events:none;position:absolute;bottom:26px;left:24px;right:24px}.office-notice .notice-list{gap:9px}.office-notice .notice-card{grid-template-columns:minmax(0,1.4fr) minmax(250px,.8fr);align-items:center;gap:7px 14px;padding:12px 16px 11px}.office-notice .notice-card-head{grid-column:1/-1}.office-notice .notice-card-head h3{font-size:16px;line-height:1.4}.office-notice .notice-card-head p{margin-top:3px;font-size:11.5px;line-height:1.5}.office-notice .notice-meta{grid-area:2/1;gap:4px 10px;font-size:10px}.office-notice .notice-delivery{padding:5px 9px;font-size:10px;transform:none}.office-notice .notice-progress{grid-area:2/2;gap:7px;padding:5px 8px}.office-notice .notice-progress small{font-size:10px}.office-notice .notice-progress>strong{font-size:11px}.office-notice .notice-card-actions{grid-column:1/-1;gap:5px;padding-top:6px}.office-notice .notice-card-actions .secondary-button{min-height:29px;padding:4px 9px;font-size:10px}.office-notice .notice-card-primary-actions,.office-notice .notice-card-utility-actions{flex-wrap:wrap;align-items:center;gap:5px;min-width:0;display:flex}.office-notice .notice-card-primary-actions{flex:auto}.office-notice .notice-card-utility-actions{border-left:1px solid var(--paper-line-soft);flex:0 auto;margin-left:auto;padding-left:8px}.office-notice .notice-card-actions :is(.v2-link,.danger-button){min-height:29px;padding:4px 8px;font-size:10px}@media (width<=760px){.office-notice .notice-card{grid-template-columns:minmax(0,1fr)}.office-notice .notice-meta,.office-notice .notice-progress{grid-area:auto/1}.office-notice .notice-card-actions{flex-direction:column;align-items:flex-start}.office-notice .notice-card-primary-actions,.office-notice .notice-card-utility-actions{width:100%}.office-notice .notice-card-utility-actions{border-top:1px solid var(--paper-line-soft);border-left:0;margin-left:0;padding:6px 0 0}}.office-discipline .discipline-status-nav{background:0 0;border:0;border-radius:0;align-items:flex-end;gap:4px;min-height:0;margin-bottom:0;padding:14px 12px 0}.office-discipline .discipline-status-nav>button{color:var(--paper-muted);background:0 0;border:1px solid #0000;border-bottom:0;border-radius:10px 14px 0 0;padding:12px 20px 14px}.office-discipline .discipline-status-nav>button b{opacity:.72;margin-left:9px;font:600 15px Georgia,serif}.office-discipline .discipline-status-nav>button:not(.active):not(.primary-button):not(.secondary-button):hover{color:var(--paper-ink);background:#ab825017}.office-discipline .discipline-status-nav>button.active{border-color:var(--paper-line);background:var(--paper-sheet-warm);color:var(--paper-moss);box-shadow:inset 0 3px 0 var(--paper-brass)}.office-discipline .discipline-status-nav>button.active b{opacity:1}.office-discipline .discipline-status-nav>.primary-button,.office-discipline .discipline-status-nav>.secondary-button{border-radius:6px;margin-bottom:12px}.office-discipline .discipline-status-nav>.primary-button{background:var(--paper-moss);border-color:var(--paper-moss);color:var(--paper-sheet);padding:10px 18px}.office-discipline .discipline-status-nav>.secondary-button{border:1px solid var(--paper-line);background:var(--paper-sheet);color:var(--paper-ink);padding:10px 18px}.page-content.office-discipline{gap:0}.office-discipline>.page-shell-foot{margin-top:16px}.office-discipline .discipline-content-layout{border:1px solid var(--paper-line);border-left:8px solid var(--paper-brass);border-top:3px solid var(--paper-brass);background:var(--paper-sheet-warm);box-shadow:3px 4px 0 var(--paper-line), var(--paper-shadow);border-radius:4px 10px 10px 4px;align-items:stretch;padding:16px 16px 16px 24px}.office-discipline .discipline-ledger{border-color:var(--paper-line);background:var(--paper-sheet);border-radius:4px}.office-discipline .discipline-ledger .discipline-ledger-head{background:var(--paper-sheet);grid-template-columns:1fr auto;gap:16px;padding:22px 24px 18px}.office-discipline .discipline-ledger-title{grid-area:1/1}.office-discipline .discipline-ledger h3{font:600 20px/1.4 var(--font-song);margin:0}.office-discipline .discipline-ledger-motto{border:1px solid var(--paper-line);color:var(--paper-muted);letter-spacing:.12em;border-radius:2px;grid-area:1/2;padding:5px 10px;font:11px/1.4 sans-serif}.office-discipline .discipline-ledger-controls{grid-area:2/1/auto/-1;gap:12px}.office-discipline .discipline-ledger-controls .search-box{max-width:none;height:40px}.office-discipline .discipline-ledger-controls .discipline-filter select{min-height:38px}.office-discipline .discipline-empty-state{background:var(--paper-sheet);min-height:280px}.office-discipline .discipline-ledger .recognition-table-head{background:var(--paper-sheet-warm)}.office-discipline .discipline-ledger .recognition-table{grid-auto-rows:max-content;align-content:start}.office-discipline .discipline-table article{background:var(--paper-sheet);min-height:74px}.office-discipline .discipline-table article:nth-child(odd){background:var(--paper-sheet)}.office-discipline .discipline-table article.selected{background:var(--paper-moss-soft)}.office-discipline .discipline-detail-panel{border-color:var(--paper-line);box-shadow:var(--paper-shadow);background:var(--paper-sheet);top:0}@media (width<=1250px){.page-content.office-page{padding:22px 20px 16px}.office-attendance .attendance-filter-panel{flex-wrap:wrap;display:flex}.office-attendance .attendance-search-box{flex:280px}.office-attendance .attendance-filter-actions,.office-discipline .discipline-ledger-controls{flex-wrap:wrap}.office-discipline .discipline-ledger-controls .search-box{flex-basis:100%}}@media (width<=760px){.page-content.office-page{gap:14px;height:auto;padding:16px 12px;overflow:visible}.office-prize .prize-toolbar .search-box{flex-basis:100%}.office-prize .prize-table{min-height:400px;overflow-x:auto}.office-prize :is(.prize-table-head,.prize-row){min-width:1200px}.office-prize .office-register-heading>span{display:none}.office-attendance .attendance-record-panel{padding-left:16px}.office-attendance .attendance-record-heading{flex-wrap:wrap;gap:16px;padding:16px}.office-attendance .attendance-record-panel:before{left:2px}.office-discipline .discipline-content-layout{padding:8px;overflow:visible}.office-discipline .discipline-status-nav{overflow-x:auto}.office-discipline .discipline-status-nav>button{white-space:nowrap;padding:12px 14px}.office-discipline .discipline-ledger .discipline-ledger-head{padding:16px}.office-discipline .discipline-ledger-controls .discipline-filter{width:auto}.office-discipline .discipline-ledger-controls>.secondary-button{margin-left:0}}.office-notice .notice-board{border-radius:8px;flex:none}.office-notice .notice-toolbar{border-bottom:0;padding:12px 16px}.page-content.dashboard-page{box-sizing:border-box;height:calc(calc(100 * var(--vh1)) - 92px);min-height:0;max-height:calc(calc(100 * var(--vh1)) - 92px);grid-template-rows:auto minmax(180px,auto) minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:16px;padding:22px 32px 20px;display:grid;overflow:hidden}.dashboard-page .dashboard-data-hero{grid-template-columns:minmax(150px,.18fr) minmax(0,2.55fr);padding:16px 22px}.dashboard-page .dashboard-primary-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);min-height:0;margin:0}.dashboard-page .dashboard-primary-grid>article,.dashboard-page .dashboard-attention-panel{flex-direction:column;min-height:0;margin:0;display:flex;overflow:hidden}.dashboard-page .dashboard-primary-grid>article>header,.dashboard-page .dashboard-attention-panel>header{flex-shrink:0}.dashboard-page :is(.dashboard-course-list,.dashboard-agenda-list,.dashboard-attention-list){overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;grid-template-rows:none;grid-auto-rows:max-content;align-content:start;min-height:0;overflow:auto}.dashboard-page .dashboard-primary-grid :is(.dashboard-course-list,.dashboard-agenda-list){flex:0 auto;max-height:400px}.dashboard-page .dashboard-attention-panel>header{align-items:center}.dashboard-page .dashboard-attention-count{margin-right:auto}.dashboard-page .dashboard-course-empty{min-height:100px}@media (width<=1180px){.page-content.dashboard-page{gap:12px;padding:16px}.dashboard-page .dashboard-data-hero{grid-template-columns:1fr;gap:8px;padding:12px 16px}.dashboard-page .dashboard-greeting{align-items:baseline;gap:16px;display:flex}.dashboard-page .dashboard-greeting h2{margin:0;font-size:20px}.dashboard-page .dashboard-greeting p{margin:0}.dashboard-page .dashboard-hero-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin:0}}@media (width<=700px){.dashboard-page .dashboard-greeting p{display:none}.dashboard-page .dashboard-hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-page .dashboard-primary-grid{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:1fr;gap:8px}.dashboard-page .dashboard-primary-grid>article>header{padding:6px 10px}.dashboard-page .dashboard-primary-grid h3{font-size:14px}}.dashboard-page .dashboard-agenda-list>button>em{text-overflow:ellipsis;justify-content:center;align-items:center;max-width:180px;min-height:24px;padding:4px 11px;font-size:10px;font-weight:750;line-height:1.2;display:inline-flex;overflow:hidden;color:#4d7181!important;background:#eef4f6!important;border:0!important;border-radius:999px!important}.dashboard-page .dashboard-agenda-list>button>em:before{content:none!important;display:none!important}.dashboard-page .dashboard-agenda-list>button>em.priority-normal{color:#39735a!important;background:#ecf5ef!important}.dashboard-page .dashboard-agenda-list>button>em.priority-important{color:#92691f!important;background:#faf2dd!important}.dashboard-page .dashboard-agenda-list>button>em.priority-urgent{color:#a64e43!important;background:#fbece8!important}.dashboard-page .dashboard-attention-reasons{justify-content:flex-end;gap:5px;min-width:0}.dashboard-page .attention-reason{text-overflow:ellipsis;min-width:0;max-width:min(260px,18vw);padding:4px 10px;font-size:10px;font-weight:650;line-height:1.25;overflow:hidden;border:0!important;border-radius:999px!important}.dashboard-page .attention-reason:before{content:none!important;display:none!important}.dashboard-page .attention-reason.reason-leave-overdue,.dashboard-page .attention-reason.reason-grade-alert{color:#a83232!important;background:#fcebea!important}.dashboard-page .attention-reason.reason-attendance-alert{color:#a3561f!important;background:#fdf1e3!important}.dashboard-page .attention-reason.reason-on-leave{color:#326b82!important;background:#e8f1f7!important}.dashboard-page .attention-reason:is(.reason-care,.reason-discipline){color:#5c4b7d!important;background:#f1ecf8!important}.dashboard-page .dashboard-panel-title{align-items:center;gap:9px;min-width:0;display:flex}.dashboard-page .dashboard-panel-title .icon-badge{border-radius:9px;width:30px;height:30px}.dashboard-page .dashboard-attention-panel{position:relative}.dashboard-page .dashboard-attention-panel:before{content:"";z-index:1;background:var(--paperclip-metal-icon) center / contain no-repeat;filter:drop-shadow(0 1px 1px #5845284d);pointer-events:none;width:15px;height:42px;position:absolute;top:5px;right:116px;transform:rotate(14deg)}.dashboard-page .dashboard-attention-panel:after{content:"";background:var(--paper-fold);width:38px;height:38px;box-shadow:none;pointer-events:none;position:absolute;inset:auto 0 0 auto}.dashboard-page .dashboard-course-empty{padding:30px 16px 34px}.dashboard-page .dashboard-course-empty .dashboard-empty-glyph{color:#aec0b9}.dashboard-page .dashboard-course-empty strong{color:#48594f}.dashboard-page .dashboard-agenda-panel{position:relative}.dashboard-page .dashboard-agenda-postmark{color:#c08072;opacity:.75;mix-blend-mode:multiply;pointer-events:none;width:176px;position:absolute;bottom:16px;right:24px;transform:rotate(-9deg)}.dashboard-page .dashboard-agenda-postmark svg{width:100%;height:auto;display:block}.dashboard-page .dashboard-agenda-postmark text{fill:currentColor}.dashboard-page .dashboard-agenda-postmark .postmark-date{letter-spacing:.22em;font:800 11.5px/1 Georgia,Times New Roman,serif}.dashboard-page .dashboard-agenda-postmark .postmark-city{font:700 15px/1 var(--font-kai,"Kaiti SC", "STKaiti", serif);letter-spacing:.12em}@media (width<=700px){.dashboard-page .dashboard-attention-panel:before{display:none}.dashboard-page .dashboard-agenda-postmark{width:132px;bottom:10px;right:14px}}.v2-dialog:has(>form.v2-form)>header{padding:16px 22px}.v2-dialog:has(>form.v2-form)>header h2{font-size:19px}.v2-dialog>form.v2-form:not(.v2-editor-form){gap:12px;padding:18px 22px 20px}.v2-dialog>form.v2-form:not(.v2-editor-form) label{gap:6px;font-size:12px}.v2-dialog>form.v2-form:not(.v2-editor-form) input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),.v2-dialog>form.v2-form:not(.v2-editor-form) select,.v2-dialog>form.v2-form:not(.v2-editor-form) textarea{min-height:40px;padding:9px 11px;font-size:13px}.v2-dialog>form.v2-form:not(.v2-editor-form) textarea{min-height:82px}.v2-dialog>form.v2-form:not(.v2-editor-form) .v2-form-row{gap:12px}.v2-dialog>form.v2-form:not(.v2-editor-form) footer{gap:8px;padding-top:12px}.v2-dialog>form.v2-editor-form>.v2-form-scroll{gap:12px;padding:18px 22px}.v2-dialog .v2-form-choice-field{min-width:0;color:var(--muted);gap:6px;font-size:12px;font-weight:700;display:grid}.v2-dialog .v2-form-choice-field>span{color:var(--moss,#536860)}.v2-dialog .v2-choice-grid.is-compact button{border-radius:7px;min-height:40px;padding:6px 9px}.v2-dialog .form-choice-grid .form-choice-card{min-width:0;min-height:40px;color:var(--ink);cursor:pointer;background:#fffdf9;border:1px solid #d9d0c2;border-radius:7px;justify-content:flex-start;align-items:center;gap:7px;margin:0;padding:6px 9px;font-size:11px;font-weight:650;line-height:1.3;display:flex}.v2-dialog .form-choice-grid .form-choice-card:hover{background:#f5f8f2;border-color:#8ca596}.v2-dialog .form-choice-grid .form-choice-card.selected{color:#315a4e;background:#e4f0e7;border-color:#3f7563;box-shadow:inset 0 -3px #3f7563}.v2-dialog .form-choice-grid .form-choice-card input[type=radio]{accent-color:#39866d;flex:none;width:15px;height:15px;min-height:0;margin:0;padding:0}.v2-dialog .form-choice-grid .form-choice-card>span{gap:3px;min-width:0;display:grid}.v2-dialog .form-choice-grid .form-choice-card .v2-choice-title{gap:6px;min-width:0}.v2-dialog .form-choice-grid .form-choice-card .v2-choice-title strong{overflow-wrap:anywhere;font-size:11px}.v2-dialog .form-choice-grid .form-choice-card small{color:var(--muted);white-space:normal;font-size:10px;font-weight:400;line-height:1.35}.notice-form-dialog .v2-choice-grid.is-compact{grid-template-columns:repeat(3,minmax(0,1fr))}.notice-form-dialog .v2-choice-grid button small{overflow-wrap:anywhere;white-space:normal}.v2-dialog .party-form-grid .party-stage-choice-label{grid-column:1/-1}.v2-dialog .party-stage-choice-label .v2-choice-grid.is-compact{grid-template-columns:repeat(5,minmax(0,1fr))}.v2-dialog .party-material-status-options{grid-column:2/4;grid-template-columns:repeat(3,minmax(0,1fr))}.v2-dialog .party-inline-status-choice{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px}.v2-dialog .party-inline-status-choice .form-choice-card{gap:3px;min-height:30px;padding:3px 4px;font-size:9px}.v2-dialog .party-inline-status-choice .form-choice-card input[type=radio]{width:12px;height:12px}.v2-dialog .party-inline-status-choice .form-choice-card .v2-choice-title strong{font-size:9px}.v2-dialog .party-material-status-options .form-choice-card{text-align:center;min-height:34px;padding:4px 5px}.v2-dialog .party-material-status-options .v2-choice-title{justify-content:center}.v2-dialog .party-material-status-options .v2-choice-title strong{font-size:10px}.v2-dialog .party-material-editor>div>.form-choice-grid .form-choice-card{min-height:32px;padding:4px 5px}.v2-dialog .leave-type-options{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=600px){.v2-dialog:has(>form.v2-form)>header{padding:14px 16px}.v2-dialog>form.v2-form:not(.v2-editor-form){gap:11px;padding:15px 16px 17px}.v2-dialog>form.v2-form:not(.v2-editor-form) .v2-form-row{grid-template-columns:1fr}.v2-dialog>form.v2-editor-form>.v2-form-scroll{gap:11px;padding:15px 16px}.v2-dialog .form-choice-grid .form-choice-card{min-height:38px;padding:6px 7px}.v2-dialog .party-stage-choice-label .v2-choice-grid.is-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-dialog .party-material-status-options{grid-column:auto}}@media (width>=1800px){.main-panel>.page-content{max-width:min(96%,1800px)}}@media (width>=2400px){.main-panel>.page-content{max-width:min(94%,3200px)}.inbox-stationery .ai-upload-modebar,.inbox-stationery .ai-workspace-composer,.inbox-history-full-page{max-width:min(100%,3000px)}}.backup-reminder{color:#5c4a1e;background:linear-gradient(#fdf6e7,#faf0d8);border:1px solid #ecd9b0;border-radius:12px;align-items:flex-start;gap:12px;margin:0 0 14px;padding:14px 18px;display:flex}.backup-reminder>svg{color:#b98a1f;flex:none;margin-top:2px}.backup-reminder-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.backup-reminder-body strong{font-size:14px}.backup-reminder-body>span{opacity:.85;font-size:12.5px}.backup-reminder-error{color:#a3402e;opacity:1!important}.backup-reminder-actions{flex:none;align-items:center;gap:10px;padding-top:2px;display:flex}.backup-reminder-actions .v2-link{color:#8a6d2a}@media (width<=900px){.backup-reminder{flex-direction:column}.backup-reminder-actions{flex-wrap:wrap}}
