@font-face{font-family:Cairo Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/cairo-arabic-wght-normal.0c1icmv_m9k75.woff2)format("woff2-variations");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Cairo Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/cairo-latin-ext-wght-normal.291hn-7exe06-.woff2)format("woff2-variations");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:Cairo Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/cairo-latin-wght-normal.04l4ix94m3tbv.woff2)format("woff2-variations");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:Alexandria Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/alexandria-arabic-wght-normal.3wrtocrf1d00x.woff2)format("woff2-variations");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Alexandria Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/alexandria-vietnamese-wght-normal.2imfbovi1vuin.woff2)format("woff2-variations");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:Alexandria Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/alexandria-latin-ext-wght-normal.0qj-3vpsvu5x5.woff2)format("woff2-variations");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:Alexandria Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/alexandria-latin-wght-normal.181v73ycdbeby.woff2)format("woff2-variations");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}
:root{--ink:#143b36;--teal:#157c70;--teal-2:#25b8a8;--mint:#e6f4f1;--cream:#f6f1e7;--paper:#fffdf9;--gold:#c69b3c;--line:#dce7e3;--muted:#6e817e;--danger:#a94a47;--shadow:0 18px 45px #143b3614}*{box-sizing:border-box}html,body{min-height:100%;color:var(--ink);background:#f4f7f6;margin:0;font-family:Cairo Variable,Arial,sans-serif}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}.wordmark{letter-spacing:.16em;font:800 2rem/1 Alexandria Variable}.wordmark.dark{color:var(--teal)}.eyebrow{color:#9a7320;letter-spacing:.06em;font-size:.74rem;font-weight:800}.eyebrow.light{color:#8de0d6}.primary-button{background:var(--teal);color:#fff;cursor:pointer;border:0;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:10px 20px;font-weight:800;transition:all .2s;display:inline-flex}.primary-button:hover{background:#0f675e}.primary-button:disabled{opacity:.6;cursor:wait}.primary-button svg{width:18px}.primary-button.small{min-height:42px}.secondary-button{border:1px solid var(--teal);color:var(--teal);cursor:pointer;background:#fff;border-radius:6px;padding:10px 18px;font-weight:800}.text-button{color:var(--teal);text-align:center;font-size:.8rem;font-weight:700}.form-error{color:var(--danger);border-right:3px solid var(--danger);background:#fff0ef;padding:11px 14px;font-size:.8rem}.honeypot{position:absolute!important;left:-9999px!important}.auth-page{grid-template-columns:minmax(370px,44%) 1fr;min-height:100vh;display:grid}.auth-story{background:var(--teal);color:#fff;flex-direction:column;justify-content:space-between;padding:55px clamp(32px,6vw,90px);display:flex;position:relative;overflow:hidden}.auth-story:after{content:"";border:1px solid #ffffff21;border-radius:50%;width:430px;height:430px;position:absolute;bottom:-150px;left:-160px;box-shadow:0 0 0 70px #ffffff08,0 0 0 140px #ffffff06}.auth-story h1{max-width:780px;margin:18px 0;font:700 clamp(2rem,3.7vw,4.1rem)/1.35 Alexandria Variable}.auth-story p{color:#d9efeb;max-width:650px;font-size:1.05rem;line-height:2}.auth-story small{color:#c5dfda;z-index:1;position:relative}.auth-panel{background:var(--cream);place-items:center;padding:40px;display:grid}.auth-form{gap:17px;width:min(430px,100%);display:grid}.auth-icon{background:var(--mint);width:52px;height:52px;color:var(--teal);border-radius:50%;place-items:center;display:grid}.auth-form h2,.auth-form h1{margin:0;font:700 2rem/1.3 Alexandria Variable}.auth-form>p{color:var(--muted);margin:0 0 8px}.auth-form label,.registration-card label,.action-form label{gap:7px;font-size:.78rem;font-weight:800;display:grid}.auth-form input,.registration-card input,.registration-card textarea,.registration-card select,.action-form input,.action-form textarea,.action-form select{background:#ffffffe6;border:1px solid #cedbd8;border-radius:5px;outline:none;width:100%;min-height:48px;padding:10px 13px}.auth-form input:focus,.registration-card input:focus,.registration-card textarea:focus,.registration-card select:focus,.action-form input:focus,.action-form textarea:focus,.action-form select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #25b8a81a}.password-field{position:relative}.password-field button{cursor:pointer;background:0 0;border:0;width:36px;height:36px;position:absolute;top:6px;left:6px}.password-field svg{width:18px}.auth-help{text-align:center;color:var(--muted);font-size:.82rem}.auth-help a{color:var(--teal);font-weight:800}.simple-head{background:var(--paper);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:88px;padding:0 clamp(22px,7vw,110px);display:flex}.simple-head>a:last-child{color:var(--teal);font-size:.83rem;font-weight:800}.register-page{background:var(--cream);min-height:100vh}.register-grid{grid-template-columns:minmax(320px,420px) minmax(500px,760px);justify-content:center;gap:clamp(45px,8vw,130px);padding:70px 28px;display:grid}.register-intro h1{margin:16px 0;font:700 clamp(2rem,4vw,3.5rem)/1.35 Alexandria Variable}.register-intro>p{color:var(--muted);line-height:2}.register-intro ol{counter-reset:steps;margin:40px 0;padding:0;list-style:none}.register-intro li{counter-increment:steps;grid-template-columns:38px 1fr;gap:0 15px;margin:24px 0;display:grid}.register-intro li:before{content:counter(steps,decimal-leading-zero);color:var(--gold);border-top:1px solid var(--gold);grid-row:1/3;padding-top:6px;font:700 .85rem Alexandria Variable}.register-intro li b{font-size:.9rem}.register-intro li span{color:var(--muted);font-size:.78rem}.registration-card{background:var(--paper);box-shadow:var(--shadow);padding:clamp(24px,4vw,45px)}.registration-card h2{margin:0 0 28px;font:700 1.5rem Alexandria Variable}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.form-grid .full{grid-column:1/-1}.registration-card textarea,.action-form textarea{resize:vertical}.registration-card .check{color:var(--muted);flex-direction:row;grid-column:1/-1;align-items:flex-start;font-weight:500;line-height:1.8;display:flex}.registration-card .check input{width:18px;min-height:18px;accent-color:var(--teal);margin-top:4px}.registration-card>.primary-button{width:100%;margin-top:22px}.success-card{text-align:center;align-self:start}.success-card>svg{width:55px;height:55px;color:var(--teal)}.success-card p{color:var(--muted);line-height:1.9}.success-card .primary-button{margin-top:20px}.portal-shell{direction:rtl;grid-template-columns:270px 1fr;min-height:100vh;display:grid}.portal-sidebar{color:#fff;z-index:30;background:#103f39;flex-direction:column;height:100vh;padding:30px 20px;display:flex;position:sticky;top:0}.side-brand{border-bottom:1px solid #ffffff1f;padding:0 12px 30px}.side-brand b{color:#52d2c2;letter-spacing:.16em;font:800 1.75rem Alexandria Variable;display:block}.side-brand span{color:#b5d4ce;font-size:.7rem}.side-close{display:none}.portal-sidebar nav{gap:5px;margin-top:25px;display:grid}.portal-sidebar nav button,.logout{color:#b8d1cd;cursor:pointer;text-align:right;background:0 0;border:0;border-radius:5px;align-items:center;gap:12px;min-height:46px;padding:10px 13px;font-weight:700;display:flex}.portal-sidebar nav button svg,.logout svg{width:19px}.portal-sidebar nav button.active{color:var(--ink);background:#fff}.side-profile{border-top:1px solid #ffffff1f;align-items:center;gap:10px;margin-top:auto;padding:22px 5px 14px;display:flex}.side-profile>svg{color:#52d2c2}.side-profile div{min-width:0}.side-profile b,.side-profile span{display:block}.side-profile b{font-size:.8rem}.side-profile span{color:#a9c9c3;white-space:nowrap;text-overflow:ellipsis;direction:ltr;max-width:185px;font-size:.61rem;overflow:hidden}.logout{color:#d9e8e5;width:100%}.portal-main{min-width:0;padding:34px clamp(20px,4vw,60px)}.portal-top{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.portal-top>div:first-of-type>span{color:var(--muted);font-size:.7rem}.portal-top h1{margin:2px 0;font:700 clamp(1.5rem,2.5vw,2.25rem) Alexandria Variable}.top-actions{align-items:center;gap:10px;display:flex}.icon-control,.menu-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.icon-control svg,.menu-button svg{width:18px}.menu-button{display:none}.notice{z-index:100;background:var(--ink);color:#fff;box-shadow:var(--shadow);align-items:center;gap:10px;padding:13px 17px;font-size:.8rem;display:flex;position:fixed;bottom:25px;left:30px}.notice>svg{color:#58d6c5}.notice button{color:#fff;background:0 0;border:0;display:grid}.pending-banner{background:#fff7df;border:1px solid #ead59c;align-items:center;gap:14px;margin-bottom:20px;padding:14px 18px;font-size:.78rem;display:flex}.pending-banner span{color:#776748}.dashboard-stack{gap:22px;display:grid}.welcome-strip{background:var(--teal);color:#fff;justify-content:space-between;align-items:center;min-height:210px;padding:35px clamp(25px,4vw,55px);display:flex;position:relative;overflow:hidden}.welcome-strip:after{content:"";border:65px solid #ffffff0a;border-radius:50%;width:340px;height:340px;position:absolute;left:-90px}.welcome-strip h2{max-width:720px;margin:12px 0;font:700 clamp(1.7rem,3vw,3rem)/1.35 Alexandria Variable}.welcome-strip p{color:#d3ebe7;margin:0}.welcome-strip>svg{opacity:.18;z-index:1;width:90px;height:90px}.metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.metric{background:#fff;border:1px solid #e8efed;min-height:120px;padding:20px 22px;position:relative}.metric>span{color:var(--muted);font-size:.72rem;display:block}.metric strong{margin-top:15px;font:700 2rem Alexandria Variable;display:inline-block}.metric small{color:var(--muted);margin-right:7px;font-size:.65rem}.two-columns{grid-template-columns:1fr 1fr;gap:20px;display:grid}.panel{background:#fff;border:1px solid #e4ecea;min-width:0;padding:25px}.panel>h3{margin:0 0 20px;font:700 1rem Alexandria Variable}.panel-head,.list-title{justify-content:space-between;align-items:center;margin-bottom:17px;display:flex}.panel-head h3,.list-title h2{margin:0;font:700 1rem Alexandria Variable}.panel-head button{color:var(--teal);cursor:pointer;background:0 0;border:0;align-items:center;font-size:.72rem;font-weight:800;display:flex}.panel-head button svg{width:15px}.session-line{border-bottom:1px solid #edf1f0;grid-template-columns:48px 1fr auto;align-items:center;gap:13px;padding:12px 0;display:grid}.session-line:last-child{border-bottom:0}.session-line time{background:var(--cream);text-align:center;place-content:center;height:48px;display:grid}.session-line time b,.session-line time span{display:block}.session-line time b{font:700 1.05rem Alexandria Variable}.session-line time span{font-size:.58rem}.session-line>div b,.session-line>div span{display:block}.session-line>div b{font-size:.79rem}.session-line>div span{color:var(--muted);font-size:.66rem}.session-line>small{color:var(--muted);font-size:.65rem}.case-line{text-align:right;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #edf1f0;grid-template-columns:42px 1fr auto 18px;align-items:center;gap:12px;width:100%;padding:12px 0;display:grid}.avatar,.large-avatar{background:var(--mint);color:var(--teal);border-radius:50%;place-items:center;width:42px;height:42px;font:700 1rem Alexandria Variable;display:grid}.avatar.gold{color:#946e1f;background:#f7ecd0}.case-line b,.case-line small{display:block}.case-line b{font-size:.79rem}.case-line small{color:var(--muted);font-size:.65rem}.case-line i{color:var(--teal);font-size:.63rem;font-style:normal}.case-line>svg{width:15px}.empty{text-align:center;min-height:160px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex}.empty>svg{color:#aac4bf}.empty b{color:var(--ink);font-size:.8rem}.empty span{font-size:.7rem}.quick-actions{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.quick-actions button{border:1px solid var(--line);text-align:right;cursor:pointer;background:#fff;align-items:center;gap:14px;padding:20px;display:flex}.quick-actions button>svg{color:var(--teal);width:25px}.quick-actions b,.quick-actions small{display:block}.quick-actions b{font-size:.8rem}.quick-actions small{color:var(--muted);font-size:.65rem}.wide-panel{min-height:600px}.list-title{margin-bottom:26px}.list-title h2{margin-top:7px;font-size:1.45rem}.list-title>span{color:var(--muted);font-size:.7rem}.case-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.case-card{border:1px solid var(--line);text-align:right;cursor:pointer;background:#fff;min-height:205px;padding:20px;transition:all .2s}.case-card:hover{box-shadow:var(--shadow);border-color:#86bbb3;transform:translateY(-2px)}.case-card-top,.case-card footer{justify-content:space-between;align-items:center;display:flex}.case-card h3{margin:25px 0 6px;font:700 1.1rem Alexandria Variable}.case-card p{color:var(--muted);font-size:.7rem}.case-card footer{color:var(--muted);border-top:1px solid #edf1f0;margin-top:20px;padding-top:13px;font-size:.65rem}.case-card footer svg{width:16px;color:var(--teal)}.pill{background:var(--mint);color:var(--teal);white-space:nowrap;border-radius:99px;padding:4px 8px;font-size:.6rem;font-weight:800;display:inline-flex}.pill.new,.pill.pending{color:#8a661a;background:#fff3d5}.pill.paused,.pill.cancelled,.pill.void{color:#934846;background:#f7eded}.pill.completed,.pill.paid{color:#32744e;background:#e7f5ec}.back-button{color:var(--teal);cursor:pointer;background:0 0;border:0;align-items:center;margin-bottom:18px;font-size:.75rem;font-weight:800;display:flex}.back-button svg{width:16px;transform:rotate(180deg)}.case-header{border:1px solid var(--line);background:#fff;align-items:center;gap:20px;margin-bottom:20px;padding:30px;display:flex}.large-avatar{width:74px;height:74px;font-size:1.7rem}.case-header h2{margin:8px 0 2px;font:700 1.6rem Alexandria Variable}.case-header p{color:var(--muted);margin:0;font-size:.75rem}.case-actions{gap:8px;margin-right:auto;display:flex}.case-detail{margin-bottom:20px}.goal-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.goal-list li{align-items:flex-start;gap:10px;font-size:.76rem;line-height:1.8;display:flex}.goal-list svg{width:18px;color:var(--teal);flex:none}.details-list{margin:0}.details-list>div{border-bottom:1px solid #edf1f0;padding:11px 0}.details-list dt{color:var(--muted);font-size:.65rem}.details-list dd{margin:4px 0 0;font-size:.76rem;line-height:1.8}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{text-align:right;border-bottom:1px solid #e9efed;padding:13px 10px;font-size:.7rem}th{color:var(--muted);font-weight:700}td b{font-size:.74rem}.row-action{color:var(--teal);cursor:pointer;background:0 0;border:0;font-size:.68rem;font-weight:800}.person-line{border-bottom:1px solid #edf1f0;grid-template-columns:42px 1fr 10px;align-items:center;gap:12px;padding:13px 0;display:grid}.person-line b,.person-line span{display:block}.person-line b{font-size:.78rem}.person-line span{color:var(--muted);font-size:.64rem}.status-dot{background:#aaa;border-radius:50%;width:8px;height:8px}.status-dot.active{background:#45ad79}.status-dot.pending{background:#d8a633}.status-dot.suspended{background:#c75a54}.finance-metrics{grid-template-columns:repeat(3,1fr);margin-bottom:20px}.modal-layer{z-index:80;justify-content:flex-start;display:flex;position:fixed;inset:0}.modal-scrim{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0923208c;border:0;position:absolute;inset:0}.modal{background:var(--paper);width:min(540px,100%);height:100%;padding:30px;animation:.25s slide;position:relative;overflow:auto;box-shadow:-20px 0 50px #00000026}.modal>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:20px;display:flex}.modal>header h2{margin:0;font:700 1.3rem Alexandria Variable}.modal>header button{cursor:pointer;background:0 0;border:0}.action-form{grid-template-columns:1fr 1fr;gap:17px;margin-top:25px;display:grid}.action-form .full,.action-form>.form-error,.action-form>.primary-button,.feedback-note{grid-column:1/-1}.feedback-note{background:var(--mint);gap:10px;padding:15px;font-size:.75rem;display:flex}.feedback-note svg{width:18px;color:var(--gold)}@keyframes slide{0%{opacity:0;transform:translate(-30px)}}.password-page{background:var(--cream);place-items:center;min-height:100vh;padding:30px;display:grid}.password-card{box-shadow:var(--shadow);background:#fff;padding:40px}.password-card small{color:var(--muted);font-size:.68rem}.pending-review{border-right:4px solid var(--gold);background:#fff7df;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:14px 17px;font-size:.72rem;display:flex}.pending-review b,.pending-review span{display:block}.pending-review span{color:#776748}.review-actions{gap:7px;display:flex}.review-actions button{cursor:pointer;background:#fff;border:1px solid #cfb469;padding:6px 10px}.review-actions button:first-child{background:var(--teal);border-color:var(--teal);color:#fff}.tour-layer{z-index:120;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#092320b8;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.tour-card{background:var(--paper);width:min(570px,100%);padding:clamp(28px,5vw,50px);box-shadow:0 30px 90px #00000038}.tour-card h2{margin:12px 0;font:700 clamp(1.7rem,3.5vw,2.5rem)/1.4 Alexandria Variable}.tour-card>p{color:var(--muted);line-height:1.9}.tour-card ol{gap:11px;margin:28px 0;padding:0;list-style:none;display:grid}.tour-card li{border-top:1px solid var(--line);grid-template-columns:42px 1fr;align-items:center;gap:12px;padding-top:11px;display:grid}.tour-card li b{color:var(--gold);font:700 .75rem Alexandria Variable}.tour-card li span{font-size:.78rem;font-weight:700}.tour-card>.primary-button{width:100%}@media (max-width:1100px){.metric-grid,.case-grid{grid-template-columns:repeat(2,1fr)}.quick-actions{grid-template-columns:1fr}.register-grid{gap:45px}.portal-shell{grid-template-columns:230px 1fr}.portal-main{padding:28px 25px}}@media (max-width:780px){.auth-page{grid-template-columns:1fr}.auth-story{min-height:290px;padding:32px 25px}.auth-story h1{font-size:1.8rem}.auth-story small{display:none}.auth-panel{padding:42px 22px}.register-grid{grid-template-columns:1fr;padding:40px 18px}.register-intro ol{display:none}.portal-shell{display:block}.portal-sidebar{width:min(300px,86vw);transition:all .25s;position:fixed;top:0;right:0;transform:translate(105%)}.portal-sidebar.open{transform:translate(0)}.side-close{color:#fff;background:0 0;border:0;display:grid;position:absolute;top:25px;left:16px}.sidebar-scrim{z-index:20;background:#09232080;border:0;position:fixed;inset:0}.portal-main{padding:20px 15px}.menu-button{display:grid}.icon-control{display:none}.portal-top{margin-bottom:20px}.portal-top h1{font-size:1.35rem}.welcome-strip{min-height:230px;padding:28px 22px}.welcome-strip h2{font-size:1.65rem}.welcome-strip>svg{display:none}.two-columns,.case-grid{grid-template-columns:1fr}.case-header{flex-wrap:wrap;align-items:flex-start;padding:22px}.case-actions{width:100%;margin:5px 0 0}.case-actions button{flex:1}.simple-head{height:70px;padding:0 18px}.simple-head .wordmark{font-size:1.4rem}.form-grid,.action-form{grid-template-columns:1fr}.form-grid .full,.action-form .full{grid-column:auto}.action-form>.form-error,.action-form>.primary-button,.feedback-note{grid-column:1}.modal{padding:22px}.notice{bottom:15px;left:15px;right:15px}.pending-banner{flex-direction:column;align-items:flex-start}.panel{padding:20px}.wide-panel{min-height:500px}}@media (max-width:480px){.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric{min-height:105px;padding:15px}.metric strong{font-size:1.5rem}.finance-metrics{grid-template-columns:1fr}.top-actions .primary-button{width:42px;padding:0;font-size:0}.top-actions .primary-button svg{margin:0}.session-line{grid-template-columns:43px 1fr}.session-line>small{display:none}.registration-card{padding:24px 18px}.register-intro h1{font-size:1.8rem}.case-card{min-height:180px}.panel-head button{font-size:.64rem}}.password-field button{left:auto;right:6px}.password-field input{padding-right:48px}.side-brand img{object-fit:contain;filter:brightness(0)invert();width:76px;height:76px;margin-bottom:8px;display:block}.family-guide-link{color:#d9efeb;align-items:center;gap:12px;min-height:46px;padding:10px 13px;font-size:.8rem;font-weight:700;text-decoration:none;display:flex}.family-guide-link>svg{width:19px}.family-guide-link>svg:last-child{width:12px;margin-right:auto}.welcome-strip{background-image:linear-gradient(90deg,#14796ef7 35%,#14796ebd),url(https://bene-ten.vercel.app/images/journey-parent-practice.webp);background-position:50%;background-size:cover}.welcome-strip>div{z-index:2;position:relative}.sessions-stack{gap:20px;display:grid}.calendar-panel{padding:0;overflow:hidden}.calendar-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:25px;display:flex}.calendar-head h2{margin:5px 0;font:700 1.35rem Alexandria Variable}.calendar-head p{color:var(--muted);margin:0;font-size:.7rem}.calendar-head>div:last-child{gap:7px;display:flex}.calendar-head button{border:1px solid var(--line);cursor:pointer;background:#fff;place-items:center;width:38px;height:38px;display:grid}.calendar-head button svg{width:17px}.calendar-grid{grid-template-columns:repeat(7,minmax(105px,1fr));display:grid;overflow:auto}.weekday{text-align:center;color:var(--muted);background:#f7f5ef;padding:11px;font-size:.65rem}.calendar-day{border-bottom:1px solid #edf1ef;border-left:1px solid #edf1ef;min-height:125px;padding:8px}.calendar-day>strong{color:var(--muted);margin-bottom:5px;font-size:.68rem;display:block}.calendar-day.today{box-shadow:inset 0 3px var(--gold);background:#fffdf6}.calendar-day button{border:0;border-right:3px solid var(--aqua);text-align:right;cursor:pointer;background:#eaf7f5;width:100%;margin:2px 0;padding:6px}.calendar-day button time,.calendar-day button span,.calendar-day button small{font-size:.58rem;display:block}.calendar-day button span{font-weight:800}.calendar-day button small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.calendar-day em{color:var(--muted);font-size:.58rem}.form-intro{border-right:4px solid var(--teal);background:#e8f6f3;padding:14px}.form-intro b,.form-intro span{display:block}.form-intro span{color:var(--muted);margin-top:4px;font-size:.68rem;line-height:1.8}.session-report{margin:22px 0}.session-report header{border-bottom:1px solid var(--line);padding-bottom:16px}.session-report h3{margin:9px 0 5px;font:700 1.15rem Alexandria Variable}.session-report header p{color:var(--muted);margin:0;font-size:.68rem}.report-sections{grid-template-columns:1fr 1fr;gap:10px;margin-top:15px;display:grid}.report-item{border:1px solid var(--line);background:#fff;padding:14px}.report-item.featured{background:#edf8f6;border-color:#b9ddd7}.report-item b{color:var(--teal);font-size:.72rem}.report-item p{white-space:pre-line;margin:7px 0 0;font-size:.7rem;line-height:1.85}.report-pending,.feedback-complete{background:#fff7df;margin-top:15px;padding:18px;font-size:.74rem}.feedback-complete{background:#e8f6f3;gap:9px;display:flex}.feedback-complete svg{width:18px;color:var(--teal)}.account-guide>p{color:var(--muted);font-size:.75rem;line-height:1.9}.account-guide article{border-bottom:1px solid var(--line);gap:12px;padding:16px 0;display:flex}.account-guide article>svg{width:19px;color:var(--teal);flex:none}.account-guide b,.account-guide span{display:block}.account-guide b{font-size:.8rem}.account-guide span{color:var(--muted);margin-top:4px;font-size:.7rem;line-height:1.8}@media (max-width:780px){.calendar-grid{grid-template-columns:repeat(7,minmax(92px,1fr))}.calendar-head{align-items:flex-start;gap:15px;padding:20px}.calendar-head p{max-width:230px}.report-sections{grid-template-columns:1fr}.side-brand img{width:64px;height:64px}.welcome-strip{background-position:60%}.icon-control{display:grid}}.finance-explainer{color:#fff;background:#123f39;justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;padding:20px 24px;display:flex}.finance-explainer b{font:700 .9rem Alexandria Variable}.finance-explainer p{color:#cbe2de;margin:6px 0 0;font-size:.68rem;line-height:1.8}.finance-explainer>span{white-space:nowrap;font-size:.68rem}.finance-explainer strong{color:#58d6c5;font:700 1.7rem Alexandria Variable;display:block}.finance-metrics{grid-template-columns:repeat(4,1fr)}@media (max-width:780px){.finance-explainer{align-items:flex-start}.finance-metrics{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.category-pill{color:#8a6010;vertical-align:middle;background-color:#fff7df;border:1px solid #cfb469;border-radius:4px;margin-left:8px;padding:2px 6px;font-size:.75rem;font-weight:700;display:inline-block}.auth-logo-link{text-decoration:none;display:inline-block}.auth-logo-link img{object-fit:contain;width:110px;height:auto;display:block}.auth-brand{align-items:center;gap:12px;text-decoration:none;display:inline-flex}.auth-page{background:#f6f1e7;grid-template-columns:minmax(380px,44%) 1fr;min-height:100vh;display:grid}.auth-story{flex-direction:column;justify-content:space-between;padding:50px clamp(28px,5vw,80px);display:flex;position:relative;overflow:hidden;color:#fff!important;background:linear-gradient(155deg,#0d3e38 0%,#157c70 100%)!important}.auth-story h1{margin:16px 0;font:700 clamp(1.8rem,3.2vw,3.5rem)/1.35 Alexandria Variable,sans-serif;color:#fff!important}.auth-story p{font-size:1.02rem;line-height:1.9;color:#e2f4f1!important}.auth-story .eyebrow.light{font-weight:800;color:#6ee7b7!important}.auth-story small{font-size:.82rem;color:#bbf7d0!important}.auth-panel{place-items:center;padding:40px 20px;display:grid;background:#f6f1e7!important}.auth-form{background:#fff;border:1px solid #e2ece9;border-radius:18px;gap:16px;width:min(420px,100%);padding:36px 30px;display:grid;box-shadow:0 12px 35px #143b3614}.auth-brand-header{text-align:center;margin-bottom:6px}.auth-heading-wrap{text-align:center;margin-bottom:8px}.auth-heading-wrap h2{color:#143b36;margin:5px 0;font:700 1.85rem Alexandria Variable,sans-serif}.auth-heading-wrap p{color:#5c7470;margin:0;font-size:.86rem;line-height:1.6}@media (max-width:780px){.auth-page{background:#f6f1e7;grid-template-columns:1fr}.auth-story{display:none!important}.auth-panel{align-content:center;min-height:100vh;padding:24px 16px;background:#f6f1e7!important}.auth-form{border-radius:14px;padding:28px 20px}}.finance-container{gap:20px;display:grid}.finance-highlight{text-align:left;background:#ffffff1f;border-radius:6px;padding:10px 16px}.finance-highlight span{color:#d9efeb;font-size:.8rem;display:block}.finance-highlight strong{color:#58d6c5;font-size:1.15rem}.finance-highlight small{color:#b7ded8;margin-top:2px;font-size:.65rem;display:block}.finance-kpis{grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:20px;display:grid}@media (max-width:1200px){.finance-kpis{grid-template-columns:repeat(3,1fr)}}@media (max-width:780px){.finance-kpis{grid-template-columns:1fr 1fr}}@media (max-width:480px){.finance-kpis{grid-template-columns:1fr}}.net-profit-metric{background:#eaf8f6;border:2px solid #25b8a8}.net-profit-metric strong{color:#0f675e}.net-profit-metric.negative{background:#fff4f4;border-color:#e57373}.net-profit-metric.negative strong{color:#a94a47}.finance-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;display:flex}.finance-action-buttons{flex-wrap:wrap;gap:8px;display:flex}.finance-filter-bar{gap:8px;margin-bottom:20px;padding-bottom:4px;display:flex;overflow-x:auto}.filter-tab{border:1px solid var(--line);color:var(--muted);cursor:pointer;white-space:nowrap;background:#fff;border-radius:99px;padding:8px 14px;font-size:.75rem;font-weight:700;transition:all .15s}.filter-tab:hover{border-color:var(--teal);color:var(--ink)}.filter-tab.active{background:var(--teal);color:#fff;border-color:var(--teal)}.code-pill{color:#164e47;background:#edf4f2;border-radius:4px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;font-weight:700}.type-tag{white-space:nowrap;border-radius:4px;padding:3px 8px;font-size:.68rem;font-weight:800;display:inline-block}.type-tag.type-invoice{color:#926710;background:#fff6e0;border:1px solid #f0dc9e}.type-tag.type-payment{color:#1f6b43;background:#e6f7ef;border:1px solid #bde7d1}.type-tag.type-salary{color:#3730a3;background:#eef2ff;border:1px solid #c7d2fe}.type-tag.type-expense{color:#991b1b;background:#fdf2f2;border:1px solid #fecaca}.type-tag.type-income{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.target-pill{font-size:.72rem;font-weight:700;display:inline-block}.target-pill.child{color:var(--teal);font-weight:800}.target-pill.specialist{color:#4338ca;font-weight:800}.target-pill.general{color:var(--muted)}.due-date{color:#a26915;font-size:.68rem;font-weight:700}.amount-tag{white-space:nowrap;font-size:.82rem;font-weight:800}.amount-tag.amount-in{color:#166534}.amount-tag.amount-out{color:#991b1b}.quick-settle-group{align-items:center;gap:4px;display:flex}.table-action-btn{cursor:pointer;white-space:nowrap;border:0;border-radius:4px;padding:5px 9px;font-size:.68rem;font-weight:800;transition:all .15s}.table-action-btn.pay{background:var(--teal);color:#fff}.table-action-btn.pay:hover{background:#0f675e}.table-action-btn.cash{color:#8a6518;background:#f6efe1;border:1px solid #dccdb3}.table-action-btn.cash:hover{background:#ece0ca}.table-action-btn:disabled{opacity:.6;cursor:wait}.text-muted-check{color:var(--muted);font-size:.68rem;font-weight:600}.person-line small{color:#6d8580;text-align:right;overflow-wrap:anywhere;direction:ltr;margin-top:4px;font-size:.67rem;display:block}.credentials-card{text-align:right;gap:14px;padding:4px 2px 10px;display:grid}.credentials-success{color:#126f64;background:#e4f6f1;border-radius:50%;width:44px;height:44px;padding:9px}.credentials-card h3{color:#153f39;margin:0;font:700 1.45rem Alexandria Variable,sans-serif}.credentials-card>p{color:#5d746f;margin:0;font-size:.84rem;line-height:1.8}.credential-row{background:#f6f0e4;border-right:4px solid #cfad4f;border-radius:10px;grid-template-columns:1fr auto;align-items:center;gap:7px 12px;padding:14px 16px;display:grid}.credential-row span{color:#6d7f7b;grid-column:1/-1;font-size:.7rem}.credential-row b{color:#143e38;overflow-wrap:anywhere;font-size:.88rem}.credential-row button{color:#126f64;cursor:pointer;background:#fff;border:1px solid #b8d9d2;border-radius:7px;align-items:center;gap:5px;padding:7px 10px;font-weight:700;display:inline-flex}.credentials-card>.primary-button{justify-content:center;justify-self:stretch}@media (max-width:560px){.credential-row{grid-template-columns:1fr}.credential-row button{justify-content:center}.credentials-card>.primary-button{width:100%}}.session-links-card{background:#eaf7f3;border:1px solid #bce2da;border-radius:11px;justify-content:space-between;align-items:center;gap:16px;margin:14px 0;padding:14px 16px;display:flex}.session-links-card b{color:#126f64;display:block}.session-links-card small{color:#5c746f;margin-top:4px;line-height:1.6;display:block}.session-links-actions{flex-wrap:wrap;gap:8px;display:flex}.session-links-actions a{color:#fff;white-space:nowrap;background:#126f64;border-radius:7px;align-items:center;gap:6px;padding:9px 13px;font-size:.72rem;font-weight:800;text-decoration:none;display:inline-flex}.session-links-actions a.secondary{color:#765b17;background:#fff8e8;border:1px solid #dec986}@media (max-width:650px){.session-links-card{flex-direction:column;align-items:stretch}.session-links-actions a{flex:1;justify-content:center}}
