@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/19150647d2c2f572-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/000030d1699f2fb3-s.woff2) format("woff2");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:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/1926da171a0ba1a5-s.woff2) format("woff2");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:Playfair Display;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/78d0dd042ac6d54d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/19150647d2c2f572-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/000030d1699f2fb3-s.woff2) format("woff2");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:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/1926da171a0ba1a5-s.woff2) format("woff2");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:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/78d0dd042ac6d54d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Playfair Display;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/19150647d2c2f572-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/000030d1699f2fb3-s.woff2) format("woff2");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:Playfair Display;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/1926da171a0ba1a5-s.woff2) format("woff2");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:Playfair Display;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/78d0dd042ac6d54d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Playfair Display;font-style:italic;font-weight:800;font-display:swap;src:url(/_next/static/media/19150647d2c2f572-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:800;font-display:swap;src:url(/_next/static/media/000030d1699f2fb3-s.woff2) format("woff2");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:Playfair Display;font-style:italic;font-weight:800;font-display:swap;src:url(/_next/static/media/1926da171a0ba1a5-s.woff2) format("woff2");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:Playfair Display;font-style:italic;font-weight:800;font-display:swap;src:url(/_next/static/media/78d0dd042ac6d54d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");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:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");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:Playfair Display;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");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:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");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:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");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:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");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:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Playfair Display;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");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:Playfair Display;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");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:Playfair Display;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Playfair Display Fallback;src:local("Times New Roman");ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:111.26%}.__className_b12dcb{font-family:Playfair Display,Playfair Display Fallback}.__variable_b12dcb{--font-playfair-src:"Playfair Display","Playfair Display Fallback"}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;--radius-sm:.25rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-poppins:"Poppins",sans-serif;--font-inter:"Inter",sans-serif;--font-zen:"Zen Kaku Gothic New","Inter",sans-serif;--font-playfair:"Playfair Display",serif}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.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{--cream:#f4f2e8;--paper:#faf9f2;--teal:#1f6b61;--teal-dark:#143f39;--aqua:#2bafbe;--ink:#15241f;--gold:#d49a2b;--border:#143f3924;--border-soft:#143f3914;--shadow-sm:0 2px 8px #15241f0f;--shadow-md:0 8px 24px #15241f1a;--radius:14px;--radius-sm:10px;--ink-female:#c9698f;--ink-male:#6f8fae}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--cream);color:var(--ink);font-family:var(--font-zen),var(--font-inter);font-size:14px;line-height:1.6}h1,h2,h3,h4{margin:0;font-weight:700}p,ul{margin:0}ul{padding:0;list-style:none}button{cursor:pointer}button,input,select,textarea{font-family:inherit}a{color:inherit;text-decoration:none}.num{font-family:var(--font-inter);font-variant-numeric:tabular-nums}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#143f3938;border-radius:10px}::-webkit-scrollbar-track{background:0 0}.app-shell{min-height:100vh;display:flex}.sidebar{background:linear-gradient(180deg,var(--teal-dark) 0,#0f2e29 100%);width:236px;color:var(--cream);flex-direction:column;flex:0 0 236px;height:100vh;padding:26px 0 18px;display:flex;position:sticky;top:0}.logo-block{cursor:pointer;border-bottom:1px solid #f4f2e81f;margin-bottom:14px;padding:0 24px 22px;text-decoration:none;display:block}.logo{font-family:var(--font-poppins);color:var(--cream);letter-spacing:.2px;align-items:center;gap:7px;font-size:26px;font-weight:800;display:flex}.logo .dot{background:var(--gold);border-radius:50%;width:7px;height:7px;margin-top:-14px;display:inline-block}.logo-sub{color:#f4f2e88c;letter-spacing:.22em;text-transform:uppercase;margin-top:4px;font-size:10px;font-weight:600}.nav-group-label{letter-spacing:1.4px;color:#f4f2e866;text-transform:uppercase;padding:14px 24px 6px;font-size:10.5px;font-weight:700}.nav-list{flex-direction:column;gap:2px;padding:0 12px;display:flex}.nav-item{color:#f4f2e8d1;cursor:pointer;border-radius:10px;gap:11px;padding:10px 12px;font-size:14px;font-weight:500;transition:background .15s,color .15s;position:relative}.nav-item,.nav-item .ic{align-items:center;display:flex}.nav-item .ic{opacity:.9;flex:0 0 18px;justify-content:center;width:18px;height:18px}.nav-item:hover:not(.disabled){color:var(--cream);background:#f4f2e814}.nav-item.active{background:var(--teal);color:#fff;box-shadow:var(--shadow-sm)}.nav-item.active .ic{opacity:1}.nav-item.disabled{opacity:.4;cursor:not-allowed}.phase-badge{color:var(--teal-dark);letter-spacing:.4px;background:#f4f2e88c;border-radius:6px;padding:2px 6px;font-size:9.5px}.nav-unread-badge,.phase-badge{margin-left:auto;font-weight:800}.nav-unread-badge{background:var(--gold);color:#fff;min-width:18px;height:18px;font-size:10.5px;font-family:var(--font-inter);border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 5px;display:flex}.nav-item.disabled .nav-tooltip{background:var(--ink);color:#fff;white-space:nowrap;opacity:0;pointer-events:none;box-shadow:var(--shadow-md);z-index:50;border-radius:8px;margin-left:10px;padding:6px 10px;font-size:12px;font-weight:500;transition:opacity .15s;position:absolute;top:50%;left:100%;transform:translateY(-50%)}.nav-item.disabled:hover .nav-tooltip{opacity:1}.sidebar-footer{border-top:1px solid #f4f2e81f;margin-top:auto;padding:16px 24px 0}.sidebar-footer p{color:#f4f2e866;font-size:11px;line-height:1.7}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:var(--paper);border-bottom:1px solid var(--border-soft);z-index:20;flex:0 0 64px;justify-content:space-between;align-items:center;height:64px;padding:0 32px;display:flex;position:sticky;top:0}.topbar-left{align-items:baseline;gap:14px;display:flex}.topbar-title{color:var(--teal-dark);font-size:19px;font-weight:700}.user-chip{background:var(--cream);border:1px solid var(--border-soft);border-radius:999px;gap:9px;padding:6px 14px 6px 8px}.user-avatar,.user-chip{align-items:center;display:flex}.user-avatar{background:var(--teal);color:#fff;width:28px;height:28px;font-size:12.5px;font-weight:700;font-family:var(--font-inter);border-radius:50%;justify-content:center}.user-chip-text{color:var(--ink);font-size:13px;font-weight:600}.page-container{flex:1;padding:28px 32px 60px;overflow-x:hidden}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.page-head h1{color:var(--teal-dark);font-size:20px}.page-head-sub{color:#15241f8c;font-size:13.5px;font-weight:600}.btn{border-radius:var(--radius-sm);border:none;align-items:center;gap:6px;padding:10px 18px;font-size:13.5px;font-weight:700;transition:transform .1s,box-shadow .15s,background .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--teal);color:#fff;box-shadow:0 3px 10px #1f6b614d}.btn-primary:hover:not(:disabled){background:#195a52}.btn-gold{background:var(--gold);color:#fff;box-shadow:0 3px 10px #d49a2b4d}.btn-gold:hover:not(:disabled){background:#bd8722}.btn-outline{color:var(--teal);border:1.5px solid var(--teal);background:0 0}.btn-outline:hover:not(:disabled){background:#1f6b6114}.btn-ghost{color:#15241f99;border:1.5px solid var(--border);background:0 0}.btn-ghost:hover:not(:disabled){background:#15241f0a}.btn-danger{color:#a83226;background:0 0;border:1.5px solid #c0392b66}.btn-danger:hover:not(:disabled){background:#c0392b14}.btn-sm{padding:7px 13px;font-size:12.5px}.card{background:var(--paper);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px 22px}.card-title{color:var(--teal-dark);justify-content:space-between;align-items:center;margin-bottom:14px;font-size:15px;font-weight:700;display:flex}.card-title small{color:#15241f73;font-size:11.5px;font-weight:500}.stat-grid{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px;display:grid}.stat-card{background:var(--paper);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:18px 20px;position:relative;overflow:hidden}.stat-card:before{content:"";background:var(--teal);width:4px;height:100%;position:absolute;top:0;left:0}.stat-card.gold:before{background:var(--gold)}.stat-card.aqua:before{background:var(--aqua)}.stat-label{color:#15241f8c;letter-spacing:.3px;font-size:12px;font-weight:700}.stat-value{font-family:var(--font-inter);color:var(--teal-dark);margin-top:8px;font-size:29px;font-weight:800}.stat-value .unit{color:#143f3999;margin-left:2px;font-size:15px;font-weight:700}.stat-delta{color:var(--gold);margin-top:6px;font-size:11.5px;font-weight:700}.dash-grid{grid-template-columns:1.6fr 1fr;align-items:start;gap:20px;display:grid}@media (max-width:1100px){.dash-grid{grid-template-columns:1fr}}.stat-chip{border-right:1px solid var(--border-soft);white-space:nowrap;align-items:baseline;gap:6px;padding-right:14px;display:flex}.stat-chip:last-child{border-right:none;padding-right:0}.stat-chip-label{color:#15241f80;font-size:11px;font-weight:700}.stat-chip-value{color:var(--teal-dark);font-size:13px;font-weight:800}.stat-chip-target{gap:8px}.stat-chip-bar{background:#1f6b611f;border-radius:4px;width:140px;height:6px;overflow:hidden}.stat-chip-bar-fill{background:var(--teal);border-radius:4px;height:100%;transition:width .3s}.stat-chip-bar-fill.over{background:var(--gold)}.stat-chip-pct{color:var(--teal-dark);font-size:11.5px;font-weight:700}.dashboard-body{align-items:flex-start;gap:20px;display:flex}.dashboard-main{flex:1;min-width:0}.dashboard-rail{flex-direction:column;flex:0 0 340px;gap:20px;width:340px;display:flex}@media (max-width:1200px){.dashboard-body{flex-direction:column}.dashboard-rail{flex:auto;width:100%}}.today-compact-list{flex-direction:column;gap:2px;display:flex}.today-compact-item{border-bottom:1px solid var(--border-soft);align-items:center;gap:10px;padding:7px 0;display:flex}.today-compact-item:last-child{border-bottom:none}.today-compact-time{color:#15241f8c;flex:none;font-size:12px;font-weight:700}.today-compact-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;font-weight:600;overflow:hidden}table{border-collapse:collapse;width:100%}thead th{text-align:left;letter-spacing:.3px;color:#15241f80;border-bottom:1.5px solid var(--border-soft);text-transform:uppercase;padding:0 10px 10px;font-size:11.5px;font-weight:700}tbody td{border-bottom:1px solid var(--border-soft);vertical-align:middle;padding:12px 10px;font-size:13.5px}tbody tr:last-child td{border-bottom:none}tbody tr.clickable:hover{cursor:pointer;background:#1f6b610d}.table-empty{text-align:center;color:#15241f66;padding:22px 10px;font-size:13px}.badge{white-space:nowrap;border-radius:999px;padding:4px 11px;font-size:11.5px;font-weight:700;display:inline-block}.badge-done{color:#15241f8c;background:#15241f14}.badge-progress{color:#1a7c87;background:#2bafbe26}.badge-confirmed{color:var(--teal);background:#1f6b611f;border:1px solid #1f6b614d}.badge-cancelled{color:#a83226;background:#c0392b1a}.badge-no_show{color:#a83226;background:#c0392b24}.avatar-sm{background:var(--aqua);color:#fff;width:26px;height:26px;font-weight:700;vertical-align:middle;margin-right:8px}.avatar-sm,.gender-badge{font-size:11px;font-family:var(--font-inter);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.gender-badge{width:22px;height:22px;flex:0 0 22px;font-weight:800}.gender-badge.male{background:var(--ink-male);color:#fff}.gender-badge.female{background:var(--ink-female);color:#fff}.gender-badge.unknown{color:#15241f80;background:#15241f2e}.gender-badge-lg{width:30px;height:30px;font-size:13px}.svc-gender-badge{width:22px;height:22px;font-family:var(--font-inter);border-radius:50%;flex:0 0 22px;justify-content:center;align-items:center;font-size:10px;font-weight:800;display:inline-flex}.svc-gender-badge.men{color:#fff;background:#2b6cb0}.svc-gender-badge.women{background:var(--gold);color:#fff}.svc-gender-badge.unisex{color:#1a7c87;background:#2bafbe2e}.cat-tag.Campaign{color:#a97a1f;background:#d49a2b2e}.ticket-alert-list{flex-direction:column;gap:10px;display:flex}.ticket-alert-item{cursor:pointer;background:#d49a2b14;border:1px solid #d49a2b38;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;transition:background .15s;display:flex}.ticket-alert-item:hover{background:#d49a2b29}.ticket-alert-name{color:var(--ink);font-size:13.5px;font-weight:700}.ticket-alert-sub{color:#15241f8c;margin-top:2px;font-size:11.5px}.ticket-alert-days{font-family:var(--font-inter);color:#b5721f;white-space:nowrap;background:#fff;border-radius:8px;padding:4px 9px;font-size:12px;font-weight:800}.cal-toolbar{justify-content:space-between;gap:16px;margin-bottom:16px}.cal-toolbar,.cal-toolbar-left{flex-wrap:wrap;align-items:center;display:flex}.cal-toolbar-left{gap:14px}.view-toggle{background:#143f390f;border-radius:10px;padding:3px;display:flex}.view-toggle a,.view-toggle button{color:#15241f80;background:0 0;border:none;border-radius:8px;padding:8px 18px;font-size:13px;font-weight:700;display:inline-block}.view-toggle a.active,.view-toggle button.active{background:var(--paper);color:var(--teal-dark);box-shadow:var(--shadow-sm)}.cal-date-label{color:var(--teal-dark);font-size:15px;font-weight:700}.cal-nav{align-items:center;gap:6px;display:flex}.cal-nav-btn{border:1.5px solid var(--border);background:var(--paper);width:30px;height:30px;color:var(--teal-dark);border-radius:8px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.cal-nav-btn:hover{background:#1f6b6114}.legend{flex-wrap:wrap;gap:16px}.legend,.legend-item{align-items:center;display:flex}.legend-item{color:#15241f99;gap:6px;font-size:12px}.legend-dot{border-radius:3px;width:9px;height:9px}.cal-scroll{border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow-x:auto}.day-grid{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:66px repeat(3,1fr);gap:1px;min-width:900px;display:grid;overflow:hidden}.dg-cell{background:var(--paper);min-height:38px}.dg-cell.closed{background:repeating-linear-gradient(135deg,#15241f0d 0 10px,#15241f05 10px 20px)}.dg-corner{background:var(--cream)}.dg-staffhead{background:var(--teal-dark);color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 4px;font-size:13.5px;font-weight:700;display:flex}.dg-staffhead .room-tag{color:#f4f2e8a6;font-size:10px}.dg-staffhead .room-tag,.dg-time{font-weight:600;font-family:var(--font-inter)}.dg-time{background:var(--cream);color:#15241f73;font-size:9.5px;white-space:nowrap;justify-content:flex-end;align-items:flex-start;padding:2px 6px 0 0;display:flex}.dg-time.hour{color:#15241fad;font-weight:700}.dg-col{flex-direction:column;display:flex}.dg-slot{border-bottom:1px solid var(--border-soft);height:38px;position:relative}.booking-card{cursor:pointer;text-align:left;border-left:4px solid #0000;border-radius:8px;flex-direction:column;justify-content:flex-start;gap:1px;width:100%;margin:1px;padding:6px 9px;transition:transform .1s;display:flex;overflow:hidden;box-shadow:0 2px 5px #15241f1a}.booking-card:hover{transform:translateY(-1px)}.booking-card .b-name{color:var(--ink);font-size:12.5px;font-weight:800;line-height:1.3}.booking-card .b-menu{color:#15241fa6;font-size:11px;line-height:1.25}.booking-card .b-room{font-size:10px;font-family:var(--font-inter);color:#15241f66;margin-top:1px;font-weight:700}.booking-card.compact{flex-direction:row;align-items:center;gap:6px;padding:4px 9px}.booking-card.compact .b-name{white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;max-width:60%;overflow:hidden}.booking-card.compact .b-menu{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.booking-card.compact .b-room{display:none}.client-new{border-left-color:var(--gold);background:#d49a2b2e;box-shadow:0 3px 8px #d49a2b40}.client-returning{border-left-color:var(--teal);background:#1f6b6124}.week-grid{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(7,1fr);gap:1px;min-width:1000px;display:grid;overflow:hidden}.week-col{background:var(--paper);flex-direction:column;min-height:420px;display:flex}.week-col-head{text-align:center;border-bottom:1px solid var(--border-soft);background:var(--cream);padding:10px 12px}.week-col-head .wd{color:var(--teal-dark);font-size:12.5px;font-weight:800}.week-col-head .wdate{color:#15241f80;font-size:11px;font-family:var(--font-inter)}.week-col-body{flex-direction:column;flex:1;gap:6px;padding:8px;display:flex}.week-chip{text-align:left;cursor:pointer;background:#1f6b6114;border-radius:7px;align-items:baseline;gap:6px;width:100%;padding:6px 8px;font-size:11px;display:flex}.week-chip .wdot{border-radius:50%;flex:0 0 7px;align-self:center;width:7px;height:7px}.week-chip .wtime{font-family:var(--font-inter);color:var(--teal-dark);font-weight:700}.week-chip .wtext{color:#15241fb3;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.week-col.closed{background:repeating-linear-gradient(135deg,#15241f0d 0 10px,#15241f05 10px 20px)}.closed-banner{text-align:center;letter-spacing:1.5px;text-transform:uppercase;color:#15241f66;padding:8px 8px 2px;font-size:11px;font-weight:800}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100;background:#0f1e1a8c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{border:1px solid var(--border-soft);border-radius:18px;width:500px;max-width:92vw;max-height:88vh;overflow-y:auto;box-shadow:0 20px 60px #0f1e1a59}.modal,.modal-head{background:var(--paper)}.modal-head{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding:22px 26px 16px;display:flex;position:sticky;top:0}.modal-head h2{color:var(--teal-dark);font-size:17px}.modal-close{color:#15241f80;background:#15241f0f;border:none;border-radius:50%;width:30px;height:30px;font-size:16px}.modal-close:hover{background:#15241f1f}.modal-body{gap:16px;padding:20px 26px}.form-row,.modal-body{flex-direction:column;display:flex}.form-row{gap:6px}.form-row label{color:#15241f99;font-size:12.5px;font-weight:700}.form-row input,.form-row select,.form-row textarea{border:1.5px solid var(--border);color:var(--ink);background:#fff;border-radius:9px;outline:none;width:100%;padding:10px 12px;font-size:13.5px}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--teal)}.form-row-split{gap:12px;display:flex}.form-row-split .form-row{flex:1}.form-error{color:#a83226;font-size:12px;font-weight:600}.duration-hint{color:var(--teal);background:#1f6b6114;font-weight:700}.duration-hint,.pkg-hint{border-radius:8px;padding:8px 12px;font-size:12px}.pkg-hint{color:#8a6414;background:#d49a2b1a;flex-direction:column;gap:4px;margin-bottom:14px;font-weight:600;display:flex}.pkg-hint-name{margin-right:8px;font-weight:700}.pkg-hint-name:before{content:"🎫 "}.modal-foot{border-top:1px solid var(--border-soft);background:var(--paper);justify-content:flex-end;padding:16px 26px 24px;position:sticky;bottom:0}.modal-foot,.modal-foot-secondary{flex-wrap:wrap;gap:8px;display:flex}.modal-foot-secondary{margin-right:auto}.modal-foot-primary{flex-wrap:wrap;gap:8px;display:flex}.modal-foot .btn{white-space:nowrap;min-height:36px;padding:9px 12px;font-size:12.5px}.day-list-rows{flex-direction:column;gap:2px;display:flex}.day-list-row{text-align:left;border:none;border-bottom:1px solid var(--border-soft);cursor:pointer;width:100%;color:var(--ink);background:0 0;align-items:center;gap:10px;padding:12px 4px;font-size:13.5px;display:flex}.day-list-row:last-child{border-bottom:none}.day-list-row:active,.day-list-row:hover{background:#1f6b610f}.day-list-row-time{color:var(--teal-dark);white-space:nowrap}.day-list-row-name,.day-list-row-time{flex:none;font-weight:700}.day-list-row-service{color:#15241f99;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.day-list-rows-cancelled{border-top:1px dashed var(--border);margin-top:6px;padding-top:6px}.day-list-row-cancelled{opacity:.65}.toast{background:var(--teal-dark);color:#fff;box-shadow:var(--shadow-md);z-index:200;border-radius:12px;padding:13px 20px;font-size:13.5px;font-weight:600;position:fixed;bottom:26px;right:26px}.toast.error{background:#a83226}.cust-toolbar{flex-wrap:wrap;gap:14px;margin-bottom:16px}.cust-toolbar,.search-box{align-items:center;display:flex}.search-box{background:var(--paper);border:1.5px solid var(--border);border-radius:10px;flex:0 0 320px;gap:8px;padding:9px 14px}.search-box input{width:100%;color:var(--ink);background:0 0;border:none;outline:none;font-size:13.5px}.tag-chips{gap:8px;display:flex}.tag-chip{border:1.5px solid var(--border);background:var(--paper);color:#15241f8c;border-radius:999px;padding:8px 15px;font-size:12.5px;font-weight:700}.tag-chip.active[data-tag=VIP]{background:var(--gold);border-color:var(--gold);color:#fff}.tag-chip.active[data-tag=new]{background:var(--aqua);border-color:var(--aqua);color:#fff}.tag-chip.active[data-tag=package]{background:var(--teal);border-color:var(--teal);color:#fff}.tag-pill{white-space:nowrap;border-radius:999px;margin-right:4px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-block}.tag-pill.VIP{color:#a97a1f;background:#d49a2b29}.tag-pill.new{color:#1a7c87;background:#2bafbe29}.tag-pill.package{color:var(--teal);background:#1f6b6124}.tag-pill.other{color:#15241f8c;background:#15241f14}.detail-back{color:var(--teal);cursor:pointer;align-items:center;gap:6px;width:max-content;margin-bottom:16px;font-size:13px;font-weight:700;display:flex}.detail-back:hover{text-decoration:underline}.detail-grid{grid-template-columns:320px 1fr;align-items:start;gap:20px;display:grid}@media (max-width:900px){.detail-grid{grid-template-columns:1fr}}.profile-photo{background:linear-gradient(135deg,var(--aqua),var(--teal));color:#fff;width:88px;height:88px;font-family:var(--font-playfair);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 14px;font-size:30px;font-weight:700;display:flex}.profile-name{text-align:center;font-family:var(--font-inter);color:var(--teal-dark);font-size:20px;font-weight:800}.profile-meta{text-align:center;color:#15241f80;margin-top:4px;font-size:12px}.profile-tags{flex-wrap:wrap;justify-content:center;gap:6px;margin:10px 0 16px;display:flex}.info-line{border-bottom:1px solid var(--border-soft);justify-content:space-between;gap:12px;padding:8px 0;font-size:13px;display:flex}.info-line:last-child{border-bottom:none}.info-line .k{color:#15241f80;flex:none}.info-line .v{color:var(--ink);text-align:right;max-width:180px;font-weight:700}.ticket-box{background:#d49a2b14;border:1px solid #d49a2b40;border-radius:12px;margin-bottom:10px;padding:14px 16px}.ticket-box:last-child{margin-bottom:0}.ticket-box .t-name{color:var(--ink);font-size:13.5px;font-weight:800}.ticket-box .t-bar{background:#d49a2b33;border-radius:4px;height:6px;margin:8px 0 6px;overflow:hidden}.ticket-box .t-bar-fill{background:var(--gold);border-radius:4px;height:100%}.progress-bar{background:#1f6b611f;border-radius:6px;height:10px;margin:10px 0 8px;overflow:hidden}.progress-bar-fill{background:var(--teal);border-radius:6px;height:100%;transition:width .3s}.progress-bar-fill.over{background:var(--gold)}.ticket-box .t-meta{color:#15241f99;justify-content:space-between;font-size:11.5px;font-weight:600;display:flex}.ticket-box .t-purchased{color:#15241f66;font-size:10.5px;font-family:var(--font-inter);margin-top:4px}.no-ticket{color:#15241f73;padding:6px 0;font-size:13px}.timeline{flex-direction:column;display:flex}.timeline-item{border-bottom:1px solid var(--border-soft);gap:14px;padding:14px 0;display:flex}.timeline-item:last-child{border-bottom:none}.timeline-item-cancelled{opacity:.65}.timeline-section-divider{border-top:1px solid var(--border-soft);margin:4px 0 10px}.timeline-section-label{letter-spacing:.02em;text-transform:uppercase;color:#15241f73;margin-bottom:6px;font-size:11px;font-weight:600}.timeline-dot-col{flex-direction:column;flex:0 0 16px;align-items:center;display:flex}.timeline-dot{background:var(--teal);border-radius:50%;flex:0 0 11px;width:11px;height:11px;margin-top:4px}.timeline-line{background:var(--border);flex:1;width:1.5px;margin-top:4px}.timeline-item:last-child .timeline-line{display:none}.timeline-content{flex:1;min-width:0}.timeline-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.timeline-menu{color:var(--ink);font-size:13.5px;font-weight:800}.timeline-date{font-family:var(--font-inter);color:#15241f73;font-size:11.5px;font-weight:600}.timeline-sub{color:#15241f8c;margin-top:2px;font-size:12px}.repeat-icon{margin-right:4px;font-weight:800}.repeat-icon.doubl{color:var(--teal)}.repeat-icon.circ{color:var(--aqua)}.repeat-icon.tri{color:var(--gold)}.therapist-comment{border-left:3px solid var(--teal);color:#15241fb3;font-size:12px;font-style:italic;font-family:var(--font-inter);background:#143f390d;border-radius:0 8px 8px 0;margin-top:8px;padding:8px 12px}.attach-grid{grid-template-columns:repeat(6,1fr);gap:10px;margin-top:6px;display:grid}@media (max-width:640px){.attach-grid{grid-template-columns:repeat(2,1fr)}}.attach-box{aspect-ratio:1;color:#15241f66;text-align:center;background:#15241f0f;border:1.5px dashed #15241f2e;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:8px;font-size:11px;font-weight:600;display:flex}.attach-box .ic{font-size:17px}.attach-file-card .ic{font-size:34px;line-height:1.2}.tab-bar{background:#143f390f;border-radius:11px;gap:6px;width:max-content;margin-bottom:18px;padding:4px;display:flex}.tab-btn{color:#15241f80;background:0 0;border:none;border-radius:8px;padding:9px 22px;font-size:13.5px;font-weight:700}.tab-btn.active{background:var(--paper);color:var(--teal-dark);box-shadow:var(--shadow-sm)}.status-dot{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.status-dot.on{background:var(--teal)}.status-dot.off{background:#15241f40}.cat-tag{border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.cat-tag.IPL{color:var(--teal);background:#1f6b6121}.cat-tag.Facial{color:#1a7c87;background:#2bafbe26}.cat-tag.Laser{color:#a97a1f;background:#d49a2b26}.cat-tag.Other{color:#15241f8c;background:#15241f14}tr.row-disabled td{opacity:.4}.settings-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (max-width:900px){.settings-grid{grid-template-columns:1fr}}.staff-row{border-bottom:1px solid var(--border-soft);align-items:center;gap:12px;padding:10px 0;display:flex}.staff-row:last-child{border-bottom:none}.staff-avatar{background:var(--teal);color:#fff;width:36px;height:36px;font-weight:700;font-family:var(--font-inter);border-radius:50%;flex:0 0 36px;justify-content:center;align-items:center;display:flex}.staff-name{font-size:13.5px;font-weight:700}.staff-role{color:#15241f80;font-size:11.5px}.kv-line{border-bottom:1px solid var(--border-soft);justify-content:space-between;gap:12px;padding:9px 0;font-size:13.5px;display:flex}.kv-line:last-child{border-bottom:none}.kv-line .k{color:#15241f8c}.kv-line .v{text-align:right;font-weight:700}.lang-toggle{background:#143f390f;border-radius:999px;padding:3px;display:flex}.lang-toggle button{color:#15241f73;font-size:11.5px;font-weight:800;font-family:var(--font-inter);letter-spacing:.3px;background:0 0;border:none;border-radius:999px;padding:6px 13px}.lang-toggle button.active{background:var(--teal);color:#fff}.month-grid{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;min-width:0;display:grid;overflow:hidden}.month-head-cell{background:var(--teal-dark);color:#fff;text-align:center;letter-spacing:.3px;padding:10px 0;font-size:12px;font-weight:700}.month-cell{background:var(--paper);cursor:pointer;flex-direction:column;gap:4px;min-height:112px;padding:8px 8px 28px;display:flex;position:relative}.month-cell:hover{background:#1f6b610a}.month-cell.pad{cursor:default}.month-cell.pad,.month-cell.pad:hover{background:var(--cream)}.month-cell.closed{background:repeating-linear-gradient(135deg,#15241f0d 0 10px,#15241f05 10px 20px)}.month-cell.today{box-shadow:inset 0 0 0 2px var(--gold);border-radius:6px}.month-cell-top{justify-content:space-between;align-items:center;display:flex}.month-daynum{font-family:var(--font-inter);color:#15241f99;font-size:12.5px;font-weight:700}.month-cell.today .month-daynum{color:#a97a1f;font-weight:800}.month-count-chip{color:var(--teal);font-size:9.5px;font-weight:700;font-family:var(--font-inter);white-space:nowrap;background:#1f6b611f;border-radius:999px;padding:2px 7px}.month-closed-tag{color:#15241f59;letter-spacing:1px;text-align:center;text-transform:uppercase;margin:6px 0 2px;font-size:10px;font-weight:800}.month-chip-list{flex-direction:column;gap:2px;display:flex}.month-mini-chip{color:#15241fa6;white-space:nowrap;text-overflow:ellipsis;align-items:baseline;gap:4px;font-size:9.5px;display:flex;overflow:hidden}.month-mini-chip .mdot{border-radius:50%;flex:0 0 5px;align-self:center;width:5px;height:5px}.mname,.month-add-btn{font-weight:700}.month-add-btn{width:24px;height:24px;color:var(--teal);cursor:pointer;z-index:1;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:15px;line-height:1;display:flex;position:absolute;bottom:6px;right:6px}.month-add-btn:hover{background:#1f6b611a}.month-add-btn:active{transform:translateY(1px)}.month-mini-chip .mtime{font-family:var(--font-inter);color:var(--teal-dark);font-weight:700}.mname-link{color:inherit;text-decoration:none}.mname-link:hover{text-decoration:underline}.cname-f{color:var(--ink-female);font-weight:700}.cname-m{color:var(--ink-male);font-weight:700}.todo-groups{flex-direction:column;gap:14px;display:flex}.todo-group-head{color:var(--teal-dark);gap:8px;margin-bottom:6px;font-size:12.5px;font-weight:800}.todo-avatar,.todo-group-head{align-items:center;display:flex}.todo-avatar{background:var(--teal);color:#fff;width:20px;height:20px;font-size:10px;font-weight:700;font-family:var(--font-inter);border-radius:50%;flex:0 0 20px;justify-content:center}.todo-item{border-bottom:1px solid var(--border-soft);align-items:center;gap:10px;padding:8px 0;display:flex}.todo-group .todo-item:last-child{border-bottom:none}.todo-item.is-done{opacity:.55}.todo-item.is-done .todo-text{color:#15241f8c;text-decoration:line-through}.todo-checkbox{cursor:pointer;flex:0 0 19px;width:19px;height:19px;display:inline-flex;position:relative}.todo-checkbox input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.todo-checkbox-box{background:#fff;border:1.5px solid #15241f4d;border-radius:50%;justify-content:center;align-items:center;width:19px;height:19px;transition:background-color .15s,border-color .15s;display:flex}.todo-checkbox-box:after{content:"";transform-origin:50%;border-bottom:2px solid #fff;border-right:2px solid #fff;width:5px;height:9px;margin-top:-1px;transition:transform .15s;transform:rotate(45deg)scale(0)}.todo-checkbox input:checked+.todo-checkbox-box{background:var(--teal);border-color:var(--teal)}.todo-checkbox input:checked+.todo-checkbox-box:after{transform:rotate(45deg)scale(1)}.todo-checkbox input:focus-visible+.todo-checkbox-box{outline:2px solid var(--teal);outline-offset:2px}.todo-checkbox input:disabled{cursor:not-allowed}.todo-checkbox input:disabled+.todo-checkbox-box{opacity:.6;cursor:not-allowed}.todo-text{color:var(--ink);flex:1;font-size:12.5px;line-height:1.4}.todo-date{color:#15241f73;font-size:10.5px;font-weight:600}.due-chip,.todo-date{white-space:nowrap;font-family:var(--font-inter)}.due-chip{font-size:10px;font-weight:800;border-radius:999px;padding:3px 9px}.due-chip.due-today{color:#a97a1f;background:#d49a2b2e}.due-chip.due-overdue{color:#a83226;background:#c0392b24}.due-chip.due-upcoming{color:var(--teal);background:#1f6b611a}.alert-badge{white-space:nowrap;border-radius:999px;margin:1px;padding:3px 9px;font-size:10.5px;font-weight:700;display:inline-block}.alert-badge.aqua{color:#1a7c87;background:#2bafbe26}.alert-badge.gold{color:#a97a1f;background:#d49a2b29}.alert-badge.red{color:#a83226;background:#c0392b24}.alert-badge-icon{justify-content:center;align-items:center;padding:3px;line-height:0;display:inline-flex}.alert-badge-icon svg{width:14px;height:14px;display:block}.alert-none{color:#15241f4d}.level-chip{font-family:var(--font-inter);color:var(--teal);background:#1f6b611f;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:800;display:inline-block}.reaction-ok{color:var(--teal);font-weight:700}.reaction-warn{color:#a97a1f;font-weight:700}.login-shell{background:linear-gradient(180deg,var(--teal-dark) 0,#0f2e29 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--paper);width:380px;max-width:100%;box-shadow:var(--shadow-md);border-radius:18px;padding:36px 32px}.login-logo{font-family:var(--font-poppins);color:var(--teal-dark);justify-content:center;align-items:center;gap:7px;margin-bottom:4px;font-size:28px;font-weight:800;display:flex}.login-logo .dot{background:var(--gold);border-radius:50%;width:8px;height:8px;margin-top:-16px;display:inline-block}.login-sub{text-align:center;color:#15241f80;letter-spacing:.22em;text-transform:uppercase;margin-bottom:28px;font-size:10px;font-weight:600}.login-form{flex-direction:column;gap:16px;display:flex}.placeholder-card{border-radius:var(--radius);color:#15241f80;text-align:center;border:1.5px dashed #15241f2e;padding:22px;font-size:13px}.consent-row{border:1px solid var(--border-soft);background:#1f6b610d;border-radius:12px;margin-bottom:8px;padding:12px 14px}.consent-row:last-child{margin-bottom:0}.consent-row-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.consent-row-name{color:var(--ink);font-size:13.5px;font-weight:800}.consent-row-meta{color:#15241f99;flex-wrap:wrap;gap:16px;margin-top:6px;font-size:11.5px;font-weight:600;display:flex}.consent-body-scroll{border:1.5px solid var(--border);color:#15241fd9;background:#fff;border-radius:9px;max-height:220px;padding:12px 14px;font-size:12.5px;line-height:1.7;overflow-y:auto}.consent-body-scroll p{margin:0 0 10px}.consent-body-scroll p:last-child{margin-bottom:0}.consent-body-scroll .consent-body-list{margin:0 0 10px 18px;padding:0}.consent-body-scroll .consent-body-list li{margin-bottom:4px}.signature-canvas{border:1.5px dashed var(--border);touch-action:none;background:#fff;border-radius:9px;width:100%;max-width:560px;height:170px;display:block}.consent-signature-img{border:1px solid var(--border-soft);background:#fff;border-radius:9px;max-width:100%;display:block}.repeat-toggle{gap:8px;display:flex}.repeat-choice{border:1.5px solid var(--border);color:#15241f99;background:#fff;border-radius:9px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:700;display:inline-flex}.repeat-choice:hover{background:#15241f0a}.repeat-choice.active{border-color:var(--teal);color:var(--teal-dark);background:#1f6b6114}.chart-setting-row{grid-template-columns:1.4fr .8fr 1.2fr auto;align-items:center;gap:8px;display:grid}.chart-setting-row input,.chart-setting-row select{border:1.5px solid var(--border);color:var(--ink);background:#fff;border-radius:9px;outline:none;width:100%;padding:8px 10px;font-size:13px}.chart-setting-row input:focus,.chart-setting-row select:focus{border-color:var(--teal)}.attach-group{margin-bottom:24px}.attach-group:last-child{margin-bottom:0}.attach-group-heading{color:#15241f80;margin-bottom:10px;font-size:11.5px;font-weight:700}.attach-item{position:relative}.attach-file-card,.attach-thumb-box{color:inherit;border-style:solid;padding:0;text-decoration:none;overflow:hidden}.attach-thumb-box{background:#15241f0a}.attach-thumb{object-fit:cover;width:100%;height:100%;display:block}.attach-file-card{padding:8px!important}.attach-file-card .attach-file-name{color:#15241f99;word-break:break-word;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:9.5px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.attach-kind-tag{cursor:pointer;padding:1.5px 5px;font-size:8.5px;position:absolute;top:4px;left:4px}.attach-delete-btn{color:#fff;background:#15241f8c;border:none;border-radius:50%;justify-content:center;align-items:center;width:17px;height:17px;font-size:9.5px;line-height:1;display:flex;position:absolute;top:4px;right:4px}.attach-delete-btn:hover:not(:disabled){background:#a83226}.attach-delete-btn:disabled{opacity:.6;cursor:not-allowed}.attach-upload-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.attach-upload-row select{border:1.5px solid var(--border);color:var(--ink);background:#fff;border-radius:9px;outline:none;padding:9px 11px;font-size:13px}.attach-dropzone{border:1.5px dashed var(--border);border-radius:var(--radius-sm);text-align:center;color:#15241f73;cursor:pointer;padding:20px;font-size:12.5px;font-weight:600;transition:background .15s,border-color .15s,color .15s}.attach-dropzone.drag-over{border-color:var(--teal);color:var(--teal-dark);background:#1f6b610f}.avatar-person-glyph{fill:#fff;width:55%;height:55%}.gender-badge .avatar-person-glyph{width:62%;height:62%}.gender-badge.unknown .avatar-person-glyph{fill:#ffffffe6}.avatar-person-lg{width:88px;height:88px;font-size:0}.avatar-person-lg.male{background:linear-gradient(135deg,#8ba7c2,#6f8fae)}.avatar-person-lg.female{background:linear-gradient(135deg,#e0899f,#c9698f)}.avatar-person-lg.unknown{background:#15241f2e}.avatar-person-lg.unknown .avatar-person-glyph{fill:#ffffffe6}.info-line.info-line-id .k,.info-line.info-line-id .v{color:#15241f59;font-size:11.5px;font-weight:500}.acc-header{cursor:pointer;-webkit-user-select:none;user-select:none}.acc-header-title{align-items:baseline;gap:10px;min-width:0;display:flex}.acc-header-date{color:#15241f73;font-size:11.5px;font-weight:500;font-family:var(--font-inter);white-space:nowrap}.acc-header-right{align-items:center;gap:10px;display:flex}.acc-toggle-icon{width:22px;height:22px;color:var(--teal-dark);background:#143f3914;border-radius:50%;flex:0 0 22px;justify-content:center;font-size:15px;line-height:1}.acc-toggle-icon,.insights-toggle-btn{align-items:center;font-weight:700;display:inline-flex}.insights-toggle-btn{border:1px solid var(--border);background:var(--paper);color:#15241f8c;font-size:11px;font-family:var(--font-inter);cursor:pointer;border-radius:999px;gap:5px;margin-top:8px;padding:3px 10px}.insights-toggle-btn:hover{background:#143f390f}.insights-toggle-btn.insights-open{color:var(--teal-dark);background:#143f391a}.insights-toggle-icon{font-size:12px;font-weight:800}.insights-panel{margin-top:6px}.insights-repeat{color:#15241f8c;font-size:12px}.topbar-left-wrap{min-width:0}.topbar-actions,.topbar-left-wrap{align-items:center;gap:14px;display:flex}.topbar-actions{flex:none}.topbar-slot{scrollbar-width:none;-ms-overflow-style:none;flex:auto;justify-content:flex-start;min-width:0;margin:0 18px 0 24px;display:flex;overflow:auto hidden}.topbar-slot::-webkit-scrollbar{display:none}.stat-strip-topbar{flex:none;align-items:center;gap:4px;display:flex}.stat-strip-topbar .stat-chip-bar{width:90px}.mobile-menu-btn{border:1.5px solid var(--border);background:var(--paper);width:34px;height:34px;color:var(--teal-dark);border-radius:8px;flex:0 0 34px;justify-content:center;align-items:center;font-size:16px;line-height:1;display:none}.mobile-menu-btn:hover{background:#1f6b6114}.mobile-nav-overlay{z-index:90;background:#0f1e1a80;display:none;position:fixed;inset:0}@media (max-width:900px){.mobile-menu-btn{display:inline-flex}.sidebar{z-index:100;height:100dvh;box-shadow:var(--shadow-md);transition:transform .22s;position:fixed;top:0;left:0;transform:translate(-100%)}body.nav-open .sidebar{transform:translate(0)}body.nav-open .mobile-nav-overlay{display:block}body.nav-open{overflow:hidden}.topbar{padding:0 16px}.topbar-left{min-width:0}.topbar-title{white-space:nowrap;text-overflow:ellipsis;max-width:40vw;font-size:16px;overflow:hidden}.page-container{padding:18px 16px 40px}.card{overflow-x:auto}.card table{min-width:720px}}@media (max-width:640px){.topbar{padding:0 10px}.topbar-actions,.topbar-left-wrap{gap:8px}.user-chip{gap:0;padding:5px}.user-chip-text{display:none}.lang-toggle button{padding:5px 9px;font-size:10.5px}.topbar-actions .btn.btn-ghost.btn-sm{padding:7px 10px;font-size:11.5px}.page-container{padding:12px}.card{padding:14px}.modal-overlay{padding:12px}.modal{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:90dvh}}.pkg-events{border-top:1px dashed #d49a2b40;flex-direction:column;gap:2px;margin-top:6px;padding-top:6px;display:flex}.pkg-event{font-size:10.5px;font-family:var(--font-inter);color:#15241f80;overflow-wrap:break-word}.pkg-redemption-line{color:#a97a1f;overflow-wrap:break-word;margin-top:4px;font-size:11.5px;font-weight:700}.attach-kind-select{z-index:2;max-width:calc(100% - 26px);color:var(--ink);cursor:pointer;background:#fff;border:1px solid #15241f4d;border-radius:6px;padding:1px 3px;font-size:8.5px;font-weight:700;position:absolute;top:4px;left:4px}.attach-kind-select:disabled{opacity:.6;cursor:not-allowed}.today-compact-item{flex-wrap:wrap}.today-compact-alerts{flex:none;gap:4px;display:flex}.today-compact-alerts .alert-badge{margin:0;padding:1px 6px;font-size:9px}.today-compact-alerts .alert-badge-icon{padding:2px}.today-compact-alerts .alert-badge-icon svg{width:11px;height:11px}.reminded-chip{white-space:nowrap;cursor:pointer;color:#a97a1f;background:0 0;border:1px solid #d49a2b8c;border-radius:999px;flex:none;align-items:center;gap:3px;padding:3px 8px;font-family:inherit;font-size:11px;font-weight:700;line-height:1;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.reminded-chip:hover:not(:disabled){background:#d49a2b1f;border-color:#a97a1f}.reminded-chip.is-checked{color:var(--teal-dark);background:#1f6b6129;border-color:#0000}.reminded-chip.is-checked:hover:not(:disabled){background:#1f6b6142}.reminded-chip-check{font-size:10px}.reminded-chip:disabled{opacity:.6;cursor:not-allowed}.checkout-checkbox-row{color:var(--ink);cursor:pointer;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.checkout-checkbox-row input[type=checkbox]{cursor:pointer;width:15px;height:15px}.checkout-next-prompt{color:var(--ink);text-align:center;padding:18px 4px;font-size:14px;font-weight:600}.todos-tabs{margin-bottom:20px}.todos-sections{flex-direction:column;gap:18px;max-width:760px;display:flex}.todos-service{color:#15241f99;flex:1;font-size:12px}.todos-kind-chip{white-space:nowrap;font-size:10px;font-weight:800;font-family:var(--font-inter);color:var(--teal);background:#1f6b611a;border-radius:999px;padding:3px 9px}.todos-overdue{font-weight:800;color:#a83226!important}.todos-expiry-list{flex-direction:column;gap:10px;display:flex}.todos-expiry-item{background:#d49a2b14;border:1px solid #d49a2b38;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.todos-expiry-main{flex:1;min-width:0}.todos-created-chip{color:#15241f73;border-radius:var(--radius-sm);white-space:nowrap;background:#15241f0f;padding:6px 12px;font-size:10.5px;font-weight:700}.consent-scan-row{align-items:center;gap:12px;display:flex}.consent-scan-card{flex:none;width:56px}.consent-scan-card .attach-box{aspect-ratio:1;padding:4px}.consent-scan-card .attach-file-download-hint,.consent-scan-card .attach-file-name{display:none}.consent-scan-meta{color:#15241f99;flex-direction:column;gap:4px;min-width:0;font-size:11.5px;font-weight:600;display:flex}.route-loading{justify-content:center;align-items:center;min-height:40vh;display:flex}.route-loading-spinner{border:3px solid var(--border-soft);border-top-color:var(--teal);border-radius:50%;width:34px;height:34px;animation:route-loading-spin .8s linear infinite}@keyframes route-loading-spin{to{transform:rotate(1turn)}}.report-btn-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.report-checkbox-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.report-checkbox-row-label{color:var(--ink);cursor:pointer;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.report-checkbox-row-label input[type=checkbox]{cursor:pointer;width:15px;height:15px}.report-followup-note-input{border:1.5px solid var(--border);min-width:160px;color:var(--ink);background:#fff;border-radius:9px;outline:none;flex:1;padding:8px 10px;font-size:13px}.report-followup-note-input:focus{border-color:var(--teal)}.report-snippet{color:#15241fa6;margin-top:4px;font-size:12px;line-height:1.4}.report-snippet strong{color:#15241fcc;font-weight:700}.report-followup-flag{color:var(--teal-dark);font-weight:700}.report-date-group{margin-bottom:22px}.report-date-group:last-child{margin-bottom:0}.report-date-heading{color:#15241f80;font-size:12px;font-weight:800;font-family:var(--font-inter);margin-bottom:10px}.report-feed-row{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--paper);margin-bottom:10px;padding:12px 14px}.report-feed-row:last-child{margin-bottom:0}.report-feed-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.report-feed-names{align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.report-feed-therapist{color:#15241f80;white-space:nowrap;font-size:11.5px;font-weight:600}.report-feed-body{flex-direction:column;margin-top:4px;display:flex}.report-feed-followup{margin-top:8px}.chart-booking-context{color:#15241f80;margin-bottom:12px;font-size:12px;font-weight:600}.visitrow-btn{border-radius:var(--radius-sm);align-items:center;gap:4px;padding:7px 13px;font-size:12.5px;font-weight:700;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.visitrow-btn:disabled{opacity:.5;cursor:not-allowed}.visitrow-btn-pending{color:var(--gold);border:1.5px solid var(--gold);background:#d49a2b14}.visitrow-btn-pending:hover:not(:disabled){background:#d49a2b29}.visitrow-btn-done{background:var(--teal);color:#fff;border:1.5px solid var(--teal)}.visitrow-btn-done:hover:not(:disabled){background:#195a52}.timeline-menu-sub{color:#15241f8c;font-size:12px;font-weight:600}.repeat-toggle-wrap{flex-wrap:wrap}.report-followup-selects{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.report-followup-selects input[type=date],.report-followup-selects select{border:1.5px solid var(--border);min-width:130px;color:var(--ink);background:#fff;border-radius:9px;flex:1;padding:8px 10px;font-size:13px}.report-followup-legacy{margin-top:8px}.report-followup-legacy-label{color:#15241f80;margin-bottom:4px;font-size:11.5px}@media (max-width:1366px){.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}.month-cell{gap:2px;min-width:0;min-height:78px;padding:5px 4px 22px}.month-cell-top{min-width:0}.month-add-btn{width:20px;height:20px;font-size:13px;bottom:3px;right:3px}.month-daynum{font-size:11px}.month-count-chip{padding:1px 5px;font-size:8px}.month-chip-list{min-width:0}.month-mini-chip{gap:3px;min-width:0;font-size:8px}.month-closed-tag{margin:3px 0 1px;font-size:8.5px}.week-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}.week-col{min-width:0;min-height:260px}.week-col-head{padding:6px 4px}.week-col-body{gap:4px;padding:5px}.week-chip{min-width:0;padding:5px 6px;font-size:10px}.day-grid{grid-template-columns:52px repeat(3,minmax(0,1fr))}.day-grid,.dg-col{min-width:0}.dg-staffhead{white-space:nowrap;text-overflow:ellipsis;padding:6px 3px;overflow:hidden}.booking-card .b-name,.dg-staffhead{font-size:11.5px}.booking-card .b-menu{font-size:10px}.card{overflow-x:auto}.detail-grid>div{min-width:0}}@media (min-width:901px) and (max-width:1366px){.sidebar{flex:0 0 68px;width:68px}.logo-block{justify-content:center;padding:0 0 16px;display:flex}.logo-sub,.logo-text,.nav-group-label,.nav-label,.phase-badge{display:none}.logo .dot{margin-top:0}.nav-list{padding:0 10px}.nav-item{justify-content:center;gap:0;padding:11px 0}.sidebar-footer{display:none}.topbar{flex-wrap:nowrap;height:50px;min-height:50px;padding:0 16px}.topbar-slot{margin:0 12px}.topbar-title{white-space:nowrap;font-size:15px}.stat-strip-topbar{flex-wrap:nowrap}.stat-chip{gap:4px;padding-right:10px}.stat-chip-label{font-size:9.5px}.stat-chip-value{font-size:11.5px}.stat-strip-topbar .stat-chip-bar{width:70px}.cal-toolbar{gap:10px;margin-bottom:8px}.cal-toolbar-left{gap:8px}.view-toggle a,.view-toggle button{padding:5px 10px;font-size:12px}.cal-nav-btn{width:24px;height:24px}.cal-date-label{font-size:12.5px}.legend{gap:10px}.legend-item{gap:4px;font-size:11px}.dashboard-body{flex-direction:row;gap:20px}.dashboard-rail{flex:0 0 260px;width:260px}}@media (min-width:1367px){.sidebar{flex:0 0 72px;width:72px;transition:width .2s,flex-basis .2s;overflow:hidden}.sidebar:focus-within,.sidebar:hover{flex:0 0 236px;width:236px}.logo-block{justify-content:center;padding:0 0 16px;display:flex}.sidebar:focus-within .logo-block,.sidebar:hover .logo-block{justify-content:flex-start;padding:0 24px 22px}.logo-sub,.logo-text,.nav-group-label,.nav-label,.phase-badge{display:none}.sidebar:focus-within .logo-text,.sidebar:focus-within .nav-label,.sidebar:focus-within .phase-badge,.sidebar:hover .logo-text,.sidebar:hover .nav-label,.sidebar:hover .phase-badge{display:inline}.sidebar:focus-within .logo-sub,.sidebar:focus-within .nav-group-label,.sidebar:hover .logo-sub,.sidebar:hover .nav-group-label{display:block}.logo .dot{margin-top:0}.sidebar:focus-within .logo .dot,.sidebar:hover .logo .dot{margin-top:-14px}.nav-list{padding:0 10px}.sidebar:focus-within .nav-list,.sidebar:hover .nav-list{padding:0 12px}.nav-item{justify-content:center;gap:0;padding:11px 0}.sidebar:focus-within .nav-item,.sidebar:hover .nav-item{justify-content:flex-start;gap:11px;padding:10px 12px}.sidebar-footer{display:none}.sidebar:focus-within .sidebar-footer,.sidebar:hover .sidebar-footer{display:block}.nav-unread-badge{width:8px;min-width:8px;height:8px;padding:0;font-size:0;position:absolute;top:6px;right:16px;overflow:hidden}.sidebar:focus-within .nav-unread-badge,.sidebar:hover .nav-unread-badge{width:auto;min-width:18px;height:18px;padding:0 5px;font-size:10.5px;position:static}}@media (min-width:901px) and (max-width:1366px) and (max-height:700px){.page-container{padding:8px 14px 12px}.cal-toolbar{margin-bottom:6px}.month-head-cell{padding:4px 0;font-size:9px}.month-cell{height:62px;min-height:62px;padding:3px 4px;overflow:hidden}.month-chip-list{gap:1px}.month-mini-chip:nth-child(n+3){display:none}}@media (max-height:500px){.month-cell{min-height:56px;padding:4px}.month-chip-list{gap:1px}.cal-toolbar{margin-bottom:10px}.modal{max-height:94vh}.modal-head{padding:12px 20px 8px}.modal-body{gap:10px;padding:12px 20px}.modal-foot{padding:10px 20px 14px}}.shift-toolbar{justify-content:space-between;gap:14px;margin-bottom:16px}.shift-toolbar,.shift-toolbar-right{flex-wrap:wrap;align-items:center;display:flex}.shift-toolbar-right{gap:12px}.shift-grid-wrap{padding:0;overflow-x:auto}.shift-grid{border-collapse:separate;border-spacing:0;width:auto;min-width:100%}.shift-grid thead th{text-align:center;white-space:nowrap;padding:10px 6px}.shift-grid tbody td{text-align:center;white-space:nowrap;padding:6px;position:relative}.shift-staff-col{z-index:2;background:var(--paper);border-right:1.5px solid var(--border-soft);min-width:108px;position:sticky;left:0;text-align:left!important;padding-left:14px!important}.shift-staff-name{color:var(--teal-dark);font-size:13.5px;font-weight:700}.shift-day-col{min-width:54px}.shift-day-num{color:var(--teal-dark);font-size:13px;font-weight:700}.shift-day-wd{color:#15241f73;text-transform:none;letter-spacing:0;font-size:10px;font-weight:600}.shift-day-col.today .shift-day-num,.shift-day-col.today .shift-day-wd{color:var(--gold)}.shift-cell{min-width:54px;height:40px}.shift-cell.today{background:#d49a2b0f}.shift-cell.clickable{cursor:pointer}.shift-cell.clickable:hover{background:#1f6b610f}.shift-cell-time{color:var(--teal-dark);font-size:11.5px;font-weight:600}.shift-cell-content{flex-direction:column;align-items:center;gap:1px;display:inline-flex}.shift-cell-content.pending{outline:1.5px solid var(--gold);outline-offset:2px;border-radius:6px;padding:2px 5px}.shift-pending-badge{letter-spacing:.02em;color:var(--gold);white-space:nowrap;font-size:8px;font-weight:700;display:block}.shift-pending-badge-inline{vertical-align:middle;background:#d49a2b26;margin-left:8px}.shift-chip,.shift-pending-badge-inline{border-radius:999px;padding:2px 8px;font-size:10.5px;display:inline-block}.shift-chip{font-weight:700}.shift-chip-rest{color:#15241f8c;background:#15241f14}.shift-chip-leave{color:#8a6110;background:#d49a2b26}.shift-warn-dot{background:var(--gold);border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:4px}.shift-preset-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.shift-preset-custom-label{color:#15241f73;font-size:11.5px;font-weight:600}.shift-bulk-modal .modal-body,.shift-editor-modal .modal-body{flex-direction:column;gap:12px;display:flex}.shift-editor-hint{color:var(--gold);border-radius:var(--radius-sm);background:#d49a2b14;border:1px solid #d49a2b4d;padding:8px 10px;font-size:12px}.btn-preset-active{background:var(--teal);border-color:var(--teal);color:#fff}.btn-preset-active:hover{background:var(--teal-dark);border-color:var(--teal-dark)}.shift-bulk-weekday-row{flex-wrap:wrap;gap:6px;display:flex}.shift-bulk-weekday-btn{border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--paper);color:#15241f8c;min-width:40px;padding:6px 0;font-size:12px;font-weight:700}.shift-bulk-weekday-btn.active{background:var(--teal);border-color:var(--teal);color:#fff}.shift-bulk-preview{color:var(--teal-dark);font-size:12.5px;font-weight:600}.shift-cell.shift-cell-gantt{vertical-align:middle;height:auto;min-height:44px;padding-top:6px;padding-bottom:6px}.shift-gantt-content{flex-direction:column;align-items:center;gap:2px;width:100%;display:flex}.shift-gantt-track{background:#15241f09;border:1px solid #15241f0f;border-radius:4px;width:100%;min-width:64px;height:22px;position:relative}.shift-gantt-track-chip,.shift-gantt-track-empty{justify-content:center;align-items:center;display:flex}.shift-gantt-tick{background:#15241f17;width:1px;position:absolute;top:0;bottom:0}.shift-gantt-bar{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-width:12px;padding:0 3px;display:flex;position:absolute;top:2px;bottom:2px;overflow:hidden}.shift-gantt-bar.approved{background:var(--teal)}.shift-gantt-bar.pending{border:1.5px solid var(--gold);background:#d49a2b38}.shift-gantt-bar-label{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:9.5px;font-weight:700;overflow:hidden}.shift-gantt-bar.pending .shift-gantt-bar-label{color:#8a6110}.shift-grid-day .shift-gantt-track{height:28px}.shift-grid-day .shift-gantt-bar-label{font-size:11px}.shift-grid-week .shift-gantt-track{height:18px}.shift-grid-week .shift-gantt-bar-label{font-size:8px}.shift-ticks-row th{border-bottom:1px dashed var(--border-soft);padding:0 6px 5px}.shift-ticks-track{height:14px;position:relative}.shift-tick-label{color:#15241f66;white-space:nowrap;font-size:9.5px;font-weight:600;position:absolute;top:0;transform:translate(-50%)}.shift-grid-day .shift-cell,.shift-grid-day .shift-day-col,.shift-grid-day .shift-ticks-th{min-width:340px}.shift-grid-week .shift-cell,.shift-grid-week .shift-day-col{min-width:92px}.shift-month-work{flex-direction:column;align-items:center;gap:3px;width:100%;min-width:0;display:flex}.shift-mini-track{background:#15241f14;border-radius:2px;width:34px;max-width:100%;height:3px;display:block;position:relative}.shift-mini-bar{background:var(--teal);border-radius:2px;min-width:3px;position:absolute;top:0;bottom:0}.shift-mini-bar.pending{background:var(--gold)}@media (max-width:900px){.shift-grid tbody td,.shift-grid thead th{padding:5px}.shift-cell,.shift-day-col{min-width:46px}.shift-grid-week .shift-cell,.shift-grid-week .shift-day-col{min-width:78px}.shift-grid-day .shift-cell,.shift-grid-day .shift-day-col,.shift-grid-day .shift-ticks-th{min-width:260px}.shift-mini-track{width:26px}}@media (min-width:901px) and (max-width:1366px){.shift-toolbar{gap:10px;margin-bottom:8px}.shift-toolbar-right{gap:8px}.shift-grid-day .shift-cell,.shift-grid-day .shift-day-col,.shift-grid-day .shift-ticks-th{min-width:300px}}.anx-toolbar{align-items:center;gap:14px;margin-bottom:18px;display:flex}.anx-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}@media (max-width:1100px){.anx-grid{grid-template-columns:1fr}}.anx-card-full{grid-column:1/-1}.anx-bar-chart{align-items:flex-end;gap:10px;height:160px;padding-top:8px;display:flex}.anx-bar-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;min-width:0;height:100%;display:flex}.anx-bar-value{color:var(--teal-dark);white-space:nowrap;font-size:11px;font-weight:700}.anx-bar{background:var(--teal);border-radius:4px 4px 0 0;width:100%;max-width:34px;min-height:2px;transition:height .3s}.anx-bar-col.current .anx-bar{background:var(--gold)}.anx-bar-label{color:#15241f80;white-space:nowrap;font-size:10.5px;font-weight:600}.anx-bar-stack{border-radius:4px 4px 0 0;flex-direction:column-reverse;width:100%;max-width:34px;min-height:2px;display:flex;overflow:hidden}.anx-bar-seg-new{background:var(--gold);width:100%}.anx-bar-seg-returning{background:var(--teal);width:100%}.anx-legend{color:#15241f99;gap:16px;margin-top:10px;font-size:11.5px;display:flex}.anx-legend-item{align-items:center;gap:6px;display:flex}.anx-legend-dot{border-radius:50%;width:8px;height:8px}.anx-hbar-row{align-items:center;gap:10px;padding:7px 0;display:flex}.anx-hbar-label{color:var(--teal-dark);text-overflow:ellipsis;white-space:nowrap;flex:0 0 110px;font-size:12.5px;font-weight:600;overflow:hidden}.anx-hbar-track{background:#1f6b611a;border-radius:7px;flex:1;height:14px;overflow:hidden}.anx-hbar-fill{background:var(--teal);border-radius:7px;height:100%;transition:width .3s}.anx-hbar-value{color:var(--teal-dark);white-space:nowrap;flex:none;font-size:12px;font-weight:700}.anx-stat-row{flex-wrap:wrap;gap:14px;display:flex}.anx-stat-pill{border-radius:var(--radius-sm);text-align:center;background:#1f6b610f;flex:1;min-width:90px;padding:12px 14px}.anx-stat-pill-value{color:var(--teal-dark);font-size:22px;font-weight:800;font-family:var(--font-inter)}.anx-stat-pill-label{color:#15241f80;margin-top:2px;font-size:10.5px;font-weight:600}@media (max-width:640px){.anx-bar-chart{height:120px}.anx-hbar-label{flex-basis:84px}}.dm-shell{grid-template-columns:300px minmax(0,1fr) 300px;gap:16px;height:calc(100vh - 140px);min-height:460px;display:grid}.dm-pane{background:var(--paper);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;min-height:0;display:flex;overflow:hidden}.dm-pane-head{border-bottom:1px solid var(--border-soft);flex:none;justify-content:space-between;align-items:center;gap:8px;padding:13px 16px;display:flex}.dm-pane-title{color:var(--teal-dark);font-size:13.5px;font-weight:700}.dm-platform-tabs{gap:4px;display:flex}.dm-platform-tab{border:1.5px solid var(--border);color:#15241f8c;background:0 0;border-radius:999px;padding:5px 11px;font-size:11.5px;font-weight:700}.dm-platform-tab.active{background:var(--teal);border-color:var(--teal);color:#fff}.dm-conv-list{flex:1;min-height:0;overflow-y:auto}.dm-conv-item{border-bottom:1px solid var(--border-soft);cursor:pointer;align-items:flex-start;gap:10px;padding:11px 16px;display:flex}.dm-conv-item:hover{background:#1f6b610d}.dm-conv-item.active{background:#1f6b611a}.dm-conv-avatar{background:var(--aqua);color:#fff;width:32px;height:32px;font-size:13px;font-weight:700;font-family:var(--font-inter);border-radius:50%;flex:0 0 32px;justify-content:center;align-items:center;display:flex}.dm-conv-body{flex:1;min-width:0}.dm-conv-top{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.dm-conv-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.dm-conv-time{color:#15241f73;flex:none;font-size:10.5px}.dm-conv-snippet{color:#15241f8c;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:12px;overflow:hidden}.dm-conv-platform{letter-spacing:.3px;text-transform:uppercase;color:var(--teal);margin-top:3px;font-size:9.5px;font-weight:700}.dm-conv-unread{background:var(--gold);color:#fff;min-width:18px;height:18px;font-size:10.5px;font-weight:800;font-family:var(--font-inter);border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 5px;display:flex}.dm-empty{text-align:center;color:#15241f66;padding:24px 16px;font-size:12.5px}.dm-thread-head{border-bottom:1px solid var(--border-soft);flex:none;padding:13px 18px}.dm-thread-name{color:var(--teal-dark);font-size:14.5px;font-weight:700}.dm-thread-sub{color:#15241f73;text-transform:uppercase;letter-spacing:.3px;margin-top:2px;font-size:11px;font-weight:700}.dm-24h-banner{color:#8a6414;background:#d49a2b1f;border-radius:8px;flex:none;margin:10px 18px 0;padding:8px 12px;font-size:12px;font-weight:600}.dm-thread-body{flex-direction:column;flex:1;gap:8px;min-height:0;padding:16px 18px;display:flex;overflow-y:auto}.dm-date-sep{text-align:center;color:#15241f66;margin:8px 0 2px;font-size:11px;font-weight:600}.dm-bubble-row{display:flex}.dm-bubble-row.mine{justify-content:flex-end}.dm-bubble-row>div{min-width:0;max-width:72%}.dm-bubble{white-space:pre-wrap;word-break:break-word;border:1px solid var(--border-soft);width:fit-content;color:var(--ink);background:#fff;border-radius:14px;padding:9px 13px;font-size:13px;line-height:1.5}.dm-bubble-row.mine .dm-bubble{background:var(--teal);color:#fff;border-color:var(--teal);margin-left:auto}.dm-bubble-time{color:#15241f66;margin-top:3px;font-size:10px}.dm-bubble-row.mine .dm-bubble-time{text-align:right}.dm-composer{border-top:1px solid var(--border-soft);flex-direction:column;flex:none;gap:8px;padding:10px 18px 14px;display:flex}.dm-composer-row{align-items:flex-end;gap:8px;display:flex}.dm-composer-row select{background:#fff;max-width:220px;padding:7px 10px;font-size:12.5px}.dm-composer-row select,.dm-composer-row textarea{border:1.5px solid var(--border);color:var(--ink);border-radius:9px}.dm-composer-row textarea{resize:none;min-height:44px;max-height:120px;outline:none;flex:1;padding:9px 12px;font-family:inherit;font-size:13px}.dm-composer-row textarea:focus{border-color:var(--teal)}.dm-composer-row .btn{flex:none}.dm-panel-body{flex-direction:column;flex:1;gap:12px;min-height:0;padding:14px 16px;display:flex;overflow-y:auto}.dm-match-card{border:1px solid var(--border-soft);background:#fff;border-radius:10px;padding:12px}.dm-match-name{color:var(--teal-dark);margin-bottom:6px;font-size:13.5px;font-weight:700}.dm-booking-row{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:8px;padding:5px 0;font-size:12px;display:flex}.dm-booking-row:last-child{border-bottom:none}.dm-setup-card{text-align:center;max-width:560px;margin:40px auto;padding:34px 30px}.dm-star-btn{color:#15241f47;cursor:pointer;background:0 0;border:none;flex:none;align-self:flex-start;padding:2px 4px;font-size:16px;line-height:1}.dm-star-btn.active,.dm-star-btn:hover{color:var(--gold)}.dm-platform-tab.starred.active{background:var(--gold);border-color:var(--gold)}.dm-thread-head-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.dm-bubble-meta{align-items:baseline;gap:6px;display:flex}.dm-sender-label{color:var(--teal);font-size:10px;font-weight:700}.dm-bubble-row.mine .dm-sender-label{color:#15241f73}.dm-bubble-image{cursor:pointer;border:1px solid var(--border-soft);border-radius:12px;max-width:100%;max-height:220px;display:block}.dm-composer-tools{gap:8px;display:flex}.dm-composer-dropzone-active{outline:2px dashed var(--teal);outline-offset:-4px;border-radius:10px}.dm-pending-image{border:1px solid var(--border-soft);background:#fff;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.dm-pending-image img{object-fit:cover;border-radius:8px;flex:none;width:52px;height:52px}.dm-pending-image-actions{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.dm-pending-image-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dm-pending-image-row label{color:#15241f99;align-items:center;gap:5px;font-size:12px;display:flex}.dm-image-grid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px;display:grid}.dm-image-tile{border:1px solid var(--border-soft);cursor:pointer;aspect-ratio:1;background:#fff;border-radius:10px;position:relative;overflow:hidden}.dm-image-tile img{object-fit:cover;width:100%;height:100%;display:block}.dm-image-tile-title{white-space:nowrap;text-overflow:ellipsis;padding:3px 5px;font-size:9.5px;bottom:0;left:0;right:0;overflow:hidden}.dm-image-tile-delete,.dm-image-tile-title{color:#fff;background:#0000008c;position:absolute}.dm-image-tile-delete{cursor:pointer;border:none;border-radius:50%;width:18px;height:18px;font-size:11px;line-height:1;top:3px;right:3px}.dm-template-row{border:1px solid var(--border-soft);background:#fff;border-radius:10px;padding:10px 12px}.dm-template-row-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.dm-template-title{color:var(--teal-dark);font-size:13px;font-weight:700}.dm-template-body-preview{color:#15241f8c;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:4px;font-size:12px;display:-webkit-box;overflow:hidden}.dm-template-actions{flex:none;gap:6px;display:flex}.dm-cal-matches{border-bottom:1px solid var(--border-soft);flex-direction:column;gap:6px;margin-bottom:10px;padding-bottom:10px;display:flex}.dm-cal-match-compact{justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.dm-cal-match-compact .dm-cal-match-name{color:var(--teal-dark);font-weight:700}.dm-cal-head{justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px;display:flex}.dm-cal-head-label{color:var(--ink);font-size:12.5px;font-weight:700}.dm-cal-nav-btn{border:1px solid var(--border-soft);width:24px;height:24px;color:var(--ink);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:13px;display:flex}.dm-cal-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.dm-cal-weekday{text-align:center;color:#15241f66;padding-bottom:2px;font-size:9.5px;font-weight:700}.dm-cal-cell{aspect-ratio:1;color:var(--ink);cursor:pointer;background:#15241f05;border:1px solid #0000;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:1px;font-size:11px;display:flex;position:relative}.dm-cal-cell.pad{visibility:hidden;cursor:default}.dm-cal-cell.closed{color:#15241f4d}.dm-cal-cell.today{border-color:var(--teal)}.dm-cal-cell.selected{background:var(--teal);color:#fff}.dm-cal-cell-count{color:var(--teal);background:#1f6b611f;border-radius:999px;padding:0 4px;font-size:9px;font-weight:800;line-height:1.3}.dm-cal-cell.selected .dm-cal-cell-count{color:#fff;background:#ffffff40}.dm-cal-day-list{flex-direction:column;gap:6px;margin-top:12px;display:flex}.dm-cal-day-row{border-bottom:1px solid var(--border-soft);align-items:center;gap:8px;padding:5px 0;font-size:12px;display:flex}.dm-cal-day-row:last-child{border-bottom:none}.dm-cal-day-time{color:var(--teal-dark);flex:none;font-weight:700}.dm-cal-new-booking{width:100%;margin-top:10px}@media (max-width:1366px){.dm-shell{grid-template-columns:260px minmax(0,1fr)}.dm-panel-pane{display:none}}@media (max-width:900px){.dm-shell{flex-direction:column;height:auto;display:flex}.dm-conv-pane{max-height:260px}.dm-thread-pane{height:60vh}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}