@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-cyrillic-ext-wght-normal-DOFToQv1.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-cyrillic-wght-normal-DayYxulF.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-math-wght-normal-Bl4ZGkZl.woff2) format("woff2-variations");unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-symbols-wght-normal-DxQzqQfC.woff2) format("woff2-variations");unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-vietnamese-wght-normal-BBxOatbv.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-latin-ext-wght-normal-QAhDxQuo.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-latin-wght-normal-Dun_Rd-l.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/sora-latin-ext-wght-normal-CawQDOvP.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/sora-latin-wght-normal-DdqRvwsR.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2) format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.grid-stack{position:relative}.grid-stack-placeholder>.placeholder-content{background-color:#0000001a;margin:0;position:absolute;width:auto;z-index:0!important}.grid-stack>.grid-stack-item{position:absolute;padding:0;top:0;width:var(--gs-column-width);height:var(--gs-cell-height)}.grid-stack>.grid-stack-item>.grid-stack-item-content{margin:0;position:absolute;width:auto;overflow-x:hidden;overflow-y:auto}.grid-stack>.grid-stack-item.size-to-content:not(.size-to-content-max)>.grid-stack-item-content{overflow-y:hidden}.grid-stack:not(.grid-stack-rtl)>.grid-stack-item{left:0}.grid-stack.grid-stack-rtl>.grid-stack-item{right:0}.grid-stack>.grid-stack-item>.grid-stack-item-content,.grid-stack>.grid-stack-placeholder>.placeholder-content{top:var(--gs-item-margin-top);right:var(--gs-item-margin-right);bottom:var(--gs-item-margin-bottom);left:var(--gs-item-margin-left)}.grid-stack-item>.ui-resizable-handle{position:absolute;font-size:.1px;display:block;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:100}.grid-stack-item.ui-resizable-autohide>.ui-resizable-handle,.grid-stack-item.ui-resizable-disabled>.ui-resizable-handle{display:none}.grid-stack-item>.ui-resizable-ne,.grid-stack-item>.ui-resizable-nw,.grid-stack-item>.ui-resizable-se,.grid-stack-item>.ui-resizable-sw{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="%23666" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 20 20"><path d="m10 3 2 2H8l2-2v14l-2-2h4l-2 2"/></svg>');background-repeat:no-repeat;background-position:center;z-index:101}.grid-stack-item>.ui-resizable-ne{transform:rotate(45deg)}.grid-stack-item>.ui-resizable-sw{transform:rotate(45deg)}.grid-stack-item>.ui-resizable-nw{transform:rotate(-45deg)}.grid-stack-item>.ui-resizable-se{transform:rotate(-45deg)}.grid-stack-item>.ui-resizable-nw{cursor:nw-resize;width:20px;height:20px;top:var(--gs-item-margin-top);left:var(--gs-item-margin-left)}.grid-stack-item>.ui-resizable-n{cursor:n-resize;height:10px;top:var(--gs-item-margin-top);left:25px;right:25px}.grid-stack-item>.ui-resizable-ne{cursor:ne-resize;width:20px;height:20px;top:var(--gs-item-margin-top);right:var(--gs-item-margin-right)}.grid-stack-item>.ui-resizable-e{cursor:e-resize;width:10px;top:15px;bottom:15px;right:var(--gs-item-margin-right)}.grid-stack-item>.ui-resizable-se{cursor:se-resize;width:20px;height:20px;bottom:var(--gs-item-margin-bottom);right:var(--gs-item-margin-right)}.grid-stack-item>.ui-resizable-s{cursor:s-resize;height:10px;left:25px;bottom:var(--gs-item-margin-bottom);right:25px}.grid-stack-item>.ui-resizable-sw{cursor:sw-resize;width:20px;height:20px;bottom:var(--gs-item-margin-bottom);left:var(--gs-item-margin-left)}.grid-stack-item>.ui-resizable-w{cursor:w-resize;width:10px;top:15px;bottom:15px;left:var(--gs-item-margin-left)}.grid-stack-item.ui-draggable-dragging>.ui-resizable-handle{display:none!important}.grid-stack-item.ui-draggable-dragging{will-change:left,right,top}.grid-stack-item.ui-resizable-resizing{will-change:width,height}.grid-stack-item.ui-draggable-armed{cursor:move;animation:gs-armed-wiggle .25s ease-in-out infinite}.grid-stack-item>.ui-resizable-handle.ui-resizable-armed{animation:gs-armed-pulse .5s ease-in-out infinite}@keyframes gs-armed-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-1.5deg)}75%{transform:rotate(1.5deg)}}@keyframes gs-armed-pulse{0%,to{opacity:1}50%{opacity:.3}}.ui-draggable-dragging,.ui-resizable-resizing{z-index:10000}.ui-draggable-dragging>.grid-stack-item-content,.ui-resizable-resizing>.grid-stack-item-content{box-shadow:1px 4px 6px #0003;opacity:.8}.grid-stack-animate,.grid-stack-animate .grid-stack-item{transition:left .3s,right .3s,top .3s,height .3s,width .3s}.grid-stack-animate .grid-stack-item.grid-stack-placeholder,.grid-stack-animate .grid-stack-item.ui-draggable-dragging,.grid-stack-animate .grid-stack-item.ui-resizable-resizing{transition:left 0s,right 0s,top 0s,height 0s,width 0s}.grid-stack>.grid-stack-item[gs-y="0"]{top:0}.grid-stack:not(.grid-stack-rtl)>.grid-stack-item[gs-x="0"]{left:0}.grid-stack.grid-stack-rtl>.grid-stack-item[gs-x="0"]{right:0}.gs-print-show{display:none}@media print{@page gs-landscape{size:landscape}@page gs-portrait{size:portrait}.grid-stack{display:block!important;height:auto!important;position:static!important}.grid-stack>.grid-stack-item{display:block!important;float:left!important;position:static!important;height:auto!important;left:auto!important;top:auto!important;width:calc(100% * var(--gs-w)/ var(--gs-columns,12))!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;page-break-inside:avoid!important}.grid-stack>.grid-stack-item>.grid-stack-item-content{position:relative!important;height:auto!important;overflow:visible!important;white-space:normal!important;margin-top:var(--gs-item-margin-top)!important;margin-right:var(--gs-item-margin-right)!important;margin-bottom:var(--gs-item-margin-bottom)!important;margin-left:var(--gs-item-margin-left)!important;inset:auto!important}.gs-print-hide{display:none}.gs-print-show{display:block}.gs-print-avoid-break-after{-moz-column-break-after:avoid!important;break-after:avoid!important;page-break-after:avoid!important}.grid-stack>.grid-stack-item.gs-print-hide{display:none!important}.grid-stack>.grid-stack-item[gs-page-break=true],.grid-stack>.grid-stack-item[gs-print-orientation]{float:none!important;clear:both!important}.grid-stack>.grid-stack-item[gs-page-break=true]{page-break-before:always!important;-moz-column-break-before:page!important;break-before:page!important}.grid-stack>.grid-stack-item[gs-print-orientation=landscape]{page:gs-landscape;min-width:calc(100vmax * var(--gs-w)/ var(--gs-columns,12))!important}.grid-stack>.grid-stack-item[gs-print-orientation=portrait]{page:gs-portrait;min-width:calc(100vmin * var(--gs-w)/ var(--gs-columns,12))!important}.grid-stack>.grid-stack-item[gs-break-inside=true]{float:none!important;clear:both!important;width:100%!important;-moz-column-break-inside:auto!important;break-inside:auto!important;page-break-inside:auto!important}.grid-stack>.grid-stack-item>.ui-resizable-handle{display:none!important}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.relative{position:relative}.block{display:block}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.capitalize{text-transform:capitalize}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--font-sans: "Onest Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "Sora Variable", "Onest Variable", ui-sans-serif, system-ui, sans-serif;--font-mono: "Geist Mono Variable", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--bg: #eef3fa;--surface: #ffffff;--surface-2: #f4f6fa;--hover: #eef1f4;--row-hover: #f8fafc;--border: #e4e9f0;--border-soft: #f0f2f5;--border-strong: #d3dbe6;--text: #122036;--text-2: #46546a;--text-3: #5a6679;--text-4: #8a95a6;--accent: #0b63ce;--accent-hover: #0a59bb;--accent-soft: #eaf2fe;--accent-text: #0b63ce;--text-on-accent: #ffffff;--success: #0f6537;--success-soft: #e5f5eb;--warning: #874b00;--warning-soft: #fbf0de;--warning-border: #f3dcb4;--danger: #ac2419;--danger-soft: #fde8e6;--info: #3b5b8c;--info-soft: #e8eef6;--bar: #0e1f3a;--bar-text: #ffffff;--bar-text-2: rgb(255 255 255 / 72%);--bar-hover: rgb(255 255 255 / 10%);--bar-hover-strong: rgb(255 255 255 / 16%);--menu-bg: #ffffff;--menu-active: #eaf2fe;--glass: rgb(255 255 255 / 66%);--glass-border: rgb(255 255 255 / 85%);--shadow-glass: inset 0 1px 0 rgb(255 255 255 / 60%), 0 18px 40px -24px rgb(18 40 80 / 35%);--shadow-glass-high: inset 0 1px 0 rgb(255 255 255 / 60%), 0 26px 50px -22px rgb(18 40 80 / 45%);--blob-1: rgb(80 150 240 / 38%);--blob-2: rgb(255 190 110 / 32%);--mark: #fbf0de;--overlay: rgb(6 14 30 / 42%);--focus: 0 0 0 3.5px rgb(11 99 206 / 20%);--radius-sm: 6px;--radius: 8px;--radius-lg: 14px;--radius-widget: 18px;--shadow-sm: 0 0 0 .5px rgb(26 34 48 / 20%), 0 1px 1px rgb(26 34 48 / 7%);--shadow: 0 0 0 1px var(--border), 0 10px 28px -20px rgb(18 40 80 / 30%);--shadow-lg: 0 0 0 .5px rgb(26 34 48 / 20%), 0 12px 32px rgb(26 34 48 / 16%);--shadow-panel: 30px 0 60px -30px rgb(10 25 50 / 50%);--shadow-primary: 0 0 0 .5px #0a57b5, 0 1px 1px rgb(11 99 206 / 25%), inset 0 1px 0 rgb(255 255 255 / 12%);--shadow-field: 0 0 0 1px var(--border-strong), inset 0 1px 1px rgb(26 34 48 / 3%);--shadow-field-hover: 0 0 0 1px #c4ccd6, inset 0 1px 1px rgb(26 34 48 / 3%);--shadow-control: 0 0 0 .5px rgb(26 34 48 / 20%), 0 1px 2px rgb(26 34 48 / 8%);--ease: cubic-bezier(.4, 0, .2, 1);--dur-fast: .12s;--dur-med: .2s;--dur-slow: .32s;--dur-panel: .45s;--ease-out: cubic-bezier(.2, 0, 0, 1);--ease-soft: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.45, .64, 1);--content-width: 1180px;--bar-height: 40px;--menu-width: 300px;--row-height: 44px}:root[data-theme=dark]{--bg: #0b1220;--surface: #141c2b;--surface-2: #1a2334;--hover: #1d2638;--row-hover: #182132;--border: #253047;--border-soft: #1d2638;--border-strong: #34405a;--text: #eef2f8;--text-2: #b6bfcd;--text-3: #8e98a8;--text-4: #66718a;--accent: #6aa8fa;--accent-hover: #8dbcfb;--accent-soft: #16253d;--accent-text: #8dbcfb;--text-on-accent: #081326;--success: #5bd69a;--success-soft: #0f2419;--warning: #f0c46c;--warning-soft: #241b0a;--warning-border: #3d2e10;--danger: #ff8f82;--danger-soft: #2b1415;--info: #9db8e0;--info-soft: #172235;--bar: #070d18;--bar-text: #ffffff;--bar-text-2: rgb(255 255 255 / 70%);--bar-hover: rgb(255 255 255 / 9%);--bar-hover-strong: rgb(255 255 255 / 15%);--menu-bg: #141c2b;--menu-active: #16253d;--glass: rgb(22 30 46 / 72%);--glass-border: rgb(255 255 255 / 7%);--shadow-glass: 0 20px 40px -24px rgb(0 0 0 / 90%);--shadow-glass-high: 0 26px 50px -22px rgb(0 0 0 / 95%);--blob-1: rgb(56 120 220 / 35%);--blob-2: rgb(240 150 60 / 16%);--mark: #3d2e10;--overlay: rgb(0 0 0 / 55%);--focus: 0 0 0 3.5px rgb(165 184 255 / 25%);--shadow-sm: 0 0 0 1px var(--border-strong);--shadow: 0 0 0 1px var(--border);--shadow-lg: 0 0 0 1px var(--border-strong), 0 24px 60px rgb(0 0 0 / 70%);--shadow-panel: 30px 0 60px -30px rgb(0 0 0 / 80%);--shadow-primary: 0 0 0 1px var(--accent);--shadow-field: 0 0 0 1px var(--border-strong);--shadow-field-hover: 0 0 0 1px var(--text-3);--shadow-control: 0 0 0 1px var(--border-strong)}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 0ms;--dur-med: 0ms;--dur-slow: 0ms;--dur-panel: 0ms}}.app,.app *,.app *:before,.app *:after{box-sizing:border-box}.app{min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:13px;line-height:20px;-webkit-font-smoothing:antialiased;color-scheme:light}@media(max-width:640px){.app{font-size:14px}}:root[data-theme=dark] .app{color-scheme:dark}body:has(.app){background:var(--bg);margin:0}.app h1,.app h2,.app h3,.app h4,.app p{margin:0}:where(.app) button{font:inherit;color:inherit}:where(.app) a{color:var(--accent-text);text-decoration:none}:where(.app) a:hover{text-decoration:underline}.app :focus-visible{outline:none;box-shadow:var(--focus)}.app ::-moz-selection{background:var(--accent-soft)}.app ::selection{background:var(--accent-soft)}.app{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.display{font-family:var(--font-display);letter-spacing:-.03em}.num{font-variant-numeric:tabular-nums}.mono{font-family:var(--font-mono);font-size:.92em}.muted{color:var(--text-3)}.text-secondary{color:var(--text-2)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.stack{display:flex;flex-direction:column;gap:16px}.stack--sm{gap:8px}.stack--lg{gap:24px}.row{display:flex;align-items:center;gap:8px}.row--wrap{flex-wrap:wrap}.row--between{justify-content:space-between}.row--end{justify-content:flex-end}.row--center{justify-content:center}.row--bottom{align-items:flex-end}.spacer{flex:1}.grid{display:grid;gap:16px}.grid>*{min-width:0}.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid--auto{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}@media(max-width:1100px){.grid--4,.grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.grid--2,.grid--3{grid-template-columns:1fr}.grid--4{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}.pre-wrap{white-space:pre-wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;padding:0 12px;border:0;border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:13px;font-weight:500;line-height:1;white-space:nowrap;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-shadow:var(--shadow-sm);transition:background var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.btn:hover{background:var(--surface-2)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn svg{width:15px;height:15px;flex-shrink:0}.btn--primary{background:var(--accent);color:var(--text-on-accent);box-shadow:var(--shadow-primary)}.btn--primary:hover{background:var(--accent-hover)}.btn--danger{background:var(--danger);color:var(--text-on-accent);box-shadow:none}.btn--danger:hover{background:var(--danger);filter:brightness(.94)}.btn--ghost{background:transparent;box-shadow:none;color:var(--text-2)}.btn--ghost:hover{background:var(--hover);color:var(--text)}.btn--ghost-danger{color:var(--danger)}.btn--ghost-danger:hover{background:var(--danger-soft);color:var(--danger)}.btn--sm{height:28px;padding:0 10px;font-size:12.5px}.btn--icon{width:30px;padding:0}@media(max-width:640px){.btn{height:36px}.btn--icon{width:36px}}.btn--icon.btn--sm{width:28px}.btn--block{width:100%}.spinner{width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.inline-confirm{position:relative;display:inline-flex;align-items:center;gap:5px;max-width:28px;height:28px;padding:0 6px;overflow:hidden;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-3);font-size:12.5px;font-weight:500;white-space:nowrap;cursor:pointer;transition:max-width var(--dur-slow) var(--ease-out),background-color var(--dur-med) var(--ease-out),color var(--dur-med) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.inline-confirm:hover{background:var(--danger-soft);color:var(--danger)}.inline-confirm:active:not(:disabled){transform:scale(.95)}.inline-confirm:disabled{cursor:wait}.inline-confirm svg,.inline-confirm .spinner{flex-shrink:0;width:16px;height:16px}.inline-confirm.is-armed{max-width:130px;padding-right:10px;background:var(--danger);color:var(--text-on-accent)}.inline-confirm__label{opacity:0;transition:opacity var(--dur-med) var(--ease-out)}.is-armed .inline-confirm__label{opacity:1}.inline-confirm__timer{position:absolute;left:0;bottom:0;width:100%;height:2px;background:#fff9;transform:scaleX(0);transform-origin:left}.is-armed .inline-confirm__timer{animation:drain 3s linear forwards}@keyframes drain{0%{transform:scaleX(1)}}@media(hover:hover){.table tbody .row-actions--hover>*{opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.table tbody tr:hover .row-actions--hover>*,.table tbody .row-actions--hover>:focus-visible,.table tbody .row-actions--hover>.is-armed{opacity:1}}.card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);min-width:0}.card__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border)}.card__title{font-size:14px;font-weight:600}.card__subtitle{font-size:12.5px;color:var(--text-3);margin-top:2px}.card__body{padding:16px}.card__footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--border)}.card--interactive{cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.card--interactive:hover{box-shadow:0 0 0 1px var(--border-strong),0 10px 28px -20px #1228504d}.stat{padding:16px 18px}.stat__label{font-size:13px;color:var(--text-3);display:flex;align-items:center;gap:6px}.stat__value{font-family:var(--font-display);font-size:24px;font-weight:600;letter-spacing:-.03em;margin-top:6px;font-variant-numeric:tabular-nums;line-height:1.2}.stat__hint{font-size:12.5px;color:var(--text-3);margin-top:4px}.stat--success .stat__value{color:var(--success)}.stat--warning .stat__value{color:var(--warning)}.stat--danger .stat__value{color:var(--danger)}.badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;white-space:nowrap;background:var(--hover);color:var(--text-2)}.badge__dot{width:6px;height:6px;border-radius:50%;background:currentColor}.badge--success{background:var(--success-soft);color:var(--success)}.badge--warning{background:var(--warning-soft);color:var(--warning)}.badge--danger{background:var(--danger-soft);color:var(--danger)}.badge--info{background:var(--info-soft);color:var(--info)}.badge--accent{background:var(--accent-soft);color:var(--accent-text)}button.badge{border:0;cursor:pointer}.avatar{display:inline-grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;font-size:12px;font-weight:600;color:#fff;background:var(--avatar-bg, var(--text-3))}.avatar--sm{width:26px;height:26px;font-size:11px}.avatar--lg{width:44px;height:44px;font-size:15px}.person{display:flex;align-items:center;gap:10px;min-width:0}.person__text{min-width:0}.person__name{color:var(--text);font-weight:500}.person__detail{color:var(--text-3);font-size:12.5px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field__label{font-size:13px;font-weight:500;color:var(--text-2)}.field__hint{font-size:12.5px;color:var(--text-3)}.field__error{font-size:12.5px;color:var(--danger)}.input,.select,.textarea{width:100%;height:32px;padding:0 10px;background:var(--surface);color:var(--text);border:0;border-radius:var(--radius);box-shadow:var(--shadow-field);font:inherit;font-size:13px;transition:box-shadow var(--dur-fast) var(--ease-out)}.input::-moz-placeholder,.textarea::-moz-placeholder{color:var(--text-4)}.input::placeholder,.textarea::placeholder{color:var(--text-4)}.input:hover,.select:hover,.textarea:hover{box-shadow:var(--shadow-field-hover)}.input:focus,.select:focus,.textarea:focus{outline:none;box-shadow:0 0 0 1px var(--accent),var(--focus)}.input:disabled,.select:disabled,.textarea:disabled{background:var(--surface-2);color:var(--text-3);cursor:not-allowed}.input--invalid,.input--invalid:hover{box-shadow:0 0 0 1px var(--danger)}@media(max-width:640px){.input,.select{height:38px;font-size:14px}}.input--auto{width:auto}.textarea{height:auto;min-height:88px;padding:9px 11px;resize:vertical;line-height:1.5}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:32px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A807C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 15 5 5 5-5'/%3E%3Cpath d='m7 9 5-5 5 5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center;background-size:15px}.select:hover:not(:disabled){background-color:var(--surface-2)}.select option{background:var(--surface);color:var(--text)}@supports ((-webkit-appearance: base-select) or (-moz-appearance: base-select) or (appearance: base-select)){.select,.select::picker(select){-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select}.select{display:flex;align-items:center}.select::picker-icon{display:none}.select::picker(select){margin-top:4px;padding:4px;max-height:min(320px,50vh);background:var(--surface);color:var(--text);border:0;border-radius:var(--radius);box-shadow:var(--shadow-lg);transition:opacity var(--dur-med) var(--ease-out),transform var(--dur-med) var(--ease-spring),overlay var(--dur-med) allow-discrete,display var(--dur-med) allow-discrete;transform-origin:top center}.select:not(:open)::picker(select){opacity:0;transform:translateY(-4px) scale(.98)}@starting-style{.select:open::picker(select){opacity:0;transform:translateY(-4px) scale(.98)}}.select option{display:flex;align-items:center;gap:8px;min-height:32px;padding:0 10px;border-radius:var(--radius-sm);background:none;font-size:13.5px;cursor:pointer}.select option:hover,.select option:focus-visible{background:var(--hover);outline:none;box-shadow:none}.select option:checked{color:var(--accent-text);font-weight:500}.select option::checkmark{order:1;margin-left:auto;color:var(--accent)}.select option:disabled{color:var(--text-4);cursor:default}.select option:disabled:hover{background:none}}input[type=date].input,input[type=month].input,input[type=time].input{font-variant-numeric:tabular-nums}.checkbox{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;color:var(--text-2);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.checkbox:hover{color:var(--text)}.checkbox input{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;place-items:center;flex-shrink:0;width:16px;height:16px;margin:0;border:1.5px solid var(--border-strong);border-radius:4px;background:var(--surface);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.checkbox:hover input:not(:checked,:disabled){border-color:var(--text-4)}.checkbox input:active:not(:disabled){transform:scale(.88)}.checkbox input:checked,.checkbox input:indeterminate{border-color:var(--accent);background:var(--accent)}.checkbox input:after{content:"";width:9px;height:5px;margin-top:-2px;border:2px solid var(--text-on-accent);border-top:0;border-right:0;transform:rotate(-45deg) scale(0);transition:transform var(--dur-med) var(--ease-spring)}.checkbox input:checked:after{transform:rotate(-45deg) scale(1)}.checkbox input:indeterminate:after{width:8px;height:0;margin:0;border-left:0;transform:none}.checkbox input:disabled{opacity:.5;cursor:not-allowed}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.form-grid__full{grid-column:1 / -1}.form-section{font-size:13px;font-weight:600;color:var(--text);padding-top:4px}@media(max-width:640px){.form-grid{grid-template-columns:1fr}}.search{position:relative;min-width:0}.search>svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:var(--text-4);pointer-events:none;transition:color var(--dur-fast) var(--ease-out)}.search:focus-within>svg,.search--filled>svg{color:var(--text-2)}.search .input{padding-left:32px;padding-right:34px}.search .input::-webkit-search-cancel-button{display:none}.search__shortcut{position:absolute;right:9px;top:50%;transform:translateY(-50%);pointer-events:none;transition:opacity var(--dur-fast) var(--ease-out)}.search:focus-within .search__shortcut{opacity:0}.search__clear,.search-select__clear{position:absolute;right:5px;top:50%;translate:0 -50%;display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:var(--radius-sm);background:none;color:var(--text-3);cursor:pointer;animation:pop var(--dur-med) var(--ease-spring)}.search__clear:hover,.search-select__clear:hover{background:var(--hover);color:var(--text)}.search__clear svg,.search-select__clear svg{width:14px;height:14px}@media(hover:none){.search__shortcut{display:none}}.search-select{position:relative}.search-select--filled .input{padding-right:32px}.search-select__popover{position:fixed;inset:auto;margin:0;padding:4px;overflow:hidden;background:var(--surface);color:var(--text);border:0;border-radius:var(--radius);box-shadow:var(--shadow-lg);transition:opacity var(--dur-med) var(--ease-out),transform var(--dur-med) var(--ease-spring);transform-origin:top center}@starting-style{.search-select__popover:popover-open{opacity:0;transform:translateY(-4px) scale(.98)}}.search-select__popover:popover-open{display:flex;flex-direction:column}.search-select__list{min-height:0;margin:0;padding:0;overflow-y:auto;overscroll-behavior:contain;list-style:none}.search-select__option{display:flex;align-items:center;gap:8px;min-height:32px;padding:0 10px;border-radius:var(--radius-sm);font-size:13.5px;cursor:pointer}.search-select__option[aria-selected=true]{background:var(--hover)}.search-select__option--chosen{color:var(--accent-text);font-weight:500}.search-select__label{min-width:0}.search-select__detail{flex-shrink:0;margin-left:auto;font-size:12.5px;font-variant-numeric:tabular-nums;color:var(--text-3)}.search-select__notice{flex-shrink:0;margin:0;padding:8px 10px;font-size:12.5px;color:var(--text-3)}@media(max-width:640px){.search-select__option{min-height:40px;font-size:14px}}kbd{display:inline-block;min-width:18px;padding:2px 5px;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:5px;background:var(--surface);color:var(--text-3);font:500 11px/1 var(--font-mono);text-align:center}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:16px}.toolbar .search{flex:1 1 240px;max-width:360px;transition:max-width var(--dur-slow) var(--ease-out)}.toolbar .search:focus-within{max-width:440px}.toolbar .select{width:auto;min-width:140px}.segmented{position:relative;display:inline-flex;gap:2px;padding:3px;background:var(--hover);border-radius:var(--radius);max-width:100%;overflow-x:auto;scrollbar-width:none}.segmented::-webkit-scrollbar{display:none}.segmented__item{position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-2);font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer;transition:color var(--dur-med) var(--ease-out)}.segmented__item:hover,.segmented__item[aria-pressed=true]{color:var(--text)}.segmented__item:focus-visible{box-shadow:var(--focus)}.segmented__indicator{position:absolute;top:3px;bottom:3px;left:0;width:0;border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-control);pointer-events:none}.segmented__indicator.is-ready{transition:transform var(--dur-slow) var(--ease-spring),width var(--dur-slow) var(--ease-spring)}.segmented__count{font-size:12px;color:var(--text-3);font-variant-numeric:tabular-nums}.tabs{position:relative;display:flex;gap:20px;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none;margin-bottom:20px}.tabs::-webkit-scrollbar{display:none}.tabs__item{position:relative;padding:10px 0;border:0;background:none;color:var(--text-3);font-size:13.5px;font-weight:500;white-space:nowrap;cursor:pointer;transition:color var(--dur-fast) var(--ease-out)}.tabs__item:hover,.tabs__item[aria-selected=true]{color:var(--text)}.tabs__indicator{position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--accent);border-radius:2px;pointer-events:none}.tabs__indicator.is-ready{transition:transform var(--dur-slow) var(--ease-spring),width var(--dur-slow) var(--ease-spring)}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{height:34px;padding:0 12px;text-align:left;font-weight:500;font-size:12px;color:var(--text-3);border-bottom:1px solid var(--border);white-space:nowrap}.table th:first-child,.table td:first-child{padding-left:16px}.table th:last-child,.table td:last-child{padding-right:16px}.table td{height:var(--row-height);padding:6px 12px;border-bottom:1px solid var(--border-soft);color:var(--text-2);vertical-align:middle}.table tbody tr:last-child td{border-bottom:0}.table tbody tr{transition:background var(--dur-fast) var(--ease-out);animation:row-in var(--dur-slow) var(--ease-out) both;animation-delay:calc(var(--row, 0) * 28ms)}@keyframes row-in{0%{opacity:0;transform:translateY(4px)}}@media(prefers-reduced-motion:reduce){.table tbody tr{animation:none}}.table tbody tr:hover{background:var(--row-hover)}.table tr.is-clickable{cursor:pointer}.table tr.is-clickable:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--accent)}.table tr.is-selected,.table tr.is-selected:hover{background:var(--accent-soft)}.table .is-right{text-align:right}.table .is-center{text-align:center}.table .is-strong{color:var(--text);font-weight:500}.table__actions{display:flex;justify-content:flex-end;gap:4px}.table__empty{padding:40px 16px;text-align:center;color:var(--text-3)}@media(max-width:760px){.table{width:-moz-max-content;width:max-content;min-width:100%}.table th,.table td{white-space:nowrap}}.empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:48px 20px;text-align:center}.empty__icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--hover);color:var(--text-3);margin-bottom:4px}.empty__icon svg{width:18px;height:18px}.empty__title{font-size:14px;font-weight:600}.empty__text{font-size:13px;color:var(--text-3);max-width:380px}.empty .btn{margin-top:10px}.alert{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:var(--radius);border:1px solid transparent;font-size:13.5px;line-height:1.45}.alert svg{width:16px;height:16px;flex-shrink:0;margin-top:1px}.alert--danger{background:var(--danger-soft);color:var(--danger)}.alert--warning{background:var(--warning-soft);color:var(--warning)}.alert--success{background:var(--success-soft);color:var(--success)}.alert--info{background:var(--info-soft);color:var(--info)}.loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px;color:var(--text-3);font-size:13.5px}.modal-backdrop{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:24px;background:var(--overlay);animation:fade-in var(--dur-fast) var(--ease-out)}.modal{width:100%;max-width:520px;max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:pop-in var(--dur-med) var(--ease-out)}.modal--sm{max-width:420px}.modal--lg{max-width:720px}.modal--xl{max-width:960px}.modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 0}.modal__title{font-family:var(--font-display);font-size:17px;font-weight:600;letter-spacing:-.02em}.modal__description{font-size:13px;color:var(--text-3);margin-top:2px}.modal__body{padding:16px 20px 20px;overflow-y:auto}.modal__footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border)}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(6px) scale(.985)}}@media(max-width:640px){.modal-backdrop{place-items:end center;padding:0}.modal{max-width:none;max-height:92vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0}}.drawer-backdrop{position:fixed;inset:0;z-index:250;display:flex;justify-content:flex-end;background:var(--overlay);animation:fade-in var(--dur-fast) var(--ease-out)}.drawer{width:620px;max-width:100vw;height:100%;display:flex;flex-direction:column;background:var(--surface);box-shadow:var(--shadow-lg);animation:slide-in var(--dur-panel) var(--ease-soft)}@keyframes slide-in{0%{transform:translate(48px);opacity:0}}.drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid var(--border)}.drawer__title{font-family:var(--font-display);font-size:17px;font-weight:600;letter-spacing:-.02em}.drawer__subtitle{font-size:13px;color:var(--text-3);margin-top:2px}.drawer__tabs{padding:0 22px}.drawer__tabs .tabs{margin-bottom:0}.drawer__body{flex:1;overflow-y:auto;padding:20px 22px}.drawer__footer{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:14px 22px;border-top:1px solid var(--border)}.props{display:grid;grid-template-columns:160px 1fr;gap:10px 16px;font-size:13.5px}.props dt{color:var(--text-3)}.props dd{margin:0;color:var(--text);min-width:0;overflow-wrap:anywhere}@media(max-width:640px){.props{grid-template-columns:1fr;gap:2px 0}.props dd{margin-bottom:8px}}.menu-button{position:relative}.menu{position:absolute;top:calc(100% + 6px);right:0;z-index:200;min-width:220px;padding:6px;background:var(--surface);border:0;border-radius:10px;box-shadow:var(--shadow-lg);transform-origin:top right;animation:menu-in var(--dur-med) var(--ease-spring)}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px) scale(.96)}}@keyframes pop{0%{opacity:0;transform:scale(.5)}}.menu__header{padding:8px 10px 10px;border-bottom:1px solid var(--border);margin-bottom:6px}.menu__name{font-weight:600}.menu__detail{font-size:12.5px;color:var(--text-3)}.menu__item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:0;border-radius:var(--radius-sm);background:none;color:var(--text-2);font-size:13.5px;text-align:left;cursor:pointer}.menu__item:hover{background:var(--hover);color:var(--text)}.menu__item svg{width:15px;height:15px}.menu__item--danger{color:var(--danger)}.menu__item--danger:hover{background:var(--danger-soft);color:var(--danger)}.menu__separator{height:1px;background:var(--border);margin:6px 0}.menu__meta{display:flex;justify-content:space-between;gap:12px;padding:4px 10px;font-size:12.5px;color:var(--text-3)}.menu__meta span:last-child{color:var(--text-2)}.progress{height:6px;background:var(--hover);border-radius:3px;overflow:hidden}.progress__bar{height:100%;border-radius:3px;background:var(--accent);transition:width var(--dur-slow) var(--ease-out)}.meter{display:flex;align-items:center;gap:10px}.meter .progress{flex:1;min-width:60px;max-width:140px}.progress--success .progress__bar{background:var(--success)}.progress--warning .progress__bar{background:var(--warning)}.progress--danger .progress__bar{background:var(--danger)}.subject{display:inline-flex;align-items:center;gap:10px;min-width:0}.subject__tag{display:inline-grid;place-items:center;flex-shrink:0;width:30px;height:30px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--subject-color) 14%,transparent);color:var(--subject-color);font-size:10.5px;font-weight:700;letter-spacing:.02em}.subject__tag--sm{width:24px;height:24px;font-size:9.5px}.subject__tag--lg{width:56px;height:56px;font-size:16px;border-radius:var(--radius)}.subject__name{color:var(--text);font-weight:500}.list{display:flex;flex-direction:column}.list__item{display:flex;align-items:center;gap:12px;padding:10px 18px;border-bottom:1px solid var(--border)}.list__item:last-child{border-bottom:0}.list__main{flex:1;min-width:0}.list__title{display:block;color:var(--text);font-weight:500}.list__detail{color:var(--text-3);font-size:12.5px}.list__empty{padding:28px 18px;text-align:center;color:var(--text-3);font-size:13.5px}.inline-form{display:flex;gap:8px;padding:12px 18px;border-bottom:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap}.inline-form>.select,.inline-form>.search,.inline-form>.input{flex:1 1 160px}.timetable{width:100%;border-collapse:collapse;table-layout:fixed;min-width:760px}.timetable th{padding:10px 12px;font-size:12.5px;font-weight:500;color:var(--text-3);text-align:left;background:var(--surface-2);border-bottom:1px solid var(--border)}.timetable th:first-child{width:72px}.timetable td{padding:6px;border-bottom:1px solid var(--border);vertical-align:top}.timetable tr:last-child td{border-bottom:0}.timetable__period{padding:10px 12px!important;color:var(--text-3);font-size:12.5px;font-variant-numeric:tabular-nums}.slot{display:flex;gap:8px;align-items:flex-start;width:100%;min-height:56px;padding:8px;border:1px solid transparent;border-radius:var(--radius);background:none;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.slot:hover{background:var(--surface-2);border-color:var(--border)}.slot--empty{justify-content:center;align-items:center;color:var(--text-4);border:1px dashed var(--border)}.slot--empty:hover{color:var(--accent-text);border-color:var(--accent);background:var(--accent-soft)}.slot--empty svg{width:15px;height:15px}.slot__subject{display:block;font-size:13px;font-weight:500;color:var(--text);line-height:1.3}.slot__detail{display:block;font-size:12px;color:var(--text-3);line-height:1.3}.grade-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius)}.grade-list__row{display:flex;align-items:center;gap:12px;padding:8px 12px;border-bottom:1px solid var(--border);cursor:text}.grade-list__row:last-child{border-bottom:0}.grade-list__name{flex:1;min-width:0;color:var(--text)}.grade-list__input{width:88px;text-align:right;font-variant-numeric:tabular-nums}.roll-setup{display:flex;flex-wrap:wrap;align-items:flex-start;gap:16px 20px}.roll-hint{margin:10px 0 0;font-size:12.5px}.period-input{width:96px}.period-chips{display:flex;flex-wrap:wrap;gap:6px}.period-chip{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--text-2);font-size:13px;font-weight:500;font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.period-chip:hover{background:var(--hover)}.period-chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.period-chip:focus-visible{outline:none;box-shadow:var(--focus)}.period-chip__subject{color:var(--text-3);font-weight:400}.period-chip[aria-pressed=true] .period-chip__subject{color:inherit}.period-chip__done{width:14px;height:14px;color:var(--success)}.roll__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border)}.attendance{margin:0;padding:0;list-style:none}.attendance__row{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:6px 16px;border:0;border-bottom:1px solid var(--border-soft);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.attendance__row:hover{background:var(--hover)}.attendance__row:focus-visible{outline:none;box-shadow:inset var(--focus)}.attendance__row:disabled{cursor:default}.attendance__row.is-absent{background:var(--danger-soft)}.attendance__num{min-width:22px;color:var(--text-3);font-size:12.5px;font-variant-numeric:tabular-nums}.attendance__name{flex:1;min-width:0;font-weight:500}.attendance__status{min-width:84px;padding:4px 10px;border:1px solid var(--success);border-radius:999px;background:var(--success-soft);color:var(--success);font-size:12.5px;font-weight:500;text-align:center}.is-absent .attendance__status{border-color:var(--danger);background:var(--surface);color:var(--danger)}.attendance__empty{padding:16px}.roll__bar{position:sticky;bottom:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:12px 16px;border-top:1px solid var(--border);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--surface)}.roll__totals{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;flex:1;color:var(--text-2)}.roll__pending{color:var(--warning);font-size:12.5px}.roll__saved{display:inline-flex;align-items:center;gap:4px;color:var(--success);font-size:12.5px}.roll__saved svg{width:14px;height:14px}.roll__error{color:var(--danger);font-size:12.5px}.lessons{margin:0;padding:0;list-style:none}.lesson{display:flex;align-items:center;gap:16px;width:100%;padding:12px 18px;border:0;border-bottom:1px solid var(--border);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.lessons__item{display:flex;align-items:center;gap:8px;padding-right:12px;border-bottom:1px solid var(--border)}.lessons__item:last-child{border-bottom:0}.lessons__item:has(.lesson[aria-current=true]){background:var(--accent-soft)}.lessons__item .lesson[aria-current=true]{background:transparent}.lessons__item .lesson{flex:1;min-width:0;border-bottom:0}.lesson:hover{background:var(--hover)}.lesson:focus-visible{outline:none;box-shadow:inset var(--focus)}.lesson[aria-current=true]{background:var(--accent-soft)}.lesson__date{display:flex;flex-direction:column;min-width:0;flex:1}.lesson__day{font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.lesson__weekday{font-size:12.5px;color:var(--text-3)}.lesson__counts{display:flex;gap:6px;flex-wrap:wrap}.lesson__rate{min-width:48px;text-align:right;font-weight:600;font-variant-numeric:tabular-nums}@media(max-width:640px){.roll-setup>.field{flex:1 1 100%}.lesson{flex-wrap:wrap;gap:6px 12px}.lesson__date{flex-basis:100%}}.dashboard{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}@media(max-width:1100px){.dashboard{grid-template-columns:1fr}}.disclosure{display:flex;align-items:center;gap:12px;width:100%;padding:12px 18px;border:0;background:none;cursor:pointer;text-align:left;flex-wrap:wrap}.disclosure:hover{background:var(--surface-2)}.disclosure__icon{width:16px;height:16px;color:var(--text-3);transition:transform var(--dur-fast) var(--ease-out);flex-shrink:0}.disclosure[aria-expanded=true] .disclosure__icon{transform:rotate(90deg)}.disclosure__value{min-width:44px;text-align:right;font-size:16px;font-weight:600}.terms{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;padding:4px 18px 18px}.term{border:1px solid var(--border);border-radius:var(--radius);padding:12px;font-size:13px;background:var(--surface-2)}.term__title{font-weight:600;margin-bottom:8px}.term__row{display:flex;justify-content:space-between;gap:8px;padding:2px 0;color:var(--text-2)}.term__row--bonus{color:var(--accent-text)}.term__total{display:flex;justify-content:space-between;margin-top:8px;padding-top:8px;border-top:1px solid var(--border);font-weight:600}.post__header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.post__title{font-size:15px;font-weight:600}.post__body{margin-top:6px;color:var(--text-2);white-space:pre-wrap;line-height:1.6}.post__author{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px;color:var(--text-3)}.list__item--button{width:100%;border:0;border-bottom:1px solid var(--border);background:none;text-align:left;cursor:pointer}.list__item--button:hover{background:var(--surface-2)}.list__item--button[aria-current=true]{background:var(--accent-soft)}.list__item--button[aria-current=true] .list__title{color:var(--accent-text)}.list--scroll{max-height:560px;overflow-y:auto}.master-detail{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}.master-detail--aside{grid-template-columns:minmax(0,1fr) 380px}.master-detail__aside{position:sticky;top:calc(var(--bar-height) + 16px);scroll-margin-top:calc(var(--bar-height) + 12px)}@media(max-width:900px){.master-detail,.master-detail--aside{grid-template-columns:minmax(0,1fr)}.master-detail__aside{position:static}}.confirm-button{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}.confirm-button__consequence{max-width:320px;font-size:12.5px;color:var(--danger)}.confirm-button__consequence:empty{display:none}.chart__plot{display:flex;align-items:flex-end;gap:12px;height:180px;padding-top:8px}.chart__group{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%}.chart__bars{flex:1;display:flex;align-items:flex-end;gap:4px;width:100%;justify-content:center}.chart__bar{width:min(18px,40%);border-radius:3px 3px 0 0;transition:height var(--dur-slow) var(--ease-out)}.chart__bar--in{background:var(--success)}.chart__bar--out{background:color-mix(in srgb,var(--danger) 75%,transparent)}.chart__label{font-size:12px;color:var(--text-3)}.chart__legend{display:flex;gap:16px;margin-top:12px;font-size:12.5px;color:var(--text-3)}.chart__legend span{display:inline-flex;align-items:center;gap:6px}.chart__swatch{display:inline-block;width:10px;height:10px;border-radius:2px}.input--narrow{width:110px}.report{display:flex;flex-direction:column;gap:14px;height:100%;justify-content:space-between;align-items:flex-start}.report__title{font-size:14px;font-weight:600}.report__description{font-size:13px;color:var(--text-3);margin-top:4px}.switch{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer}.switch__text{display:flex;flex-direction:column}.switch__label{font-size:13.5px;font-weight:500;color:var(--text)}.switch__description{font-size:12.5px;color:var(--text-3)}.switch input{position:absolute;opacity:0;pointer-events:none}.switch__track{position:relative;flex-shrink:0;width:36px;height:20px;border-radius:999px;background:var(--border-strong);transition:background var(--dur-fast) var(--ease-out)}.switch__track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);transition:transform var(--dur-med) var(--ease-spring)}.switch input:checked+.switch__track{background:var(--accent)}.switch input:checked+.switch__track:after{transform:translate(16px)}.switch input:focus-visible+.switch__track{box-shadow:var(--focus)}.settings{max-width:760px}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.status-tile{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);font-size:12.5px;color:var(--text-3)}.status-tile strong{display:block;margin-top:2px;font-size:13px}.message-preview{max-width:420px;padding:12px 14px;border-radius:10px;background:#dcf8c6;color:#111;white-space:pre-wrap;line-height:1.55;font-size:13.5px}code{font-family:var(--font-mono);font-size:.9em;padding:1px 5px;border-radius:4px;background:var(--hover)}.rematricula{border-radius:var(--radius);box-shadow:var(--shadow-field);overflow:hidden}.rematricula__head{display:flex;align-items:center;padding:10px 18px;border-bottom:1px solid var(--border);background:var(--surface-2)}.rematricula .list--scroll{max-height:min(420px,50vh)}.rematricula__item{cursor:pointer}.rematricula__item:has(input:disabled){cursor:default}.rematricula__item:has(input:disabled) .list__title{color:var(--text-3)}.rematricula__falhas{margin:6px 0 0;padding-left:18px}.shell{position:relative;min-height:100dvh}.skip-link{position:fixed;top:8px;left:8px;z-index:600;padding:8px 12px;border-radius:var(--radius);background:var(--surface);color:var(--text);font-weight:500;box-shadow:var(--shadow-lg);transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.blobs{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}.blob{position:absolute;border-radius:50%;filter:blur(96px)}.blob--one{top:6%;left:16%;width:620px;height:620px;background:var(--blob-1);animation:blob-one 22s ease-in-out infinite alternate}.blob--two{right:-140px;bottom:-120px;width:560px;height:560px;background:var(--blob-2);animation:blob-two 28s ease-in-out infinite alternate}@keyframes blob-one{to{transform:translate(90px,60px) scale(1.15)}}@keyframes blob-two{to{transform:translate(-80px,-50px) scale(.92)}}@media(max-width:640px){.blob--one{left:-30%;width:420px;height:420px}.blob--two{width:360px;height:360px}}.bar{position:sticky;top:0;z-index:120;display:flex;align-items:flex-end;gap:12px;height:var(--bar-height);padding:0 12px;background:var(--bar);color:var(--bar-text)}.bar>:not(.tabs-bar){align-self:center}.bar__menu{display:grid;flex:none;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:9px;background:var(--bar-hover);color:inherit;cursor:pointer;transition:transform var(--dur-fast) var(--ease-spring),background-color var(--dur-med) var(--ease-out)}.bar__menu:active{transform:scale(.94)}.bar__menu[aria-expanded=true]{background:var(--bar-hover-strong)}.bar__menu svg{width:20px;height:20px}.bar__title{display:none;flex:1;min-width:0;font-weight:600;font-size:14px}.bar__search{display:flex;flex:0 1 260px;align-items:center;gap:8px;min-width:0;height:28px;padding:0 10px;border:0;border-radius:var(--radius);background:var(--bar-hover);color:var(--bar-text-2);font-size:13px;text-align:left;cursor:pointer;transition:background-color var(--dur-med) var(--ease-out)}.bar__search:hover{background:var(--bar-hover-strong)}.bar__search svg{flex:none;width:16px;height:16px}.bar__search-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar__search kbd{flex:none;padding:2px 6px;border:0;border-radius:var(--radius-sm);background:var(--bar-hover-strong);color:var(--bar-text)}.user-menu{position:relative;flex:none}.bar__account{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:var(--bar-hover);color:var(--bar-text);font-size:12px;font-weight:600;line-height:1;cursor:pointer;transition:box-shadow var(--dur-fast) var(--ease-out)}.bar__account:hover,.bar__account[aria-expanded=true]{box-shadow:0 0 0 3px var(--bar-hover-strong)}.user-menu .menu{color:var(--text)}.tabs-bar{display:flex;flex:1;align-items:flex-end;min-width:0;height:34px;overflow-x:auto;scrollbar-width:none}.tabs-bar::-webkit-scrollbar{display:none}.open-tab{position:relative;display:flex;flex:0 1 200px;align-items:center;min-width:0;max-width:200px;height:32px;border-radius:10px 10px 0 0;color:var(--bar-text-2);transition:max-width var(--dur-panel) var(--ease-soft),opacity var(--dur-med) var(--ease-out),background-color var(--dur-med) var(--ease-out),color var(--dur-med) var(--ease-out)}@starting-style{.open-tab{max-width:0;opacity:0}}.open-tab--home{flex:none;width:44px}.open-tab--home .open-tab__link{justify-content:center;padding:0}.open-tab:hover:not(.is-active){background:#ffffff12;color:var(--bar-text)}.open-tab.is-active{z-index:1;background:var(--bg);color:var(--text)}.open-tab.is-active:before,.open-tab.is-active:after{content:"";position:absolute;bottom:0;width:10px;height:10px;pointer-events:none}.open-tab.is-active:before{left:-10px;background:radial-gradient(circle at 0 0,transparent 9.5px,var(--bg) 10px)}.open-tab.is-active:after{right:-10px;background:radial-gradient(circle at 100% 0,transparent 9.5px,var(--bg) 10px)}.open-tab.is-active .open-tab__link{font-weight:600}.open-tab.is-active .open-tab__close{opacity:.7}.open-tab.is-closing{max-width:0;opacity:0;transition-duration:.22s}.open-tab__link{display:flex;flex:1;align-items:center;gap:8px;min-width:0;height:100%;padding:0 4px 0 14px;color:inherit;font-weight:500;font-size:13px}.open-tab__link:hover{text-decoration:none}.open-tab__link:focus-visible{border-radius:9px;box-shadow:inset 0 0 0 2px var(--accent)}.open-tab__link svg{flex:none;width:16px;height:16px}.open-tab__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.open-tab__close{display:grid;flex:none;place-items:center;width:22px;height:22px;margin-right:6px;padding:0;border:0;border-radius:var(--radius-sm);background:none;color:inherit;opacity:0;cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.open-tab:hover .open-tab__close,.open-tab__close:focus-visible{opacity:.8}.open-tab__close:hover{background:#00000014;opacity:1}.open-tab:not(.is-active) .open-tab__close:hover{background:var(--bar-hover-strong)}.open-tab__close svg{width:13px;height:13px}.veil{position:fixed;inset:0;z-index:140;padding:0;border:0;background:var(--overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:default;animation:fade-in var(--dur-panel) var(--ease-soft)}.side-menu{position:fixed;top:0;bottom:0;left:0;z-index:150;display:flex;flex-direction:column;width:var(--menu-width);max-width:86vw;background:var(--menu-bg);color:var(--text);box-shadow:var(--shadow-panel);visibility:hidden;transform:translate(-102%);transition:transform var(--dur-panel) var(--ease-soft),visibility 0s linear var(--dur-panel),top var(--dur-panel) var(--ease-soft),box-shadow var(--dur-panel) var(--ease-soft)}.side-menu.is-visible{visibility:visible;transform:none;transition-delay:0s}.side-menu.is-pinned{top:var(--bar-height);z-index:110;box-shadow:1px 0 0 var(--border)}.side-menu__top{display:flex;align-items:center;gap:10px;padding:16px 16px 8px}.side-menu__mark{width:34px;height:34px;border-radius:11px}.side-menu__brand{flex:1;font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:-.02em}.side-menu__icon{display:grid;flex:none;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:9px;background:var(--surface-2);color:var(--text-2);cursor:pointer;transition:background-color var(--dur-med) var(--ease-out),color var(--dur-med) var(--ease-out)}.side-menu__icon:hover{background:var(--hover)}.side-menu__icon svg{width:16px;height:16px;transform:rotate(35deg);transition:transform var(--dur-panel) var(--ease-spring)}.side-menu__icon--close svg,.side-menu__icon.is-on svg{transform:none}.side-menu__icon.is-on{background:var(--accent-soft);color:var(--accent)}.side-menu__school{display:flex;align-items:center;gap:10px;margin:4px 12px 8px;padding:10px 12px;border-radius:12px;background:var(--surface-2)}.side-menu__school-logo{flex:none;width:32px;height:32px;border-radius:50%;-o-object-fit:contain;object-fit:contain}.side-menu__school-logo--initial{display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:700}.side-menu__school-text{display:flex;flex-direction:column;min-width:0}.side-menu__school-name{font-weight:600;line-height:18px}.side-menu__school-detail{color:var(--text-3);font-size:12px;line-height:16px}.school-year{display:flex;align-items:center;gap:6px;min-width:0}.school-year__select{min-width:0;height:20px;margin-left:-4px;padding:0 18px 0 4px;border:0;border-radius:var(--radius-sm);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;color:var(--text-3);font:inherit;font-size:12px;line-height:16px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A807C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 3px center;background-size:12px;transition:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.school-year__select:hover{color:var(--text);background-color:var(--surface)}.school-year__select:focus-visible{outline:none;box-shadow:var(--focus);color:var(--text)}.school-year__select option{background:var(--surface);color:var(--text)}.school-year__flag{flex:none;padding:0 6px;border-radius:999px;background:var(--warning-soft);color:var(--warning);box-shadow:inset 0 0 0 1px var(--warning-border);font-size:11px;font-weight:600;line-height:16px}.year-notice{display:flex;flex:none;align-items:center;gap:6px;height:28px;padding:0 4px 0 10px;border-radius:var(--radius);background:var(--warning-soft);color:var(--warning);font-size:13px;white-space:nowrap}.year-notice>svg{flex:none;width:15px;height:15px}.year-notice strong{font-weight:700}.year-notice__back{display:flex;align-items:center;gap:4px;height:22px;padding:0 8px;border:0;border-radius:var(--radius-sm);background:transparent;color:inherit;font:inherit;font-size:12px;font-weight:600;cursor:pointer;box-shadow:inset 0 0 0 1px var(--warning-border);transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.year-notice__back:hover{background:var(--warning-border)}.year-notice__back:active{transform:scale(.96)}.year-notice__back:focus-visible{outline:none;box-shadow:inset 0 0 0 1px var(--warning),var(--focus)}.year-notice__x{display:none;width:14px;height:14px}.side-menu__search{position:relative;display:block;margin:0 12px 8px}.side-menu__search svg{position:absolute;top:11px;left:11px;width:16px;height:16px;color:var(--text-3)}.side-menu__search input{width:100%;height:38px;padding:0 10px 0 34px;border:0;border-radius:11px;background:var(--surface-2);color:var(--text);font:inherit;transition:box-shadow var(--dur-med) var(--ease-out)}.side-menu__search input::-moz-placeholder{color:var(--text-3)}.side-menu__search input::placeholder{color:var(--text-3)}.side-menu__search input:focus{outline:none;box-shadow:0 0 0 2px var(--accent)}.side-menu__search input::-webkit-search-cancel-button{display:none}.side-menu__items{display:flex;flex:1;flex-direction:column;gap:2px;min-height:0;overflow-y:auto;padding:0 10px 12px;scrollbar-width:thin;scrollbar-color:transparent transparent}.side-menu__items:hover{scrollbar-color:var(--border-strong) transparent}.side-menu__items>*{flex:none}.side-menu.is-visible:not(.is-pinned) .side-menu__items>*{animation:menu-enter var(--dur-panel) var(--ease-soft) both;animation-delay:calc(60ms + var(--i, 0) * 40ms)}@keyframes menu-enter{0%{opacity:0;transform:translate(-14px)}}.side-menu__item{display:flex;align-items:center;gap:12px;width:100%;height:36px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--text-2);font:inherit;text-align:left;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-med) var(--ease-out),color var(--dur-med) var(--ease-out)}.side-menu__item svg{flex:none;width:18px;height:18px;color:var(--text-3);transition:color var(--dur-med) var(--ease-out)}.side-menu__item:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.side-menu__item.active{background:var(--menu-active);color:var(--accent);font-weight:600}.side-menu__item.active svg{color:var(--accent)}.side-menu__item mark{border-radius:3px;background:var(--mark);color:inherit}.side-menu__item--top{height:40px;color:var(--text);font-weight:500}.side-menu__item--top svg{color:inherit}.side-menu__group-button{display:flex;align-items:center;gap:12px;width:100%;height:40px;padding:0 12px;border:0;border-radius:11px;background:none;color:var(--text);font:inherit;font-weight:500;text-align:left;cursor:pointer;transition:background-color var(--dur-med) var(--ease-out)}.side-menu__group-button:hover:not(.is-fixed){background:var(--surface-2)}.side-menu__group-button.is-fixed{cursor:default}.side-menu__group-button>svg{width:18px;height:18px}.side-menu__group-button>span{flex:1}.side-menu__chevron{width:14px!important;height:14px!important;transform:rotate(-90deg);transition:transform var(--dur-panel) var(--ease-spring)}.side-menu__group-button[aria-expanded=true] .side-menu__chevron{transform:none}.side-menu__box{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--dur-panel) var(--ease-soft),opacity var(--dur-med) var(--ease-out)}.side-menu__box.is-open{grid-template-rows:1fr;opacity:1}.side-menu__list{display:flex;flex-direction:column;gap:2px;min-height:0;margin:0;padding:0 0 0 14px;overflow:hidden;list-style:none}.side-menu__list .side-menu__item{gap:10px;height:34px}.side-menu__list .side-menu__item svg{width:16px;height:16px}.side-menu__empty{margin:12px;color:var(--text-3)}.side-menu__footer{display:flex;flex-direction:column;gap:6px;padding:12px 12px 16px;border-top:1px solid var(--border)}.side-menu__theme{height:34px;background:var(--surface-2);color:var(--text);font-weight:500}.side-menu__version{padding:0 4px;color:var(--text-3);font-size:12px}.content{position:relative;min-width:0;padding:32px 32px 96px;outline:none;transition:padding-left var(--dur-panel) var(--ease-soft)}.content--with-menu{padding-left:calc(var(--menu-width) + 32px)}.page{max-width:var(--content-width);margin:0 auto}@media(max-width:640px){.bar{gap:8px;padding:0 8px}.tabs-bar{display:none}.bar__title{display:block}.bar__search{flex:none;width:32px;height:32px;padding:0;justify-content:center}.bar__search-text,.bar__search kbd{display:none}.bar__account{width:32px;height:32px}.year-notice{height:32px;padding-left:8px}.year-notice__long{display:none}.year-notice__back{width:26px;height:26px;padding:0;justify-content:center}.year-notice__x{display:block}.content{padding:20px 16px 64px}}@media(prefers-reduced-motion:reduce){.blob,.veil,.side-menu__items>*{animation:none!important}.open-tab,.side-menu,.side-menu__box,.content{transition:none}}.command-backdrop{position:fixed;inset:0;z-index:500;display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 16px;background:var(--overlay);animation:fade-in var(--dur-med) var(--ease-out)}.command{width:100%;max-width:600px;max-height:min(480px,70vh);display:flex;flex-direction:column;overflow:hidden;background:var(--surface);color:var(--text);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transform-origin:top center;animation:pop-in var(--dur-med) var(--ease-out)}.command__input{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border)}.command__input>svg{width:18px;height:18px;flex-shrink:0;color:var(--text-3)}.command__input input{flex:1;min-width:0;border:0;outline:none;background:none;color:inherit;font:inherit;font-size:15px}.command__input input::-moz-placeholder{color:var(--text-4)}.command__input input::placeholder{color:var(--text-4)}.command__input input:focus-visible{box-shadow:none}.command__list{flex:1;margin:0;padding:6px;overflow-y:auto;overscroll-behavior:contain;list-style:none}.command__group{padding:10px 10px 4px;font-size:12px;font-weight:500;color:var(--text-3)}.command__item{position:relative;display:flex;align-items:center;gap:12px;min-height:38px;padding:0 10px;border-radius:var(--radius-sm);font-size:13.5px;cursor:pointer}.command__item>svg{width:16px;height:16px;flex-shrink:0;color:var(--text-3)}.command__label{min-width:0}.command__detail{flex-shrink:0;margin-left:auto;font-size:12.5px;color:var(--text-3)}.command__item:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:2px;border-radius:2px;background:var(--accent);transform:scaleY(0);transition:transform var(--dur-fast) var(--ease-out)}.command__item[aria-selected=true]{background:var(--accent-soft)}.command__item[aria-selected=true]:before{transform:none}.command__item[aria-selected=true]>svg{color:var(--accent-text)}.command__notice{padding:16px 24px 24px;text-align:center;color:var(--text-2);font-size:13.5px}.command__footer{display:flex;gap:16px;padding:8px 16px;border-top:1px solid var(--border);color:var(--text-3);font-size:12px}@media(hover:none){.command__footer,.command__input kbd{display:none}}@media(max-width:640px){.command-backdrop{padding-top:8vh}}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}.page-header__title{font-family:var(--font-display);font-size:28px;font-weight:700;letter-spacing:-.03em;line-height:34px}.page-header__description{font-size:13px;color:var(--text-2);margin-top:4px}.page-header__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}@media(max-width:640px){.page-header__title{font-size:24px;line-height:30px}}.back-button{margin:-4px 0 12px -8px}.section-title{font-size:14px;font-weight:600;margin-bottom:12px}.fatal-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--text-2)}.login{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:32px 16px}.login>:not(.blobs){position:relative;z-index:1}.login__card{width:100%;max-width:400px;padding:32px}.login__school{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:24px;text-align:center}.login__logo{width:52px;height:52px;border-radius:14px;-o-object-fit:contain;object-fit:contain}.login__logo--initial{display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-family:var(--font-display);font-size:20px;font-weight:700}.login__title{font-family:var(--font-display);font-size:24px;font-weight:700;letter-spacing:-.03em;line-height:30px}.login__subtitle{font-size:13px;color:var(--text-2);margin-top:2px}.login__password{position:relative}.login__password .input{padding-right:40px}.login__password .btn{position:absolute;right:3px;top:50%;transform:translateY(-50%)}.login__footer{font-size:12.5px;color:var(--text-2);display:flex;align-items:center;gap:8px}.login__footer img{width:16px;height:16px}@media(max-width:640px){.login__card{padding:24px 20px}}.mb-section{margin-bottom:16px}.page>.alert{margin-bottom:16px}.section-gap{margin-top:32px}.section-title{margin-bottom:0}.widget-board__header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px}.widget-board__title{font-family:var(--font-display);font-size:34px;font-weight:700;line-height:42px;letter-spacing:-.035em}.widget-board__subtitle{margin-top:4px;color:var(--text-2);font-size:15px}.widget-board__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.widget-board__actions .select{width:auto}.widget-board__done{background:var(--text);color:var(--bg)}.widget-board__done:hover{background:var(--text);filter:brightness(1.15)}@media(max-width:640px){.widget-board__title{font-size:28px;line-height:34px}.widget-board__subtitle{font-size:14px}}.widget-board__notice{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 16px;border:1.5px dashed var(--accent);border-radius:12px;background:var(--accent-soft);color:var(--text);animation:appear var(--dur-panel) var(--ease-soft)}.widget-board__notice svg{flex:none;width:16px;height:16px;color:var(--accent)}@keyframes appear{0%{opacity:0;transform:translateY(-6px)}}.widget-board__grid{margin:0 -9px -9px}.widget-board__grid .grid-stack-item-content{overflow:visible;transition:opacity .24s ease-in,transform .24s ease-in}.widget-board__grid .grid-stack-item-content>*{height:100%}.widget-board__grid.is-opening .grid-stack-item-content{animation:widget-enter .64s var(--ease-soft) both;animation-delay:calc(var(--i, 0) * 65ms)}@keyframes widget-enter{0%{opacity:0;transform:translateY(22px) scale(.97)}}.widget-board__cell.is-leaving>.grid-stack-item-content{opacity:0;transform:scale(.94)}.widget-board__grid.is-editing .grid-stack-item-content>*{outline:1.5px dashed var(--border-strong);outline-offset:-2px;transition:outline-color var(--dur-med) var(--ease-out)}.widget-board__grid.is-editing .widget-board__cell:is(:hover,:focus-within)>.grid-stack-item-content>*{outline-color:var(--accent)}.widget-board__grid:not(.grid-stack-static) .widget__head{cursor:grab}.widget-board__grid .grid-stack-placeholder>.placeholder-content{border:2px dashed var(--accent);border-radius:var(--radius-widget);background:var(--accent-soft)}.widget-board__grid .grid-stack-item>.ui-resizable-se{right:16px;bottom:16px;width:14px;height:14px;border-right:2px solid var(--text-3);border-bottom:2px solid var(--text-3);border-bottom-right-radius:5px;background:none;transform:none;transition:border-color var(--dur-fast) var(--ease-out)}.widget-board__grid .grid-stack-item>.ui-resizable-se:hover{border-color:var(--accent)}.widget-board__grid .grid-stack-item.ui-draggable-dragging>.grid-stack-item-content>*,.widget-board__grid .grid-stack-item.ui-resizable-resizing>.grid-stack-item-content>*{box-shadow:var(--shadow-lg)}.widget-board__controls{position:absolute;top:-6px;left:18px;z-index:2;display:flex;gap:4px;padding:4px;border-radius:999px;animation:appear var(--dur-med) var(--ease-spring);transition:background-color var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out)}.widget-board__cell:is(:hover,:focus-within)>.widget-board__controls{background:var(--surface);box-shadow:var(--shadow-lg)}.widget-board__controls button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:var(--surface-2);color:var(--text-2);cursor:pointer;transition:opacity var(--dur-med) var(--ease-out),background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.widget-board__controls button:not(.widget-board__handle){opacity:0}.widget-board__cell:is(:hover,:focus-within)>.widget-board__controls button{opacity:1}.widget-board__controls button:hover{background:var(--hover)}.widget-board__controls button:active{transform:scale(.9)}.widget-board__controls svg{width:14px;height:14px}.widget-board__handle{box-shadow:var(--shadow-lg);cursor:grab}.widget-board__handle:active{cursor:grabbing}.widget-board__width{font-size:11px;font-weight:600}.widget-board__width[aria-pressed=true]{background:var(--accent)!important;color:var(--text-on-accent)!important}.widget-board__remove{background:var(--danger)!important;color:var(--text-on-accent)!important}@media(hover:none){.widget-board__controls button:not(.widget-board__handle){opacity:1}}.widget-board__new{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;min-height:120px;margin-top:18px;border:2px dashed var(--border-strong);border-radius:var(--radius-widget);background:transparent;color:var(--text-2);font-weight:500;cursor:pointer;transition:border-color var(--dur-med) var(--ease-out),color var(--dur-med) var(--ease-out)}.widget-board__new:hover{border-color:var(--accent);color:var(--accent)}.widget-board__new-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.widget-board__new-icon svg{width:20px;height:20px}.widget-board__empty{container-type:normal;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;min-height:0;padding:16px 24px}.widget-board__empty p{color:var(--text-2)}.widget{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;container:widget / size;border:1px solid var(--glass-border);border-radius:var(--radius-widget);background:var(--glass);box-shadow:var(--shadow-glass);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);transition:box-shadow var(--dur-panel) var(--ease-soft)}.widget:hover{box-shadow:var(--shadow-glass-high)}.widget__head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px;padding:14px 16px 4px 18px}.widget__title{display:flex;align-items:center;gap:8px;min-width:0;color:var(--text-2);font-size:13px;font-weight:600;line-height:18px}.widget__title svg{flex:none;width:16px;height:16px;color:var(--accent)}.widget__body{display:flex;flex:1;flex-direction:column;gap:6px;min-height:0;padding:4px 18px 16px;overflow-y:auto;scrollbar-width:thin}.widget__link{flex:none;padding:0;border:0;background:none;color:var(--accent-text);font:inherit;font-weight:500;cursor:pointer}.widget__link:hover{text-decoration:underline}.widget__icon-button{display:grid;flex:none;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:var(--radius);background:var(--glass);color:var(--text-2);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}.widget__icon-button:hover{background:var(--hover);color:var(--text)}.widget__icon-button svg{width:14px;height:14px}.widget-number{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;margin:2px 0 0}.widget-number__value{font-family:var(--font-display);font-size:46px;font-weight:700;line-height:52px;letter-spacing:-.045em;white-space:nowrap}.widget-number__cents{color:var(--text-3)}.widget-number__caption{color:var(--text-2);font-weight:500}.widget-number--success .widget-number__value{color:var(--success)}.widget-number--warning .widget-number__value{color:var(--warning)}.widget-number--danger .widget-number__value{color:var(--danger)}@container widget (max-width: 260px){.widget-number__value{font-size:36px;line-height:42px}}@container widget (max-height: 190px){.widget-number__value{font-size:38px;line-height:44px}}@container widget (max-width: 360px){.finance-widget-number .widget-number__value{font-size:32px;line-height:38px}}.widget-detail{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;color:var(--text-2);font-size:12px;line-height:16px}.widget-attention{display:inline-flex;align-items:center;gap:4px;color:var(--danger);font-weight:500}.widget-attention svg{width:13px;height:13px}.widget-state{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:4px 8px 8px;color:var(--text-2);font-size:12px;text-align:center}.widget-state>svg{width:22px;height:22px;color:var(--text-3)}.widget-state button,.widget-state a{padding:4px 10px;border:0;border-radius:var(--radius);background:var(--hover);color:var(--accent-text);font:inherit;font-weight:500;cursor:pointer}.widget-skeleton{display:flex;flex-direction:column;gap:10px;padding-top:4px}.widget-skeleton span{display:block;border-radius:var(--radius-sm);background:var(--hover);animation:pulse 1.4s ease-in-out infinite}.widget-skeleton__big{width:46%;height:40px}.widget-skeleton__line{width:80%;height:12px}.widget-skeleton__line:nth-child(odd){width:62%}@keyframes pulse{50%{opacity:.55}}.widget-list{display:flex;flex-direction:column;margin:0 -8px;padding:0;list-style:none}.widget-row{display:flex;align-items:center;gap:12px;min-height:40px;padding:4px 8px;border-radius:11px;color:var(--text);transition:background-color var(--dur-med) var(--ease-out)}a.widget-row:hover{background:var(--hover);text-decoration:none}.widget-row>svg{flex:none;width:17px;height:17px;color:var(--text-3)}.widget-row__main{display:flex;flex:1;flex-direction:column;min-width:0}.widget-row__title{font-weight:500}.widget-row__detail{color:var(--text-2);font-size:12px;line-height:16px}.widget-row__chevron{width:14px!important;height:14px!important}.widget-row__values{display:flex;flex-direction:column;align-items:flex-end;font-size:12px}.widget-row__values>:first-child{font-size:14px;font-weight:600}.widget-row__amount{font-weight:600}.widget-row__date{flex:none;min-width:44px;padding:4px 6px;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent-text);font-weight:600;text-align:center}.widget-table{margin:0 -18px -16px}.widget-table .table th{background:transparent}.widget-table .table tbody tr:hover{background:var(--hover)}.clock-widget .widget__body{justify-content:center}.clock-widget__time{font-family:var(--font-display);font-weight:700;letter-spacing:-.05em;line-height:1;font-size:clamp(40px,26cqmin,96px)}.tips-widget__content{position:relative;display:flex;flex:1;flex-direction:column;gap:8px}.tips-widget__tip{flex:1;animation:tip-in var(--dur-slow) var(--ease-soft)}@keyframes tip-in{0%{opacity:0;transform:translate(12px)}}.tips-widget__title{margin-bottom:4px;font-family:var(--font-display);font-size:17px;font-weight:600;letter-spacing:-.02em}.tips-widget__footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.tips-widget__count{color:var(--text-3);font-size:12px}.tips-widget__timer{position:absolute;left:0;right:0;bottom:-8px;height:2px;border-radius:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;animation:drain 8s linear forwards}.tips-widget__timer.is-paused{animation-play-state:paused}.shortcuts-widget{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:0;padding:0;list-style:none}.shortcuts-widget__tile{display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 10px;border-radius:12px;background:var(--glass);color:var(--text);font-weight:500;box-shadow:0 0 0 1px var(--border);transition:background-color var(--dur-med) var(--ease-out),box-shadow var(--dur-med) var(--ease-out)}.shortcuts-widget__tile:hover{background:var(--surface);box-shadow:0 0 0 1px var(--border-strong);text-decoration:none}.shortcuts-widget__icon{display:grid;flex:none;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--accent-soft);color:var(--accent)}.shortcuts-widget__icon svg{width:15px;height:15px}.shortcut-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}@media(max-width:640px){.shortcut-options{grid-template-columns:1fr}}.finance-widget{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:8px 0 0}.finance-widget dt{display:flex;align-items:center;gap:4px;color:var(--text-2);font-size:12px}.finance-widget dt svg{width:13px;height:13px}.finance-widget dd{margin:2px 0 0;font-weight:600;font-size:14px}@container widget (max-width: 380px){.finance-widget{grid-template-columns:1fr;gap:4px}.finance-widget>div{display:flex;justify-content:space-between}}.due-kind{display:inline-flex;flex:none;align-items:center;gap:4px;min-width:78px;font-size:12px;font-weight:500}.due-kind svg{width:13px;height:13px}.due-kind--in{color:var(--success)}.due-kind--out{color:var(--danger)}@container widget (max-width: 420px){.due-kind{min-width:0;font-size:0;gap:0}.due-kind svg{width:15px;height:15px}}.widget-gallery{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.widget-gallery__item{display:flex;align-items:center;gap:14px;padding:10px 12px;border-radius:12px;background:var(--surface-2);animation:gallery-enter var(--dur-panel) var(--ease-soft) both;animation-delay:calc(80ms + var(--k, 0) * 35ms)}@keyframes gallery-enter{0%{opacity:0;transform:translate(16px)}}.widget-gallery__preview{display:flex;flex:none;align-items:flex-start;width:72px;height:44px;padding:4px;border-radius:8px;background:var(--surface);box-shadow:0 0 0 1px var(--border)}.widget-gallery__space{display:grid;place-items:center;min-width:14px;border-radius:4px;background:var(--accent-soft);color:var(--accent)}.widget-gallery__space svg{width:12px;height:12px}.widget-gallery__text{display:flex;flex:1;flex-direction:column;min-width:0}.widget-gallery__name{font-weight:600}.widget-gallery__description{color:var(--text-2);font-size:12px;line-height:16px}.widget-gallery__present{display:inline-flex;flex:none;align-items:center;gap:4px;color:var(--success);font-size:12px;font-weight:500}.widget-gallery__present svg{width:14px;height:14px}@media(prefers-reduced-motion:reduce){.widget-board__grid .grid-stack-item-content,.widget-board__notice,.widget-board__controls,.widget-gallery__item,.tips-widget__tip,.widget-skeleton span{animation:none!important;transition:none}.tips-widget__timer{display:none}.widget-board__grid.grid-stack-animate,.widget-board__grid.grid-stack-animate .grid-stack-item{transition:none!important}}
