/* Additions use the approved HandyFan palette and existing component styles. */
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.review-grid .panel{display:flex;flex-direction:column;gap:12px}.review-grid .panel .actions{margin-top:auto}.review-grid .review-price small{font-size:1rem;font-weight:500}.review-price{font-size:2rem;font-weight:750;color:var(--navy)}.review-note{border-left:3px solid var(--blue);padding:12px 16px;background:var(--blue-soft);margin:16px 0}.review-account{display:flex;align-items:center;gap:14px;margin-left:auto}.review-account small{display:block;color:var(--muted)}.review-auth{max-width:700px;margin:40px auto;padding:24px}.review-auth .panel{margin-top:20px}.review-auth .actions{flex-wrap:wrap}.review-document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}.review-doc{min-height:190px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;text-align:left;width:100%;color:var(--ink);background:var(--white);border:1px solid var(--border);border-radius:12px;padding:20px}.review-doc:hover{border-color:var(--blue)}.review-doc .badge{margin-top:auto}.review-calendar{margin:20px 0;padding:24px}.review-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid var(--border);border-top:1px solid var(--border)}.review-day{min-height:130px;padding:8px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.review-day.today{background:var(--blue-soft)}.review-day.outside{opacity:.55}.review-day time{font-size:.85rem;font-weight:700}.review-event{display:block;width:100%;text-align:left;background:var(--blue-soft);color:var(--ink);border:1px solid var(--border);border-left:3px solid var(--blue);border-radius:5px;margin-top:8px;padding:7px;font-size:.75rem;overflow-wrap:anywhere}.review-event small{display:block}.review-weekday{padding:10px;font-weight:700;background:var(--navy);color:white}.review-agenda{display:grid;gap:12px;margin-top:20px}.review-upload-actions{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.review-upload-actions button{font-size:.8rem}.review-choice{display:flex;gap:10px;align-items:flex-start;margin:14px 0}.review-list{display:grid;gap:12px;margin:16px 0}.review-list .panel{padding:18px}.review-token-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.review-token-grid div{padding:16px;border:1px solid var(--border);border-radius:8px}.review-token-grid strong{display:block;font-size:1.7rem}.review-token-grid span{font-size:.85rem}.review-link{width:100%;overflow-wrap:anywhere}.review-upload-state{padding:8px;color:var(--muted)}.review-calendar-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.review-client-results{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.review-access-denied{max-width:680px;padding:40px;margin:auto}.review-scroll{overflow:auto}.review-history{margin-top:14px;border-top:1px solid var(--border);padding-top:12px}.review-history li{margin:8px 0}.review-admin-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.review-fullwidth{grid-column:1/-1}.review-status{font-size:.85rem;font-weight:650}.review-empty{padding:40px;text-align:center}.review-subscription-current{border:2px solid var(--blue)}
@media(max-width:1000px){.review-grid,.review-document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-calendar{padding:14px}.review-day{min-height:100px;padding:4px}.review-account{gap:6px}.review-account strong{font-size:.8rem}}
@media(max-width:640px){.review-grid,.review-document-grid{grid-template-columns:1fr}.review-token-grid{grid-template-columns:repeat(2,1fr)}.review-auth{padding:16px;margin:10px auto}.review-calendar-grid{min-width:630px}.review-calendar-tools{gap:5px}.review-account>div{display:none}.review-calendar{padding:12px}.review-calendar .calendar-heading{display:block}.review-calendar-tools{margin-top:12px}.review-doc{min-height:140px}.review-account{margin-left:0}.app-header{flex-wrap:wrap}.review-auth h1{font-size:2rem}}
html[data-theme="dark"] .review-doc{background:var(--surface);color:var(--ink)}
@media(max-width:640px){.review-calendar-grid{min-width:0}.review-day{min-height:86px;padding:3px}.review-day time{font-size:.7rem}.review-weekday{font-size:.65rem;padding:8px 2px;text-align:center}.review-event{font-size:.6rem;line-height:1.3;padding:4px 2px;min-height:44px}.review-event small{font-size:.55rem}.review-event strong{font-weight:600}.review-day.outside{opacity:.7}.review-calendar h2{font-size:1.3rem}}
