:root{--bg:#fbf4ee;--paper:#fffaf7;--card:#fffdfb;--ink:#30384b;--muted:#8f8d97;--line:#eaded8;--pink:#ef7fa6;--pink2:#f8dbe6;--pink3:#fff0f5;--lilac:#eee9f8;--blue:#e8f3f5;--blueInk:#6e9ca5;--peach:#f8eadf;--green:#e8f2ee;--danger:#bd6672;--shadow:0 5px 18px rgba(77,58,64,.055)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}body{min-height:100dvh}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}.brandbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:12px 16px 9px;background:rgba(251,244,238,.96);backdrop-filter:blur(18px);border-bottom:1px solid rgba(234,222,216,.55)}.brandline{display:flex;align-items:center;gap:9px}.brandline strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:15px;font-weight:600}.brandline small{display:block;color:#aa9da1;font-size:8px;margin-top:1px}.home-dot{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#fff;border:1px solid var(--line);color:#d27698;font-size:14px}.heart-btn{border:0;background:transparent;font-size:23px;color:#d5a3b3}.content{max-width:560px;margin:auto;padding:8px 13px 102px}.page{display:none}.page.active{display:block}.page-heading{display:flex;justify-content:space-between;align-items:center;margin:3px 2px 11px}.page-heading h1{font-family:Georgia,"Times New Roman",serif;font-size:28px;font-weight:500;letter-spacing:-.5px}.subtle{color:#8f8c92;font-size:12px;margin-top:2px}.sun{font-size:27px;color:#e89cb7}.quote-card{display:flex;justify-content:space-between;align-items:center;padding:12px 13px;border-radius:15px;background:linear-gradient(100deg,#fffaf8,#fdebf1);border:1px solid #f0dfe4;color:#77727c;font-family:Georgia,"Times New Roman",serif;font-size:13px;margin-bottom:11px}.quote-card>span:last-child{color:#df8eaa}.circle-plus{width:38px;height:38px;border:0;border-radius:50%;background:var(--pink);color:#fff;font-size:22px;box-shadow:var(--shadow)}.circle-plus.mini-icon{font-size:17px}.stack{display:grid;gap:8px}.compact{gap:6px}.card,.appt-card,.client-card,.summary-row,.settings-card,.fixed-row,.message-card{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.appt-card{width:100%;display:grid;grid-template-columns:48px 1fr 28px;align-items:center;text-align:left;padding:9px 10px;border:1px solid var(--line);background:var(--card)}.appt-icon{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:var(--blueInk);font-size:15px}.appt-card:nth-child(3n+2) .appt-icon{background:var(--peach);color:#b48a69}.appt-card:nth-child(3n) .appt-icon{background:var(--pink3);color:#ce7796}.appt-main strong{display:block;font-size:13px}.appt-main small{display:block;color:#807d86;font-size:10px;margin-top:2px}.appt-main em{display:block;color:#a7a1a5;font-style:normal;font-size:9px;margin-top:3px}.chev{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#f3f0ee;color:#9b9699}.cancelled{opacity:.5}.primary,.outline,.action-card{border-radius:10px;padding:10px 12px;font-weight:650;border:1px solid transparent}.primary{background:linear-gradient(90deg,#ee78a2,#f48aaa);color:#fff;box-shadow:0 4px 12px rgba(239,127,166,.18)}.wide{width:100%}.outline{background:#fff8fa;border-color:#efcfdb;color:#d07194}.section-title{margin:15px 2px 8px}.section-title h2{font-family:Georgia,"Times New Roman",serif;font-size:15px;font-weight:600}.section-title.slim{margin:17px 0 7px}.section-title.slim h2{font-size:14px}.empty{text-align:center;color:#aaa2a4;padding:24px 12px;font-size:12px}.calendar-card{padding:11px}.month-nav,.summary-month-nav{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;gap:6px;text-align:center}.month-nav button,.summary-month-nav button{border:0;background:transparent;color:#a98d97;font-size:22px}.month-nav strong,.summary-month-nav strong{font-family:Georgia,"Times New Roman",serif;font-size:14px;font-weight:600}.calendar-weekdays,.month-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-weekdays{margin:10px 0 4px}.calendar-weekdays span{text-align:center;color:#9b969c;font-size:9px}.cal-day{position:relative;border:0;background:transparent;min-height:31px;border-radius:9px;font-size:11px}.cal-day.other{color:#d0c9ca}.cal-day.selected{background:var(--pink);color:#fff;font-weight:700}.cal-day.today:not(.selected){box-shadow:inset 0 0 0 1px #edb8ca}.cal-day.has::after{content:"";position:absolute;width:3px;height:3px;border-radius:50%;background:#d8789b;bottom:3px;left:50%;transform:translateX(-50%)}.cal-day.selected.has::after{background:#fff}.segmented{display:grid;grid-template-columns:1fr 1fr;background:#f4ebe7;border-radius:11px;padding:3px;margin-bottom:9px}.segmented button{border:0;background:transparent;border-radius:8px;padding:7px;font-size:10px;color:#9b9296}.segmented button.active{background:#fff;color:#d06d91;box-shadow:0 2px 8px rgba(90,70,78,.06);font-weight:700}.small-seg{grid-template-columns:repeat(3,1fr)}.slots-card{padding:10px 7px;overflow:hidden}.slots-grid{display:grid;grid-template-columns:42px repeat(5,minmax(45px,1fr));gap:1px;margin-top:8px;overflow:auto}.slot-head,.slot-time,.slot-cell{min-height:26px;font-size:8px;display:flex;align-items:center;justify-content:center}.slot-head{font-weight:700;color:#77717a;background:#fff}.slot-time{color:#aaa2a7;background:#fff}.slot-cell{border:0;border-radius:2px;background:#fff}.slot-cell.free{background:#fff}.slot-cell.busy{background:#f8dce6;color:#9c6377;padding:2px;text-align:center;font-size:7px}.slot-cell.travel{background:#e8f2f2}.legend{display:flex;gap:14px;justify-content:center;margin-top:8px;color:#9e9799;font-size:8px}.legend span{display:flex;align-items:center;gap:4px}.legend i{width:8px;height:8px;border-radius:2px;background:#fff;border:1px solid var(--line)}.legend .busy-dot{background:#f8dce6}.legend .travel-dot{background:#e8f2f2}.search-row{height:38px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 10px;margin-bottom:8px;color:#aaa}.search-row input{border:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;outline:0;width:100%}.client-card{width:100%;display:grid;grid-template-columns:38px 1fr 18px;align-items:center;gap:9px;padding:9px 10px;text-align:left}.client-avatar,.avatar{display:grid;place-items:center;border-radius:50%;background:var(--pink3);color:#c76d8e;font-family:Georgia,"Times New Roman",serif}.client-avatar{width:35px;height:35px;font-size:12px}.client-card:nth-child(3n+2) .client-avatar{background:var(--blue);color:#70949d}.client-card:nth-child(3n) .client-avatar{background:var(--peach);color:#a78165}.client-card strong{font-size:12px}.client-card small{display:block;color:#918b90;font-size:9px;margin-top:2px}.summary-month-nav{background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px;margin-bottom:9px}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.stat{border-radius:13px;padding:12px;border:1px solid var(--line);background:#fff}.stat small{display:block;color:#8f898d;font-size:9px}.stat strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:18px;margin-top:2px}.stat.hours{background:#eef8f7}.stat.billed{background:#fff7e8}.stat.received{background:#f8eef9}.stat.due{background:#fff0f3}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:10px}.summary-row strong{font-size:11px}.summary-row span{font-size:10px;color:#827b80}.client-summary-card{display:grid;grid-template-columns:34px 1fr auto;gap:8px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:13px;padding:9px}.client-summary-card small{display:block;color:#9a9397;font-size:9px}.client-summary-card strong{font-size:11px}.amount-col{text-align:right}.amount-col em{display:block;color:#ae8794;font-style:normal;font-size:9px}.estimate-card{padding:12px;margin-top:9px}.estimate-card small{color:#8f898d}.estimate-card h3{font-size:16px;margin-top:3px}.backup-stack{display:grid;gap:7px}.backup-card{width:100%;border:1px solid var(--line);background:#fff;border-radius:13px;padding:11px;display:flex;justify-content:space-between;align-items:center;text-align:left}.backup-card strong{display:block;font-size:11px}.backup-card small{display:block;font-size:8px;color:#9b9497;margin-top:2px}.backup-card>span{width:29px;height:29px;border-radius:9px;background:var(--pink3);display:grid;place-items:center;color:#c87995}.backup-status{margin-top:8px;border-radius:11px;padding:9px 11px;background:#f8f1f4;color:#977c86;font-size:9px}.bottom-nav{position:fixed;z-index:50;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);padding:7px 5px calc(6px + env(safe-area-inset-bottom));background:rgba(255,252,249,.97);border-top:1px solid #eaded8;backdrop-filter:blur(18px)}.nav{border:0;background:transparent;color:#a39ca0;padding:2px;font-size:8px}.nav span{display:block;font-size:17px;height:19px}.nav b{font-weight:500}.nav.active{color:#e4779d}.nav.active b{font-weight:700}.sheet-dialog{border:0;padding:0;width:min(94vw,520px);max-height:92dvh;border-radius:17px;background:var(--paper);box-shadow:0 25px 80px rgba(60,42,47,.24)}.sheet-dialog::backdrop{background:rgba(37,31,34,.25);backdrop-filter:blur(2px)}.sheet{padding:12px;display:grid;gap:9px;max-height:92dvh;overflow:auto}.sheet-head{display:grid;grid-template-columns:50px 1fr 58px;align-items:center;text-align:center;margin-bottom:2px}.sheet-head>span{font-family:Georgia,"Times New Roman",serif;font-size:15px}.back-x,.text-action{border:0;background:transparent;color:#d17697}.back-x{font-size:24px;text-align:left}.back-x.right{text-align:right;grid-column:3}.text-action{text-align:right;font-size:10px}.client-identity{display:flex;align-items:center;gap:12px;justify-content:center;padding:3px 0}.avatar{width:52px;height:52px;font-size:18px}.name-label{flex:1;max-width:260px}.name-label input{text-align:center;font-family:Georgia,"Times New Roman",serif;font-size:15px}.settings-card{padding:3px 10px}.setting-row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid #f0e7e3}.setting-row:last-child{border-bottom:0}.setting-row>span{font-size:10px}.setting-row>div{display:flex;align-items:center;gap:4px}.setting-row input{width:58px;padding:5px 4px;text-align:right;border:0;background:#fff5f8}.setting-row em{font-size:8px;font-style:normal;color:#8b858a}.observations{display:grid;gap:9px;padding:10px}.fixed-row{padding:9px;display:grid;grid-template-columns:1fr 1fr;gap:7px}.fixed-row .wide{grid-column:1/-1}.fixed-row .fx-remove{grid-column:1/-1;border:0;background:#fff0f2;color:#b96772;border-radius:9px;padding:7px}.sheet label{display:grid;gap:4px;font-size:9px;color:#7c767a;font-weight:600}.sheet input,.sheet select,.sheet textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px;outline:0;font-size:11px}.sheet textarea{resize:vertical}.two{display:grid;grid-template-columns:1fr 1fr;gap:7px}.checkline,.confirm-check{display:flex!important;align-items:center;gap:7px}.checkline input,.confirm-check input{width:auto}.confirm-check{font-size:9px!important;color:#c46689!important}.warning{background:#fff5e3;border:1px solid #f0dbb5;border-radius:9px;padding:8px;font-size:9px}.hidden{display:none!important}.edit-actions{display:grid;gap:7px}.action-card{background:#fff;border-color:var(--line);font-size:10px}.primary-lite{background:linear-gradient(90deg,#ef7fa6,#f58baa);color:#fff}.delete-link{border:0;background:transparent;color:#bd6672;padding:7px;font-size:9px}.hint{font-weight:400;color:#aaa}.message-card{padding:10px}.message-card strong{font-size:11px}.message-card p{font-size:9px;color:#777177;line-height:1.45;margin-top:5px}.small-sheet{width:min(92vw,420px)}
@media(max-width:390px){.content{padding-left:10px;padding-right:10px}.page-heading h1{font-size:25px}.summary-grid{gap:6px}.slots-grid{grid-template-columns:38px repeat(5,minmax(42px,1fr))}.stat{padding:10px}.sheet-dialog{width:96vw}}


/* MAQUETE FINAL — fidelidade visual */
:root{--bg:#fff8f5;--paper:#fffaf8;--card:#fffdfc;--ink:#433d4d;--muted:#9b9399;--line:#eee2df;--pink:#ee78a4;--pink2:#f9dfe8;--pink3:#fff0f5;--lilac:#f1edf8;--blue:#edf6f6;--peach:#fbefe5;--shadow:0 2px 10px rgba(80,58,68,.045)}
html,body{background:linear-gradient(180deg,#fffaf7 0%,#fff7f2 100%)}
.brandbar{padding:11px 14px 8px;background:rgba(255,250,247,.97);border-bottom-color:#f2e7e3}.brandline strong{font-size:14px;color:#554651}.brandline small{font-size:7.5px;color:#aa9fa3}.home-dot{width:25px;height:25px;background:#fff8fa;border-color:#f0e3e6;color:#d87298}.heart-btn{font-size:20px;color:#dbafbc}.content{max-width:430px;padding:7px 10px 96px}.page-heading{margin:4px 2px 8px}.page-heading h1{font-size:25px;color:#4d4553}.subtle{font-size:10px;color:#9e979b}.quote-card{padding:10px 12px;border-radius:11px;background:#fff4f7;border-color:#f3e3e8;font-size:11px;line-height:1.25;margin-bottom:9px}.appt-card{grid-template-columns:42px 1fr 25px;padding:8px 9px;border-radius:11px}.appt-icon{width:32px;height:32px;font-size:13px}.appt-main strong{font-size:11px}.appt-main small{font-size:9px}.appt-main em{font-size:8px}.chev{width:21px;height:21px;font-size:10px}.primary,.outline,.action-card{border-radius:9px;padding:9px 10px;font-size:10px}.section-title{margin:12px 2px 6px}.section-title h2{font-size:14px}.calendar-card,.slots-card{border-radius:12px;box-shadow:none}.calendar-card{padding:9px}.cal-day{min-height:28px;font-size:10px}.month-nav strong,.summary-month-nav strong{font-size:13px}.calendar-weekdays span{font-size:8px}.circle-plus{width:34px;height:34px;font-size:19px}.search-row{height:34px;border-radius:10px}.client-card{grid-template-columns:34px 1fr 16px;padding:8px 9px;border-radius:11px}.client-avatar{width:31px;height:31px;font-size:10px}.client-card strong{font-size:10.5px}.client-card small{font-size:8px}.segmented{border-radius:9px;margin-bottom:7px}.segmented button{padding:6px;font-size:8px}.slots-grid{grid-template-columns:34px repeat(5,minmax(43px,1fr));}.slot-head,.slot-time,.slot-cell{min-height:22px;font-size:7px}.slot-cell.busy{font-size:6.5px}.summary-month-nav{border:0;background:transparent;padding:2px 0 7px;margin-bottom:4px}.summary-month-nav strong{font-size:13px}.summary-grid{grid-template-columns:1fr 1fr;gap:5px}.stat{padding:9px 10px;border-radius:10px;box-shadow:none}.stat small{font-size:8px}.stat strong{font-size:16px}.client-summary-card{padding:8px;border-radius:11px}.client-summary-card strong{font-size:10px}.client-summary-card small,.amount-col em{font-size:8px}.estimate-card{padding:9px;border-radius:11px}.summary-heart{font-family:Georgia,serif;color:#df9aaf;font-size:23px}.summary-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px}.summary-actions .outline{font-size:9px;background:#fff5f8}.summary-actions .soft{background:#f8f3fb;color:#9c7891;border-color:#e9dfea}.backup-dialog{width:min(94vw,420px)}.backup-head{grid-template-columns:1fr 36px;text-align:left}.backup-head>span{grid-column:1;font-size:18px}.backup-intro{font-size:9px;color:#9b9398;margin-top:-5px}.backup-card{border-radius:11px;padding:10px;box-shadow:none}.backup-card strong{font-size:10px}.backup-card small{font-size:7.5px}.backup-card>span{width:28px;height:28px;border-radius:8px}.backup-tip{padding:9px 10px;border-radius:9px;background:#fff0f5;color:#af7890;font-size:8px}.bottom-nav{padding-top:6px;background:rgba(255,252,250,.98)}.nav{font-size:7px}.nav span{font-size:15px;height:17px}.sheet-dialog{border-radius:15px}.sheet{padding:10px}.sheet-head>span{font-size:14px}.settings-card,.fixed-row,.message-card{border-radius:11px;box-shadow:none}.setting-row{padding:8px 0}.client-identity{padding-top:1px}.avatar{width:47px;height:47px;font-size:16px}.name-label input{font-size:14px}.fixed-row{padding:8px}.sheet input,.sheet select,.sheet textarea{border-radius:8px;padding:7px;font-size:10px}.message-card p{font-size:8.5px}
@media(min-width:431px){.content{max-width:430px}}
