@font-face{font-family:Nunito Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/f813d0b748b050e0-s.0bue79j92ry8p.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/dcd150d580a10316-s.00vt6ovfanaoz.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/d261779aa92de579-s.08vb0en80h4ak.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/24ce79ed121239f3-s.0e7.nfwufgbbc.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/f141b5b7abe57afc-s.p.0-k1k9nod8chc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/f813d0b748b050e0-s.0bue79j92ry8p.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/dcd150d580a10316-s.00vt6ovfanaoz.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/d261779aa92de579-s.08vb0en80h4ak.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/24ce79ed121239f3-s.0e7.nfwufgbbc.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/f141b5b7abe57afc-s.p.0-k1k9nod8chc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/f813d0b748b050e0-s.0bue79j92ry8p.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/dcd150d580a10316-s.00vt6ovfanaoz.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/d261779aa92de579-s.08vb0en80h4ak.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/24ce79ed121239f3-s.0e7.nfwufgbbc.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/f141b5b7abe57afc-s.p.0-k1k9nod8chc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/f813d0b748b050e0-s.0bue79j92ry8p.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/dcd150d580a10316-s.00vt6ovfanaoz.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/d261779aa92de579-s.08vb0en80h4ak.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/24ce79ed121239f3-s.0e7.nfwufgbbc.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/f141b5b7abe57afc-s.p.0-k1k9nod8chc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Sans Fallback;src:local(Arial);ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.0%;size-adjust:101.39%}.nunito_sans_dd41fb95-module__5iryeq__className{font-family:Nunito Sans,Nunito Sans Fallback;font-style:normal}.nunito_sans_dd41fb95-module__5iryeq__variable{--font-body:"Nunito Sans", "Nunito Sans Fallback"}
@font-face{font-family:Sora;font-style:normal;font-weight:500;font-display:swap;src:url(../media/3dbe685087e51055-s.1061.lg1~d_4b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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;font-style:normal;font-weight:500;font-display:swap;src:url(../media/6bd983bd58a87a3d-s.p.0h108oidc_0fm.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(../media/3dbe685087e51055-s.1061.lg1~d_4b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6bd983bd58a87a3d-s.p.0h108oidc_0fm.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-weight:700;font-display:swap;src:url(../media/3dbe685087e51055-s.1061.lg1~d_4b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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;font-style:normal;font-weight:700;font-display:swap;src:url(../media/6bd983bd58a87a3d-s.p.0h108oidc_0fm.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora Fallback;src:local(Arial);ascent-override:85.29%;descent-override:25.5%;line-gap-override:0.0%;size-adjust:113.73%}.sora_5daa6730-module__IekYka__className{font-family:Sora,Sora Fallback;font-style:normal}.sora_5daa6730-module__IekYka__variable{--font-display:"Sora", "Sora Fallback"}
@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}}}@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-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.mt-auto{margin-top:auto}.flex{display:flex}.hidden{display:none}.h-full{height:100%}.min-h-full{min-height:100%}.w-full{width:100%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-col{flex-direction:column}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--bg:#f1f5fc;--surface:#f8fbff;--surface-soft:#eef4ff;--ink:#1d2945;--ink-soft:#5f6f91;--line:#d3dff3;--accent:#2d8a57;--accent-soft:#e5eeff;--ok:#2f7a53;--ok-soft:#e7f5ed;--warning:#5a8241;--warning-soft:#edf7e3;--critical:#a94343;--critical-soft:#fde9e8;--shadow:0 14px 34px #213b6e1f}*{box-sizing:border-box}body.planner-body{background:radial-gradient(circle at 12% 8%, #e6eeff 0%, transparent 32%), radial-gradient(circle at 88% 10%, #dbe6ff 0%, transparent 34%), linear-gradient(180deg, #f8fbff 0%, var(--bg) 100%);color:var(--ink);font-family:var(--font-body), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;margin:0;overflow-x:hidden}h1,h2,h3,.sidebar-title,.metric-value,.list-title{font-family:var(--font-display), var(--font-body), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}a{color:inherit;text-decoration:none}.login-page{place-items:center;min-height:100dvh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:var(--surface);width:100%;max-width:440px}@supports (color:color-mix(in lab, red, red)){.login-card{background:color-mix(in srgb, var(--surface) 92%, #dbe8ff 8%)}}.login-card{box-shadow:var(--shadow);border-radius:20px;gap:16px;padding:22px;display:grid}.login-head h1{margin:6px 0 0;font-size:1.5rem;font-weight:700;line-height:1.2}.login-head p{color:var(--ink-soft);margin:8px 0 0;font-size:.94rem}.auth-form{gap:12px;display:grid}label{color:var(--ink-soft);gap:6px;font-size:.84rem;font-weight:600;display:grid}input,select,textarea{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);font:inherit;border-radius:10px;padding:10px 12px;line-height:1.3}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb, var(--accent) 32%, transparent)}}input:focus,select:focus,textarea:focus{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){input:focus,select:focus,textarea:focus{border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}}.btn{border:1px solid var(--line);cursor:pointer;background:var(--surface);border-radius:999px;padding:9px 14px;font-size:.88rem;font-weight:600;line-height:1;transition:all .18s}.btn:hover{transform:translateY(-1px)}.btn-primary{color:#fff;background:linear-gradient(#45a56f 0%,#2d8a57 100%);border-color:#1e6f44;box-shadow:0 8px 20px #2d8a5757}.btn-primary:hover{box-shadow:0 12px 24px #2d8a576e}.btn-ghost{background:var(--surface-soft);color:var(--ink)}.btn-ghost:hover{background:#e4f1e6}.btn-danger{color:#a83a3a;box-shadow:none;background:#fff;border-color:#e3b4b4}.btn-danger:hover{box-shadow:none;background:#ffecec;border-color:#d58f8f;transform:none}.btn-danger:focus-visible{outline-offset:2px;outline:2px solid #c43a3a40}.confirm-dialog{background:0 0;border:none;width:min(540px,100vw - 28px);padding:0}.confirm-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0c162d66}.confirm-dialog-card{border:1px solid var(--line);background:var(--surface);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.confirm-dialog-card{background:color-mix(in srgb, var(--surface) 94%, #dbe8ff 6%)}}.confirm-dialog-card{box-shadow:var(--shadow);gap:10px;padding:16px;display:grid}.confirm-dialog-card h3{margin:0;font-size:1.03rem;line-height:1.2}.confirm-alert-icon{color:#983737;background:#ffe9e9;border:1px solid #f3c7c7;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;font-weight:800;display:inline-flex}.confirm-dialog-text{color:var(--ink-soft);margin:0;font-size:.9rem}.confirm-dialog-warning{color:#8a2f2f;margin:0;font-size:.84rem;font-weight:700}.confirm-form{gap:10px;display:grid}.confirm-actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.w-full{width:100%}.alert{border-radius:10px;padding:10px 12px;font-size:.84rem;font-weight:600}.alert-error{background:var(--critical-soft);color:#8a2f2f;border:1px solid #f1c9c9}.alert-ok{background:var(--ok-soft);color:#196346;border:1px solid #cdecd9}.login-help{color:var(--ink-soft);gap:6px;font-size:.82rem;display:grid}.login-help p,.login-help ul{margin:0}.login-help ul{gap:4px;padding-left:16px;display:grid}.login-help a{color:var(--accent);font-weight:600}.sidebar-kicker{text-transform:uppercase;letter-spacing:.08em;color:#7685a5;margin:0;font-size:.72rem;font-weight:700}.brand-logo{height:auto;display:block}.login-brand-logo{width:min(228px,72%);margin-bottom:6px}.sidebar-brand-logo{width:168px;margin-bottom:6px}.login-head .sidebar-kicker{color:#7685a5;margin:0;font-size:.72rem}.planner-app-shell{grid-template-columns:280px minmax(0,1fr);min-height:100dvh;display:grid}.planner-sidebar{border-right:1px solid var(--line);background:#f8faff;flex-direction:column;gap:18px;height:100dvh;padding:24px 16px;display:none;position:sticky;top:0}.sidebar-title{margin:4px 0 0;font-size:1.28rem;line-height:1.2}.planner-sidebar-nav{gap:6px;display:grid}.planner-sidebar-link{border-radius:10px;padding:8px 12px;font-size:.86rem;font-weight:600;transition:all .18s;display:block;color:#5b6d8f!important}.planner-nav-label{align-items:center;gap:7px;display:inline-flex}.planner-nav-text{align-items:center;gap:6px;display:inline-flex}.notification-bell-icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:14px;height:14px}.planner-sidebar-link:hover{background:#eef4ff;color:#2d4f9a!important}.planner-sidebar-link.is-active{background:linear-gradient(#5882f8 0%,#3057d2 100%);box-shadow:0 8px 18px #2f63ff52;color:#fff!important}.sidebar-user{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:8px;padding:12px;display:grid}.sidebar-user-head{align-items:center;gap:10px;display:flex}.sidebar-user p{margin:0;font-size:.92rem;font-weight:700}.sidebar-user span{color:var(--ink-soft);font-size:.76rem}.planner-main-wrap{flex-direction:column;min-width:0;display:flex}.planner-mobile-header{z-index:30;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8faff;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex;position:sticky;top:0}.mobile-brand-wrap{align-items:center;gap:8px;min-width:0;display:flex}.mobile-brand-icon{flex:none}.mobile-user{color:var(--ink-soft);margin:3px 0 0;font-size:.8rem}.planner-mobile-tabs{border-bottom:1px solid var(--line);scrollbar-width:none;background:#f8fbff;gap:8px;padding:10px 12px;display:flex;overflow-x:auto}.planner-mobile-tabs::-webkit-scrollbar{display:none}.planner-mobile-tab{border:1px solid var(--line);white-space:nowrap;color:var(--ink-soft);background:var(--surface);border-radius:999px;padding:7px 11px;font-size:.78rem;font-weight:600}.planner-mobile-tab .planner-nav-label{gap:6px}.planner-mobile-tab.is-active{color:#fff;background:linear-gradient(#5882f8 0%,#3057d2 100%);border-color:#355ed8}.planner-content{width:100%;padding:18px 14px 28px}.planner-page{gap:14px;width:min(1100px,100%);margin:0 auto;display:grid}.planner-page-chat{width:100%;max-width:none}.page-head h1{margin:0;font-size:clamp(1.22rem,2vw,1.68rem);line-height:1.2}.page-head p{color:var(--ink-soft);max-width:75ch;margin:6px 0 0;font-size:.92rem}.surface-card{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.surface-card{background:color-mix(in srgb, var(--surface) 90%, #dce8ff 10%)}}.surface-card{border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.metric-card{padding:14px}.metric-label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.76rem;font-weight:700}.metric-value{margin:6px 0 0;font-size:1.52rem;font-weight:750;line-height:1}.metric-hint{color:var(--ink-soft);margin:6px 0 0;font-size:.8rem}.section-card{gap:12px;padding:14px;display:grid}.section-head{justify-content:space-between;align-items:start;gap:10px;display:flex}.section-head h2{margin:0;font-size:1rem;line-height:1.25}.section-head p{color:var(--ink-soft);margin:3px 0 0;font-size:.84rem}.two-col-grid,.three-col-grid{gap:12px;display:grid}.two-col-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.three-col-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stack-list{gap:10px;display:grid}.list-row{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:8px;display:grid}@supports (color:color-mix(in lab, red, red)){.list-row{background:color-mix(in srgb, var(--surface) 95%, #dce8ff 5%)}}.list-row{padding:10px}.list-row.compact{gap:6px}.list-row-head{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:10px;display:flex}.list-title{margin:0;font-size:.95rem;font-weight:700;line-height:1.2}.list-subtitle{color:var(--ink-soft);margin:0;font-size:.84rem;line-height:1.4}.badge-row{flex-wrap:wrap;gap:6px;display:flex}.badge{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:5px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.badge-muted{color:#63728f;background:#eef2f9;border-color:#dde6f4}.badge-accent{background:var(--accent-soft);color:#2853d8;border-color:#cbdbff}.badge-ok{background:var(--ok-soft);color:#1e7251;border-color:#c8e9d6}.badge-warning{background:var(--warning-soft);color:#94610d;border-color:#f2dfb6}.badge-critical{background:var(--critical-soft);color:#994141;border-color:#f4cccc}.progress-rail{background:#e7edf8;border-radius:999px;width:100%;height:8px;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg,#4b7dff 0%,#2f63ff 100%);height:100%;display:block}.inline-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:8px;display:grid}.inline-form-four{grid-template-columns:repeat(4,minmax(0,1fr))}.inline-form .btn{min-height:40px}.actions-row{gap:8px;display:grid}.checkbox-line{color:var(--ink-soft);align-items:center;gap:8px;font-size:.84rem;display:inline-flex}.checkbox-line input[type=checkbox]{width:16px;height:16px}.user-card-head{align-items:center;gap:10px;display:flex}.user-avatar{object-fit:cover;border:1px solid var(--line);background:#e6edf9;border-radius:999px;width:44px;height:44px}.user-avatar-fallback{color:#314f91;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.profile-identity-card{align-items:flex-start;gap:14px;display:flex}.profile-avatar{border:1px solid var(--line);object-fit:cover;background:#e6edf9;border-radius:999px;width:88px;height:88px}.profile-avatar-fallback{color:#2d4f99;justify-content:center;align-items:center;font-size:1.4rem;font-weight:700;display:inline-flex}.profile-identity-meta{gap:4px;display:grid}.chat-shell{grid-template-columns:320px minmax(0,1fr);gap:12px;display:grid}.chat-thread-list{gap:8px;display:grid}.chat-thread-item{border:1px solid var(--line);background:var(--surface);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.chat-thread-item{background:color-mix(in srgb, var(--surface) 96%, #deebff 4%)}}.chat-thread-item{justify-content:space-between;align-items:start;gap:8px;padding:10px;display:flex}.chat-thread-meta,.chat-channel-role{align-items:center;gap:8px;display:inline-flex}.chat-presence-dot{width:9px;height:9px;box-shadow:0 0 0 2px var(--surface);border-radius:999px;flex:none}@supports (color:color-mix(in lab, red, red)){.chat-presence-dot{box-shadow:0 0 0 2px color-mix(in srgb, var(--surface) 78%, #fff 22%)}}.chat-presence-dot.is-active{background:#20b15a}.chat-presence-dot.is-inactive{background:#d92d20}.chat-channel-actions{align-items:center;gap:8px;display:inline-flex}.chat-mobile-back{display:none}.chat-unread-dot{width:9px;height:9px;box-shadow:0 0 0 2px var(--surface);background:#2f63ff;border-radius:999px}@supports (color:color-mix(in lab, red, red)){.chat-unread-dot{box-shadow:0 0 0 2px color-mix(in srgb, var(--surface) 78%, #fff 22%)}}.chat-unread-dot{flex:none}.chat-thread-item.is-active{border-color:#9db8f8;box-shadow:0 0 0 3px #2f63ff14}.chat-message-list{overscroll-behavior:contain;scrollbar-gutter:stable;flex-direction:column;gap:8px;height:auto;max-height:clamp(280px,50vh,520px);padding-right:4px;display:flex;overflow-y:auto}.chat-bubble{border:1px solid var(--line);background:#f9fbff;border-radius:12px;align-self:flex-start;width:fit-content;max-width:88%;padding:10px}.chat-bubble.mine{background:#eaf1ff;border-color:#c9d9ff;align-self:flex-end}.chat-author{color:#5f7299;margin:0 0 4px;font-size:.75rem;font-weight:700}.chat-text{white-space:pre-wrap;word-break:break-word;margin:0;font-size:.88rem;line-height:1.45}.chat-time{color:#7083a6;margin:5px 0 0;font-size:.72rem}.chat-compose{gap:8px;display:grid}.chat-compose-field{position:relative}.chat-compose-textarea{min-height:94px;padding-right:52px}.chat-send-button{color:#fff;cursor:pointer;background:linear-gradient(#5a86ff 0%,#366bff 100%);border:1px solid #305ee2;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;transition:transform .18s,box-shadow .18s;display:inline-flex;position:absolute;bottom:8px;right:8px;box-shadow:0 8px 18px #2f63ff4d}.chat-send-button:hover{transform:translateY(-1px);box-shadow:0 11px 22px #2f63ff61}.chat-send-button:focus-visible{outline:2px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.chat-send-button:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 40%, transparent)}}.chat-send-button:focus-visible{outline-offset:2px}.form-grid{gap:10px;display:grid}.form-grid .btn-primary{justify-self:start}.meeting-attendees-picker{border:1px solid var(--line);border-radius:12px;grid-column:1/-1;gap:8px;padding:10px;display:grid}.meeting-attendees-picker>legend{color:var(--ink-soft);padding:0 4px;font-size:.82rem;font-weight:700}.meeting-attendees-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;display:grid}.meeting-attendee-option{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:8px 10px}@supports (color:color-mix(in lab, red, red)){.meeting-attendee-option{background:color-mix(in srgb, var(--surface) 96%, #dce8ff 4%)}}.fold-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:10px}@supports (color:color-mix(in lab, red, red)){.fold-card{background:color-mix(in srgb, var(--surface) 96%, #dce8ff 4%)}}.fold-card>summary{cursor:pointer;color:#2f4e9f;font-size:.86rem;font-weight:700;list-style:none}.fold-card>summary::-webkit-details-marker{display:none}.fold-card[open]>summary{margin-bottom:10px}.gallery-filters{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:10px;display:grid}.gallery-filters .btn{justify-self:start}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;display:grid}.gallery-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.gallery-card{background:color-mix(in srgb, var(--surface) 92%, #dce8ff 8%)}}.gallery-card{box-shadow:var(--shadow)}.gallery-image-wrap{aspect-ratio:16/10;background:radial-gradient(circle at 18% 15%,#e4ecff 0%,#0000 50%),linear-gradient(#eff4ff 0%,#d8e2f8 100%);width:100%}.gallery-image{object-fit:cover;width:100%;height:100%;display:block}.gallery-body{gap:10px;padding:12px;display:grid}.gallery-workflow-form{grid-template-columns:1fr 1fr auto;align-items:end;gap:8px;display:grid}.gallery-comments{gap:8px;max-height:220px;padding-right:4px;display:grid;overflow-y:auto}.gallery-comment-form{gap:8px;display:grid}.empty-state{background:#f9fbff;border:1px dashed #c9d8ef;border-radius:12px;padding:14px}.empty-title{margin:0;font-size:.9rem;font-weight:700}.empty-detail{color:var(--ink-soft);margin:6px 0 0;font-size:.83rem}.timeline-list{gap:10px;display:grid}.timeline-item{grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;display:grid}.timeline-dot{background:linear-gradient(#6f95ff 0%,#335bda 100%);border-radius:999px;width:10px;height:10px;margin-top:8px;box-shadow:0 0 0 5px #4f79ff26}.timeline-content{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:8px;padding:10px;display:grid}@supports (color:color-mix(in lab, red, red)){.timeline-content{background:color-mix(in srgb, var(--surface) 96%, #deebff 4%)}}.note-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.note-title{text-transform:uppercase;letter-spacing:.03em;color:#68779a;margin:0 0 4px;font-size:.8rem;font-weight:700}.text-link{color:#2f63ff;font-size:.84rem;font-weight:600}.chart-stack{gap:10px;display:grid}.chart-item{gap:8px;display:grid}.calendar-grid-head{color:#7384a6;text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;font-size:.74rem;font-weight:700;display:grid}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.calendar-month-shell{gap:6px;display:grid}.calendar-controls{flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:10px;display:flex}.calendar-controls label{min-width:130px}.dashboard-scroll-area{overscroll-behavior:contain;height:320px;padding-right:4px;overflow:hidden auto}.dashboard-scroll-area::-webkit-scrollbar{width:8px}.dashboard-scroll-area::-webkit-scrollbar-thumb{background:#c7d8f5;border-radius:999px}.dashboard-scroll-area .empty-state{place-content:center;min-height:120px;display:grid}.calendar-cell{border:1px solid var(--line);background:#f8fbff;border-radius:10px;align-content:start;gap:5px;min-height:74px;padding:6px;display:grid}.calendar-cell.is-out{opacity:.5}.calendar-day{color:#4f6288;margin:0;font-size:.76rem;font-weight:700}.calendar-events{gap:4px;display:grid;overflow:hidden}.calendar-pill{text-align:center;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;padding:3px 6px;font-size:.65rem;font-weight:700;overflow:hidden}.calendar-more{color:#7b8eaf;text-align:center;white-space:nowrap;text-overflow:ellipsis;font-size:.65rem;overflow:hidden}.tone-muted{color:#5f7396;background:#edf1f9}.tone-accent{color:#2750ca;background:#e6efff}.tone-ok{color:#196946;background:#e9f7ef}.tone-warning{color:#8a5b10;background:#fff2de}.tone-critical{color:#8a3434;background:#ffe8e8}.planner-mobile-footer{z-index:40;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f9fbff;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.footer-link{text-align:center;color:#607293;padding:11px 6px;font-size:.74rem;font-weight:700}.footer-link:hover{color:#284ec2}@media (max-width:1024px){.planner-app-shell{grid-template-columns:1fr}.planner-sidebar{display:none}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.three-col-grid,.two-col-grid,.note-grid{grid-template-columns:1fr}.profile-identity-card{text-align:center;flex-direction:column;align-items:center}.chat-shell{grid-template-columns:1fr}.chat-shell.chat-mobile-list .chat-channel-card,.chat-shell.chat-mobile-channel .chat-conversations-card{display:none}.chat-shell.chat-mobile-channel .chat-channel-card{display:grid}.chat-channel-actions{justify-content:space-between;width:100%}.chat-mobile-back{align-items:center;padding:6px 10px;font-size:.78rem;display:inline-flex}.inline-form,.inline-form-four{grid-template-columns:1fr}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-cell{min-height:64px}.calendar-controls{grid-template-columns:1fr 1fr auto;display:grid}.calendar-controls label{min-width:0}.gallery-workflow-form{grid-template-columns:1fr}}@media (min-width:1025px){.planner-sidebar{display:flex}.planner-mobile-header,.planner-mobile-tabs,.planner-mobile-footer,.chat-mobile-back{display:none}.planner-content{padding:24px}.planner-page{width:100%;max-width:none;margin:0}.section-card>.form-grid,.section-card>.inline-form,.section-card>.inline-form-four{max-width:920px}.inline-form .btn,.inline-form-four .btn{justify-self:start;width:auto}.chat-shell{grid-template-columns:minmax(250px,280px) minmax(0,1fr);align-items:stretch;gap:14px}.chat-shell-desktop{height:calc(100dvh - 156px)}.chat-conversations-card,.chat-channel-card{height:100%;min-height:0;overflow:hidden}.chat-conversations-card{grid-template-rows:auto 1fr;display:grid}.chat-conversations-card .chat-thread-list{scrollbar-gutter:stable;flex-direction:column;flex:auto;align-items:stretch;min-height:0;padding-right:6px;display:flex;overflow-y:auto}.chat-channel-card{grid-template-rows:auto 1fr auto auto auto;display:grid}.chat-thread-item{padding:11px 12px}.chat-message-list{justify-content:flex-end;min-height:0;max-height:none;padding-right:6px}.chat-bubble{max-width:76%;padding:11px 12px}.chat-compose-textarea{min-height:86px}.users-list-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media (min-width:768px){.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .btn-primary{grid-column:1/-1}.form-grid label:has(textarea){grid-column:1/-1}.planner-content{padding:24px}}@media (max-width:767px){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}.login-page{padding:14px}.login-brand-logo{width:min(196px,72vw);margin-bottom:4px}.metric-grid{grid-template-columns:1fr}.section-card{padding:12px}.page-head p{font-size:.86rem}.list-title{font-size:.9rem}.list-subtitle{font-size:.8rem}.calendar-month-shell{overscroll-behavior-x:contain;padding-bottom:2px;overflow-x:auto}.calendar-month-shell .calendar-grid-head,.calendar-month-shell .calendar-grid{min-width:560px}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-cell{min-height:72px;padding:4px}.calendar-day{font-size:.7rem}.calendar-pill,.calendar-more{padding:2px 4px;font-size:.56rem}.calendar-controls{grid-template-columns:1fr 1fr}.calendar-controls button{grid-column:1/-1}.gallery-grid{grid-template-columns:1fr}.chat-message-list{height:auto;min-height:0;max-height:min(52dvh,420px)}.chat-bubble{max-width:92%;padding:8px 10px}.chat-author{margin:0 0 2px;font-size:.72rem}.chat-text{line-height:1.36}.chat-time{margin-top:3px}.chat-send-button{width:38px;height:38px}}@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}
