/* Shared everyday tools and explicit accessibility preferences. No route-specific overrides. */
.diio-tools,.diio-tool-card{--diio-ink:#292337;--diio-muted:#5e566e;--diio-line:#e4deef;--diio-paper:#fff;--diio-tint:#f7f4fc;color:var(--diio-ink)}
.diio-tools{font-size:1rem;line-height:1.6;overflow-wrap:anywhere}
.diio-tools h1{font-size:clamp(1.75rem,4vw,2.25rem);line-height:1.2;letter-spacing:-.025em}
.diio-tools h2,.diio-tools h3{font-size:1.25rem;line-height:1.35;margin:0 0 .65rem}
.diio-tools p{margin:.6rem 0 1rem;color:var(--diio-muted)}
.diio-tool-card{padding:1.1rem 1.25rem;border:1px solid var(--diio-line);border-radius:18px;background:var(--diio-paper);box-shadow:0 5px 20px #30234606;margin:1rem 0;min-width:0}
.diio-tool-card summary,.diio-tools summary{cursor:pointer;font-weight:650;padding:.4rem 0;min-height:44px;box-sizing:border-box}
.diio-tool-card p,.diio-tool-card li{font-size:1rem;line-height:1.6}
.diio-tool-card a{color:#6740a0;text-underline-offset:3px;overflow-wrap:anywhere}
.diio-tool-eyebrow{font-size:.8rem!important;letter-spacing:.08em;font-weight:750;color:var(--diio-muted)}
.diio-tool-notice{padding:.9rem 1rem;border-radius:12px;background:var(--diio-tint);border-inline-start:3px solid #8564b5}
.diio-tool-meta{font-size:.875rem}
.diio-tools .actions,.diio-tool-options{display:flex;flex-wrap:wrap;gap:.6rem;margin:.85rem 0}
.diio-tools .btn,.diio-tool-card .btn,.diio-preparation-entry .btn{min-height:44px;height:auto;white-space:normal;line-height:1.4;max-width:100%}
.diio-preparation-entry{margin:.8rem 0}
.diio-source-report{appearance:none;background:transparent;border:0;border-radius:8px;color:inherit;cursor:pointer;font:inherit;min-width:44px;min-height:44px;margin-inline-start:4px;vertical-align:middle}
.diio-source-report:focus-visible{outline:3px solid #7951b5;outline-offset:2px}
.diio-guest-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border:1px solid var(--line,#e4deef);border-radius:14px;background:var(--surface,#fff);color:var(--muted,#5e566e);font-size:14px;margin-bottom:14px}
.diio-guest-strip .btn{min-height:44px;flex-shrink:0}
.diio-preparation-checks{display:grid;gap:.55rem;margin:1rem 0}
.diio-preparation-check{appearance:none;display:flex;align-items:flex-start;gap:.8rem;text-align:start;padding:.9rem 1rem;font:inherit;border:1px solid var(--diio-line);border-radius:12px;background:var(--diio-paper);color:var(--diio-ink);cursor:pointer;min-height:48px}
.diio-preparation-check span{flex:0 0 1.25rem;color:#6740a0;font-weight:750}
.diio-preparation-check[aria-checked="true"]{border-color:#7aaa95;background:#f0f8f4}
.diio-tool-option{display:flex;align-items:flex-start;gap:.8rem;margin:1rem 0;cursor:pointer}
.diio-tool-option input{width:1.25rem;height:1.25rem;flex-shrink:0;accent-color:#7650b0;margin-top:.25rem}
.diio-tools [aria-pressed="true"]{outline:2px solid #7650b0;outline-offset:2px}
.diio-tool-status:empty{display:none}
.diio-tools :focus-visible,.diio-tool-card :focus-visible,.diio-preparation-entry :focus-visible{outline:3px solid #7951b5;outline-offset:3px}
body.dark .diio-tools,body.dark .diio-tool-card{--diio-ink:#f5f1ff;--diio-muted:#cec5de;--diio-line:#4d445d;--diio-paper:#241e30;--diio-tint:#30263f}
body.dark .diio-preparation-check[aria-checked="true"]{background:#1e3b30}
body.dark .diio-tool-card a{color:#cdb4ff}
body.dark .diio-preparation-check span{color:#cdb4ff}
/* Existing profile settings now reach fixed-pixel copy and controls as well. */
body.text-large #app :is(p,li,label,input,textarea,select,.btn,.control,.category-action,.v10-service-row strong){font-size:18px!important;line-height:1.6!important}
body.text-xlarge #app :is(p,li,label,input,textarea,select,.btn,.control,.category-action,.v10-service-row strong){font-size:20px!important;line-height:1.65!important}
body.text-large #app :is(small,.eyebrow),body.text-xlarge #app :is(small,.eyebrow){font-size:16px!important;line-height:1.5!important}
body.text-large :is(.modal,.diio-tool-card),body.text-xlarge :is(.modal,.diio-tool-card){font-size:18px}
body:is(.text-large,.text-xlarge) #app :is(.btn,.control){height:auto;min-height:44px;white-space:normal}
body.comfort-mode *,body.comfort-mode *::before,body.comfort-mode *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
body.comfort-mode #app :is(.card,.category-page-hero,.v1630-help-hero,.v1635-ft-hero){box-shadow:none!important}
body.comfort-mode #app :focus-visible{outline:3px solid #7951b5!important;outline-offset:3px}
@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media (hover:none) and (pointer:coarse){.diio-tools button,.diio-tool-card button{touch-action:manipulation}}
/* Standalone offline reader uses only this stylesheet and local modules. */
.diio-offline-document{margin:0;background:#f7f5fc;color:#292337;font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.diio-offline-document *{box-sizing:border-box}
.diio-offline-page{max-width:1050px;margin:auto;padding:clamp(18px,4vw,40px);padding-bottom:max(32px,env(safe-area-inset-bottom))}
.diio-offline-page>header{padding:1rem 0}
.diio-offline-document .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #dcd3eb;border-radius:12px;background:#fff;color:#493069;padding:10px 16px;text-decoration:none;font:inherit;cursor:pointer}
.diio-offline-document a{color:#6740a0}
.diio-offline-document li{margin:.7rem 0}
.diio-offline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.diio-offline-grid .diio-tool-card{margin:0}
.diio-skip{position:fixed;top:-100px;left:16px;padding:12px;background:#fff;z-index:10}
.diio-skip:focus{top:12px}
@media(max-width:650px){.diio-offline-grid{grid-template-columns:1fr}.diio-tool-card{padding:1rem}.diio-tools .actions>*{flex:1 1 180px}}
@media(prefers-color-scheme:dark){.diio-offline-document{background:#19151f;color:#f5f1ff}.diio-offline-document .diio-tools,.diio-offline-document .diio-tool-card{--diio-ink:#f5f1ff;--diio-muted:#cec5de;--diio-line:#4d445d;--diio-paper:#241e30;--diio-tint:#30263f}.diio-offline-document .btn{background:#30263f;color:#eadfff;border-color:#514063}.diio-offline-document a{color:#cdb4ff}}
