.patient{max-width:560px;margin:0 auto;padding:0 16px 2rem}.p-header{text-align:center;padding:1.6rem 0 .6rem}.p-header h1{font-family:var(--serif);color:var(--red);letter-spacing:.3em;margin:0;font-size:1.8rem}.p-header p{color:var(--ink-2);letter-spacing:.2em;margin:.2rem 0 0}.notice{border:1px solid var(--red);background:var(--red-soft);color:var(--red);border-radius:var(--radius);margin:.8rem 0;padding:.7rem .9rem;font-weight:600;line-height:1.6}.notice a{color:inherit;white-space:nowrap}.p-card{background:var(--paper-2);border:1px solid var(--rule);border-radius:var(--radius);margin:.8rem 0;padding:1rem;scroll-margin-top:12px}.p-card h2{font-family:var(--serif);flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .6rem;font-size:1.15rem;display:flex}.p-card h2 small{font-family:var(--sans);color:var(--ink-2);font-size:.9rem;font-weight:400}.step{background:var(--red);color:#fff;width:1.6rem;height:1.6rem;font-size:.9rem;font-family:var(--sans);border-radius:50%;place-items:center;display:inline-grid}.p-muted{color:var(--ink-2)}.p-muted.small{margin-bottom:0;font-size:.85rem}.p-muted a{color:var(--red)}.wide{width:100%;min-height:48px;font-size:1.05rem}.more{margin-top:.6rem}.month{font-family:var(--serif);color:var(--ink-2);margin:.8rem 0 .4rem;font-size:.95rem}.date-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:.45rem;display:grid}.date-btn{background:#fff;justify-items:center;gap:.05rem;padding:.45rem .2rem;line-height:1.25;display:grid}.date-btn .d-day{font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:700}.date-btn .d-wd{font-size:.85rem}.date-btn .d-wd.weekend{color:var(--red)}.date-btn .d-lunar{color:var(--ink-3);font-size:.72rem}.date-btn .d-left{color:var(--green);font-size:.75rem}.date-btn.full{background:var(--paper)}.date-btn.full .d-left{color:var(--ink-3)}.date-btn.on{background:var(--red);border-color:var(--red);color:#fff}.date-btn.on .d-wd,.date-btn.on .d-lunar,.date-btn.on .d-left{color:#fff}.slot-row{border-top:1px dashed var(--rule);grid-template-columns:3rem 1fr;align-items:start;gap:.5rem;padding:.4rem 0;display:grid}.slot-row:first-of-type{border-top:none}.slot-period{font-family:var(--serif);color:var(--red);padding-top:.55rem}.slot-buttons{flex-wrap:wrap;gap:.45rem;display:flex}.slot-btn{font-variant-numeric:tabular-nums;background:#fff;min-width:5rem;min-height:46px;font-size:1.05rem}.slot-btn.on{background:var(--red);border-color:var(--red);color:#fff}.summary-line{background:var(--paper);border-radius:8px;margin:0 0 .8rem;padding:.5rem .75rem}.summary-line b{color:var(--red);margin-left:.3rem;font-size:1.15rem}.success{text-align:center;padding:1.5rem 1.2rem}.success .check{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:3.2rem;height:3.2rem;margin:0 auto .5rem;font-size:1.8rem;display:grid}.success h2{justify-content:center;font-size:1.4rem}.success dl{text-align:left;grid-template-columns:4rem 1fr;gap:.5rem .75rem;margin:1rem 0;display:grid}.success dt{color:var(--ink-2)}.success dd{margin:0;font-weight:600}.success dd small{color:var(--ink-2);font-weight:400;display:block}.success dd.big{color:var(--red);font-variant-numeric:tabular-nums;font-size:1.4rem}.success .notice{text-align:left}.p-footer{text-align:center;color:var(--ink-3);margin-top:1.5rem;font-size:.85rem}.p-footer a{color:inherit}.p-tabs{background:var(--paper-2);border:1px solid var(--rule);border-radius:999px;grid-template-columns:1fr 1fr;gap:4px;margin:.4rem 0 .2rem;padding:4px;display:grid}.p-tabs button{min-height:40px;color:var(--ink-2);background:0 0;border:none;border-radius:999px}.p-tabs button[aria-selected=true]{background:var(--ink);color:var(--paper);font-weight:700}.success-actions{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.lookup{gap:.5rem;margin-bottom:.6rem;display:flex}.lookup input{flex:1;font-size:1.05rem}.ok-msg{color:var(--green);background:#dde9df;border-radius:8px;padding:.5rem .75rem}.my-list{gap:.5rem;margin:.4rem 0;padding:0;list-style:none;display:grid}.my-list li{border:1px solid var(--rule);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem;display:flex}.my-date{font-weight:600}.my-time{color:var(--red);font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:700}.my-list .p-muted.small{margin:0}.my-list button{flex-shrink:0}.range{border-bottom:1px dashed var(--rule);gap:.4rem;margin-bottom:.4rem;padding-bottom:.6rem;display:grid}.range-label{color:var(--ink-2);font-size:.9rem}.range-row{grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;display:grid}.range-row input{min-width:0}.link-btn{min-height:32px;color:var(--red);background:0 0;border:none;justify-self:start;padding:0;text-decoration:underline}.phone-text{white-space:nowrap}.book-layout{display:block}.p-placeholder{display:none}@media (width>=900px){.patient{max-width:1280px;padding:0 32px 2rem}.p-header{padding-top:2rem}.p-tabs{max-width:520px;margin-left:auto;margin-right:auto}.book-layout{grid-template-columns:minmax(0,1.4fr) minmax(380px,1fr);align-items:start;gap:1.25rem;display:grid}.book-layout .p-card{margin:0 0 1rem}.book-right{position:sticky;top:1rem}.p-placeholder{color:var(--ink-2);text-align:center;border-style:dashed;padding:3rem 1.5rem;display:block}.date-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}.success,.patient>.p-card{max-width:640px;margin-left:auto;margin-right:auto}}
