:root{
  --oxford:#192338;--space:#1E2F4F;--yinmn:#31487A;--jordy:#8FB3E2;--lav:#D9E1F1;
  --ink:#172238;--ink-2:#33445f;--muted:#748198;--muted-2:#97a3b4;
  --bg:#eef3f9;--surface:#ffffff;--surface-2:#f7f9fc;--surface-3:#edf3fa;--line:#dbe4ef;
  --success:#2f775f;--success-bg:#eaf6f1;--warning:#9b671d;--warning-bg:#fbf3e7;--danger:#a84956;--danger-bg:#faecef;
  --shadow-xs:0 3px 10px rgba(25,35,56,.045);--shadow-sm:0 10px 28px rgba(25,35,56,.07);--shadow:0 20px 55px rgba(25,35,56,.10);
  --radius-sm:12px;--radius:18px;--radius-lg:26px;--sidebar:258px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
body{background:linear-gradient(145deg,#f4f7fb 0%,#edf3fa 52%,#f7f9fc 100%)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 88% 4%,rgba(143,179,226,.23),transparent 28%),radial-gradient(circle at 16% 100%,rgba(49,72,122,.08),transparent 31%);z-index:0}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%}svg{display:block}
.ui-icon{width:20px;height:20px;display:inline-grid;place-items:center;flex:0 0 auto}.ui-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}

/* Estrutura principal */
.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh;position:relative;z-index:1}
.sidebar{position:sticky;top:0;height:100vh;padding:22px 16px 16px;background:linear-gradient(180deg,#17243b 0%,#192b48 58%,#132038 100%);color:#fff;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.06);box-shadow:12px 0 40px rgba(20,31,50,.12);z-index:50}
.brand{display:flex;align-items:center;gap:12px;padding:5px 8px 20px;margin-bottom:14px;border-bottom:1px solid rgba(255,255,255,.09)}
.brand img{width:46px;height:46px;border-radius:15px;object-fit:cover;background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.18)}
.brand strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:19px;font-weight:600;letter-spacing:.01em}.brand small{display:block;margin-top:3px;color:#9fb3d0;font-size:9px;letter-spacing:.04em}
.nav-caption{padding:2px 11px 8px;color:#7891b2;font-size:8px;font-weight:900;letter-spacing:.18em}.main-nav{display:grid;gap:5px}
.nav-link{display:flex;align-items:center;gap:12px;min-height:45px;padding:0 12px;border-radius:13px;color:#c7d5e8;font-size:12px;font-weight:720;transition:.16s ease;border:1px solid transparent}
.nav-link .ui-icon{width:18px;height:18px;color:#93acd0}.nav-link:hover{background:rgba(255,255,255,.055);color:#fff;transform:translateX(2px)}.nav-link.active{background:linear-gradient(135deg,rgba(143,179,226,.20),rgba(143,179,226,.10));border-color:rgba(157,190,232,.20);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}.nav-link.active .ui-icon{color:#cde0f8}
.sidebar-foot{margin-top:auto;padding-top:15px;border-top:1px solid rgba(255,255,255,.08)}.account-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px;border-radius:14px;transition:.15s}.account-card:hover{background:rgba(255,255,255,.055)}.account-copy{min-width:0}.account-copy b{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-copy small{display:block;color:#8fa5c4;font-size:8.5px;margin-top:2px}.account-arrow{color:#8196b5;font-size:18px}.logout{display:inline-block;margin:9px 9px 0;color:#8fa5c4;font-size:9px;font-weight:700}.logout:hover{color:#fff}
.main{min-width:0;padding:0 34px 42px}.topbar{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid rgba(195,207,223,.62);margin-bottom:24px}.page-title{min-width:0}.page-kicker{display:block;color:#8090a7;font-size:8px;font-weight:900;letter-spacing:.18em;margin-bottom:5px}.page-title h1{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:31px;line-height:1.05;font-weight:500;color:var(--space);letter-spacing:-.02em}.page-title p{margin:5px 0 0;color:#7e8ca1;font-size:10.5px}.top-user{display:flex;align-items:center;gap:11px;padding:6px 7px 6px 13px;border-radius:16px;border:1px solid rgba(214,224,236,.85);background:rgba(255,255,255,.68);backdrop-filter:blur(10px);box-shadow:var(--shadow-xs)}.top-user>span:first-child{text-align:right}.top-user b{display:block;font-size:10px;color:#3c4f6b}.top-user small{display:block;font-size:8px;color:#8896aa;margin-top:2px}.page-content{max-width:1480px;margin:0 auto}
.avatar{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#3b5c8d,#86addc);color:#fff;font-family:Georgia,serif;font-size:13px;font-weight:700;box-shadow:0 7px 18px rgba(49,72,122,.2)}.avatar.small{width:34px;height:34px;border-radius:11px;font-size:10px}

/* Componentes */
.card{background:rgba(255,255,255,.94);border:1px solid rgba(216,226,238,.96);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px;backdrop-filter:blur(8px)}
.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.card-head h2{font-family:Georgia,"Times New Roman",serif;font-size:18px;font-weight:600;color:var(--space);margin:0}.card-head p{margin:4px 0 0;color:#8491a4;font-size:9.5px;line-height:1.45}.card-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.section-kicker{display:block;color:#7c91ad;font-size:7.5px;font-weight:900;letter-spacing:.16em;margin-bottom:4px}.count-pill{display:grid;place-items:center;min-width:31px;height:27px;padding:0 8px;border-radius:999px;background:#edf3fa;color:#50688a;font-size:9px;font-weight:850;border:1px solid #dce6f2}
.btn{border:0;min-height:39px;padding:0 15px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:10px;font-weight:800;line-height:1;transition:.15s ease;white-space:nowrap}.btn .ui-icon{width:15px;height:15px}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,#31487A,#45679c);color:#fff;box-shadow:0 7px 16px rgba(49,72,122,.19)}.btn-primary:hover{box-shadow:0 10px 22px rgba(49,72,122,.25)}.btn-soft{background:#edf3fa;color:#3e5a83;border:1px solid #d8e4f1}.btn-soft:hover{background:#e5eef8}.btn-ghost{background:#fff;color:#566a87;border:1px solid #dbe4ef}.btn-ghost:hover{border-color:#bdcce0;background:#fbfdff}.btn-light{background:rgba(255,255,255,.92);color:#2d466d;border:1px solid rgba(255,255,255,.4);box-shadow:0 6px 18px rgba(23,39,64,.10)}.btn-small{min-height:31px;padding:0 10px;border-radius:9px;font-size:8.5px}.icon-btn{width:35px;height:35px;padding:0;display:grid;place-items:center;border-radius:11px;background:#f3f7fb;color:#536b8f;border:1px solid #dce5f0}.icon-btn .ui-icon{width:16px;height:16px}.icon-btn:hover{background:#eaf1f9}
.text-link{color:#58729a;font-size:9px;font-weight:800}.text-link:hover{color:#2e4a75}.muted{color:var(--muted)!important}.empty{text-align:center;padding:28px 14px;color:#94a0b1;font-size:10px}.soft-empty{border:1px dashed #d7e1ed;border-radius:14px;background:#fafcff}
.flash{padding:12px 14px;margin-bottom:16px;border-radius:13px;border:1px solid;font-size:10.5px;font-weight:650}.flash.success{color:#276451;background:var(--success-bg);border-color:#cce9df}.flash.error{color:#9d3f4c;background:var(--danger-bg);border-color:#f0cbd1}.flash.warning{color:#8d5c17;background:var(--warning-bg);border-color:#ead5b2}
.badge{display:inline-flex;align-items:center;min-height:23px;padding:0 8px;border-radius:999px;font-size:7.5px;font-weight:900;letter-spacing:.03em;border:1px solid transparent}.badge.success{color:#2d6b58;background:#eaf6f1;border-color:#cfe7de}.badge.warning{color:#8e611f;background:#fcf4e8;border-color:#edd9b8}.badge.danger{color:#9e4652;background:#faecef;border-color:#efcbd1}.badge.neutral{color:#68778d;background:#f0f3f7;border-color:#dde4ed}

/* Formulários */
.field{display:grid;gap:6px;color:#52627b;font-size:9px;font-weight:800}.field input,.field select,.field textarea,select,input,textarea{width:100%;border:1px solid #d6e0eb;border-radius:11px;background:#fff;color:#26364f;outline:none;transition:.15s;padding:10px 11px;font-size:10.5px}.field input,.field select,select,input{min-height:40px}.field textarea,textarea{min-height:95px;resize:vertical;line-height:1.5}.field input:focus,.field select:focus,.field textarea:focus,input:focus,select:focus,textarea:focus{border-color:#8caed6;box-shadow:0 0 0 3px rgba(143,179,226,.16)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.field.full,.full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:17px}.form-actions.left-actions{justify-content:flex-start}.form-actions.compact{margin-top:12px}.search-box{position:relative}.search-box:before{content:"⌕";position:absolute;left:12px;top:50%;transform:translateY(-52%);color:#8d9bb0;font-size:18px;z-index:2}.search-box input{padding-left:36px;background:#f9fbfd}
.form-more{margin-top:12px;padding:11px 13px;border:1px solid #dfe7f0;border-radius:12px;background:#fafcfe}.form-more summary{cursor:pointer;color:#596d8a;font-size:9px;font-weight:800}.note-details p{font-size:10px;line-height:1.55;color:#617089}

/* Tabelas */
.table-wrap{overflow:auto;border:1px solid #e0e7f0;border-radius:14px;background:#fff}table{width:100%;border-collapse:collapse;min-width:620px}th{padding:10px 12px;text-align:left;background:#f5f8fb;color:#7c899b;font-size:7.5px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #e3eaf2}td{padding:11px 12px;color:#4c5d76;font-size:9.5px;border-bottom:1px solid #edf1f5;vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfdff}td b{color:#334863}

/* Início */
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:17px}.compact-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.metric{min-height:112px;padding:17px 18px;border-radius:18px;background:linear-gradient(145deg,#fff,#f8fbff);border:1px solid #dae4ef;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.metric:after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;right:-24px;top:-26px;background:rgba(143,179,226,.15)}.metric small{display:block;color:#76869d;font-size:8.5px;font-weight:850;letter-spacing:.02em}.metric-value{font-family:Georgia,serif;color:var(--space);font-size:29px;font-weight:600;margin-top:8px;line-height:1}.metric-note{color:#909bad;font-size:8.5px;margin-top:6px}.money-value{font-size:23px}

/* Administração */
.management-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.manage-card{min-height:125px;padding:19px;border-radius:19px;border:1px solid #dbe4ef;background:linear-gradient(145deg,#fff,#f7faff);box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:15px;transition:.18s}.manage-card:hover{transform:translateY(-3px);border-color:#bfcfe3;box-shadow:var(--shadow)}.manage-card>span:first-child{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#eaf1f9;color:#47658f;font-size:18px}.manage-card b{display:block;font-family:Georgia,serif;color:#304665;font-size:16px}.manage-card small{display:block;color:#8390a3;font-size:9px;margin-top:5px;line-height:1.35}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.role-card{padding:17px;border-radius:16px;background:#fff;border:1px solid #dde6f0;box-shadow:var(--shadow-xs)}.role-card b{font-family:Georgia,serif;color:#334a6a}.role-card p{font-size:9px;color:#7d8b9e;line-height:1.5}
.inline-role-form{display:flex;gap:6px;align-items:center;min-width:470px}.inline-role-form select{min-height:32px;padding:5px 8px;font-size:8.5px}

/* Agenda */
.week-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;padding:10px;border:1px solid #dbe4ef;border-radius:16px;background:rgba(255,255,255,.86);box-shadow:var(--shadow-xs);backdrop-filter:blur(8px)}.week-nav{display:flex;gap:7px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));gap:10px;align-items:start;overflow:auto;padding-bottom:8px}.day{min-height:520px;border:1px solid #dce5ef;border-radius:17px;background:rgba(255,255,255,.91);box-shadow:var(--shadow-xs);overflow:hidden}.day.today{border-color:#a9c2df;box-shadow:0 0 0 2px rgba(143,179,226,.18),var(--shadow-sm)}.day-head{padding:12px 12px 10px;background:#f5f8fc;border-bottom:1px solid #e4eaf2}.day-head b{display:block;color:#3d5271;font-size:9.5px}.day-head span{display:block;color:#96a2b2;font-size:7.5px;margin-top:3px}.appt,.google-event{display:block;margin:8px;padding:10px;border-radius:11px;border:1px solid #e1e8f1;border-left:4px solid var(--yinmn);background:#fff;transition:.14s}.appt:hover,.google-event:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(35,52,80,.06)}.appt b,.google-event b{display:block;color:#344b6b;font-size:9.5px}.appt span,.google-event span{display:block;color:#8390a2;font-size:7.8px;margin-top:3px}.appt.cancelled{opacity:.48;filter:grayscale(.5)}.google-event{border-left-color:#8fb3e2;background:#f8fbff}

/* Clientes */
.patient-list{display:grid;gap:8px}.patient-row{display:grid;grid-template-columns:minmax(260px,1.3fr) minmax(150px,.7fr) minmax(160px,.8fr) auto;align-items:center;gap:14px;padding:12px 14px;border:1px solid #dfe7f0;border-radius:14px;background:#fff;transition:.15s}.patient-row:hover{border-color:#bfcfe3;background:#fbfdff;transform:translateY(-1px);box-shadow:0 7px 18px rgba(33,52,81,.05)}.patient-name{display:flex;align-items:center;gap:11px;min-width:0}.patient-name b{display:block;color:#314967;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.patient-name small{display:block;color:#8995a6;font-size:8.5px;margin-top:3px}.row-chevron{color:#9ba9bb;font-size:20px}.simple-row{grid-template-columns:minmax(0,1fr) auto}.mini-avatar{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;flex:0 0 auto;background:linear-gradient(145deg,#e2edf9,#a9c7e9);color:#2d466a;font-family:Georgia,serif;font-size:11px;font-weight:700;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}
.patient-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px;padding:24px 26px;border-radius:24px;background:linear-gradient(120deg,#1c304e 0%,#365889 58%,#8fb3e2 145%);color:#fff;box-shadow:0 18px 45px rgba(31,51,82,.17)}.patient-hero-id{display:flex;align-items:center;gap:16px}.profile-avatar{width:72px;height:72px;border-radius:21px;display:grid;place-items:center;background:#eff5fb;color:#2b456c;font-family:Georgia,serif;font-size:23px;font-weight:700;box-shadow:0 8px 22px rgba(20,38,64,.13)}.patient-hero .eyebrow{font-size:7.5px;font-weight:900;letter-spacing:.16em;color:#c9dbef}.patient-hero h2{font-family:Georgia,serif;font-size:28px;font-weight:500;margin:2px 0 5px}.patient-hero p{margin:0;color:#d5e2f2;font-size:10px}.patient-hero-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.profile-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}.modern-profile{grid-template-columns:320px minmax(0,1fr)}.profile-content-stack{display:grid;gap:16px}.profile-data{display:grid;gap:2px}.profile-data>div{padding:10px 0;border-bottom:1px solid #edf1f5}.profile-data>div:last-child{border-bottom:0}.profile-data small{display:block;color:#8995a6;font-size:8px;font-weight:800}.profile-data b{display:block;margin-top:4px;color:#354b69;font-size:10px;line-height:1.4}

/* Mesa da psicóloga */
.desk-hero{min-height:192px;padding:27px 29px;margin-bottom:14px;border-radius:26px;display:flex;justify-content:space-between;align-items:center;gap:20px;background:radial-gradient(circle at 84% 20%,rgba(165,202,241,.28),transparent 26%),linear-gradient(120deg,#172a46 0%,#2f4f7e 62%,#648fc4 125%);color:#fff;box-shadow:0 20px 52px rgba(27,47,77,.20);position:relative;overflow:hidden}.desk-hero:after{content:"";position:absolute;right:145px;bottom:-90px;width:220px;height:220px;border-radius:50%;border:1px solid rgba(255,255,255,.08)}.desk-hero .eyebrow{font-size:7.5px;font-weight:900;letter-spacing:.18em;color:#bcd1eb}.desk-hero h2{font-family:Georgia,serif;font-size:31px;font-weight:500;margin:5px 0}.desk-hero p{margin:0;color:#d4e2f2;font-size:11px;line-height:1.5}.desk-hero p strong{color:#fff}.hero-actions{margin-top:16px}.desk-date{width:98px;height:111px;border-radius:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(8px);position:relative;z-index:2}.desk-date b{font-family:Georgia,serif;font-size:42px;font-weight:500;line-height:.9}.desk-date span{font-size:8px;font-weight:900;letter-spacing:.16em;margin-top:9px}.desk-date small{font-size:8px;color:#c5d6ea;margin-top:3px}.desk-hero.preview{background:linear-gradient(125deg,#273b5e,#5579aa)}
.desk-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}.desk-metric{min-height:94px;padding:16px 17px;border-radius:18px;background:rgba(255,255,255,.94);border:1px solid #dce5ef;box-shadow:var(--shadow-sm)}.desk-metric span{display:block;color:#75849a;font-size:8px;font-weight:850}.desk-metric b{display:block;font-family:Georgia,serif;font-size:27px;color:var(--space);margin:5px 0 2px}.desk-metric small{color:#909cad;font-size:8.5px}.desk-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,.75fr);gap:15px;align-items:start}.desk-card{padding:20px}.session-stack{display:grid;gap:8px}.session-row{display:grid;grid-template-columns:62px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:11px 12px;border:1px solid #e0e8f1;border-radius:14px;background:#fff;transition:.15s}.session-row:hover{border-color:#c2d2e5;box-shadow:0 8px 19px rgba(34,53,83,.055);transform:translateY(-1px)}.session-time{font-family:Georgia,serif;font-size:17px;color:#30496d;text-align:center}.session-person{display:flex;align-items:center;gap:10px;min-width:0}.session-person b{display:block;color:#304662;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-person small{display:block;color:#8b97a8;font-size:8.5px;margin-top:3px}.desk-patients{max-height:560px;overflow:auto;padding-right:2px}.desk-search{margin-bottom:10px}.preview-patient{pointer-events:none}.preview-lock{opacity:.72}.preview-toolbar{margin-bottom:13px}

/* Perfil clínico */
.clinical-profile-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:12px;padding:25px 27px;border-radius:26px;background:radial-gradient(circle at 85% 10%,rgba(173,207,242,.28),transparent 26%),linear-gradient(120deg,#162942 0%,#2c4a76 62%,#7098ca 135%);color:#fff;box-shadow:0 20px 52px rgba(28,48,78,.20)}.clinical-identity{display:flex;align-items:center;gap:17px;min-width:0}.profile-avatar.xl{width:78px;height:78px;border-radius:23px;background:rgba(255,255,255,.95);color:#2a456d;font-size:25px}.hero-label{display:flex;align-items:center;gap:6px;color:#c8d9ed;font-size:7.5px;font-weight:900;letter-spacing:.15em}.hero-label .ui-icon{width:13px;height:13px}.clinical-profile-hero h2{font-family:Georgia,serif;font-size:30px;font-weight:500;margin:3px 0 5px}.clinical-profile-hero p{margin:0;color:#d6e3f2;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clinical-hero-side{display:flex;align-items:center;gap:12px}.clinical-next{padding:11px 14px;border-radius:14px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);min-width:150px}.clinical-next span{display:block;color:#bdd0e8;font-size:7px;font-weight:900;letter-spacing:.12em}.clinical-next b{display:block;margin-top:4px;font-size:11px}.clinical-jump{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:13px;padding:6px;background:rgba(255,255,255,.72);border:1px solid #dbe4ef;border-radius:14px;width:max-content;max-width:100%;box-shadow:var(--shadow-xs)}.clinical-jump a{padding:8px 11px;border-radius:9px;color:#647794;font-size:8.5px;font-weight:800}.clinical-jump a:hover{background:#edf3fa;color:#38557f}.clinical-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}.clinical-stat{min-height:105px;padding:16px 17px;border-radius:18px;background:#fff;border:1px solid #dbe4ef;box-shadow:var(--shadow-sm)}.clinical-stat span{display:block;color:#7b899c;font-size:8px;font-weight:850}.clinical-stat b{display:block;font-family:Georgia,serif;color:var(--space);font-size:25px;margin:6px 0 3px}.clinical-stat small{display:block;color:#909cad;font-size:8px;line-height:1.35}.clinical-workspace{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:15px;align-items:start}.clinical-main-column,.clinical-side-column{display:grid;gap:15px}.feature-card,.clinical-overview,.clinical-timeline-card{padding:21px}.clinical-note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.clinical-note-panel{min-height:145px;padding:15px;border-radius:15px;border:1px solid #e0e8f1;background:linear-gradient(155deg,#fbfdff,#f6f9fd)}.clinical-note-panel.private-panel{background:linear-gradient(155deg,#f2f6fb,#eaf0f7);border-color:#d5dfeb}.clinical-note-panel.attention-panel{background:linear-gradient(155deg,#fffaf3,#fbf6ed);border-color:#eee0c8}.clinical-note-panel.full-panel{grid-column:1/-1;min-height:120px}.note-panel-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;color:#3c5576;font-size:9.5px;font-weight:850}.note-panel-title .ui-icon{width:13px;height:13px;color:#6e82a0}.clinical-body{font-size:10.5px;line-height:1.68;color:#526079}.placeholder-text{color:#9aa6b6;font-style:italic}.privacy-chip{display:inline-flex;align-items:center;gap:6px;width:max-content;min-height:28px;padding:0 9px;border-radius:999px;background:#edf4fb;color:#455e82;border:1px solid #d8e4f1;font-size:8px;font-weight:850}.privacy-chip .ui-icon{width:12px;height:12px}.patient-facts,.frequency-card,.admin-note-card{padding:18px}.fact-list,.frequency-list{display:grid}.fact-list>div,.frequency-list>div{padding:9px 0;border-bottom:1px solid #edf1f5}.fact-list>div:last-child,.frequency-list>div:last-child{border-bottom:0}.fact-list span,.frequency-list span{display:block;color:#8693a5;font-size:7.5px;font-weight:850}.fact-list b,.frequency-list b{display:block;margin-top:4px;color:#364d6d;font-size:9.5px;line-height:1.4}.frequency-ring{--value:0;width:122px;height:122px;margin:7px auto 14px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#4f74aa calc(var(--value)*1%),#e7eef6 0);position:relative}.frequency-ring:before{content:"";position:absolute;inset:10px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #e1e8f1}.frequency-ring>div{position:relative;text-align:center}.frequency-ring b{display:block;font-family:Georgia,serif;color:var(--space);font-size:22px}.frequency-ring span{display:block;color:#8a98aa;font-size:7.5px;margin-top:2px}.admin-note-card p{margin:0;color:#627087;font-size:9.5px;line-height:1.6}.clinical-timeline{position:relative;display:grid}.timeline-item{position:relative;display:grid;grid-template-columns:74px minmax(0,1fr);gap:16px;padding:0 0 15px 20px}.timeline-item:before{content:"";position:absolute;left:5px;top:17px;bottom:-4px;width:1px;background:#dce4ee}.timeline-item:last-child:before{display:none}.timeline-dot{position:absolute;left:0;top:8px;width:11px;height:11px;border-radius:50%;background:#b8c7d8;border:3px solid #f6f9fc;box-shadow:0 0 0 1px #cbd7e5}.timeline-item.has-note .timeline-dot{background:#4f72a4}.timeline-date{padding-top:4px}.timeline-date b{display:block;color:#495e7c;font-size:9px}.timeline-date span{display:block;color:#94a0b0;font-size:8px;margin-top:2px}.timeline-content{padding:13px 14px;border:1px solid #dfe7f0;border-radius:14px;background:#fff}.timeline-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.timeline-top h3{margin:0;color:#344c6c;font-size:10.5px}.timeline-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:6px}.note-state{color:#708098;font-size:7.5px;font-weight:800}.timeline-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.session-note-preview{margin-top:10px;padding-top:10px;border-top:1px solid #edf1f5}.session-note-preview b{color:#496281;font-size:9px}.session-note-preview p{margin:5px 0 0;color:#617087;font-size:9.5px;line-height:1.55}.session-note-missing{margin-top:10px;padding:8px 10px;border-radius:10px;background:#fbf5eb;color:#976d2b;font-size:8.5px}.clinical-modal{width:min(820px,calc(100vw - 30px))}.clinical-profile-form textarea{min-height:105px}.privacy-field{align-content:end}.privacy-field>span{font-size:9px;font-weight:800;color:#566780;margin-bottom:6px}

/* Registro de sessão */
.clinical-shell{max-width:1080px;margin:0 auto}.clinical-context{margin-bottom:14px}.back-link{display:inline-flex;align-items:center;margin:0 0 10px 3px;color:#647895;font-size:9px;font-weight:800}.back-link:hover{color:#344f79}.clinical-context-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 20px;border-radius:20px;background:linear-gradient(135deg,#edf4fb,#fafcff);border:1px solid #dbe4ef;box-shadow:var(--shadow-xs)}.compact-avatar{width:56px!important;height:56px!important;border-radius:17px!important;font-size:18px!important}.clinical-context-main h2{font-family:Georgia,serif;font-size:21px;color:var(--space);margin:2px 0 3px}.clinical-context-main p{margin:0;color:#8290a3;font-size:9.5px}.clinical-editor{padding:22px}.clinical-form{display:grid;gap:13px}.clinical-textarea{min-height:360px!important;line-height:1.7!important}.finalize-row{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border:1px solid #dbe4ef;border-radius:12px;background:#f7f9fc;color:#556780}.finalize-row input{width:auto;min-height:auto;margin-top:2px}.finalize-row b{display:block;font-size:9.5px}.finalize-row small{display:block;color:#8a97a8;font-size:8px;margin-top:2px}.locked-note{padding:19px;border-radius:15px;border:1px solid #dbe4ef;background:linear-gradient(155deg,#f8fbff,#fff)}.locked-note-head{display:flex;justify-content:space-between;gap:15px;padding-bottom:12px;border-bottom:1px solid #e7edf4}.locked-note-head strong{color:#3b526f;font-size:10.5px}.locked-note-head span{color:#8b98aa;font-size:8px}.clinical-text{padding-top:14px;color:#4d5d75;font-size:10.5px;line-height:1.75}

/* Google / conta */
.google-connect-card{max-width:760px;display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;align-items:start;padding:22px}.google-mark{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#edf3fa;color:#2f4b73;font-size:17px;font-weight:900}.google-main{min-width:0}.google-connected-email{font-size:13px;font-weight:800;color:#344b69;margin-top:4px}.google-connect-form{display:flex;gap:8px;align-items:end}.google-connect-form .field{min-width:300px}.google-server-note{font-size:8.5px!important}.settings-main{max-width:850px}

/* Financeiro */
.info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.info-grid>div{padding:12px;border:1px solid #e0e8f1;border-radius:13px;background:#fafcff}.info-grid small{display:block;color:#8a97a9;font-size:7.5px;font-weight:800}.info-grid b{display:block;color:#374e6d;font-size:9.5px;margin-top:4px}.quick-actions{display:flex;gap:8px;margin-top:14px}

/* Modais */
dialog{border:0;padding:0;width:min(720px,calc(100vw - 30px));max-height:88vh;border-radius:22px;background:#fff;box-shadow:0 35px 100px rgba(17,31,54,.32);overflow:auto}dialog::backdrop{background:rgba(13,24,42,.58);backdrop-filter:blur(6px)}.modal-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:19px 21px;background:rgba(250,252,255,.96);border-bottom:1px solid #e3eaf2;backdrop-filter:blur(8px)}.modal-head h2{margin:0;font-family:Georgia,serif;color:var(--space);font-size:19px}.modal-head p{margin:4px 0 0;color:#8290a3;font-size:8.5px}.modal-body{padding:21px}.close-x{width:34px;height:34px;border:1px solid #dce4ee;border-radius:10px;background:#fff;color:#62748e;font-size:18px;line-height:1}.close-x:hover{background:#f2f6fa}

/* Login */
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(430px,.95fr);background:#eef3f9}.login-brand{display:grid;place-items:center;padding:48px;background:radial-gradient(circle at 22% 17%,rgba(143,179,226,.22),transparent 24%),linear-gradient(145deg,#17243b,#27436c);position:relative;overflow:hidden}.login-brand:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.07);border-radius:50%;right:-210px;bottom:-230px}.login-brand-box{text-align:center;position:relative;z-index:1}.login-brand-box img{width:min(320px,72%);border-radius:34px;box-shadow:0 25px 70px rgba(5,15,29,.28)}.login-brand-box h2{font-family:Georgia,serif;color:#fff;font-size:27px;font-weight:500;margin:24px 0 0}.login-panel{display:grid;place-items:center;padding:45px}.login-card{width:min(420px,100%);padding:34px;border-radius:26px;background:#fff;border:1px solid #dde5ef;box-shadow:0 25px 70px rgba(27,43,68,.10)}.login-card h1{font-family:Georgia,serif;font-size:35px;font-weight:500;color:var(--space);margin:0}.login-card>p{color:#8491a4;font-size:10.5px;margin:7px 0 25px}.login-card .field{margin-bottom:13px}.login-card>.btn{width:100%;margin-top:6px;min-height:44px}

/* Responsivo */
@media(max-width:1220px){.management-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.desk-layout{grid-template-columns:1fr}.desk-patients{max-height:none}.clinical-workspace{grid-template-columns:1fr}.clinical-side-column{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-note-card{grid-column:1/-1}.profile-grid,.modern-profile{grid-template-columns:1fr}.metrics,.clinical-stats,.desk-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:920px){:root{--sidebar:226px}.main{padding:0 20px 32px}.topbar{min-height:88px}.top-user>span:first-child{display:none}.clinical-note-grid{grid-template-columns:1fr}.clinical-note-panel.full-panel{grid-column:auto}.clinical-side-column{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr 1fr}.patient-row{grid-template-columns:minmax(0,1fr) auto}.patient-row>div:nth-child(2),.patient-row>div:nth-child(3){display:none}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.login-shell{grid-template-columns:1fr}.login-brand{display:none}}
@media(max-width:720px){.app-shell{display:block}.sidebar{position:relative;width:100%;height:auto;padding:12px}.brand{padding-bottom:12px}.nav-caption{display:none}.main-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.nav-link{justify-content:center;min-height:42px;padding:0 8px}.nav-link span:not(.ui-icon){font-size:8px}.sidebar-foot{display:none}.main{padding:0 14px 28px}.topbar{min-height:82px}.page-title h1{font-size:27px}.top-user{padding:4px}.clinical-profile-hero,.desk-hero,.patient-hero{display:grid;padding:20px;border-radius:21px}.clinical-hero-side{justify-content:space-between}.clinical-next{min-width:0}.clinical-profile-hero h2,.desk-hero h2,.patient-hero h2{font-size:25px}.clinical-jump{width:100%;overflow:auto;flex-wrap:nowrap}.metrics,.clinical-stats,.desk-metrics{grid-template-columns:1fr 1fr}.management-grid{grid-template-columns:1fr}.week-toolbar{display:grid}.week-grid{grid-template-columns:repeat(7,200px)}.session-row{grid-template-columns:52px minmax(0,1fr) auto}.session-row>.btn{grid-column:2/-1;width:max-content}.clinical-context-main{grid-template-columns:auto 1fr}.clinical-context-main .privacy-chip{grid-column:1/-1}.timeline-item{grid-template-columns:1fr;padding-left:19px}.timeline-date{display:flex;gap:7px}.timeline-top{display:grid}.timeline-actions{justify-content:flex-start}.google-connect-form{display:grid}.google-connect-form .field{min-width:0}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.grid-3{grid-template-columns:1fr}.inline-role-form{min-width:380px}.info-grid{grid-template-columns:1fr}}
@media(max-width:480px){.main-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics,.clinical-stats,.desk-metrics{grid-template-columns:1fr}.clinical-identity{align-items:flex-start}.profile-avatar.xl{width:62px;height:62px;border-radius:18px;font-size:20px}.clinical-hero-side{display:grid}.patient-hero-id{align-items:flex-start}.patient-hero-actions{justify-content:flex-start}.card{padding:16px}.modal-body{padding:16px}.clinical-overview,.clinical-timeline-card,.feature-card{padding:16px}.google-connect-card{grid-template-columns:1fr}.google-mark{display:none}}
