/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@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-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--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;--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{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.\!end{inset-inline-end:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-row{display:table-row}.table-row-group{display:table-row-group}.size-0{width:calc(var(--spacing) * 0);height:calc(var(--spacing) * 0)}.size-1{width:calc(var(--spacing) * 1);height:calc(var(--spacing) * 1)}.h-1{height:calc(var(--spacing) * 1)}.h-5{height:calc(var(--spacing) * 5)}.shrink{flex-shrink:1}.grow{flex-grow: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}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\!outline{outline-style:var(--tw-outline-style)!important;outline-width:1px!important}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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,)}.grayscale{--tw-grayscale:grayscale(100%);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,)}.invert{--tw-invert:invert(100%);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))}}:root{--ink:#17344e;--muted:#718da6;--line:#d7eaf7;--blue:#159ee9;--blue-dark:#087dcc;--cyan:#4ac0f4;--surface:#ffffffe0;--canvas:#edf8ff}*{box-sizing:border-box}html,body{min-height:100%;color:var(--ink);background:var(--canvas);margin:0}body{background-image:linear-gradient(#47a7e00e 1px,#0000 1px),linear-gradient(90deg,#47a7e00e 1px,#0000 1px),radial-gradient(circle at 72% 0,#74d0ff33,#0000 34%);background-size:72px 72px,72px 72px,100% 100%;font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif}button,input,select{font:inherit}button,select{cursor:pointer}.app-shell{min-height:100vh;padding-top:82px}.topbar{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fafdfff2;border-bottom:1px solid #cfe6f5;grid-template-columns:minmax(350px,.9fr) minmax(320px,1fr) auto;align-items:center;gap:28px;height:82px;padding:0 24px;display:grid;position:fixed;inset:0 0 auto;box-shadow:0 8px 26px #3485b714}.header-brand{align-items:center;gap:15px;min-width:0;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#0c7af1,#0758ec);border-radius:13px;flex:none;place-items:center;width:46px;height:46px;font-size:21px;font-weight:800;display:grid;box-shadow:0 9px 22px #0869e742,inset 0 0 0 1px #ffffff40}.header-brand strong{letter-spacing:-.3px;white-space:nowrap;text-overflow:ellipsis;font-size:21px;display:block;overflow:hidden}.header-brand span{color:#0989d8;letter-spacing:2px;margin-top:7px;font:9px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;display:block}.global-search{background:#fff;border:1px solid #cfe6f5;border-radius:15px;align-items:center;gap:11px;height:50px;padding:0 17px;display:flex;box-shadow:inset 0 1px 3px #1e638e08}.global-search span{color:#6689a4;font-size:22px}.global-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:14px}.global-search input::placeholder{color:#96aabc}.top-actions{align-items:center;gap:9px;display:flex}.header-button,.header-primary{white-space:nowrap;color:#2b5876;background:#fff;border:1px solid #cfe6f5;border-radius:11px;height:44px;padding:0 15px;font-size:12px;font-weight:600}.header-button:hover{background:#f7fcff;border-color:#8fcdf0}.header-primary{color:#fff;background:linear-gradient(135deg,#4cc0f3,#169ee9);border-color:#35a9eb;box-shadow:0 8px 18px #159ee933}.sidebar{z-index:10;color:#67869e;background:linear-gradient(155deg,#daf3fff2,#f0f9ffeb);border-right:1px solid #c8e5f7;flex-direction:column;width:232px;padding:26px 17px 19px;display:flex;position:fixed;top:82px;bottom:0;left:0;box-shadow:12px 0 34px #3b97cf0f}.sidebar>.brand{display:none}.nav-label{color:#7da1b9;letter-spacing:1.7px;text-transform:uppercase;margin:0 11px 12px;font:9px/1 ui-monospace,Consolas,monospace}nav{gap:7px;display:grid}nav a,nav button,.sidebar-bottom>a{width:100%;height:45px;color:inherit;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:0 14px;font-size:12px;font-weight:500;text-decoration:none;transition:all .18s;display:flex}nav a span,nav button span,.sidebar-bottom>a span{color:#6f99b5;background:#ffffff8c;border-radius:7px;place-items:center;width:22px;height:22px;font-size:12px;display:grid}nav a:hover,nav button:hover,.sidebar-bottom>a:hover{color:#0787d5;background:#ffffff9e}nav a.active,nav button.active{color:#078bdc;background:#ffffffeb;box-shadow:0 7px 20px #2e91ca1f,inset 3px 0 #20a8ee}nav a.active span,nav button.active span{color:#fff;background:linear-gradient(135deg,#39b7f2,#138ee0)}.sidebar-bottom{margin-top:auto}.profile{border-top:1px solid #c9e3f2;align-items:center;gap:10px;margin-top:15px;padding:17px 8px 0;display:flex}.profile strong{color:#2a536e;font-size:11px;display:block}.profile span{color:#85a0b3;margin-top:3px;font-size:9px;display:block}.profile b{margin-left:auto}.content{min-width:0;margin-left:232px}.page{max-width:1600px;margin:0 auto;padding:28px 30px 50px}.heading-row{background:linear-gradient(120deg,#ffffffe6,#e2f6ffc2);border:1px solid #cbe7f7;border-radius:18px;justify-content:space-between;align-items:center;min-height:112px;margin-bottom:16px;padding:23px 26px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 30px #318ec412}.heading-row:after{content:"";border:1px solid #1fa6eb2e;border-radius:50%;width:260px;height:260px;position:absolute;top:-180px;right:9%;box-shadow:0 0 0 28px #2cafef09,0 0 0 58px #2cafef06}.heading-row>*{z-index:1;position:relative}.eyebrow{color:#159ee9;letter-spacing:2px;margin:0 0 8px;font:700 9px/1 ui-monospace,Consolas,monospace}h1{color:#17344e;letter-spacing:-.5px;margin:0;font-size:27px}.subtext{color:#7592a8;margin:8px 0 0;font-size:11px}.primary-button{color:#fff;background:linear-gradient(135deg,#52c4f4,#159ee9);border:1px solid #1fa7ec;border-radius:11px;height:42px;padding:0 18px;font-size:11px;font-weight:700;box-shadow:0 9px 20px #159ee933}.primary-button:hover{background:linear-gradient(135deg,#36b5ef,#087fd0)}.primary-button span{font-size:15px}.heading-actions{align-items:center;gap:9px;display:flex}.secondary-button{color:#188bca;background:#ffffffd1;border:1px solid #b9def2;border-radius:11px;height:42px;padding:0 16px;font-size:10px;font-weight:700}.secondary-button:hover{background:#fff;border-color:#61bde9}.shared-error{color:#b65a40;background:#fff6f2;border:1px solid #f2c4b6;border-radius:11px;align-items:center;gap:9px;margin-bottom:14px;padding:12px 14px;font-size:9px;display:flex}.shared-error span{color:#c47863;flex:1}.shared-error button{color:#c45e40;background:0 0;border:0;font-size:9px;font-weight:700}.week-switcher{background:#fffc;border:1px solid #cfe6f5;border-radius:13px;justify-content:center;align-items:center;height:57px;margin-bottom:16px;display:flex;box-shadow:0 5px 18px #2d88be0d}.week-switcher button{color:#69a8cc;background:0 0;border:0;width:48px;font-size:22px}.week-switcher button:disabled{cursor:not-allowed;opacity:.25}.week-switcher div{justify-content:center;align-items:center;gap:11px;min-width:285px;display:flex}.week-switcher span{color:#0b8ddb;background:#dff4ff;border-radius:6px;padding:5px 9px;font-size:9px;font-weight:700}.week-switcher strong{color:#31546d;font-size:11px}.metrics{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px;display:grid}.metrics article,.visual-card,.table-card{background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #cfe6f5;box-shadow:0 8px 24px #2885bb0e}.metrics article{border-radius:14px;align-items:center;gap:15px;min-height:100px;padding:18px 21px;display:flex}.metric-icon{color:#fff;border-radius:12px;flex:none;place-items:center;width:43px;height:43px;font-weight:800;display:grid;box-shadow:0 7px 15px #239dde26}.lavender,.mint,.peach{background:linear-gradient(145deg,#55c6f4,#1b9ee5)}.metrics article>div:last-child{gap:4px;display:grid}.metrics span{color:#7793a8;font-size:9px}.metrics strong{color:#17344e;font-size:19px}.metrics i{font-size:10px;font-style:normal;font-weight:500}.metrics small{color:#93a9b9;font-size:8px}.metrics em{color:#16a783;font-style:normal}.visual-grid{grid-template-columns:minmax(0,1.5fr) minmax(260px,.83fr) minmax(270px,.87fr);gap:14px;margin-bottom:16px;display:grid}.visual-card{border-radius:15px;min-width:0;min-height:286px;padding:19px 20px}.visual-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.visual-kicker{color:#75a8c5;letter-spacing:1.5px;margin:0 0 6px;font:700 8px/1 ui-monospace,Consolas,monospace}.visual-heading h2{color:#244a64;margin:0;font-size:12px}.selected-reading{text-align:right}.selected-reading>span{color:#7e9bb0;margin-bottom:4px;font-size:8px;display:block}.selected-reading strong{color:#0b95e2;font-size:18px}.selected-reading small{font-size:8px;font-weight:500}.bar-chart{border-bottom:1px solid #cce6f5;grid-template-columns:repeat(5,1fr);gap:12px;height:205px;margin-top:16px;padding:17px 8px 0;display:grid;position:relative}.axis-lines{pointer-events:none;flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:17px 0 31px}.axis-lines i{background:#e5f2f9;height:1px}.day-bar{z-index:1;color:#78a0b9;background:0 0;border:0;grid-template-rows:15px 1fr 16px 13px;place-items:end center;padding:0;display:grid;position:relative}.day-bar .bar-value{opacity:0;color:#088fdc;font-size:8px;transition:all .18s;transform:translateY(3px)}.day-bar:hover .bar-value,.day-bar.selected .bar-value{opacity:1;transform:translateY(0)}.day-bar>i{background:#cceaf8;border-radius:7px 7px 2px 2px;align-self:end;width:min(40px,70%);transition:all .25s}.day-bar:hover>i{background:#84cff1}.day-bar.selected>i{background:linear-gradient(#4bc1f3,#159ee9);box-shadow:0 7px 16px #159ee92e}.day-bar b{color:#50728a;align-self:center;font-size:9px}.day-bar small{color:#8ba6b9;align-self:start;font-size:7px}.status-badge{color:#0994dc;background:#ddf4ff;border-radius:20px;padding:5px 8px;font-size:8px;font-weight:700}.donut-wrap{justify-content:center;align-items:center;gap:23px;min-height:174px;display:flex}.donut{border-radius:50%;flex:none;place-items:center;width:122px;height:122px;display:grid;position:relative}.donut:after{content:"";background:#fff;border-radius:50%;width:82px;height:82px;position:absolute;box-shadow:inset 0 0 0 1px #e0eef6}.donut>div{z-index:1;text-align:center;position:relative}.donut strong{color:#17344e;font-size:23px;display:block}.donut span{color:#82a0b4;margin-top:2px;font-size:8px;display:block}.attendance-legend{gap:15px;min-width:100px;display:grid}.attendance-legend>div{color:#7895aa;grid-template-columns:8px 1fr auto;align-items:center;gap:7px;font-size:8px;display:grid}.attendance-legend i{border-radius:2px;width:7px;height:7px}.legend-purple{background:#21aaf2}.legend-gray{background:#dcecf5}.attendance-legend strong{color:#355a73;font-size:10px}.attendance-note{text-align:center;color:#88a3b5;border-top:1px solid #e1eff7;margin:0;padding-top:13px;font-size:8px}.ranking-unit{color:#86a3b6;font-size:8px}.ranking-list{gap:14px;margin-top:19px;display:grid}.ranking-row{align-items:center;gap:9px;display:flex}.rank-number{color:#84a0b3;text-align:center;width:15px;font-size:10px}.rank-1{color:#f2a529}.rank-2{color:#6e9ab4}.rank-3{color:#b47b59}.ranking-row .avatar{border-radius:9px;width:29px;height:29px;font-size:8px}.rank-info{flex:1;min-width:0}.rank-info>div:first-child{justify-content:space-between;align-items:center;margin-bottom:5px;display:flex}.rank-info strong{font-size:9px}.rank-info span{color:#52738b;font-size:8px;font-weight:600}.rank-track{background:#e2eff6;border-radius:4px;height:4px;overflow:hidden}.rank-track i{border-radius:inherit;background:linear-gradient(90deg,#73cdf2,#159ee9);height:100%;display:block}.schedule-board{background:#ffffffeb;border:1px solid #cfe6f5;border-radius:15px;margin-bottom:16px;overflow:hidden;box-shadow:0 8px 24px #2885bb0e}.schedule-board-heading{background:linear-gradient(105deg,#f1fbff,#fff);border-bottom:1px solid #d8ebf6;justify-content:space-between;align-items:center;gap:16px;min-height:78px;padding:16px 20px;display:flex}.schedule-board-heading h2{color:#234b65;margin:0;font-size:14px}.schedule-board-heading>div>span{color:#82a0b3;margin-top:5px;font-size:8px;display:block}.schedule-import-button,.schedule-import-compact{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#4ec1f2,#149ae5);border:1px solid #35afe9;border-radius:9px;justify-content:center;align-items:center;height:36px;padding:0 13px;font-size:9px;font-weight:800;display:inline-flex;box-shadow:0 7px 16px #1599e32b}.schedule-import-button.loading,.schedule-import-compact.loading{opacity:.58;cursor:wait}.schedule-import-compact{color:#168dca;box-shadow:none;background:#f0faff;border-color:#94d2ee}.schedule-week-grid{grid-template-columns:repeat(5,minmax(190px,1fr));gap:10px;padding:14px;display:grid;overflow-x:auto}.schedule-day-column{background:#f9fdff;border:1px solid #d8eaf4;border-radius:12px;min-width:190px;overflow:hidden}.schedule-day-column>header{background:#edf8fe;border-bottom:1px solid #dcecf5;justify-content:space-between;align-items:center;height:45px;padding:0 11px;display:flex}.schedule-day-column>header div{align-items:baseline;gap:6px;display:flex}.schedule-day-column>header strong{color:#24516c;font-size:10px}.schedule-day-column>header span{color:#8aa5b7;font-size:7px}.schedule-day-column>header i{color:#158dce;background:#fff;border-radius:12px;padding:4px 6px;font-size:7px;font-style:normal;font-weight:800}.schedule-day-list{align-content:start;gap:7px;max-height:335px;padding:8px;display:grid;overflow-y:auto}.schedule-board-item{background:#fff;border:1px solid #dfedf5;border-left:3px solid #39afe8;border-radius:9px;grid-template-columns:auto 1fr;gap:4px 8px;padding:9px 10px;display:grid;box-shadow:0 4px 10px #2e7fad0a}.schedule-item-time{align-items:baseline;gap:3px;display:flex}.schedule-item-time strong{color:#138fd2;font:800 9px/1 ui-monospace,Consolas,monospace}.schedule-item-time span{color:#7596ab;font-size:7px}.schedule-item-person{justify-content:flex-end;align-items:center;gap:5px;display:flex}.schedule-item-person strong{color:#31576f;font-size:9px}.schedule-dot{background:#39afe8;border-radius:50%;width:6px;height:6px}.schedule-board-item>span{color:#6689a0;font-size:7px}.schedule-board-item>small{color:#91a8b8;text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.schedule-board-item>em{color:#d06549;border-top:1px dashed #f0c7ba;grid-column:1/-1;padding-top:4px;font-size:7px;font-style:normal;font-weight:800}.schedule-empty{color:#9bb0bd;place-items:center;min-height:90px;font-size:8px;display:grid}.table-card{border-radius:15px;overflow:hidden}.table-toolbar{background:linear-gradient(90deg,#f0faffcc,#fffc);border-bottom:1px solid #d7eaf6;justify-content:space-between;align-items:center;gap:15px;min-height:78px;padding:16px 20px;display:flex}.table-toolbar h2{color:#244a64;margin:0;font-size:13px}.table-toolbar p{color:#84a0b3;margin:5px 0 0;font-size:8px}.filters{gap:8px;display:flex}.search{color:#7e9bb0;background:#fff;border:1px solid #cbe3f2;border-radius:8px;align-items:center;gap:6px;width:160px;height:35px;padding:0 10px;display:flex}.search input{background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:9px}.filters select,.export-button,.assistant-settings-button,.overtime-review-button,.schedule-import-compact{color:#456a82;background:#fff;border:1px solid #cbe3f2;border-radius:8px;outline:0;height:35px;padding:0 11px;font-size:9px}.schedule-import-compact{color:#168dca;cursor:pointer;background:#f0faff;border-color:#94d2ee;font-weight:800}.export-button{font-weight:600}.table-wrap{overflow-x:auto}.assistant-settings-button{color:#fff;background:linear-gradient(135deg,#4fc1f2,#1599e3);border-color:#44b5ea;font-weight:800;box-shadow:0 7px 16px #1599e32e}.overtime-review-button{font-weight:800}.overtime-review-button.has-pending{color:#a86613;background:#fff8e9;border-color:#f0b65e;box-shadow:0 7px 16px #cd87221f}table{border-collapse:collapse;width:100%;min-width:1030px}th{text-align:left;color:#57798f;background:#edf8fe;border-bottom:1px solid #cfe6f4;height:53px;padding:0 15px;font-size:9px;font-weight:700}th:first-child{width:180px;padding-left:20px}.total-head{color:#078cda;background:#dff4ff;width:130px}th span,th small{display:block}.total-head span{margin-left:5px;display:inline}th small{color:#8da8ba;margin-top:4px;font-size:7px;font-weight:400}td{border-bottom:1px solid #e1eff6;height:68px;padding:0 15px;font-size:9px}tbody tr:hover{background:#f6fcff}.assistant-cell{align-items:center;gap:10px;display:flex}.assistant-details{flex:1;min-width:0}.assistant-cell strong{font-size:10px;display:block}.assistant-details>span{color:#7e9aaf;margin-top:4px;font-size:7px;display:block}.assistant-name-line{align-items:center;gap:6px;display:flex}.assistant-actions{opacity:.72;align-items:center;gap:4px;transition:all .18s;display:flex}.edit-name,.delete-assistant{color:#168ecf;background:#effaff;border:1px solid #cbe6f5;border-radius:5px;padding:2px 5px;font-size:7px}.assistant-cell:hover .assistant-actions,.assistant-actions:focus-within{opacity:1}.edit-name:hover{background:#dff5ff;border-color:#80cdf1}.delete-assistant{color:#c86c51;background:#fff7f4;border-color:#f0d3ca}.delete-assistant:hover{background:#fff0eb;border-color:#e6a28f}.avatar{color:#126d9f;background:#dff4ff;border-radius:12px;flex:none;place-items:center;width:39px;height:39px;font-size:10px;font-weight:700;display:grid}.avatar.small{color:#087dcc;background:#dff3ff;border-radius:50%;width:32px;height:32px}.avatar.dark{border-radius:50%;width:32px;height:32px}.avatar.blue,.avatar.purple,.avatar.green,.avatar.orange,.avatar.teal{color:#126d9f;background:#dff4ff}.shift strong{color:#31556d;font-size:9px;display:block}.shift span{color:#89a3b6;margin-top:4px;font-size:7px;display:block}.shift.clocking strong{color:#17a27d}.shift.clocking span{color:#49aa8e}.admin-session-list{gap:6px;display:grid}.admin-session{border-left:2px solid #73c8ed;padding-left:7px}.admin-session strong{font-size:8px}.admin-session span{margin-top:2px;font-size:6px}.admin-session em{color:#d65245;font-size:7px;font-style:normal;font-weight:800}.admin-session.missing-session{border-left-color:#efb39f}.admin-session.missing-session strong,.admin-session.missing-session span{color:#d97960}.admin-session-actions{gap:4px;margin-top:4px;display:flex}.admin-session-actions button,.session-fill-button{color:#168ecf;background:#f2fbff;border:1px solid #b9dff1;border-radius:5px;padding:3px 5px;font-size:6px}.admin-session-actions button:last-child{color:#bd624a;background:#fff8f5;border-color:#efc8bd}.session-fill-button{color:#c7634b;background:#fff;border-color:#efb9aa;margin-top:4px}.record-actions{opacity:0;gap:5px;margin-top:6px;transition:all .18s;display:flex}.shift:hover .record-actions{opacity:1}.record-actions button{color:#168ecf;background:#f3fbff;border:1px solid #cde5f3;border-radius:5px;padding:2px 5px;font-size:6px}.record-actions button:last-child{color:#c86950;background:#fff8f5;border-color:#f1d5cc}.missing{color:#db7456;background:#fff5f1;border:1px solid #f2c1b2;border-radius:7px;padding:7px 8px;font-size:8px}.missing span{margin-left:3px}.planned-shifts{background:#f1faff;border:1px solid #bfe2f4;border-radius:9px;gap:5px;min-width:112px;padding:7px 8px;display:grid}.planned-label{color:#168fd4;letter-spacing:.4px;font-size:7px;font-weight:800}.planned-slot{gap:2px;display:grid}.planned-slot strong{color:#315b75;font-size:8px}.planned-slot small{color:#7d9caf;font-size:6px}.planned-slot em{color:#d46d4f;font-size:6px;font-style:normal;font-weight:800}.planned-shifts button{color:#c66c4f;background:#fff0ea;border:0;border-radius:6px;padding:4px 6px;font-size:6px;font-weight:700}.total-cell{background:#f1faff}.total-cell strong{color:#078fdc;font-size:10px;display:block}.total-cell span,.total-cell small{color:#7e9db1;margin-top:4px;font-size:7px;display:block}.total-cell small{color:#20987b;font-weight:700}.total-cell .total-breakdown{color:#218366;background:#e5f7f1;border-radius:7px;margin:7px 0;padding:6px 7px;font-size:7px;font-weight:800;line-height:1.55}.table-footer{color:#6f90a6;justify-content:space-between;align-items:center;height:48px;padding:0 20px;font-size:8px;display:flex}.table-footer small{color:#8ba5b7}.private-page{max-width:1380px}.private-hero{background:linear-gradient(118deg,#fcfefffa 0%,#e1f5fff2 56%,#cbe9ffeb 100%);border-color:#b9def5;min-height:174px;padding:29px 32px;box-shadow:0 18px 48px #2b8dc91c}.private-hero:before{content:"雨";color:#1691d613;font:800 158px/1 Microsoft YaHei,sans-serif;position:absolute;bottom:-49px;right:20%}.private-hero:after{border-color:#189de233;width:320px;height:320px;top:-210px;right:6%;box-shadow:0 0 0 34px #2cafef0b,0 0 0 73px #2cafef07}.rain-hero-copy{max-width:620px}.private-title-line{align-items:center;gap:9px;margin-bottom:12px;display:flex}.lock-badge,.soft-status{color:#087fc8;background:#ffffffbd;border:1px solid #9fd3f1bf;border-radius:20px;padding:6px 10px;font-size:8px;font-weight:700;box-shadow:0 4px 13px #2b91cb0f}.soft-status{color:#278f71;background:#ebfbf6d6;border-color:#c7eadf}.rain-greeting{color:#2097da;letter-spacing:1.5px;margin:0 0 6px;font:700 8px/1.2 ui-monospace,Consolas,monospace}.private-hero h1{letter-spacing:1px;font-size:34px}.private-hero .subtext{color:#668ba3;letter-spacing:.3px;margin-top:10px;font-size:11px}.rain-hero-actions{align-items:center;gap:16px;display:flex}.rain-weather{background:#ffffffab;border:1px solid #9bd3f1d1;border-radius:14px;align-items:center;gap:11px;min-width:170px;padding:12px 15px;display:flex;box-shadow:inset 0 1px #fffc}.rain-cloud{color:#2ba6e6;text-shadow:0 5px 12px #1497dc33;font-size:25px}.rain-weather strong,.rain-weather small{display:block}.rain-weather strong{color:#32627e;font-size:10px}.rain-weather small{color:#82a1b5;margin-top:4px;font-size:7px}.rain-permission-button{color:#167fb8;text-align:left;background:#f7fdffe6;border:1px solid #7bc4ebe6;border-radius:14px;align-items:center;gap:9px;min-height:48px;padding:8px 14px;display:flex;box-shadow:0 9px 22px #228bc71c}.rain-permission-button>span{color:#fff;background:linear-gradient(135deg,#55c3f2,#1599e3);border-radius:9px;flex:none;place-items:center;width:27px;height:27px;font-size:13px;display:grid}.rain-permission-button strong,.rain-permission-button small{white-space:nowrap;display:block}.rain-permission-button strong{font-size:9px}.rain-permission-button small{color:#7e9eaf;margin-top:3px;font-size:7px}.rain-permission-button:hover{background:#fff;border-color:#39afe8;transform:translateY(-1px)}.rain-add-button{border-radius:14px;height:48px;padding-inline:21px;box-shadow:0 12px 25px #159ee938}.rain-decoration{pointer-events:none;position:absolute;inset:0;overflow:hidden}.rain-decoration i{opacity:.32;background:linear-gradient(#59bced,#0000);border-radius:10px;width:2px;height:12px;position:absolute;transform:rotate(17deg)}.rain-decoration i:first-child{top:28px;right:31%}.rain-decoration i:nth-child(2){height:18px;top:58px;right:27%}.rain-decoration i:nth-child(3){top:91px;right:34%}.rain-decoration i:nth-child(4){height:16px;top:35px;right:13%}.rain-decoration i:nth-child(5){top:101px;right:9%}.private-overview{grid-template-columns:repeat(3,1fr) 164px;gap:14px;margin-bottom:16px;display:grid}.private-overview>article{background:linear-gradient(145deg,#fffffff5,#eff9ffe6);border:1px solid #cce6f5;border-radius:17px;grid-template-rows:auto 1fr auto;grid-template-columns:46px 1fr;align-items:center;column-gap:15px;min-height:124px;padding:20px 22px;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 28px #2885bb12}.private-overview>article:after{content:"";background:#26aaeb0e;border-radius:50%;width:85px;height:85px;position:absolute;top:-43px;right:-43px}.rain-stat-icon{color:#168fd4;background:#dff4ff;border-radius:14px 14px 14px 4px;grid-row:1/4;place-items:center;width:46px;height:46px;font-size:10px;font-weight:800;display:grid;box-shadow:inset 0 0 0 1px #c5e7f8}.pending-stat .rain-stat-icon{color:#4c83bf;background:#e9f1ff}.done-stat .rain-stat-icon{color:#298e72;background:#e5f7f0}.private-overview article>span{color:#7896aa;letter-spacing:.5px;font-size:8px;font-weight:700}.private-overview article>strong{color:#173d58;font:800 28px/1 ui-monospace,Consolas,monospace}.private-overview article>small{color:#8da7b8;font-size:7px}.completion-ring{--progress:0%;background:conic-gradient(#20a8ed 0 var(--progress), #e2f0f7 var(--progress) 100%);border:1px solid #cce6f5;border-radius:17px;place-items:center;min-height:124px;display:grid;position:relative;box-shadow:0 10px 28px #2885bb12}.completion-ring:after{content:"";background:linear-gradient(145deg,#fff,#f2fbff);border-radius:50%;width:94px;height:94px;position:absolute;box-shadow:inset 0 0 0 1px #e0eef6}.completion-ring>div{z-index:1;text-align:center;position:relative}.completion-ring strong{color:#168fd4;font-size:20px;display:block}.completion-ring span{color:#7e9db1;margin-top:4px;font-size:7px;display:block}.rain-access-panel{background:linear-gradient(115deg,#fffffffa,#ebf8fff2);border:1px solid #b9def3;border-radius:19px;margin-bottom:16px;overflow:hidden;box-shadow:0 13px 36px #2885bb17}.rain-access-heading{background:linear-gradient(90deg,#e9f7ff,#fff 75%);border-bottom:1px solid #d7ebf6;grid-template-columns:45px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:88px;padding:17px 21px;display:grid}.rain-access-mark{color:#fff;background:linear-gradient(145deg,#51bff0,#148fd7);border-radius:14px;place-items:center;width:45px;height:45px;font-size:15px;font-weight:800;display:grid;box-shadow:0 9px 20px #148fd738}.rain-access-heading h2{color:#214762;margin:2px 0 0;font-size:15px}.rain-access-heading p:not(.visual-kicker){color:#7897aa;margin:5px 0 0;font-size:8px}.rain-access-heading>button{color:#fff;background:linear-gradient(135deg,#4fc1f2,#1599e3);border:1px solid #31aae4;border-radius:11px;height:42px;padding:0 16px;font-size:9px;font-weight:800;box-shadow:0 8px 19px #1599e333}.rain-access-heading>button span{margin-left:7px;font-size:13px}.rain-access-heading>button:hover{transform:translateY(-1px);box-shadow:0 11px 23px #1599e340}.rain-access-roles{grid-template-columns:1fr 1fr minmax(210px,.75fr);gap:11px;padding:14px 17px 17px;display:grid}.rain-access-roles>article,.rain-access-roles>aside{background:#ffffffe6;border:1px solid #d6eaf5;border-radius:14px;min-height:122px;padding:15px 16px}.access-role-title{align-items:center;gap:10px;display:flex}.access-role-title>span{color:#168fce;background:#dff4ff;border-radius:10px;place-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:grid}.leader-role-card .access-role-title>span{color:#6e6dc3;background:#eeedff}.access-role-title strong,.access-role-title small{display:block}.access-role-title strong{color:#2a526b;font-size:10px}.access-role-title small{color:#789bad;margin-top:3px;font-size:7px}.rain-access-roles article>p{color:#7794a7;margin:10px 0 9px;font-size:8px;line-height:1.6}.access-member-list{flex-wrap:wrap;gap:5px;display:flex}.access-member-list span{color:#1687c2;background:#e8f6fd;border-radius:12px;padding:4px 7px;font-size:7px;font-weight:700}.access-member-list em{color:#9baebb;font-size:7px;font-style:normal}.rain-access-roles>aside{color:#fff;background:linear-gradient(145deg,#168fd5,#4bbbea);border-color:#b5dcf0;align-content:center;display:grid;box-shadow:0 9px 22px #1991cf26}.rain-access-roles>aside span{color:#daf4ff;background:#ffffff24;border-radius:10px;width:fit-content;padding:4px 7px;font-size:7px;font-weight:800}.rain-access-roles>aside strong{margin-top:9px;font-size:10px}.rain-access-roles>aside p{color:#ffffffc7;margin:7px 0 0;font-size:7px;line-height:1.7}.rain-dashboard{grid-template-columns:minmax(0,1fr) 255px;align-items:start;gap:14px;display:grid}.private-board{background:#ffffffed;border:1px solid #c9e5f5;border-radius:18px;overflow:hidden;box-shadow:0 13px 36px #2885bb14}.board-heading{background:linear-gradient(90deg,#eef9ff,#fff 72%);border-bottom:1px solid #d7ebf6;justify-content:space-between;align-items:center;min-height:82px;padding:18px 22px;display:flex}.board-heading h2{color:#214762;margin:0;font-size:15px}.privacy-note{color:#62869f;background:#eaf7fd;border-radius:9px;padding:8px 11px;font-size:8px}.privacy-note span{color:#078dd8;font-weight:800}.task-list{gap:9px;padding:13px 16px 7px;display:grid}.task-item{background:linear-gradient(100deg,#fff,#fbfdff);border:1px solid #daeaf4;border-radius:13px;grid-template-columns:24px 32px minmax(0,1fr) auto auto auto;align-items:center;gap:8px;min-height:76px;padding:13px 15px;transition:all .2s;display:grid;position:relative;overflow:hidden}.task-item:before{content:"";opacity:.7;background:#7bc9ee;width:3px;position:absolute;inset:0 auto 0 0}.task-item:hover{border-color:#99d5f2;transform:translateY(-2px);box-shadow:0 8px 22px #248ec917}.task-order{color:#9bb0bd;font:700 8px/1 ui-monospace,Consolas,monospace}.task-check{width:29px;height:29px;position:relative}.task-check input{opacity:0;position:absolute}.task-check span{color:#0000;cursor:pointer;background:#f7fcff;border:1px solid #a9cfe4;border-radius:9px;place-items:center;width:29px;height:29px;font-size:13px;font-weight:800;transition:all .18s;display:grid}.task-check input:checked+span{color:#fff;background:linear-gradient(135deg,#46bcf1,#1599e3);border-color:#20a5e9;box-shadow:0 6px 14px #1599e333}.task-copy{min-width:0}.task-copy>strong{color:#284c65;letter-spacing:.1px;font-size:11px;display:block}.task-copy>div{gap:8px;margin-top:8px;display:flex}.task-copy span,.task-copy small{color:#4780a0;background:#e8f6fd;border-radius:6px;padding:4px 7px;font-size:7px}.task-copy small{color:#95794a;background:#fff6e7}.task-state{color:#168ecf;background:#dff4ff;border-radius:20px;padding:6px 9px;font-size:7px;font-weight:700}.task-state.finished{color:#299775;background:#e3f7ef}.delete-task{color:#96a8b5;background:0 0;border:1px solid #0000;border-radius:7px;padding:7px 9px;font-size:8px}.delete-task:hover{color:#d86b4e;background:#fff5f2;border-color:#f3c9be}.edit-task{color:#6f96ac;background:0 0;border:1px solid #0000;border-radius:7px;padding:7px 9px;font-size:8px}.edit-task:hover{color:#168ecf;background:#f0faff;border-color:#bee2f4}.task-item.done{background:#f8fcfb}.task-item.done:before{background:#76c5ac}.task-item.done .task-copy>strong{color:#8fa5a7;text-decoration:line-through}.empty-tasks{color:#84a2b6;text-align:center;align-content:center;place-items:center;gap:8px;min-height:278px;display:grid}.empty-tasks>span{color:#fff;background:#50bff0;border-radius:50%;place-items:center;width:47px;height:47px;font-size:19px;display:grid}.empty-tasks strong{color:#52758c;font-size:12px}.empty-tasks p{margin:0;font-size:8px}.board-footer{color:#6f91a7;border-top:1px solid #e0edf5;justify-content:space-between;align-items:center;height:51px;padding:0 21px;font-size:8px;display:flex}.board-footer small{color:#8aa5b7}.rain-sidecar{gap:14px;display:grid}.focus-card,.rain-quote{background:linear-gradient(155deg,#fffffff5,#e4f6ffeb);border:1px solid #c9e5f5;border-radius:18px;padding:20px;box-shadow:0 13px 36px #2885bb14}.sidecar-heading{color:#315b75;justify-content:space-between;align-items:center;font-size:10px;font-weight:800;display:flex}.sidecar-heading i{color:#78a7c2;letter-spacing:1.3px;font:700 7px/1 ui-monospace,Consolas,monospace}.focus-drop{color:#0000;background:linear-gradient(155deg,#66c8f2,#159ae3);border-radius:55% 55% 58% 58%/68% 68% 38% 38%;place-items:center;width:48px;height:56px;margin:22px auto 18px;font-size:12px;font-weight:800;display:grid;transform:rotate(45deg);box-shadow:0 12px 25px #159ae33d}.focus-drop:after{content:"雨";color:#fff;transform:rotate(-45deg)}.focus-card>strong{color:#244d67;text-align:center;font-size:11px;line-height:1.55;display:block}.focus-card>p{color:#7897aa;text-align:center;margin:8px 0 16px;font-size:8px;line-height:1.65}.focus-progress{background:#dcecf5;border-radius:10px;height:5px;overflow:hidden}.focus-progress i{border-radius:inherit;background:linear-gradient(90deg,#63c7f0,#159be4);height:100%;transition:width .25s;display:block}.focus-card>small{color:#83a0b3;text-align:right;margin-top:8px;font-size:7px;display:block}.rain-quote{color:#fff;background:linear-gradient(145deg,#1c9edf,#58c3ef);border-color:#48b8eb;align-content:center;min-height:148px;display:grid;position:relative;overflow:hidden}.rain-quote:after{content:"";border:1px solid #ffffff47;border-radius:50%;width:140px;height:140px;position:absolute;bottom:-74px;right:-72px;box-shadow:0 0 0 20px #ffffff0d}.rain-quote>span{color:#ffffff47;font:70px/1 Georgia,serif;position:absolute;top:3px;left:16px}.rain-quote p{z-index:1;margin:0;font-size:10px;font-weight:700;line-height:1.85;position:relative}.rain-quote small{z-index:1;color:#ffffffb8;letter-spacing:1.5px;margin-top:12px;font:700 7px/1 ui-monospace,Consolas,monospace;position:relative}.local-save-tip{color:#5d849d;background:#eaf7fd;border-radius:9px;padding:11px 12px;font-size:8px}.clock-page{align-content:center;gap:15px;max-width:980px;min-height:calc(100vh - 82px);display:grid}.clock-card{text-align:center;background:linear-gradient(160deg,#fffffffa,#f7fcfff5);border:1px solid #cbe7f6;border-radius:22px;width:min(620px,100%);margin:0 auto;padding:28px 30px 24px;box-shadow:0 20px 56px #1f84be1f}.clock-brand-icon{color:#fff;background:linear-gradient(145deg,#4bc1f3,#108edc);border-radius:18px;place-items:center;width:58px;height:58px;margin:0 auto 20px;font-size:26px;font-weight:800;display:grid;box-shadow:0 12px 28px #1296e147}.clock-card-header{text-align:left;grid-template-columns:44px 1fr;align-items:center;gap:14px;display:grid}.clock-card .clock-brand-icon{width:44px;height:44px;color:inherit;box-shadow:none;background:0 0;border-radius:0;margin:0;font-size:34px}.clock-card-header .eyebrow{letter-spacing:2px;margin:0 0 4px;font-size:11px}.clock-card h1{margin:0;font-size:25px;line-height:1.2}.clock-intro{color:#63859b;text-align:left;background:#eef8fd;border-radius:11px;margin:16px 0 20px;padding:11px 13px;font-size:13px;line-height:1.65}.clock-card .shared-error{text-align:left;margin-top:14px}.clock-select{text-align:left;color:#476d85;gap:8px;margin-top:18px;font-size:14px;font-weight:700;display:grid}.clock-select select{color:#234c67;background:#fff;border:1px solid #bcdff2;border-radius:12px;outline:0;width:100%;height:52px;padding:0 15px;font-size:16px;font-weight:650}.clock-select input{color:#234c67;letter-spacing:8px;text-align:center;background:#fff;border:1px solid #bcdff2;border-radius:12px;outline:0;width:100%;height:52px;padding:0 14px;font-size:18px;font-weight:750}.clock-select input:focus{border-color:#3cb1ea;box-shadow:0 0 0 4px #e2f6ff}.pin-entry{margin-top:13px}.clock-select select:focus{border-color:#3cb1ea;box-shadow:0 0 0 4px #e2f6ff}.personal-unlock-button{color:#1685b7;background:#eefaff;border:1px solid #bfe3f2;border-radius:10px;width:100%;min-height:43px;margin-top:10px;font-size:14px;font-weight:800}.personal-unlock-button:disabled{opacity:.5;cursor:not-allowed}.clock-status{text-align:left;background:#edf9ff;border-radius:13px;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px;padding:14px 16px;display:grid}.clock-status>div+div{border-left:1px solid #cfe8f5;padding-left:16px}.clock-status span,.today-record span{color:#7f9cad;font-size:12px;display:block}.clock-status strong{color:#355b74;margin-top:5px;font-size:16px;display:block}.clock-status strong.active{color:#169a74}.clock-status strong.done{color:#078ed8}.today-record{text-align:left;background:#fff;border:1px solid #d6eaf5;border-radius:12px;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:12px;padding:13px 17px;display:grid}.today-record>div:last-child{text-align:right}.today-record strong{color:#254f69;margin-top:5px;font-size:14px;display:block}.today-record i{color:#62b8e4;font-style:normal}.clock-actions{grid-template-columns:1fr 1fr;gap:11px;margin-top:18px;display:grid}.clock-actions button{border-radius:12px;height:50px;font-size:16px;font-weight:800;transition:all .18s}.clock-in-button{color:#fff;background:linear-gradient(135deg,#50c2f3,#1499e3);border:1px solid #20a7ea;box-shadow:0 10px 22px #1499e333}.clock-out-button{color:#237cae;background:#f3fbff;border:1px solid #9bcfe8}.clock-actions button:hover:not(:disabled){transform:translateY(-1px)}.clock-actions button:disabled{cursor:not-allowed;opacity:.4;box-shadow:none}.clock-actions button span{margin-right:4px}.clock-overtime-button{color:#9b6413;background:linear-gradient(135deg,#fffaf0,#fff3d7);border:1px solid #e9bd74;border-radius:12px;width:100%;height:46px;margin-top:11px;font-size:14px;font-weight:800}.clock-overtime-button:hover:not(:disabled){border-color:#e4a845;transform:translateY(-1px)}.clock-overtime-button:disabled{cursor:not-allowed;opacity:.42}.clock-message{color:#158360;background:#e8f8f2;border-radius:10px;margin-top:14px;padding:11px 13px;font-size:13px;font-weight:700}.clock-tip{color:#819eaf;margin:15px 0 0;font-size:12px;line-height:1.6}.share-card{background:#ffffffd9;border:1px solid #cfe6f5;border-radius:15px;justify-content:space-between;align-items:center;gap:16px;width:min(560px,100%);margin:0 auto;padding:17px 20px;display:flex}.share-card span,.share-card strong,.share-card small{display:block}.share-card span{color:#1499df;font-size:8px;font-weight:700}.share-card strong{color:#315770;margin-top:4px;font-size:10px}.share-card small{color:#88a3b5;margin-top:4px;font-size:8px}.public-clock-shell{padding-top:72px}.public-clock-shell .content{margin-left:0}.public-clock-topbar{grid-template-columns:1fr auto;height:72px}.public-online{color:#4b7790;align-items:center;gap:6px;font-size:9px;display:flex}.public-online i{background:#22b784;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #e4f7f0}.admin-login-page{place-items:center;min-height:calc(100vh - 82px);padding-block:42px;display:grid}.admin-login-card{background:#fffffff5;border:1px solid #b8def3e6;border-radius:28px;grid-template-columns:.92fr 1.08fr;width:min(880px,100%);min-height:520px;display:grid;overflow:hidden;box-shadow:0 32px 90px #1772a92b,0 2px 8px #1753770d}.admin-login-brand{color:#fff;background:linear-gradient(145deg,#087bd0 0%,#159ee9 52%,#4cc3f2 100%);flex-direction:column;align-items:flex-start;padding:42px 40px 34px;display:flex;position:relative;overflow:hidden}.admin-login-brand:before,.admin-login-brand:after{content:"";pointer-events:none;border:1px solid #ffffff2b;border-radius:50%;position:absolute}.admin-login-brand:before{width:320px;height:320px;top:-110px;right:-190px;box-shadow:0 0 0 38px #ffffff09,0 0 0 78px #ffffff06}.admin-login-brand:after{width:190px;height:190px;bottom:-90px;left:-125px}.admin-login-brand>*{z-index:1;position:relative}.admin-login-brandmark{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff29;border:1px solid #ffffff59;border-radius:19px;place-items:center;width:62px;height:62px;font-size:30px;display:grid;box-shadow:inset 0 1px #ffffff40,0 12px 28px #02508933}.admin-login-status{color:#ffffffe6;background:#ffffff1f;border-radius:20px;align-items:center;gap:7px;margin-top:22px;padding:7px 10px;font-size:12px;font-weight:700;display:inline-flex}.admin-login-status i{background:#79f0c1;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #79f0c124}.admin-login-brand>div:nth-of-type(2){margin-top:auto}.admin-login-brand .eyebrow{color:#ffffffb8;letter-spacing:2.8px;margin-bottom:13px;font-size:11px}.admin-login-brand h1{color:#fff;letter-spacing:-.8px;font-size:38px;line-height:1.2}.admin-login-brand p:not(.eyebrow){color:#ffffffc7;max-width:270px;margin:18px 0 0;font-size:15px;line-height:1.8}.admin-login-brand>small{color:#ffffffad;margin-top:42px;font-size:12px}.admin-login-form{flex-direction:column;justify-content:center;padding:52px 54px 40px;display:flex}.admin-login-form header{align-items:center;gap:13px;display:flex}.admin-login-mini-mark{color:#fff;background:linear-gradient(145deg,#45bcef,#118fdc);border-radius:14px;flex:none;place-items:center;width:44px;height:44px;font-size:18px;font-weight:900;display:grid;box-shadow:0 9px 20px #159ee938}.admin-login-form header .eyebrow{margin-bottom:7px;font-size:10px}.admin-login-form h2{color:#173c57;letter-spacing:-.4px;margin:0;font-size:27px}.admin-login-copy{color:#7895aa;margin:24px 0 13px;font-size:14px;line-height:1.7}.admin-login-roles{flex-wrap:wrap;gap:7px;margin-bottom:24px;display:flex}.admin-login-roles span{color:#4f7a96;background:#f4fbff;border:1px solid #d5e9f5;border-radius:20px;padding:6px 10px;font-size:12px;font-weight:700}.admin-login-form label{color:#426983;gap:9px;font-size:14px;font-weight:800;display:grid}.admin-login-input{background:#f9fdff;border:1px solid #c5e2f2;border-radius:15px;align-items:center;gap:11px;height:56px;padding:0 15px;transition:all .18s;display:flex}.admin-login-input:focus-within{background:#fff;border-color:#35ade8;box-shadow:0 0 0 4px #2daeea1c}.admin-login-input i{color:#62afd3;text-align:center;width:24px;font-size:22px;font-style:normal}.admin-login-card input{color:#234c67;background:0 0;border:0;outline:0;width:100%;height:100%;padding:0;font-size:16px}.admin-login-card input::placeholder{color:#a0b5c3}.admin-login-card .shared-error{text-align:left;margin:0 0 16px;font-size:13px}.admin-login-submit{border-radius:15px;justify-content:center;align-items:center;gap:12px;width:100%;margin-top:17px;padding:0 18px;font-size:15px;transition:transform .18s,box-shadow .18s;display:flex;height:56px!important}.admin-login-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 13px 28px #159ee942}.admin-login-submit b{font-size:20px;line-height:1}.admin-login-submit:disabled{cursor:wait;opacity:.68}.admin-login-form>small{color:#8ba4b4;text-align:center;margin-top:18px;font-size:12px;line-height:1.6}.access-chip{color:#1688c8;white-space:nowrap;background:#eff9fe;border:1px solid #b9def2;border-radius:999px;padding:7px 11px;font-size:8px;font-weight:800}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#11364e61;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border:1px solid #c8e5f6;border-radius:17px;gap:16px;width:min(430px,100%);padding:25px;display:grid;box-shadow:0 28px 80px #1a64913d}.modal-heading{justify-content:space-between;align-items:flex-start;display:flex}.modal-heading h2{color:#17344e;margin:0;font-size:21px}.modal-heading button{color:#66879d;background:#eaf6fc;border:0;border-radius:50%;width:29px;height:29px;font-size:18px}.attendance-edit-modal{overscroll-behavior:contain;max-height:calc(100dvh - 40px);overflow-y:auto}.modal-heading-actions{align-items:center;gap:8px;display:flex}.modal-heading-actions .modal-quick-save{color:#fff;background:linear-gradient(135deg,#4fc1f2,#1599e3);border-radius:10px;width:auto;min-width:68px;height:38px;padding:0 17px;font-size:14px;font-weight:800;box-shadow:0 8px 20px #1599e338}.attendance-edit-modal .modal-actions{z-index:3;padding:14px 25px calc(14px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;margin:0 -25px -25px;position:sticky;bottom:-25px;box-shadow:0 -10px 24px #17344e14}.modal label{color:#52738a;gap:7px;font-size:9px;font-weight:600;display:grid}.modal select,.modal input{color:#17344e;background:#fff;border:1px solid #cde4f3;border-radius:9px;outline:0;width:100%;height:42px;padding:0 11px;font-size:10px}.modal select:focus,.modal input:focus{border-color:#43b5ed;box-shadow:0 0 0 3px #e2f6ff}.time-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.duration-preview{color:#66869d;background:#eaf7fe;border-radius:10px;justify-content:space-between;align-items:center;padding:13px 15px;font-size:9px;display:flex}.duration-preview strong{color:#078fda;font-size:14px}.payable-editor{background:#eaf7fe;border:1px solid #8ad1f4;border-radius:12px;gap:12px;padding:16px;display:grid}.payable-editor label{font-size:14px}.payable-editor input{box-sizing:border-box;background:#fff;width:100%;min-height:46px;font-size:18px}.payable-editor small{font-size:14px;line-height:1.6}.payable-editor button{min-height:44px;font-size:14px}.modal-actions{border-top:1px solid #dcecf6;justify-content:flex-end;gap:8px;padding-top:17px;display:flex}.modal-actions>button:first-child{color:#56768b;background:#fff;border:1px solid #cfe5f3;border-radius:9px;height:40px;padding:0 17px;font-size:10px}.log-modal{width:min(720px,100%)}.log-list{gap:7px;max-height:430px;display:grid;overflow-y:auto}.log-list article{background:#fbfdff;border:1px solid #dcebf4;border-radius:10px;grid-template-columns:90px 1fr auto;align-items:center;gap:12px;padding:11px 12px;display:grid}.log-list i{color:#168ccf;text-align:center;background:#e7f6fd;border-radius:6px;padding:5px 7px;font-size:8px;font-style:normal}.log-list strong,.log-list span{display:block}.log-list strong{color:#31566f;font-size:9px}.log-list span{color:#7a97aa;margin-top:4px;font-size:8px}.log-list small{color:#8da6b6;text-align:right;font-size:7px;line-height:1.7}.empty-log{color:#8ba5b6;text-align:center;padding:60px 0;font-size:9px}.trial-actions{background:#fff8f5;border:1px solid #f0d3c9;border-radius:11px;justify-content:space-between;align-items:center;gap:14px;padding:13px;display:flex}.trial-actions strong,.trial-actions span{display:block}.trial-actions strong{color:#7f4d3d;font-size:9px}.trial-actions span{color:#a37b6e;margin-top:4px;font-size:7px}.trial-actions button{color:#bd6042;white-space:nowrap;background:#fff;border:1px solid #e9bba9;border-radius:8px;padding:8px 10px;font-size:8px;font-weight:700}.assistant-manager-modal{grid-template-rows:auto auto minmax(0,1fr) auto;width:min(850px,100%);max-height:calc(100vh - 40px)}.manager-security-tip{color:#567b92;background:#eaf7fd;border-radius:9px;margin:0;padding:10px 12px;font-size:8px}.backup-modal{width:min(620px,100vw - 24px)}.backup-option-list{gap:12px;margin-top:14px;display:grid}.backup-option-list article{background:#f8fcff;border:1px solid #d7eaf5;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.backup-option-list article.restore-option{background:#fffaf5;border-color:#efd9c6}.backup-option-list article>div{min-width:0}.backup-option-list strong,.backup-option-list span{display:block}.backup-option-list strong{color:#244e68;font-size:11px}.backup-option-list span{color:#718da0;margin-top:5px;font-size:9px;line-height:1.6}.backup-option-list label{color:#9b6337;cursor:pointer;background:#fff;border:1px solid #d8b997;border-radius:9px;flex:none;padding:10px 14px;font-size:9px;font-weight:800;position:relative}.backup-option-list label.disabled{opacity:.55;cursor:wait}.backup-option-list input[type=file]{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.assistant-form-error{color:#b84f39;background:#fff3ef;border:1px solid #f0b8aa;border-radius:9px;padding:10px 12px;font-size:9px;font-weight:700}.assistant-manager-message{color:#287c61;background:#effaf6;border:1px solid #9bd7c1;border-radius:9px;padding:10px 12px;font-size:9px;font-weight:800}.modal-actions>button.manager-add-assistant{color:#fff;background:linear-gradient(135deg,#4fc1f2,#1599e3);border-color:#65bfe8;margin-right:auto;font-weight:800}.week-settlement{background:#fffaf0;border:1px solid #f0d29c;border-radius:13px;justify-content:space-between;align-items:center;gap:15px;margin:14px 0;padding:13px 15px;display:flex}.week-settlement.locked{background:#effaf6;border-color:#9bdac3}.week-settlement>div{align-items:center;gap:11px;display:flex}.week-settlement i{color:#fff;background:#e7a83d;border-radius:50%;place-items:center;width:32px;height:32px;font-style:normal;font-weight:900;display:grid}.week-settlement.locked i{background:#2bac82}.week-settlement strong,.week-settlement small{display:block}.week-settlement strong{color:#31566f;font-size:10px}.week-settlement small{color:#7895a7;margin-top:4px;font-size:8px}.week-settlement button,.import-history-button{color:#148dcc;white-space:nowrap;background:#fff;border:1px solid #7cc7e9;border-radius:8px;height:34px;padding:0 12px;font-size:8px;font-weight:800}.week-settlement.locked button{color:#b65b43;border-color:#e5b8aa}.metrics article:has(.metric-open){padding:0}.metric-open{width:100%;height:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:14px;padding:20px;display:flex}.metric-open:hover{background:#fff9f6}.metric-open>div:last-child>span,.metric-open>div:last-child>strong,.metric-open>div:last-child>small{display:block}.exception-modal{grid-template-rows:auto auto minmax(0,1fr) auto;width:min(820px,100%);max-height:calc(100vh - 40px)}.exception-summary{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.exception-summary span{color:#6c899c;text-align:center;background:#eff8fd;border-radius:9px;padding:10px;font-size:8px}.exception-summary strong{color:#168fd0;font-size:17px;display:block}.exception-list{gap:8px;min-height:0;max-height:540px;display:grid;overflow-y:auto}.exception-list article{background:#fbfdff;border:1px solid #dcebf4;border-radius:10px;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 12px;display:grid}.exception-list article>i{color:#bd6048;text-align:center;background:#fff0eb;border-radius:7px;padding:6px;font-size:8px;font-style:normal;font-weight:800}.exception-list article.override>i{color:#7564bd;background:#f1efff}.exception-list article.overtime>i{color:#ad761d;background:#fff4df}.exception-list strong,.exception-list span,.exception-list small{display:block}.exception-list strong{color:#315970;font-size:10px}.exception-list span{color:#607f92;margin-top:3px;font-size:8px}.exception-list small{color:#8ca3b1;margin-top:3px;font-size:7px}.exception-list article>button{color:#168dcc;background:#fff;border:1px solid #8dceed;border-radius:8px;height:32px;padding:0 10px;font-size:8px;font-weight:800}.exception-list article>button:disabled{color:#9aadb8;background:#f5f7f8;border-color:#dbe5ea}.import-history-modal{grid-template-rows:auto auto minmax(0,1fr) auto;max-height:calc(100vh - 40px)}.reminder-modal{width:min(650px,100%);max-height:calc(100vh - 40px);overflow-y:auto}.reminder-tabs{background:#edf7fc;border-radius:10px;grid-template-columns:1fr 1fr;gap:8px;padding:5px;display:grid}.reminder-tabs button{color:#6d8a9c;background:0 0;border:0;border-radius:8px;height:36px;font-size:9px;font-weight:800}.reminder-tabs button.active{color:#118dcc;background:#fff;box-shadow:0 4px 14px #267ead1f}.reminder-overview{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.reminder-overview>div{background:#fbfdff;border:1px solid #d9eaf4;border-radius:9px;padding:10px 12px}.reminder-overview span,.reminder-overview strong{display:block}.reminder-overview span{color:#8ba3b2;font-size:8px}.reminder-overview strong{color:#315970;margin-top:4px;font-size:10px}.reminder-copy{color:#52738a;gap:7px;font-size:9px;font-weight:700;display:grid}.reminder-copy textarea{resize:vertical;color:#264d67;background:#f9fdff;border:1px solid #cde4f3;border-radius:10px;outline:0;width:100%;max-height:340px;padding:14px;font:500 14px/1.75 Microsoft YaHei,sans-serif}.reminder-copy textarea:focus{border-color:#43b5ed;box-shadow:0 0 0 3px #e2f6ff}.reminder-warning{color:#9b702d;background:#fff9ed;border:1px solid #efd29f;border-radius:8px;margin:0;padding:9px 11px;font-size:8px}.reminder-button{color:#118dcc!important;background:#eef9ff!important;border-color:#8dcfed!important}.geofence-panel{background:#fafcfd;border:1px solid #e6edf2;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.geofence-panel.enabled{background:#f1fbf7;border-color:#9bd7c1}.geofence-panel>div:first-child strong,.geofence-panel>div:first-child span{display:block}.geofence-panel>div:first-child strong{color:#315970;font-size:9px}.geofence-panel>div:first-child span{color:#87a0ae;margin-top:4px;font-size:7px}.geofence-actions{align-items:center;gap:7px;display:flex}.geofence-actions label{color:#7893a3;align-items:center;gap:4px;font-size:7px;display:flex}.geofence-actions input{width:63px!important;height:29px!important;padding:0 6px!important;font-size:8px!important}.geofence-actions small{font-size:7px}.geofence-actions button{color:#168dca;white-space:nowrap;background:#fff;border:1px solid #9bcfe5;border-radius:7px;height:30px;padding:0 9px;font-size:7px;font-weight:800}.geofence-actions button:last-child{color:#bd6048;background:#fff8f5;border-color:#ecc3b7}.assistant-manager-list{gap:7px;min-height:0;max-height:560px;padding-right:3px;display:grid;overflow-y:auto}.assistant-manager-list article{background:#fbfdff;border:1px solid #d9ebf5;border-radius:11px;grid-template-columns:34px minmax(120px,1fr) 100px 85px 125px auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.manager-assistant-copy strong,.manager-assistant-copy span,.manager-value span,.manager-value strong{display:block}.manager-assistant-copy strong{color:#274e68;font-size:10px}.manager-assistant-copy span{color:#829daf;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:7px;overflow:hidden}.manager-access{color:#829daf;gap:4px;font-size:7px;display:grid}.manager-access select{color:#28617f;background:#fff;border:1px solid #cce4f2;border-radius:8px;outline:0;width:100%;height:32px;padding:0 8px;font-size:8px;font-weight:700}.manager-access select:focus{border-color:#42afe6;box-shadow:0 0 0 3px #e6f6fd}.manager-value span{color:#91a8b7;font-size:7px}.manager-value strong{color:#315a74;margin-top:3px;font-size:9px}.manager-value .pin-value{color:#0b91d9;letter-spacing:1px;font:800 10px/1 ui-monospace,Consolas,monospace}.manager-edit-button{color:#118dcc;white-space:nowrap;background:#edf9ff;border:1px solid #8bd0ef;border-radius:8px;height:32px;padding:0 11px;font-size:8px;font-weight:800}.manager-edit-button:hover{color:#fff;background:#27a6e4;border-color:#3db2e9}.leave-shifts{background:#fff6f3;border:1px solid #f2c5ba;border-radius:9px;gap:4px;min-width:102px;padding:9px 10px;display:grid}.leave-shifts>span{color:#d45e45;font-size:7px;font-weight:800}.leave-shifts>strong{color:#168fcf;font-size:9px}.leave-shifts>small{color:#8a9dab;font-size:7px}.payable-time{margin-top:5px;font-weight:800;color:#168e68!important;font-size:7px!important}.overtime-form-modal{width:min(560px,100%)}.overtime-applicant{background:#eef9ff;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px 14px;display:grid}.overtime-applicant span,.overtime-applicant small{color:#7d9caf;font-size:8px}.overtime-applicant strong{color:#254e68;font-size:11px}.clock-view-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.clock-view-actions button{color:#3780a1;background:#f5fbfe;border:1px solid #c9e3f1;border-radius:10px;min-height:42px;padding:7px 10px;font-size:13px;font-weight:800;line-height:1.35}.clock-view-actions button:hover{color:#118dcc;background:#edf9ff;border-color:#55b8e6}.homework-register-link{color:#19698f;background:linear-gradient(135deg,#eefaff,#dff5ff);border:1px solid #92d4f2;border-radius:12px;grid-template-columns:36px 1fr auto;align-items:center;gap:11px;min-height:54px;margin-top:10px;padding:9px 13px;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;display:grid;box-shadow:0 8px 20px #249ad314}.homework-register-link:hover{border-color:#39ade3;transform:translateY(-1px);box-shadow:0 10px 24px #249ad326}.homework-register-link>span{color:#fff;background:linear-gradient(145deg,#49bce9,#168fd0);border-radius:10px;place-items:center;width:36px;height:36px;font-size:11px;font-weight:900;display:grid}.homework-register-link strong{text-align:left;font-size:14px}.homework-register-link i{color:#268bb8;font-size:12px;font-style:normal;font-weight:800}.clock-session-section{text-align:left;background:#f8fcff;border:1px solid #d8ecf6;border-radius:14px;margin-top:14px;padding:13px}.clock-session-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.clock-session-heading strong{color:#2a5873;font-size:14px}.clock-session-heading span{color:#7795a7;font-size:12px}.clock-session-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.clock-session-picker button{color:#6f8fa2;cursor:pointer;background:#fff;border:1px solid #d3e7f2;border-radius:11px;align-content:center;place-items:center;gap:4px;min-height:76px;padding:9px 6px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid}.clock-session-picker button:hover{border-color:#8bcfeb;transform:translateY(-1px)}.clock-session-picker button.active{color:#107eaf;background:#eefaff;border:2px solid #31ade7;box-shadow:0 7px 16px #21aaf229}.clock-session-picker button.completed{color:#38826e;background:#f2fbf7}.clock-session-picker button.active-session{color:#118dcc;background:#effaff}.clock-session-picker button.pending{color:#738f9f}.clock-session-picker small{color:inherit;opacity:.78;font-size:11px;font-weight:800}.clock-session-picker strong{white-space:nowrap;font-size:13px}.clock-session-picker span{color:#7993a3;text-align:center;background:#edf3f6;border-radius:12px;min-width:54px;padding:3px 7px;font-size:11px;font-weight:800}.clock-session-picker button.completed span{color:#238768;background:#dff5eb}.clock-session-picker button.active-session span{color:#087eb7;background:#d9f2ff}.clock-session-picker button.active span{box-shadow:inset 0 0 0 1px #1f9eda2e}.clock-history-modal{width:min(620px,100%);max-height:calc(100vh - 40px)}.clock-status-list,.weekly-session-list{gap:8px;max-height:430px;display:grid;overflow-y:auto}.clock-status-list article,.weekly-session-list article{background:#fbfdff;border:1px solid #dcecf4;border-radius:10px;grid-template-columns:1fr auto;gap:5px 10px;padding:11px 12px;display:grid}.clock-status-list article strong,.clock-status-list article span,.weekly-session-list article strong,.weekly-session-list article span{display:block}.clock-status-list article strong,.weekly-session-list article strong{color:#315970;font-size:9px}.clock-status-list article span,.weekly-session-list article span{color:#88a1b0;margin-top:4px;font-size:7px}.clock-status-list article i{color:#ad761d;background:#fff4df;border-radius:14px;padding:5px 8px;font-size:7px;font-style:normal;font-weight:800}.clock-status-list article i.approved{color:#238768;background:#e7f8f0}.clock-status-list article i.rejected{color:#bd5b44;background:#fff0ec}.clock-status-list article p{color:#7895a7;grid-column:1/-1;margin:4px 0 0;font-size:8px}.clock-status-list article .approved-copy{color:#25876a;font-weight:800}.clock-status-list article .rejected-copy{color:#c46149}.weekly-session-list article>b{color:#315970;align-self:center;font:800 9px/1 ui-monospace,Consolas,monospace}.weekly-session-list article>b em{color:#d65245;font-style:normal}.proof-upload-grid{grid-template-columns:1fr 1fr;gap:11px;display:grid}.proof-upload-grid label{cursor:pointer;text-align:center;background:#f7fcff;border:1px dashed #9ecfe8;border-radius:11px;align-content:center;min-height:112px;padding:15px}.proof-upload-grid label.proof-ready{background:#effaf6;border-style:solid;border-color:#69c0a4}.proof-upload-grid input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.proof-upload-grid span{color:#3d6a84;font-size:9px;font-weight:800}.proof-upload-grid small{color:#1697dc;text-overflow:ellipsis;white-space:nowrap;margin-top:8px;font-size:8px;overflow:hidden}.overtime-manager-modal{grid-template-rows:auto auto minmax(0,1fr) auto;width:min(850px,100%);max-height:calc(100vh - 40px)}.overtime-review-list{gap:10px;min-height:0;max-height:620px;padding-right:3px;display:grid;overflow-y:auto}.overtime-review-list>article{background:#fbfdff;border:1px solid #d9eaf4;border-radius:13px;padding:14px}.overtime-review-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.overtime-review-heading strong,.overtime-review-heading span{display:block}.overtime-review-heading strong{color:#284f69;font-size:11px}.overtime-review-heading span{color:#7998aa;margin-top:5px;font-size:8px}.overtime-review-heading i{color:#a36b17;white-space:nowrap;background:#fff3d9;border-radius:20px;padding:5px 8px;font-size:7px;font-style:normal;font-weight:800}.overtime-review-heading i.approved{color:#25866a;background:#e7f7f0}.overtime-review-heading i.rejected{color:#bd5b44;background:#fff0ec}.proof-preview-grid{grid-template-columns:1fr 1fr;gap:9px;margin-top:12px;display:grid}.proof-preview-grid>button{cursor:zoom-in;background:#edf5f9;border:1px solid #d4e7f2;border-radius:10px;height:140px;padding:0;display:block;position:relative;overflow:hidden}.proof-preview-grid img{object-fit:cover;width:100%;height:100%;display:block}.proof-preview-grid span{color:#fff;text-align:left;background:linear-gradient(#0000,#133043e6);padding:20px 9px 8px;font-size:14px;font-weight:800;position:absolute;inset:auto 0 0}.proof-preview-grid span small{color:#d9f2ff;margin-top:3px;font-size:12px;display:block}.overtime-review-list article>p{color:#986c59;margin:9px 0 0;font-size:8px}.overtime-review-actions{justify-content:flex-end;gap:8px;margin-top:11px;display:flex}.overtime-review-actions button{color:#bd6048;background:#fff7f4;border:1px solid #edc4b9;border-radius:8px;height:32px;padding:0 11px;font-size:8px;font-weight:800}.overtime-review-actions button:last-child{color:#fff;background:#2ba77f;border-color:#82cdb4}.empty-overtime{color:#7b9aab;text-align:center;align-content:center;place-items:center;gap:8px;min-height:280px;display:grid}.empty-overtime span{color:#fff;background:#44b993;border-radius:50%;place-items:center;width:44px;height:44px;font-size:18px;display:grid}.empty-overtime strong{color:#3b627a;font-size:11px}.empty-overtime small{font-size:8px}.proof-lightbox{z-index:100;padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));color:#fff;background:#07141ff5;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;display:grid;position:fixed;inset:0}.proof-lightbox header{justify-content:space-between;align-items:center;gap:16px;display:flex}.proof-lightbox header strong{font-size:16px}.proof-lightbox header>div{align-items:center;gap:7px;display:flex}.proof-lightbox header button{color:#fff;background:#1c3445;border:1px solid #557083;border-radius:9px;min-width:42px;height:42px;padding:0 12px;font-size:16px;font-weight:800}.proof-lightbox header button:disabled{opacity:.35}.proof-lightbox header span{text-align:center;min-width:48px;font-size:14px}.proof-lightbox header .proof-lightbox-close{color:#17344e;background:#fff}.proof-lightbox-stage{touch-action:pinch-zoom;background:#111;border-radius:12px;place-items:center;min-height:0;display:grid;overflow:auto}.proof-lightbox-stage>div{place-items:center;min-width:100%;min-height:100%;display:grid}.proof-lightbox-stage img{object-fit:contain;width:100%;height:100%;display:block}.proof-lightbox>p{color:#b9cbd6;text-align:center;margin:0;font-size:14px}.schedule-import-modal{grid-template-rows:auto auto minmax(0,1fr) auto auto auto;width:min(920px,100%);max-height:calc(100vh - 40px);overflow:hidden}.import-file-summary{background:#f6fcff;border:1px solid #d8eaf4;border-radius:11px;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;display:flex}.import-file-summary>div:first-child{min-width:0}.import-file-summary span,.import-file-summary strong,.import-file-summary small{display:block}.import-file-summary>div:first-child>span{color:#8ba5b6;font-size:7px}.import-file-summary>div:first-child>strong{color:#315970;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:10px;overflow:hidden}.import-file-summary>div:first-child>small{color:#91a7b6;margin-top:4px;font-size:7px}.import-kpis{flex:none;gap:7px;display:flex}.import-kpis span{color:#6f8fa3;text-align:center;background:#fff;border-radius:9px;min-width:68px;padding:8px 9px;font-size:7px}.import-kpis strong{color:#0a92dc;margin-bottom:3px;font-size:13px}.import-day-preview{grid-template-columns:repeat(5,1fr);gap:8px;min-height:0;display:grid;overflow-x:auto}.import-day-preview article{background:#fbfdff;border:1px solid #deedf5;border-radius:10px;min-width:135px;padding:9px}.import-day-preview header{border-bottom:1px solid #e7f1f7;justify-content:space-between;padding-bottom:7px;display:flex}.import-day-preview header strong{color:#315970;font-size:9px}.import-day-preview header span{color:#188fd0;font-size:7px}.import-day-preview p{gap:3px;margin:7px 0 0;display:grid}.import-day-preview p b{color:#168fd1;font-size:8px}.import-day-preview p span,.import-day-preview small{color:#7e9aac;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.import-day-preview>article>small{color:#a3b4bf;margin-top:8px;display:block}.import-assistant-list{color:#66879c;font-size:8px}.import-assistant-list summary{cursor:pointer;font-weight:800}.import-assistant-list>div{flex-wrap:wrap;gap:5px;max-height:75px;margin-top:8px;display:flex;overflow-y:auto}.import-assistant-list span{color:#3d6d87;background:#edf8fe;border-radius:12px;padding:4px 7px}.import-warnings{color:#a4742e;background:#fff9ed;border:1px solid #f0d1a3;border-radius:9px;gap:4px;max-height:90px;padding:9px 11px;font-size:7px;display:grid;overflow-y:auto}.import-warnings strong{font-size:8px}.import-replace-tip{color:#587c92;background:#eaf7fd;border-radius:9px;gap:3px;padding:10px 12px;font-size:8px;display:grid}.import-replace-tip strong{color:#2188bd}@media (width<=1180px){.topbar{grid-template-columns:minmax(290px,.8fr) 1fr auto;gap:14px}.header-brand strong{font-size:17px}.header-button{display:none}.visual-grid{grid-template-columns:1fr 1fr}.trend-card{grid-column:1/-1}.schedule-week-grid{grid-template-columns:repeat(5,minmax(180px,1fr))}.rain-dashboard{grid-template-columns:1fr}.rain-sidecar{grid-template-columns:1fr 1fr}.focus-card,.rain-quote{min-height:190px}.rain-access-roles{grid-template-columns:1fr 1fr}.rain-access-roles>aside{grid-column:1/-1;min-height:100px}}@media (width<=850px){.topbar{grid-template-columns:1fr auto;height:72px}.global-search{display:none}.app-shell{padding-top:72px}.sidebar{width:72px;padding-inline:10px;top:72px}.sidebar .nav-label,nav a,nav button{font-size:0}.sidebar-bottom>a,.profile>div:not(.avatar),.profile b{display:none}nav a,nav button{justify-content:center;padding:0}nav a span,nav button span{font-size:12px}.profile{justify-content:center;padding-inline:0}.content{margin-left:72px}.metrics{grid-template-columns:1fr}.table-toolbar{flex-direction:column;align-items:flex-start}.schedule-board-heading{align-items:flex-start}.private-overview{grid-template-columns:repeat(3,1fr)}.completion-ring{grid-column:1/-1;min-height:130px}.rain-weather{display:none}.rain-access-roles{grid-template-columns:1fr}.rain-access-roles>aside{grid-column:auto}.admin-login-card{grid-template-columns:1fr;max-width:500px}.admin-login-brand{min-height:190px;padding:28px 30px}.admin-login-brandmark{border-radius:15px;width:50px;height:50px;font-size:24px}.admin-login-status{margin:0;position:absolute;top:28px;right:30px}.admin-login-brand>div:nth-of-type(2){margin-top:24px}.admin-login-brand h1{font-size:29px}.admin-login-brand h1 br,.admin-login-brand p:not(.eyebrow),.admin-login-brand>small{display:none}.admin-login-form{padding:36px 38px}}@media (width<=620px){.topbar{padding:0 14px}.header-brand span{display:none}.header-brand strong{font-size:14px}.brand-mark{border-radius:11px;width:38px;height:38px}.header-primary{padding:0 11px;font-size:10px}.top-actions .avatar,.sidebar{display:none}.content{margin-left:0}.page{padding:18px 12px 35px}.heading-row{min-height:105px;padding:20px 18px}.heading-row h1{font-size:23px}.subtext{max-width:200px}.heading-row .primary-button{padding-inline:11px}.visual-grid{grid-template-columns:1fr}.trend-card{grid-column:auto}.visual-card{min-height:270px}.bar-chart{gap:5px}.donut-wrap{justify-content:space-around}.filters{flex-wrap:wrap;width:100%}.search{flex:1}.week-switcher div{min-width:220px}.time-grid{grid-template-columns:1fr}.schedule-board-heading{flex-direction:column;align-items:stretch}.schedule-import-button{width:100%}.schedule-week-grid{padding:10px}.import-file-summary{flex-direction:column;align-items:stretch}.import-kpis{width:100%}.import-kpis span{flex:1}.schedule-import-modal{max-height:calc(100vh - 20px);padding:18px 14px;overflow-y:auto}.import-day-preview{grid-template-columns:repeat(5,minmax(130px,1fr))}.private-hero{min-height:156px;padding:22px 18px}.private-hero h1{font-size:28px}.rain-greeting{letter-spacing:.9px;font-size:7px}.rain-hero-actions{gap:7px}.rain-permission-button{min-height:42px;padding-inline:10px}.rain-permission-button small{display:none}.rain-add-button{height:42px;padding-inline:13px}.private-overview{grid-template-columns:1fr 1fr}.private-overview>article{grid-template-columns:40px 1fr;column-gap:10px;min-height:110px;padding:15px}.rain-stat-icon{width:40px;height:40px}.completion-ring{grid-column:auto;min-height:110px}.rain-sidecar{grid-template-columns:1fr}.task-item{grid-template-columns:22px 30px minmax(0,1fr) auto auto;gap:6px;padding-inline:11px}.task-state,.privacy-note{display:none}.rain-access-heading{grid-template-columns:40px 1fr;padding:15px}.rain-access-mark{width:40px;height:40px}.rain-access-heading>button{grid-column:1/-1;width:100%}.rain-access-roles{padding:11px}.heading-actions{flex-direction:column;align-items:flex-end}.heading-actions .secondary-button{height:34px;font-size:8px}.clock-page{align-content:start;min-height:calc(100vh - 72px);padding:14px 10px 28px}.clock-card{border-radius:18px;padding:20px 16px 18px}.clock-card-header{grid-template-columns:40px 1fr;gap:11px}.clock-card .clock-brand-icon{border-radius:0;width:40px;height:40px;font-size:31px}.clock-card-header .eyebrow{letter-spacing:1.4px;font-size:9px}.clock-card h1{font-size:22px}.clock-intro{margin:13px 0 16px;padding:10px 11px;font-size:12px}.clock-select{margin-top:14px}.clock-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.clock-actions button{height:48px;font-size:15px}.clock-session-heading{flex-direction:column;align-items:flex-start;gap:2px}.clock-session-picker{grid-template-columns:1fr 1fr}.clock-session-picker button{min-height:72px}.clock-view-actions{grid-template-columns:1fr}.share-card{flex-direction:column;align-items:flex-start}.public-clock-topbar .header-brand strong{font-size:14px}.modal-backdrop{padding:10px}.attendance-edit-modal{max-height:calc(100dvh - 20px);padding:18px 14px}.attendance-edit-modal .modal-actions{padding:12px 14px calc(12px + env(safe-area-inset-bottom));margin:0 -14px -18px;bottom:-18px}.assistant-manager-modal{max-height:calc(100vh - 20px);padding:18px 14px}.assistant-manager-list article{grid-template-columns:30px minmax(0,1fr) auto;gap:8px}.assistant-manager-list .manager-value{grid-row:2}.assistant-manager-list .manager-value:nth-of-type(3){grid-column:2}.assistant-manager-list .manager-value:nth-of-type(4){grid-column:3}.assistant-manager-list .manager-access{grid-area:3/2/auto/-1}.manager-edit-button{grid-area:1/3}.proof-upload-grid,.proof-preview-grid{grid-template-columns:1fr}.overtime-manager-modal{max-height:calc(100vh - 20px);padding:18px 14px}.proof-preview-grid>button{height:120px}.proof-lightbox header{flex-direction:column;align-items:flex-start;gap:9px}.proof-lightbox header>div{justify-content:space-between;gap:4px;width:100%}.proof-lightbox header button{min-width:38px;height:40px;padding:0 9px;font-size:14px}.proof-lightbox header span{min-width:42px}.proof-lightbox>p{font-size:12px}.week-settlement{flex-direction:column;align-items:stretch}.week-settlement button{width:100%}.exception-modal{max-height:calc(100vh - 20px);padding:18px 14px}.exception-summary{grid-template-columns:repeat(3,1fr)}.exception-list article{grid-template-columns:54px minmax(0,1fr)}.exception-list article>button{grid-column:1/-1;width:100%}.import-history-button{width:100%}.reminder-modal{max-height:calc(100vh - 20px);padding:18px 14px}.reminder-overview{grid-template-columns:1fr 1fr 1fr}.reminder-overview>div{padding:8px}.reminder-copy textarea{font-size:13px}.admin-login-page{align-content:start;min-height:calc(100dvh - 72px);padding:14px 12px 28px}.admin-login-card{border-radius:22px;min-height:0}.admin-login-brand{min-height:150px;padding:22px 20px}.admin-login-status{padding:6px 8px;font-size:10px;top:24px;right:18px}.admin-login-brand>div:nth-of-type(2){margin-top:18px}.admin-login-brand .eyebrow{margin-bottom:8px;font-size:9px}.admin-login-brand h1{font-size:24px}.admin-login-form{padding:28px 20px 24px}.admin-login-form h2{font-size:24px}.admin-login-copy{margin-top:20px;font-size:13px}.admin-login-roles{margin-bottom:20px}.admin-login-roles span{font-size:11px}.admin-login-input,.admin-login-submit{height:52px!important}.admin-login-form>small{font-size:11px}}.notebook-page{padding:28px}.notebook-center{background:#fffffff5;border:1px solid #cfe7f3;border-radius:20px;min-height:calc(100vh - 132px);overflow:hidden;box-shadow:0 18px 55px #19688f1a}.notebook-heading{background:linear-gradient(135deg,#fafdff,#e9f8ff);border-bottom:1px solid #d9edf7;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:18px;min-height:132px;padding:28px 32px;display:grid}.notebook-title-mark{color:#fff;background:linear-gradient(145deg,#38b7ec,#128fd0);border-radius:16px;place-items:center;width:58px;height:58px;font-size:24px;font-weight:900;display:grid;box-shadow:0 12px 26px #1997d340}.notebook-heading p{color:#1594d3;letter-spacing:2.5px;margin:0 0 5px;font-size:10px;font-weight:900}.notebook-heading h1{color:#163c55;margin:0;font-size:27px}.notebook-heading span{color:#7695a8;margin-top:7px;font-size:12px;display:block}.notebook-close{color:#668b9e;background:#e7f4fa;border:0;border-radius:50%;width:42px;height:42px;font-size:23px}.notebook-toolbar{grid-template-columns:auto minmax(240px,1fr) auto;align-items:center;gap:12px;padding:20px 28px 14px;display:grid}.notebook-week{background:#f7fcff;border:1px solid #d2e8f3;border-radius:12px;align-items:center;height:48px;display:flex}.notebook-week button{color:#1d91c8;background:0 0;border:0;width:36px;height:100%;font-size:22px}.notebook-week div{text-align:center;min-width:148px}.notebook-week span,.notebook-week strong{display:block}.notebook-week span{color:#94aab7;font-size:9px}.notebook-week strong{color:#345f77;margin-top:2px;font-size:12px}.notebook-search{background:#fff;border:1px solid #cfe6f2;border-radius:12px;align-items:center;gap:9px;height:48px;padding:0 16px;display:flex}.notebook-search span{color:#38a9dc;font-size:22px}.notebook-search input{color:#244f69;background:0 0;border:0;outline:0;width:100%;font-size:13px}.notebook-search input::placeholder{color:#9bb0bd}.notebook-upload-main{color:#fff;background:linear-gradient(135deg,#42bce9,#159bd9);border:0;border-radius:12px;height:48px;padding:0 18px;font-size:12px;font-weight:900;box-shadow:0 8px 18px #1999d833}.notebook-upload-actions{gap:7px;display:flex}.notebook-upload-folder{color:#1889b9;white-space:nowrap;background:#f2fbff;border:1px solid #78c9e9;border-radius:12px;height:48px;padding:0 15px;font-size:11px;font-weight:900}.notebook-template-panel{background:#fffaf0;border:1px solid #f0d89c;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0 28px 14px;padding:12px;display:grid}.notebook-template-intro{grid-column:1/-1;padding:0 2px 4px}.notebook-template-intro strong,.notebook-template-intro span{display:block}.notebook-template-intro strong{color:#795e22;font-size:11px}.notebook-template-intro span{color:#9c8655;margin-top:3px;font-size:9px}.notebook-template-bar{background:#fff;border:1px solid #f0d89c;border-radius:11px;align-items:center;gap:8px;min-width:0;padding:10px 11px;display:flex}.notebook-template-bar div{flex:1;min-width:0}.notebook-template-bar strong,.notebook-template-bar span{display:block}.notebook-template-bar strong{color:#795e22;font-size:11px}.notebook-template-bar span{color:#9c8655;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:9px;overflow:hidden}.notebook-template-bar button,.notebook-template-upload{color:#8b6816;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e5c979;border-radius:9px;justify-content:center;align-items:center;height:32px;padding:0 10px;font-size:10px;font-weight:800;display:inline-flex}.notebook-template-upload input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.notebook-alert{border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin:0 28px 14px;padding:11px 13px;font-size:10px;display:grid}.notebook-alert.error{color:#a95642;background:#fff5f2;border:1px solid #efc4b9}.notebook-alert.success{color:#24775f;background:#effaf6;border:1px solid #b9dfd2}.notebook-alert button{color:inherit;background:0 0;border:0;font-size:18px}.notebook-folders{grid-template-columns:repeat(5,minmax(90px,1fr));gap:10px;padding:4px 28px 16px;display:grid}.notebook-folders button{color:#55798c;text-align:left;background:#fbfdff;border:1px solid #d8e9f1;border-radius:13px;grid-template-rows:auto auto;grid-template-columns:1fr auto;align-items:center;gap:3px 8px;min-height:82px;padding:12px;display:grid}.notebook-folders button span{color:#9bb0bb;grid-column:1/-1;font-size:9px}.notebook-folders button strong{font-size:15px}.notebook-folders button i{justify-self:end;font-size:9px;font-style:normal}.notebook-folders button.active{color:#118bc2;background:#ebf9ff;border-color:#38afe2;box-shadow:0 8px 20px #229bd221}.notebook-folders button.active span{color:#4daed8}.notebook-class-folders{background:#f9fcfe;border:1px solid #dcebf2;border-radius:14px;margin:0 28px 16px;padding:14px}.notebook-class-heading{color:#37647b;justify-content:space-between;align-items:center;display:flex}.notebook-class-heading strong{font-size:12px}.notebook-class-heading span{color:#8da7b5;font-size:9px}.notebook-class-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.notebook-class-grid button{color:#52778b;text-align:left;background:#fff;border:1px solid #d2e7f1;border-radius:11px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;min-height:62px;padding:10px;display:grid}.notebook-class-grid button>i{color:#fff;background:linear-gradient(145deg,#5ec5ec,#299ed2);border-radius:9px;place-items:center;width:34px;height:34px;font-size:10px;font-style:normal;font-weight:900;display:grid}.notebook-class-grid button strong,.notebook-class-grid button span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.notebook-class-grid button strong{color:#315e75;font-size:11px}.notebook-class-grid button span{color:#91a9b5;margin-top:4px;font-size:8px}.notebook-class-grid button b{color:#70afca;font-size:18px}.notebook-class-grid button.active{background:#eaf9ff;border-color:#31aadd;box-shadow:0 7px 16px #2a9dcd1f}.notebook-class-empty{color:#92a9b5;text-align:center;padding:18px 8px 6px;font-size:10px}.notebook-list-heading{background:#f8fcfe;border-top:1px solid #e2eff5;border-bottom:1px solid #e2eff5;justify-content:space-between;align-items:center;gap:12px;padding:14px 28px;display:flex}.notebook-list-heading strong,.notebook-list-heading span{display:block}.notebook-list-heading strong{color:#315c74;font-size:13px}.notebook-list-heading span,.notebook-list-heading small{color:#8aa3b2;margin-top:3px;font-size:9px}.notebook-list-tools{align-items:center;gap:9px;display:flex}.notebook-list-tools button{color:#28795f;background:#effaf6;border:1px solid #68bf9f;border-radius:9px;min-height:34px;padding:0 12px;font-size:9px;font-weight:900}.notebook-list-tools small{margin:0}.notebook-list{align-content:start;gap:10px;min-height:260px;padding:16px 28px;display:grid}.notebook-item{background:#fff;border:1px solid #dceaf1;border-radius:13px;grid-template-columns:42px minmax(180px,1fr) auto auto;align-items:center;gap:13px;padding:14px;display:grid}.notebook-item.revision_required{background:snow;border-color:#efc7bd}.notebook-item.approved{border-color:#cce8dd}.notebook-file-icon{color:#fff;background:linear-gradient(145deg,#3997e5,#1768bf);border-radius:8px 8px 8px 3px;place-items:center;width:42px;height:48px;font-size:17px;font-weight:900;display:grid}.notebook-file-copy{min-width:0}.notebook-file-copy>div{align-items:center;gap:8px;display:flex}.notebook-file-copy strong{color:#254d65;font-size:13px}.notebook-file-copy i{color:#976b20;background:#fff3d9;border-radius:20px;padding:4px 7px;font-size:8px;font-style:normal;font-weight:800}.notebook-file-copy i.approved{color:#227d61;background:#e5f7ef}.notebook-file-copy i.revision_required{color:#b95844;background:#ffede8}.notebook-file-copy span,.notebook-file-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.notebook-file-copy span{color:#718f9f;margin-top:5px;font-size:10px}.notebook-file-copy small{color:#a0b1ba;margin-top:4px;font-size:8px}.notebook-format-score{border-left:2px solid #55b9e4;min-width:84px;padding:8px 11px}.notebook-format-score span,.notebook-format-score strong{display:block}.notebook-format-score span{color:#96aab5;font-size:8px}.notebook-format-score strong{color:#248bb8;margin-top:4px;font-size:12px}.notebook-item-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.notebook-item-actions button{color:#247fa7;background:#f5fbfe;border:1px solid #bcddeb;border-radius:8px;height:32px;padding:0 10px;font-size:9px;font-weight:800}.notebook-item-actions button.review{color:#fff;background:#2ba97f;border-color:#2ba97f}.notebook-warnings{color:#a06b29;background:#fff8e9;border-radius:8px;grid-column:2/-1;gap:4px;padding:9px 11px;font-size:9px;display:grid}.notebook-warnings strong{color:#b25543}.notebook-empty{color:#8ca6b5;text-align:center;align-content:center;place-items:center;gap:7px;min-height:210px;display:grid}.notebook-empty>span{color:#fff;background:#70c5e8;border-radius:13px;place-items:center;width:45px;height:45px;font-size:15px;font-weight:900;display:grid}.notebook-empty strong{color:#416b82;font-size:12px}.notebook-empty small{font-size:9px}.notebook-privacy{color:#4d806f;background:#eff9f5;border-radius:10px;align-items:center;gap:10px;margin:0 28px 24px;padding:12px 14px;display:flex}.notebook-privacy>span{color:#fff;background:#51ae8c;border-radius:50%;place-items:center;width:30px;height:30px;font-size:9px;font-weight:900;display:grid}.notebook-privacy strong,.notebook-privacy small{display:block}.notebook-privacy strong{font-size:10px}.notebook-privacy small{color:#7ba091;margin-top:3px;font-size:8px}.notebook-entry-link{color:#24745d;text-align:left;background:linear-gradient(135deg,#f2fcf8,#e4f8f0);border:1px solid #9bdcc7;border-radius:12px;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;width:100%;min-height:60px;margin-top:10px;padding:10px 13px;display:grid}.notebook-entry-link>span{color:#fff;background:linear-gradient(145deg,#55bd99,#269d75);border-radius:10px;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.notebook-entry-link strong,.notebook-entry-link small{display:block}.notebook-entry-link strong{font-size:13px}.notebook-entry-link small{color:#72a391;margin-top:3px;font-size:9px}.notebook-entry-link i{font-size:10px;font-style:normal;font-weight:900}.notebook-public-overlay{z-index:95;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#071c2ab8;padding:18px;position:fixed;inset:0;overflow-y:auto}.notebook-center-modal{width:min(1120px,100%);min-height:0;margin:0 auto}.notebook-inner-backdrop{z-index:110;background:#081e2cb8;place-items:center;padding:18px;display:grid;position:fixed;inset:0;overflow-y:auto}.notebook-dialog{background:#fff;border:1px solid #cfe4ef;border-radius:18px;gap:14px;width:min(560px,100%);padding:22px;display:grid;box-shadow:0 24px 70px #0520314d}.notebook-dialog header{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.notebook-dialog header p{color:#169bd8;letter-spacing:2px;margin:0 0 5px;font-size:9px;font-weight:900}.notebook-dialog h2{color:#254e66;margin:0;font-size:20px}.notebook-dialog header button{color:#7896a6;background:#edf6fa;border:0;border-radius:50%;width:36px;height:36px;font-size:20px}.notebook-dialog label{color:#4e7184;gap:7px;font-size:10px;font-weight:800;display:grid}.notebook-dialog input,.notebook-dialog select,.notebook-dialog textarea{color:#244c63;width:100%;font:inherit;background:#fff;border:1px solid #cfe3ed;border-radius:10px;outline:0;padding:12px 13px}.notebook-dialog input:focus,.notebook-dialog select:focus,.notebook-dialog textarea:focus{border-color:#2cabe4;box-shadow:0 0 0 3px #29a9e21a}.notebook-file-picker input{opacity:0;width:1px;height:1px;position:absolute}.notebook-file-picker>span{color:#238dbd;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:#f2fbff;border:1px dashed #76c7e9;border-radius:10px;place-items:center;min-height:54px;padding:14px;display:grid;overflow:hidden}.notebook-dialog>p{color:#718e9e;background:#f1f8fb;border-radius:9px;margin:0;padding:10px 12px;font-size:9px;line-height:1.6}.notebook-dialog footer{justify-content:flex-end;gap:8px;display:flex}.notebook-dialog footer button{color:#547486;background:#fff;border:1px solid #d1e2ea;border-radius:9px;min-height:40px;padding:0 15px;font-size:10px;font-weight:900}.notebook-dialog footer button.primary{color:#fff;background:#159bd9;border-color:#159bd9}.notebook-review-summary{color:#5d8195;background:#ebf8fe;border-radius:10px;justify-content:space-between;align-items:center;padding:13px;display:flex}.notebook-review-summary strong{color:#168dca;font-size:18px}.notebook-review-warnings{color:#946926;background:#fff9ed;border:1px solid #f0d5a4;border-radius:9px;gap:5px;padding:11px;font-size:9px;display:grid}.notebook-bulk-dialog{width:min(700px,100%);max-height:calc(100vh - 36px);overflow-y:auto}.notebook-folder-picker input{opacity:0;width:1px;height:1px;position:absolute}.notebook-folder-picker>span{color:#1888b9;cursor:pointer;background:#edfaff;border:2px dashed #61bee4;border-radius:12px;place-items:center;min-height:64px;padding:14px;font-size:12px;display:grid}.notebook-bulk-preview{gap:7px;max-height:250px;display:grid;overflow-y:auto}.notebook-bulk-preview article{background:#fbfdfe;border:1px solid #dcebf2;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:10px 12px;display:grid}.notebook-bulk-preview strong,.notebook-bulk-preview span{display:block}.notebook-bulk-preview strong{color:#315f77;font-size:11px}.notebook-bulk-preview span,.notebook-bulk-preview small{color:#8aa3b1;font-size:8px}.notebook-bulk-preview small{text-overflow:ellipsis;white-space:nowrap;align-self:center;overflow:hidden}.notebook-pdf-staging{pointer-events:none;background:#fff;width:794px;position:fixed;top:0;left:-100000px}@media (width<=760px){.notebook-page{padding:12px}.notebook-center{border-radius:16px}.notebook-heading{grid-template-columns:44px minmax(0,1fr) auto;gap:11px;min-height:104px;padding:20px 16px}.notebook-title-mark{border-radius:12px;width:44px;height:44px;font-size:18px}.notebook-heading h1{font-size:20px}.notebook-heading span{font-size:10px;line-height:1.5}.notebook-toolbar{grid-template-columns:1fr;padding:14px 14px 10px}.notebook-week{justify-content:space-between}.notebook-week div{flex:1}.notebook-search{min-width:0}.notebook-upload-actions{grid-template-columns:1fr 1fr;display:grid}.notebook-upload-main,.notebook-upload-folder{width:100%;padding-inline:10px}.notebook-template-panel,.notebook-alert{margin-inline:14px}.notebook-template-panel{grid-template-columns:1fr}.notebook-template-bar{margin:0}.notebook-folders{grid-template-columns:repeat(5,minmax(74px,1fr));padding:4px 14px 12px;overflow-x:auto}.notebook-folders button{grid-template-columns:1fr;min-width:74px;min-height:68px;padding:9px}.notebook-folders button span{display:none}.notebook-folders button i{justify-self:start}.notebook-class-folders{margin:0 14px 12px;padding:11px}.notebook-class-grid{grid-template-columns:1fr}.notebook-list-heading{flex-direction:column;align-items:flex-start;padding:12px 14px}.notebook-list-tools{justify-content:space-between;width:100%}.notebook-list{padding:12px 14px}.notebook-item{grid-template-columns:38px minmax(0,1fr);gap:9px}.notebook-file-icon{width:38px;height:44px}.notebook-format-score{border-top:2px solid #55b9e4;border-left:0;grid-column:1/2;padding:7px 0}.notebook-item-actions{grid-column:2;justify-content:flex-start}.notebook-warnings{grid-column:1/-1}.notebook-privacy{margin:0 14px 16px}.notebook-public-overlay{padding:6px}.notebook-center-modal{border-radius:14px}.notebook-inner-backdrop{align-items:start;padding:8px}.notebook-dialog{border-radius:15px;margin-top:10px;padding:17px 14px}}.notebook-review-warnings.notebook-review-ok{color:#28785f;background:#effaf6;border-color:#b8decf}.rain-brand-mark{font-size:24px;line-height:1}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@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}
