:root {
  --bg: #f6f5f1; --card: #fff; --ink: #1d2320; --muted: #6a736e; --line: #e3e1da;
  --accent: #2f6f5e; --accent-ink: #fff; --accent-soft: #e2efe9; --danger: #b3402f; --today: #fff4d6;
  --radius: 10px;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--ink); font: 16px/1.45 system-ui, -apple-system, "Segoe UI", sans-serif; }
#app { max-width: 980px; margin: 0 auto; padding: 16px; }
h1, h2, h3 { margin: 0 0 .5rem; line-height: 1.2; }
button, input, select, textarea { font: inherit; color: inherit; }
input, select, textarea { background: var(--card); border: 1px solid var(--line); border-radius: 8px; padding: 8px 10px; width: 100%; }
textarea { resize: vertical; min-height: 60px; }
button { background: var(--card); border: 1px solid var(--line); border-radius: 8px; padding: 7px 12px; cursor: pointer; }
button:hover { border-color: var(--accent); }
button.primary { background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }
button.danger { color: var(--danger); }
button.link { border: 0; background: none; padding: 2px 4px; color: var(--muted); }
.card { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); padding: 16px; margin-bottom: 14px; }
.row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.row > .grow { flex: 1 1 140px; min-width: 0; }
.spread { justify-content: space-between; }
.muted { color: var(--muted); font-size: .9rem; }
.error { color: var(--danger); min-height: 1.3em; margin: 6px 0 0; }
.auth { max-width: 400px; margin: 8vh auto 0; }
.auth label { display: block; margin: 10px 0 4px; font-size: .9rem; color: var(--muted); }
header.top { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin-bottom: 12px; }
header.top h1 { font-size: 1.2rem; margin: 0; flex: 1 1 auto; }
header.top select { width: auto; max-width: 55vw; }
nav.tabs { display: flex; gap: 6px; margin-bottom: 14px; }
nav.tabs button { flex: 1; }
nav.tabs button.on { background: var(--accent-soft); border-color: var(--accent); font-weight: 600; }
.cal-head { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.cal-head h2 { flex: 1; text-align: center; margin: 0; }
.grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; }
.dow { background: var(--bg); text-align: center; font-size: .78rem; color: var(--muted); padding: 4px 0; }
.day { background: var(--card); min-height: 84px; padding: 4px; cursor: pointer; overflow: hidden; text-align: left; border: 0; border-radius: 0; display: block; }
.day:hover { background: var(--accent-soft); }
.day.other { opacity: .45; }
.day.today { background: var(--today); }
.day.sel { outline: 2px solid var(--accent); outline-offset: -2px; }
.day .n { font-size: .82rem; font-weight: 600; }
.chip { display: block; font-size: .72rem; background: var(--accent-soft); border-radius: 4px; padding: 1px 4px; margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ev { border-left: 3px solid var(--accent); padding: 6px 10px; margin: 8px 0; background: var(--bg); border-radius: 0 8px 8px 0; }
.item { display: flex; align-items: center; gap: 8px; padding: 6px 0; border-bottom: 1px solid var(--line); }
.item input[type=checkbox] { width: 20px; height: 20px; flex: none; }
.item.done .t { text-decoration: line-through; color: var(--muted); }
.item .t { flex: 1; word-break: break-word; }
.badge { font-size: .72rem; background: var(--accent-soft); border-radius: 99px; padding: 1px 8px; color: var(--accent); }
.code { font: 600 1.2rem ui-monospace, Menlo, monospace; letter-spacing: .06em; background: var(--accent-soft); padding: 10px; border-radius: 8px; word-break: break-all; user-select: all; }
@media (max-width: 600px) {
  .day { min-height: 58px; }
  .chip { font-size: .62rem; }
  #app { padding: 10px; }
}
.item-wrap { border-bottom: 1px solid var(--line); }
.item-wrap .item { border-bottom: 0; }
.note { margin: -2px 0 8px 28px; padding: 4px 8px; font-size: .9rem; color: var(--muted); background: var(--bg); border-radius: 6px; word-break: break-word; }
.note-edit { margin: 0 0 8px 28px; }

/* ---- tabs: six of them, so let them wrap on narrow screens ---- */
nav.tabs { flex-wrap: wrap; }
nav.tabs button { flex: 1 1 30%; }
@media (min-width: 700px) { nav.tabs button { flex: 1 1 0; } }
[hidden] { display: none !important; }

/* ---- sticky note board ---- */
.board { display: grid; grid-template-columns: repeat(auto-fill, minmax(165px, 1fr)); gap: 22px 18px; padding: 14px 6px 6px; }
.sticky { --paper: #fff59a; position: relative; min-height: 165px; padding: 22px 14px 10px; display: flex; flex-direction: column;
  background: linear-gradient(170deg, color-mix(in srgb, var(--paper) 88%, #fff) 0%, var(--paper) 100%);
  color: #2b2b2b; border-radius: 2px 2px 14px 2px; transform: rotate(var(--r, 0deg));
  box-shadow: 0 1px 1px rgba(0,0,0,.12), 0 8px 14px -6px rgba(0,0,0,.35);
  font-family: "Segoe Print", "Bradley Hand", "Chalkboard SE", "Comic Neue", "Comic Sans MS", cursive; transition: transform .15s, box-shadow .15s; }
.sticky:hover { transform: rotate(0deg) translateY(-3px) scale(1.02); box-shadow: 0 2px 2px rgba(0,0,0,.12), 0 14px 18px -8px rgba(0,0,0,.4); }
.sticky::before { content: ""; position: absolute; top: -9px; left: 50%; width: 54px; height: 18px; margin-left: -27px;
  background: rgba(255,255,255,.55); box-shadow: 0 1px 2px rgba(0,0,0,.15); transform: rotate(calc(var(--r, 0deg) * -1.5)); }
.sticky::after { content: ""; position: absolute; right: 0; bottom: 0; width: 22px; height: 22px;
  background: linear-gradient(135deg, rgba(0,0,0,0) 50%, rgba(0,0,0,.13) 50%); border-radius: 0 0 14px 0; }
.sticky-text { flex: 1; white-space: pre-wrap; word-break: break-word; font-size: 1.02rem; line-height: 1.35; }
.sticky-meta { margin-top: 10px; font: .72rem system-ui, sans-serif; color: rgba(0,0,0,.6); }
.sticky-actions { display: flex; gap: 4px; flex-wrap: wrap; margin-top: 4px; }
.sticky .link { color: #3a3a3a; font: .78rem system-ui, sans-serif; text-decoration: underline; padding: 2px 4px; }
.sticky-perm { margin-top: 2px; font: .72rem system-ui, sans-serif; color: rgba(0,0,0,.6); }
.sticky-perm input { width: auto; vertical-align: middle; }
.c-yellow { --paper: #fff59a; } .c-pink { --paper: #ffc2d9; } .c-blue { --paper: #b9e3ff; }
.c-green { --paper: #c9f2b3; } .c-orange { --paper: #ffd3a0; } .c-purple { --paper: #dcc8ff; }
.swatches { display: flex; gap: 8px; }
.swatch { width: 28px; height: 28px; padding: 0; border-radius: 50%; background: var(--paper); border: 2px solid var(--line); }
.swatch.on { border-color: var(--ink); box-shadow: 0 0 0 2px var(--card), 0 0 0 4px var(--ink); }
details.item-wrap > summary { list-style: none; cursor: pointer; }
details.item-wrap > summary::-webkit-details-marker { display: none; }
@media (prefers-reduced-motion: reduce) { .sticky { transition: none; } }
input[type=checkbox], input[type=radio] { width: auto; }

/* ---- installed-app polish: keep content clear of notches / home bars ---- */
#app { padding-left: max(16px, env(safe-area-inset-left)); padding-right: max(16px, env(safe-area-inset-right));
       padding-top: max(16px, env(safe-area-inset-top)); padding-bottom: max(16px, env(safe-area-inset-bottom)); }
@media (max-width: 600px) { #app { padding-left: max(10px, env(safe-area-inset-left)); padding-right: max(10px, env(safe-area-inset-right)); } }
html { -webkit-text-size-adjust: 100%; }
button, .day, .swatch { touch-action: manipulation; }

.drawn-icon{display:inline-block;vertical-align:-.2em;flex-shrink:0;color:inherit}.icon-with-text{display:inline}.icon-with-text svg{margin-right:.12em}

/* Bundled outline icon color picker */
.icon-color-picker{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.icon-color-picker select{max-width:160px}.icon-color-preview{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px}.icon-color-preview svg{width:22px;height:22px}

.icon-color-picker .icon-search{width:145px;max-width:100%;min-height:34px}.icon-color-picker select[aria-label='Icon category']{max-width:160px}

/* Built-in icon favorites */
.icon-favorite-toggle { min-width: 2.5rem; font-size: 1.35rem; line-height: 1; color: #a16c20; }
.icon-favorite-toggle:disabled { opacity: .45; }
.icon-favorite-status { font-size: .78rem; opacity: .8; }

/* 2026 appearance refresh: local, fixed-palette themes; no user CSS or remote assets. */
:root, :root[data-theme="sage"] {
  color-scheme: light;
  --bg:#f4f7f3;--card:#fff;--ink:#24332d;--muted:#60746a;--line:#dce7df;
  --accent:#2f6f5e;--accent-ink:#fff;--accent-soft:#e1f0e9;--danger:#ad3845;--today:#fff1c8;
  --shadow:0 10px 35px rgba(30,66,49,.07);
}
:root[data-theme="blush"] {color-scheme:light;--bg:#fff5f8;--card:#fff;--ink:#492b39;--muted:#805e6d;--line:#f1dbe4;--accent:#a84377;--accent-ink:#fff;--accent-soft:#fbe1ee;--danger:#a82e38;--today:#fff0cf;--shadow:0 10px 35px rgba(145,58,96,.08)}
:root[data-theme="lavender"] {color-scheme:light;--bg:#f7f4ff;--card:#fff;--ink:#352c50;--muted:#716783;--line:#e7def7;--accent:#7254ad;--accent-ink:#fff;--accent-soft:#ede5ff;--danger:#a63254;--today:#fff2cf;--shadow:0 10px 35px rgba(85,61,135,.09)}
:root[data-theme="ocean"] {color-scheme:light;--bg:#f0f8fc;--card:#fff;--ink:#1c3545;--muted:#607a89;--line:#d9e9f2;--accent:#236eaa;--accent-ink:#fff;--accent-soft:#e0f1fb;--danger:#af3b46;--today:#fff2cd;--shadow:0 10px 35px rgba(28,91,138,.08)}
:root[data-theme="sunshine"] {color-scheme:light;--bg:#fffaf0;--card:#fff;--ink:#493923;--muted:#78664c;--line:#f0e3c9;--accent:#986318;--accent-ink:#fff;--accent-soft:#fff0cc;--danger:#ad3c37;--today:#ffebae;--shadow:0 10px 35px rgba(133,92,24,.08)}
:root[data-theme="midnight"] {color-scheme:dark;--bg:#12192a;--card:#1e2940;--ink:#f1f4ff;--muted:#b2c1da;--line:#34425c;--accent:#a8b9ff;--accent-ink:#17203a;--accent-soft:#344366;--danger:#ff9ba8;--today:#3c3c58;--shadow:0 12px 36px rgba(0,0,0,.22)}
html { background:var(--bg); }
body { min-height:100vh; background:radial-gradient(ellipse 70% 35% at 15% 0%,var(--accent-soft),transparent 90%),var(--bg); }
#app {max-width:1160px;padding-top:22px;}
.card {border-radius:18px;padding:clamp(16px,2.5vw,26px);box-shadow:var(--shadow);}
header.top {padding:14px 18px;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);gap:10px;}
header.top h1 {font-size:1.35rem;letter-spacing:-.025em;}
button,input,select,textarea {transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease;}
button {min-height:38px;border-radius:11px;font-weight:550;}
button.primary {box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 24%,transparent);}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.day:focus-visible {outline:3px solid var(--accent);outline-offset:2px;}
button:hover {background:var(--accent-soft);}
button.primary:hover {background:var(--accent);filter:brightness(1.06);}
input,select,textarea {min-height:40px;border-radius:11px;}
nav.tabs {gap:8px;}
nav.tabs button {border-radius:12px;padding:10px 12px;}
nav.tabs button.on {box-shadow:inset 0 -3px var(--accent);}
.grid {gap:3px;background:transparent;border:0;border-radius:12px;}
.dow {background:transparent;padding:10px 0;font-weight:650;}
.day {border:1px solid var(--line);border-radius:10px;padding:7px;min-height:94px;}
.day.today {box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent);}
.chip {border-radius:7px;padding:3px 6px;}
.auth {margin-top:7vh;max-width:440px;}
.auth h1 {font-size:1.75rem;letter-spacing:-.03em;}
.theme-toolbar {position:relative;display:flex;justify-content:flex-end;align-items:center;gap:8px;max-width:1160px;margin:0 auto;padding:12px 18px 0;font-size:.85rem;color:var(--muted);}
.theme-toolbar label {font-weight:650;white-space:nowrap;}
.theme-toolbar select {width:auto;min-width:145px;min-height:36px;padding:5px 10px;background:var(--card);border:1px solid var(--line);border-radius:99px;box-shadow:var(--shadow);cursor:pointer;}
@media (max-width:600px) {
 #app {padding-top:10px;}
 header.top {padding:12px;}
 header.top h1 {flex-basis:100%;}
 .day {min-height:67px;padding:4px;}
 .grid {gap:2px;}
 .chip {font-size:.6rem;padding:2px;}
 .card {border-radius:15px;}
 .theme-toolbar {padding:8px 12px 0;}
}
@media (prefers-reduced-motion:reduce) {button,input,select,textarea {transition:none;}}

/* Original palettes inspired by Unicorn Eclipse's dreamy stationery collection names.
   No artwork, logos, or assets from the retailer are used. */
:root[data-theme="starry-clouds"] {
 color-scheme:light;--bg:#f4f0ff;--card:#fffaff;--ink:#392d62;--muted:#71658f;--line:#ded4f4;
 --accent:#6651a5;--accent-ink:#fff;--accent-soft:#e7dcff;--danger:#a63261;--today:#ffe4f1;
 --shadow:0 10px 35px rgba(86,61,146,.12);
}
:root[data-theme="secret-garden"] {
 color-scheme:light;--bg:#f2f8ee;--card:#fffef8;--ink:#254b3a;--muted:#567463;--line:#d7e8d3;
 --accent:#36694f;--accent-ink:#fff;--accent-soft:#deefdb;--danger:#a63b50;--today:#fff0bf;
 --shadow:0 10px 35px rgba(52,105,79,.10);
}
:root[data-theme="digital-dreamscape"] {
 color-scheme:dark;--bg:#17112f;--card:#28204a;--ink:#f8efff;--muted:#c6b6e4;--line:#4a3c71;
 --accent:#d7a7ff;--accent-ink:#27103e;--accent-soft:#433367;--danger:#ffb1ce;--today:#533e79;
 --shadow:0 12px 38px rgba(0,0,0,.27);
}
:root[data-theme="starry-clouds"] body {background:radial-gradient(ellipse 55% 42% at 12% 3%,#f7dff6,transparent 85%),radial-gradient(ellipse 50% 40% at 88% 4%,#dfe3ff,transparent 85%),var(--bg)}
:root[data-theme="secret-garden"] body {background:radial-gradient(ellipse 55% 45% at 5% 0%,#e3f3da,transparent 85%),radial-gradient(ellipse 45% 30% at 90% 0%,#ffe9eb,transparent 85%),var(--bg)}
:root[data-theme="digital-dreamscape"] body {background:radial-gradient(ellipse 55% 45% at 8% 0%,#3b286b,transparent 85%),radial-gradient(ellipse 50% 45% at 95% 0%,#36235b,transparent 85%),var(--bg)}

/* Mobile-first usability, with no remote assets or new dependencies. */
.calendar-mode{display:flex;gap:6px;justify-content:flex-end;margin:0 0 12px}
.calendar-mode button{min-width:84px;border-radius:99px}
.calendar-mode button.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.calendar-month-hidden,.calendar-agenda-hidden{display:none}
.mobile-agenda{display:grid;gap:8px;margin-bottom:16px}
.agenda-entry{display:flex;align-items:center;text-align:left;gap:12px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--card);min-height:60px}
.agenda-date{min-width:62px;color:var(--accent);font-weight:750}
.agenda-name{display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}
.agenda-name small{color:var(--muted);font-weight:400}
@media(max-width:700px){
 #app{padding-bottom:max(105px,calc(85px + env(safe-area-inset-bottom)))}
 nav.tabs{position:fixed;z-index:30;left:0;right:0;bottom:0;display:flex;flex-wrap:nowrap;gap:2px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;margin:0;padding:8px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:var(--card);border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(0,0,0,.08)}
 nav.tabs::-webkit-scrollbar{display:none}
 nav.tabs button{flex:1 0 auto;min-width:69px;min-height:48px;padding:8px 10px;font-size:.81rem;white-space:nowrap;border:0;background:transparent}
 nav.tabs button.on{background:var(--accent-soft);box-shadow:none;border-radius:12px;color:var(--accent)}
 button,.swatch{min-height:44px;min-width:44px}
 input,select,textarea{min-height:44px;font-size:16px}
 .day{min-height:66px;overflow:hidden}
 .day .chip{display:none}
 .day:has(.chip)::after{content:'•';display:block;text-align:center;color:var(--accent);font-size:1.2rem;line-height:1}
 .day .n{font-size:.85rem}
 .cal-head{flex-wrap:wrap}
 .cal-head h2{font-size:1.15rem;min-width:40%}
 .board{grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));gap:16px 12px}
 .sticky{transform:none;min-height:155px}
 .sticky:hover{transform:none}
 header.top select{max-width:100%}
 .theme-toolbar{justify-content:flex-start}
}
@media(max-width:380px){.board{grid-template-columns:1fr 1fr}.day{min-height:55px;padding:3px}.dow{font-size:.65rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Accessible, mobile-first quick add. No external dependencies. */
.quick-add-fab{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:35;border-radius:999px;padding:13px 19px;background:var(--accent);color:var(--accent-ink);box-shadow:0 8px 26px rgba(0,0,0,.22);font-size:1.15rem;font-weight:800;min-width:56px;min-height:56px}
.quick-add-fab-label{font-size:.88rem;font-weight:650}
.quick-add-overlay{position:fixed;inset:0;z-index:1000;background:rgba(16,12,30,.58);display:flex;align-items:center;justify-content:center;padding:16px}
.quick-add-sheet{width:min(100%,480px);max-height:min(90dvh,780px);overflow-y:auto;overscroll-behavior:contain;background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:0 22px 65px rgba(0,0,0,.3)}
.quick-add-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.quick-add-heading h2{margin:0 0 12px}
.quick-add-fields{display:grid;gap:12px;margin-top:14px}
.quick-add-fields label{display:grid;gap:6px}
.quick-add-fields input,.quick-add-fields select,.quick-add-fields textarea{width:100%;box-sizing:border-box}
.quick-add-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
@media(max-width:700px){.quick-add-fab{bottom:calc(84px + env(safe-area-inset-bottom));right:16px;padding:12px 17px}.quick-add-fab-label{display:none}.quick-add-overlay{align-items:flex-end;padding:0}.quick-add-sheet{width:100%;max-height:88dvh;border-radius:24px 24px 0 0;padding:22px 18px calc(24px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:no-preference){.quick-add-sheet{animation:quickAddAppear .18s ease-out}@keyframes quickAddAppear{from{transform:translateY(16px);opacity:.7}to{transform:translateY(0);opacity:1}}}

/* Event editor: thumb-friendly, responsive, accessible controls */
.event-editor{display:grid;gap:13px;margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--card)}
.event-editor h3{margin:0 0 2px}
.event-field,.event-time-grid label,.event-repeat-count{display:grid;gap:6px;font-weight:650;font-size:.91rem}
.event-editor input:not([type=checkbox]),.event-editor select,.event-editor textarea{box-sizing:border-box;width:100%;min-height:44px}
.event-editor textarea{min-height:88px;resize:vertical}
.event-all-day{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:650}
.event-all-day input{width:20px;height:20px;accent-color:var(--accent)}
.event-time-grid,.event-repeat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.event-repeat-grid .event-field:only-child{grid-column:1/-1}
.event-actions{display:flex;flex-wrap:wrap;gap:10px}
.event-actions button{min-height:44px}
.event-editor :is(input,select,textarea,button):focus-visible{outline:3px solid var(--accent);outline-offset:2px}
@media(max-width:600px){.event-editor{padding:14px 12px}.event-time-grid,.event-repeat-grid{grid-template-columns:1fr}.event-actions button{flex:1 1 auto}}

/* Mobile-friendly sticky-note composer */
.sticky-editor-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(190px,1fr);gap:18px;align-items:start}
.sticky-editor-fields{display:flex;flex-direction:column;gap:10px;min-width:0}
.sticky-editor-fields textarea{box-sizing:border-box;width:100%;min-height:125px;resize:vertical;font:inherit;padding:12px;border-radius:12px}
.sticky-editor-fields label{font-weight:650}
.sticky-editor-permission{display:flex;align-items:center;gap:10px;min-height:44px}
.sticky-editor-permission input{width:20px;height:20px}
.sticky-preview{margin-top:10px;min-height:125px;transform:none!important;overflow-wrap:anywhere;white-space:pre-wrap}
.sticky-preview-icon{display:block;margin-bottom:8px}
.sticky-preview-text{margin:0}
.sticky-editor button{min-height:44px}
@media(max-width:650px){.sticky-editor-grid{grid-template-columns:1fr}.sticky-editor{padding:14px}.sticky-editor .swatches{flex-wrap:wrap}}

/* Daydream Planner brand: responsive and accessible, without external assets. */
.daydream-brand {display:flex;align-items:center;gap:12px;min-width:0}
.daydream-brand h1 {margin:0;font-size:clamp(1.05rem,2.4vw,1.5rem);letter-spacing:-.025em;line-height:1.2}
.daydream-brand-icon {width:46px;height:46px;border-radius:13px;flex-shrink:0;object-fit:cover;box-shadow:0 3px 12px #5a448022}
.daydream-tagline {margin:3px 0 0;font-size:.75rem;line-height:1.35;color:var(--muted, #71668b)}
.daydream-brand-login {margin-bottom:18px}
.daydream-brand-login .daydream-brand-icon {width:64px;height:64px;border-radius:18px}
.daydream-brand-login h1 {font-size:1.65rem}
@media(max-width:600px){.daydream-brand {gap:8px}.daydream-brand-icon {width:38px;height:38px;border-radius:11px}.daydream-brand h1 {font-size:1.05rem}.daydream-tagline {font-size:.68rem}}

/* Daydream Planner brand: responsive and accessible, without external assets. */
.daydream-brand {display:flex;align-items:center;gap:12px;min-width:0}
.daydream-brand h1 {margin:0;font-size:clamp(1.05rem,2.4vw,1.5rem);letter-spacing:-.025em;line-height:1.2}
.daydream-brand-icon {width:46px;height:46px;border-radius:13px;flex-shrink:0;object-fit:cover;box-shadow:0 3px 12px #5a448022}
.daydream-tagline {margin:3px 0 0;font-size:.75rem;line-height:1.35;color:var(--muted, #71668b)}
.daydream-brand-login {margin-bottom:18px}
.daydream-brand-login .daydream-brand-icon {width:64px;height:64px;border-radius:18px}
.daydream-brand-login h1 {font-size:1.65rem}
@media(max-width:600px){.daydream-brand {gap:8px}.daydream-brand-icon {width:38px;height:38px;border-radius:11px}.daydream-brand h1 {font-size:1.05rem}.daydream-tagline {font-size:.68rem}}

.daydream-parent {font-size:.7rem;opacity:.7;margin:4px 0 10px;letter-spacing:.02em}
