/* MCA version 7 — fresh emerald, mint, sky and warm apricot. */
:root{--teal:#087f5b;--deep:#074638;--ink:#173e35;--muted:#526c64;--mint:#ddf8eb;--line:#c9e6d9;--bg:#effaf5;--orange:#ed8a26;--shadow:0 12px 35px #064b3210}
body{background:#effaf5;color:var(--ink)}
.shell{background:radial-gradient(ellipse at 98% 3%,#d5f5ec 0,transparent 45%),radial-gradient(ellipse at 30% 100%,#fff1dc 0,transparent 42%),#effaf5}
.sidebar{background:linear-gradient(155deg,#07513f 0%,#073d34 62%,#062e2b);box-shadow:8px 0 28px #063e2e10;color:#e5fff1}
.sidebar .brand{color:#f7fff9}.sidebar .brand em{color:#8ff2bb}.sidebar .brand small{color:#b9e4cf}.sidebar .logo{background:linear-gradient(145deg,#169a6c,#087a54);box-shadow:0 0 0 1px #8ff2bb55,0 5px 18px #06271d30}
.nav-label{color:#b1d9c7}.side-nav button{color:#d2eee0}.side-nav button .icon{color:#a6dfc3}.side-nav button:hover{background:#3adc9a14;color:#fff}
.side-nav button.active{background:linear-gradient(110deg,#a8f1c9,#d1fbe4);color:#06472f;border-left:3px solid #ffbc68;box-shadow:0 5px 16px #001c161c}.side-nav button.active .icon{color:#067746}.side-nav button.active:after{background:#087f5b}
.helpbox{background:linear-gradient(125deg,#155c47,#144d40);border-color:#3a8062;color:#f0fff5}.helpbox p{color:#c4e8d3}.helpbox .icon{color:#ffc873}.logout{color:#d8f0e3;border-top-color:#34745c}.logout:hover{color:#ffd69a}
.topbar{background:#f4fff9ed;border-bottom-color:#cce8d9}.searchbox{background:#e6f6ed;border-color:#c5e4d2;color:#4e7562}.topbar .searchbox input{color:#244f3b}.searchbox input::placeholder{color:#597666}.topbar .bell{background:#e0f8e9;border-color:#bfe5cf;color:#126b49}.userbox{border-left-color:#c8e4d3}.userbox strong{color:#194c36}.userbox small{color:#526f5c}.avatar{background:#cef4de;color:#12603c;border-color:#acdabb}
.btn{background:linear-gradient(120deg,#087f5b,#076349);color:#fff;border-color:transparent;box-shadow:0 5px 14px #08734a24}.btn:hover{background:linear-gradient(120deg,#076e4f,#064c39);box-shadow:0 8px 20px #08734a2a}
.btn.secondary{background:#f4fff9;color:#12623f;border-color:#b9dcc9;box-shadow:none}.btn.secondary:hover{background:#e5faee;border-color:#78bc95}.btn.subtle{background:#daf6e5;color:#146442;border-color:#bbdfc9}.btn.subtle:hover{background:#c9efd9}.btn.danger{background:#fff0eb;color:#aa372b;border-color:#f0c5b9}.btn.danger:hover{background:#ffe0d5}
.textlink,.eyebrow{color:#087a50}.iconbox{background:#d7f7e5;color:#08734c}.iconbox.orange{background:#ffecd1;color:#a65b10}.iconbox.blue{background:#dceffd;color:#2b668b}.iconbox.purple{background:#eee5ff;color:#6f48a0}
.tag{background:#dcf8e8;color:#16663b}.tag.pending{background:#fff0d4;color:#805019}.tag.confirmed{background:#d2f4e2;color:#14643f}.tag.checked_in{background:#dcefff;color:#205d8c}.tag.completed,.tag.active{background:#d9f6e1;color:#196132}.tag.cancelled,.tag.no_show{background:#ffe8e1;color:#9d382e}
.page-overline{color:#46755e}.page-heading h2{color:#123e2c}.page-heading p{color:#4b6c59}.today{background:#e4f9eb;border-color:#badcc3;color:#3c6347}
.welcome{background:linear-gradient(90deg,#07533df7 0%,#087653f2 43%,#0b8b6590 72%,#10684740),url('clinic.jpg') right 45%/cover;border-color:#10835a;box-shadow:0 12px 32px #0b704623;color:#f4fff7}
.welcome .eyebrow{color:#acf6ca}.welcome h2{color:#fff}.welcome p{color:#d5f9e3}.welcome-location{color:#d1f4c6}.welcome .btn{background:linear-gradient(120deg,#ffc875,#ffb85e);color:#4c2b08;border-color:#ffdca7;box-shadow:0 8px 18px #00291b25}.welcome .btn:hover{background:#ffd590}.welcome:before{border-color:#b8ffe040;box-shadow:0 0 0 50px #8af2b00b,0 0 0 105px #a2fad607}
.hours-band{background:linear-gradient(110deg,#daf6e6,#e8fbf0);border-color:#b2e2c8}.hours-band .iconbox{background:#bfeecf;color:#167447}.hours-band strong{color:#205f3c}.hours-band span:not(.iconbox):not(.hours-pill){color:#486c53}.hours-band .hours-pill{background:#fff1d6;color:#83511b;border-color:#eed4a9}
.stat{background:linear-gradient(125deg,#e7fcf1,#c9f2dc);border-color:#aee2c7;box-shadow:0 7px 24px #087c4f09}.stat:nth-child(2){background:linear-gradient(125deg,#fff6e6,#ffe4bf);border-color:#f2cf98}.stat:nth-child(3){background:linear-gradient(125deg,#eff9ff,#d5edfc);border-color:#b9daef}.stat:nth-child(4){background:linear-gradient(125deg,#f5efff,#e9dcfa);border-color:#d6c1ef}.stat .iconbox{background:#b6eccb;border-color:#a0d9b7;color:#1b6c42}.stat .iconbox.orange{background:#ffdbab;border-color:#edc18a;color:#95500e}.stat .iconbox.blue{background:#c4e4f8;border-color:#a4cde7;color:#2e6488}.stat .iconbox.purple{background:#e0cef5;border-color:#cbb3e9;color:#754b9c}.stat strong{color:#1c4632}.stat div>span{color:#486750}
.panel{background:linear-gradient(155deg,#fbfffd,#f0fbf5);border-color:#c3e2cf;box-shadow:0 6px 24px #175b3808}.panel:nth-child(2n){background:linear-gradient(155deg,#f7fffb,#eaf8f1)}.panel-title{border-bottom-color:#d2e8da}.panel-title h3,.panel>h3{color:#1e4e34}
.quick{background:#e0f8e8;border-color:#bfe0cb}.quick:nth-child(2n){background:#e6f4ff;border-color:#c8deed}.quick:nth-child(3n){background:#fff0db;border-color:#eed6b5}.quick .iconbox{background:#c0ebd0;color:#147646}.quick:nth-child(2n) .iconbox{background:#cce7f7;color:#2f6c91}.quick:nth-child(3n) .iconbox{background:#ffe0b4;color:#945b20}.quick strong{color:#264c36}.quick small{color:#526d59}.quick:hover{background:#d7f5e0;border-color:#7dc8a0;box-shadow:0 9px 20px #22794d12}
.empty{background:linear-gradient(135deg,#ecfcf3,#ddf5e8);border-color:#aad5b9;color:#476e52}.empty .icon{color:#4c9b6c}.activity{border-bottom-color:#d6e9dc}.activity p{color:#365d43}.activity small{color:#5b7663}.dot{background:#1ca76a;box-shadow:0 0 0 4px #cff1de}.bar{background:linear-gradient(0deg,#088358,#49d18a)}.chart-col small,.legend{color:#56745d}.legend i{background:#168b59}.summary-chart{background:repeating-linear-gradient(to top,transparent 0,transparent 39px,#bfddcb66 40px,#bfddcb66 41px)}
.service-card,.medicine-card{background:linear-gradient(145deg,#f4fff8,#e0f8e8);border-color:#b7e0c7;box-shadow:0 7px 22px #14684208}.service-card:nth-child(2n),.medicine-card:nth-child(3n){background:linear-gradient(145deg,#f2fbff,#e1f1ff);border-color:#c2dfec}.service-card:nth-child(3n),.medicine-service{background:linear-gradient(145deg,#fff8ee,#ffecd3);border-color:#ebd4b5}.service-card h3,.medicine-card h3{color:#24533a}.service-card p,.medicine-card p.muted{color:#4f7159}.service-hours{background:#ccebd688;color:#355d3b}.medicine-picture,.medicine-picture img{background:#edf8ef;border-color:#c5dfca}.medicine-picture figcaption{background:#e1f2e5;color:#4f6e50}.medicine-location,.medicine-updated{color:#4c6e54}
.notice{background:#e6f8ec;border-color:#bcdfc7;border-left-color:#22a567;color:#315d3e}.toolbar{background:#e6f7ed;border-color:#c5e4cf}.field input,.field select,.field textarea{background:#fcfffd;border-color:#b6d8c1;color:#244b33}.field label{color:#315e40}.field small{color:#53765b}.field input::placeholder,.field textarea::placeholder{color:#698370}.field input:focus,.field select:focus,.field textarea:focus{background:#fff;border-color:#16965b;box-shadow:0 0 0 3px #22b06a22}.field input[readonly]{background:#e5f3e8;color:#57735c}.form-section{color:#2d633d;border-bottom-color:#c2dfc7}.checkbox{color:#385e42}input[type=checkbox]{accent-color:#087f5b}
.id-upload{background:#e2f5e9;border-color:#87be9d}.intake-summary{background:#edf9f1;border-color:#b8dbbf}.intake-summary dt{color:#54765a}.intake-summary dd{color:#2c5736}.id-preview{background:#ddf1e3;border-color:#abd2b5}.review-box{background:#e1f5e8;border-color:#aed9bc}.appointment-card,.confirm-summary{background:#e9f8ef;border-color:#b4dac1}.datebox{background:#bfeccb;color:#1a6435}.datebox small{color:#326c42}.appointment-info h3{color:#1e5737}
.table-wrap{border-color:#c6dfce}table{background:#f8fff9}table th{background:#dbf2e3;color:#355d40;border-bottom-color:#b9d8c1}table td{color:#355b3d;border-bottom-color:#d2e6d7}table td small{color:#597560}table tbody tr:hover{background:#e8f8ed}
#modal{background:#f5fff8;border-color:#b5d7be;box-shadow:0 25px 100px #063e2d42}#modal::backdrop{background:#082f25b0}.modal-heading{border-bottom-color:#c6e3cf}.modal-heading h2{color:#1d4f31}.modal-heading p{color:#527158}.close{background:#e0f3e5;color:#3b6c48}.form-error{background:#fff0e9;color:#9f3529;border-color:#f0c1b2}#toast{background:#075238;color:#f5fff8;border-color:#3da36e;box-shadow:0 12px 28px #0a4e3030}
.public-shell{background:radial-gradient(ellipse at 85% 0,#caf4df,transparent 50%),radial-gradient(ellipse at 0 70%,#fff0db,transparent 48%),#f0fbf5}.public-nav{background:#f5fff9ed;border-color:#c2e5cf}.public-nav .brand{color:#185235}.hero{border-color:#b9dfc6}.hero:before{background:linear-gradient(90deg,#f2fff6fa 0%,#edfff3ed 33%,#e9fff080 57%,#e2fbeb08 80%)}.hero h1{color:#174e2e}.hero h1 span{color:#07814e}.hero-copy p{color:#466c50}.hero-service{background:#f6fff5ee;border-color:#c0dfbd}.trust-grid article{background:#f4fff9f2;border-color:#bfdec9}.contact-box{background:linear-gradient(120deg,#074c35,#108051);border-color:#197c50}.contact-box h2{color:#fff}.contact-box .muted{color:#c5f2d5}.auth{background:#f1fcf5;border-color:#badcc5}.auth-art{background:linear-gradient(140deg,#064c35f7,#11895fba),url('clinic.jpg') 70% center/cover}.auth-art h1{color:#fff}.auth-art .eyebrow{color:#bbf7d2}.auth-art p{color:#daf8e4}.roles div{border-color:#94d2a870;background:#b9f5cf11}.auth-panel{background:#f1fcf5}.auth-panel h2{color:#245b36}.demo-accounts button{background:#d6f6e0;color:#29673d;border-color:#add7ba}.demo-strip{background:#c9efdc;color:#2b6645}.footer{color:#526f59}
.verify-intro>.iconbox{background:#bfeeda;color:#087a4f}.verify-intro h1{color:#0d4f35}.verify-intro p{color:#3b6b52}.verify-intro .notice{background:#d4f2df;border-color:#a6d4b7}.verify-panel{background:linear-gradient(145deg,#f8fffa,#e2f8eb);border-color:#add8bd}.verify-correction summary{color:#076e43}.demo-code{background:#e1efff;color:#244e7a}
.pickup-code-card{background:linear-gradient(130deg,#dcf7e8,#edfcf3);border-color:#aadabd}.pickup-code-card .eyebrow{color:#2c7048}.pickup-code{color:#155b34}.pickup-code-card h3{color:#205c39}.pickup-code-card h4,.pickup-code-card p{color:#436c4d}.claim-steps{background:#e1f5e8;border-color:#c1dfc8;color:#51715a}.claim-steps strong{background:#bce8cc;color:#225f36}.claim-blocked{background:#fff0dd;border-color:#ebcc9e;color:#805421}.release-record{background:#eaf9ef;border-color:#badcc4}.release-record dt{color:#52735a}.release-record dd{color:#275a39}.claim-success{background:#d0f4db;border-color:#a0d4af;color:#24623b}.claim-success>.icon{background:#a9e1b9}
/* Reference card is readable as a phone screenshot at the center. */
.appointment-reference-card{position:relative;overflow:hidden;padding:25px;margin:0 0 22px;border:1px solid #acd8bf;border-radius:17px;background:radial-gradient(ellipse at 100% 0,#bcefd5 0,transparent 55%),linear-gradient(135deg,#edfff3,#dbf7e8);box-shadow:0 7px 24px #0b6c3f0b}
.appointment-reference-card:before{content:'';position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#088357 0%,#2cc47c 70%,#ffb353 70%)}
.appointment-reference-card .eyebrow{font-size:calc(10px * var(--text-scale,1));color:#2f7150}.appointment-reference{display:block;color:#0a5834;font-family:Manrope,Arial,sans-serif;font-size:calc(32px * var(--text-scale,1));font-weight:800;letter-spacing:2px;line-height:1.5;margin:15px 0 18px;user-select:all;overflow-wrap:anywhere}.reference-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;padding:18px 0;border-top:1px solid #b5ddc5;border-bottom:1px solid #b5ddc5}.reference-facts small{display:block;color:#4a745b;font-size:calc(11px * var(--text-scale,1));margin-bottom:5px}.reference-facts strong{color:#255b3b;font-size:calc(13px * var(--text-scale,1));overflow-wrap:anywhere}.appointment-reference-card>p{font-size:calc(12px * var(--text-scale,1));color:#3c6b4b;margin:17px 0;line-height:1.8}.reference-help{color:#52765d;font-size:calc(11px * var(--text-scale,1))}.appointment-mini-reference{color:#087a4d!important;letter-spacing:.7px;font-weight:700;font-size:calc(11px * var(--text-scale,1))}
@media(max-width:600px){.appointment-reference-card{padding:22px 18px}.appointment-reference{font-size:calc(25px * var(--text-scale,1));letter-spacing:1px}.reference-facts{gap:15px}.reference-facts strong{font-size:calc(12px * var(--text-scale,1))}.reference-help{width:100%}.page-heading>.row{width:100%}.page-heading>.row>.btn{flex:1;min-width:145px}}
@media(max-width:380px){.reference-facts{grid-template-columns:1fr}}
@media print{.appointment-reference-card{break-inside:avoid;border:1px solid #555;background:#fff!important}.appointment-reference,.reference-facts strong{color:#111}.appointment-reference-card .btn{display:none}}

/* Version 7.1: one decision per visit review, with correction requests separated. */
.visit-request-context{padding:16px 19px;border:1px solid #c6e3d0;background:#effaf3;border-radius:12px;margin-bottom:20px}.visit-request-context p{font-size:calc(12px * var(--text-scale,1));color:#43674d;margin:0 0 9px}.visit-request-context p:last-child{margin-bottom:0}
.visit-review-guide{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:11px 13px;border:1px solid #c6e3d0;background:#e6f7ed;border-radius:10px;font-size:calc(11px * var(--text-scale,1));color:#4c7258;margin:20px 0}.visit-review-guide>*{padding:5px 8px}.visit-review-guide strong{background:#bfeacd;color:#225f39;border-radius:6px}
.visit-decision{padding:23px;border:1px solid #abd8b9;border-radius:15px;background:linear-gradient(135deg,#e2f8e9,#f2fcf6);margin:22px 0}.visit-decision h3{font-size:calc(17px * var(--text-scale,1));color:#205736;margin:0}.visit-decision>.row{margin-bottom:14px}.visit-decision>p{font-size:calc(12px * var(--text-scale,1));color:#42694b;line-height:1.8;margin-bottom:18px}.visit-decision-confirmed{background:#e4f7ec}.visit-decision form>.field{margin-top:16px}.review-ack{padding:14px;background:#d2efdd;border:1px solid #b5dcc2;border-radius:10px;margin:17px 0}.review-reused{display:flex;gap:9px;align-items:flex-start;padding:12px 14px;border:1px solid #b8dec5;background:#d9f4e4;border-radius:9px;font-size:calc(12px * var(--text-scale,1));line-height:1.7;color:#356744;margin:15px 0}.review-reused .icon{margin-top:2px}.visit-primary-action{display:flex;gap:13px;flex-wrap:wrap;align-items:center;margin-top:19px}.visit-primary-action small{max-width:260px;flex:1;color:#53755c;font-size:calc(11px * var(--text-scale,1));line-height:1.7}.visit-primary-action .btn{min-height:46px}
.saved-review-note{padding:13px 15px;background:#f3fff7;border:1px solid #c5e4d0;border-radius:10px;font-size:calc(12px * var(--text-scale,1));margin:16px 0}.saved-review-note p{margin:6px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;color:#446b4e}
.correction-request{border-top:1px solid #b9ddc5;padding-top:17px;margin-top:22px}.correction-request summary{display:flex;gap:8px;align-items:center;cursor:pointer;color:#7a541e;font-weight:700;font-size:calc(12px * var(--text-scale,1));list-style:none}.correction-request summary:after{content:'+';margin-left:auto;font-size:20px;font-weight:400}.correction-request[open] summary:after{content:'−'}.correction-request>p{font-size:calc(12px * var(--text-scale,1));color:#5d6b50;margin:15px 0;line-height:1.8}.correction-request form{padding:17px;background:#fff8e9;border:1px solid #ead7b3;border-radius:11px}.visit-other-actions{padding:17px 0 0;border-top:1px solid #c7e2ce;margin-top:23px}.visit-other-actions>.eyebrow{font-size:calc(10px * var(--text-scale,1));color:#55735c}.visit-other-actions .modal-actions{margin-top:13px;justify-content:flex-start}
@media(max-width:600px){.visit-decision{padding:18px}.visit-primary-action{align-items:stretch}.visit-primary-action .btn,.visit-primary-action small{width:100%;flex-basis:100%;max-width:none}.visit-review-guide{gap:2px;padding:8px}.visit-review-guide>*{padding:5px;font-size:calc(10px * var(--text-scale,1))}.correction-request form{padding:14px}.visit-other-actions .btn{flex-grow:1}}
