:root{--bg:#14161A;--card:#1d2026;--line:#30343c;--muted:#a8acb8;--text:#f4f2ee;--accent:#F2A33A;font-family:Vazirmatn,sans-serif;color:var(--text);background:var(--bg);color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;min-height:44px;border:0;border-radius:12px;color:inherit}button:disabled{cursor:default;opacity:.45}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.shell{max-width:1180px;margin:auto;padding:0 22px 110px}header{display:flex;align-items:center;justify-content:space-between;padding:26px 0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:21px}.brand-icon{color:var(--accent);background:#f2a33a14;border:1px solid #f2a33a40;border-radius:14px;padding:4px 12px;font-size:30px}.brand small{display:block;color:var(--muted);font-size:11px;font-weight:400;margin-top:4px}main{padding-top:30px}h1{font-size:clamp(26px,4vw,38px);line-height:1.8;margin:10px 0}h2{font-size:18px;margin:0}p{color:var(--muted);line-height:1.9}em{font-style:normal;color:var(--accent)}.eyebrow{font-size:12px;color:var(--accent)}.intro{text-align:center;margin:24px auto 32px}.card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:24px;animation:appear .3s ease}.auth-card{max-width:440px;margin:auto}.tabs{display:flex;background:var(--bg);padding:5px;border-radius:13px;margin-bottom:24px;gap:5px}.tabs button{flex:1;background:none;color:var(--muted)}.tabs .selected{background:#35302a;color:var(--accent)}label{display:block;font-size:13px;margin-bottom:18px;color:#dedee4}label small{font-size:11px;color:var(--muted);font-weight:400}input,select,textarea{display:block;width:100%;min-height:49px;margin-top:8px;background:#17191e;border:1px solid #363a44;border-radius:11px;padding:11px 13px;color:var(--text);font-size:16px}input::placeholder,textarea::placeholder{color:#808592;font-size:13px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:2px}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.primary{background:var(--accent);color:#211b12;width:100%;font-weight:800;padding:13px;box-shadow:0 5px 22px #f2a33a12}.quiet{background:#ffffff08;padding:8px 14px;color:var(--muted)}.link-button{display:block;background:transparent;color:var(--accent);font-size:12px;margin:8px auto}.divider{display:flex;align-items:center;gap:15px;color:var(--muted);font-size:12px;margin:10px 0 18px}.divider:before,.divider:after{content:'';height:1px;background:var(--line);flex:1}.google{width:100%;background:transparent;border:1px solid var(--line)}.google span{font:700 18px Arial;margin-right:10px}.caption{font-size:11px;color:var(--muted)}.auth-card>.caption{text-align:center}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-heading p{margin:0}.phase,.badge{border:1px solid #f2a33a30;background:#f2a33a0c;color:var(--accent);padding:6px 12px;border-radius:10px;font-size:12px}.workspace-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;align-items:start}.card-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.balance{display:flex;justify-content:space-between;background:#f2a33a09;border:1px solid #f2a33a30;padding:14px;border-radius:12px;margin:0 0 20px;font-size:13px}.balance strong{color:var(--accent)}.visit{border:1px solid var(--line);border-radius:15px;padding:16px;margin:12px 0}.visit-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.visit h3{font-size:15px;margin:0}.visit p{margin:8px 0;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.visit .money{color:var(--accent);font-size:14px}.pill{font-size:10px;background:#30353e;border-radius:8px;padding:5px 8px;white-space:nowrap}.empty{text-align:center;padding:48px 10px;color:var(--muted)}.empty b{display:block;font-size:38px;color:var(--accent);margin-bottom:12px}.warning,#notice{padding:14px;border-radius:12px;font-size:13px;line-height:1.8;margin-bottom:16px;white-space:pre-wrap}.red{background:#f0525214;border:1px solid #e6606070;color:#ffaaaa}.yellow{background:#f2cc3a12;border:1px solid #f2cc3a50;color:#f0d579}#notice{background:#26352e;border:1px solid #4b7961}#notice.error{background:#3c2427;border-color:#a65059}.bottom-nav{position:fixed;bottom:0;inset-inline:0;display:flex;justify-content:space-around;align-items:center;max-width:600px;margin:auto;background:#202329ee;backdrop-filter:blur(16px);border:1px solid var(--line);border-bottom:0;border-radius:24px 24px 0 0;padding:12px 8px max(12px,env(safe-area-inset-bottom));z-index:10}.bottom-nav button{background:none;font-size:22px;padding:0 3px}.bottom-nav small{display:block;font-size:9px}.bottom-nav .add{background:var(--accent);color:#211b12;font-size:32px;border-radius:18px;width:54px;height:54px;transform:translateY(-12px);box-shadow:0 6px 20px #0005}footer{text-align:center;color:#818693;font-size:11px;padding:32px 0}footer span{color:var(--accent);margin:0 10px}@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:760px){.workspace-grid{grid-template-columns:1fr}.shell{padding-inline:16px}.card{padding:20px}.page-heading{margin-bottom:22px}header{padding:20px 0}.brand{font-size:18px}.intro{text-align:right}.intro h1{font-size:27px}.card-heading{margin-bottom:20px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}

.month-toolbar{display:flex;align-items:center;gap:10px;padding:12px 0 22px;flex-wrap:wrap}.month-toolbar h2{min-width:110px;text-align:center}.month-toolbar>button:last-child{margin-inline-start:auto;font-size:12px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}.stat-card{border:1px solid var(--line);background:linear-gradient(135deg,#252932,var(--card));border-radius:18px;padding:22px 18px;min-width:0}.stat-card>span{font-size:12px;color:var(--muted)}.stat-card strong{display:block;color:var(--accent);font-size:clamp(19px,2vw,26px);margin:12px 0 6px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.stat-card small{color:var(--muted);font-size:11px}.insight-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:start;margin-bottom:24px}.payment-row{margin-bottom:20px}.payment-label{display:flex;justify-content:space-between;gap:10px;font-size:11px;margin-bottom:10px}.payment-label b{font-weight:500}.payment-row progress{display:block;width:100%;height:8px;appearance:none;border:0;border-radius:8px;overflow:hidden;background:#30343c}.payment-row progress::-webkit-progress-bar{background:#30343c;border-radius:8px}.payment-row progress::-webkit-progress-value{background:var(--accent);border-radius:8px}.payment-row progress::-moz-progress-bar{background:var(--accent);border-radius:8px}.payment-paid progress::-webkit-progress-value{background:#65bf9c}.payment-paid progress::-moz-progress-bar{background:#65bf9c}.payment-pending progress::-webkit-progress-value{background:#a1a9ba}.payment-pending progress::-moz-progress-bar{background:#a1a9ba}.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.weekdays{color:var(--muted);text-align:center;margin-bottom:14px;font-size:12px}.calendar-day{height:64px;background:#17191e;border:1px solid transparent;font-size:16px;position:relative}.calendar-day.today{border-color:var(--accent)}.calendar-day.chosen{background:#f2a33a26;color:#ffd391}.calendar-day .day-count{display:block;font-size:9px;color:var(--accent);line-height:1.2}.calendar-day .day-count:before{content:'•';margin-inline-end:4px}.compact{padding:28px 8px}.studio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.studio-card h2{overflow-wrap:anywhere}.studio-total{display:flex;justify-content:space-between;gap:12px;font-size:12px}.studio-total strong{color:var(--text);font-weight:500}.studio-card>.quiet{width:100%;margin-top:12px;font-size:11px}.inline-label{display:flex;align-items:center;gap:12px;width:100%;max-width:360px}.inline-label select{margin:0;flex:1}.report-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.report-filters label{min-width:0}.bottom-nav button[aria-current=page]{color:var(--accent)}.bottom-nav .add[aria-current=page]{color:#211b12;outline:2px solid #ffdaa3;outline-offset:3px}#demo-banner{margin-top:10px}#demo-banner button{margin-inline-start:12px}#page-title:focus{outline:none}#setup .primary{max-width:360px;margin-top:10px}#report-stats .stat-card{padding:16px 12px}#report-stats strong{font-size:20px}@media(max-width:760px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.insight-grid,.studio-grid{grid-template-columns:minmax(0,1fr);gap:16px}.stat-card{padding:18px 16px}.stat-card strong{font-size:22px}.report-filters{grid-template-columns:minmax(0,1fr);gap:0}.calendar-day{height:54px}.upcoming-card .card-heading{align-items:flex-start}.card-heading{gap:12px}.card-heading h2{font-size:16px}.payment-label{flex-wrap:wrap}.month-toolbar{gap:6px}.month-toolbar h2{font-size:16px}#export-excel{font-size:11px;white-space:nowrap}}

@media(max-width:760px){#page-calendar .insight-grid>.card:first-child{padding:20px 10px}.weekdays,.calendar-grid{gap:2px}.calendar-day{border-radius:9px}#calendar-add{font-size:11px;padding-inline:10px}.studio-total{flex-wrap:wrap}.studio-card .card-heading{flex-wrap:wrap}}

.visit h3{min-width:0;overflow-wrap:anywhere}.workspace-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}@media(max-width:760px){.workspace-grid{grid-template-columns:minmax(0,1fr)}}

html,body{touch-action:pan-x pan-y}

button,a,input,select,textarea,summary{touch-action:pan-x pan-y}.payment-summary{margin-bottom:24px}.header-actions{display:flex;gap:8px;align-items:center}.account-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:24px}.account-grid label{margin:16px 0 4px}.account-grid .primary{margin-top:20px}.account-grid h3{font-size:15px;margin-top:24px}.service-chips{display:flex;flex-wrap:wrap;gap:8px}.service-chip{background:#f2a33a10;border:1px solid #f2a33a30;color:#f2c386;border-radius:9px;padding:8px 10px;font-size:11px}.service-row{padding:14px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);font-size:13px}.service-row>span{min-width:0;overflow-wrap:anywhere}.service-actions{display:flex;gap:6px;flex-shrink:0}.service-actions button{font-size:11px;padding-inline:10px}.studio-debt{background:#f2a33a10;padding:12px;border-radius:10px}.studio-debt strong{color:var(--accent)}dialog{background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:20px;width:calc(100% - 32px);max-width:440px;padding:24px}dialog::backdrop{background:#0009;backdrop-filter:blur(3px)}dialog label{margin:20px 0 4px}.dialog-actions{display:flex;align-items:center;gap:10px;margin-top:22px}.dialog-actions>.primary{width:auto;flex:1}#service-error{color:#ffaaaa;font-size:12px}#account-password-form{border-top:1px solid var(--line);margin-top:24px;padding-top:8px}#account-password-form button{margin-top:16px;width:100%}#account-logout{margin-top:24px;width:100%;color:#ffaaaa}#visit-service{margin-top:8px}#page-account .caption{overflow-wrap:anywhere}@media(max-width:760px){.account-grid{grid-template-columns:minmax(0,1fr);gap:16px}.header-actions{gap:4px}#account-open{padding:8px 10px;font-size:12px}.service-row{flex-wrap:wrap}.service-actions{margin-inline-start:auto}.brand{gap:8px}.brand-icon{padding-inline:9px}}

@font-face{font-family:Vazirmatn;src:url('fonts/Vazirmatn.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
.brand>span:last-child{min-width:0}.brand #brand-name{display:block;overflow-wrap:anywhere;font-size:clamp(14px,4vw,21px)}.brand{min-width:0}.header-actions{flex-shrink:0}
.time-selects{display:flex;align-items:center;gap:5px;direction:ltr}.time-selects select{min-width:0;padding-inline:8px}.check-label{display:flex;align-items:center;gap:10px;margin-top:16px}.check-label input{width:22px;min-height:22px;margin:0;accent-color:var(--accent)}
#visit-checklist-section{margin:20px 0}summary{cursor:pointer;min-height:44px;padding:10px 0;color:var(--accent);font-size:13px}.checklist-row{display:flex;align-items:center;gap:8px;margin:8px 0}.checklist-row input[type=checkbox]{width:24px;min-height:24px;flex-shrink:0;accent-color:var(--accent)}.checklist-row input:not([type=checkbox]){min-width:0;margin:0}.checklist-row button{flex-shrink:0}.calendar-save{width:100%;margin-top:12px}
.priority{border-inline-start:3px solid;padding-inline-start:10px}.priority-flexible{color:#8fdbb0!important;border-color:#66c591}.priority-fixed{color:#f9bc68!important;border-color:#F2A33A}.priority-important{color:#ffa1a1!important;border-color:#f36e76}.visit[data-priority=important]{border-color:#a14950}.calendar-day[data-priority=important] .day-count{background:#bd4f59;color:white}.calendar-day[data-priority=flexible] .day-count{background:#317550;color:white}.map-link{display:block;color:var(--accent);padding:10px 0;min-height:44px;font-size:13px}.visit>a.quiet{display:inline-flex;align-items:center;min-height:44px;font-size:12px;margin:5px}.account-signature{text-align:center;margin:35px 0;color:var(--muted)}.account-signature>span{display:block;color:var(--accent);font-size:46px}.account-signature strong,.account-signature small{display:block}.account-signature small{margin-top:8px;letter-spacing:2px;font-family:Vazirmatn,sans-serif}#saved-shortcut{font-size:12px;min-height:44px;display:inline-flex;align-items:center}#saved-dialog .dialog-actions{flex-wrap:wrap}#saved-close{width:100%;margin-top:16px}#saved-summary{overflow-wrap:anywhere}#date-picker{max-width:420px}#date-picker .calendar-day{min-width:0;height:44px}#date-picker .calendar-grid{gap:2px}#forgot-message{font-size:13px}#preferences-form textarea{font-size:16px}.service-chip[aria-pressed=false]{opacity:.6;text-decoration:line-through}@media(max-width:430px){.brand small{font-size:9px}.brand-icon{font-size:23px;padding-inline:7px}.header-actions #logout{display:none}}
