@font-face{font-family:Xiaolai;src:url('assets/Xiaolai-web.woff') format('woff');font-display:swap}@font-face{font-family:Gaegu;src:url('assets/Gaegu-web.woff') format('woff');font-weight:700;font-display:swap}
:root{--ink:#7e879c;--brown:#ad8666;--yellow:#ffe58e;--pink:#f6bac7;--paper:#fff9ee}*{box-sizing:border-box}body{margin:0;background:#efe8db;color:var(--ink);font-family:Xiaolai,sans-serif}button,textarea{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px dashed #a5bcd6;outline-offset:3px}button{border:0;background:none}button:active{transform:translateY(1px)}[hidden]{display:none!important}.shop{width:min(100%,480px);margin:auto;background:#fff9ee url('assets/paper.webp');overflow:hidden}.brand{position:relative;width:100%;aspect-ratio:1024/225;background:url('assets/header-clean.svg') center/100% 100% no-repeat;text-align:center;padding-top:5.4%}.brand h1{font-family:Gaegu,Xiaolai,sans-serif;font-weight:700;color:var(--brown);font-size:clamp(32px,9vw,44px);line-height:1.1;margin:0;transform:rotate(-2deg);letter-spacing:1px}.brand p{font-family:Xiaolai,sans-serif;font-size:clamp(15px,4.1vw,20px);margin:1px 0 0;color:var(--brown);line-height:1.3}.daily{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:11px 11px 0;align-items:start;position:relative;z-index:2}.input-card{position:relative;border:2px dashed #f6d28a;border-radius:45% 34% 34% 30% / 38% 43% 40% 38%;background-color:#fff8e7;min-height:53px;padding:3px 4px 4px;background-image:repeating-linear-gradient(0deg,transparent 0 10px,#bdd9f317 10px 18px),repeating-linear-gradient(90deg,transparent 0 10px,#bdd9f321 10px 18px)}.mood{background-image:repeating-linear-gradient(0deg,transparent 0 10px,#f6bac719 10px 18px),repeating-linear-gradient(90deg,transparent 0 10px,#f6bac71f 10px 18px)}.note{background-image:repeating-linear-gradient(0deg,transparent 0 10px,#ffe58e25 10px 18px),repeating-linear-gradient(90deg,transparent 0 10px,#ffe58e25 10px 18px)}.card-toggle{display:flex;align-items:center;justify-content:center;width:100%;padding:0;gap:3px;min-height:29px;white-space:nowrap;font-size:17px}.card-toggle img{width:31px;height:29px;object-fit:contain}.card-toggle i{font-style:normal;font-size:18px;margin-left:auto;margin-right:2px}.selected-value{display:block;text-align:center;font-size:12px;line-height:16px;opacity:.9}.note textarea{display:block;resize:none;border:0;background:#fffaf2b0;border-radius:10px;padding:2px 5px;width:100%;height:19px;line-height:15px;font-size:10px}.note textarea:focus{height:58px}.options{position:absolute;top:calc(100% + 5px);left:0;width:175px;padding:8px;display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--paper) url('assets/paper.webp');border:2px dashed #f3cd8f;border-radius:18px;box-shadow:0 5px 14px #ad86661c}.mood .options{left:50%;transform:translateX(-50%)}.note .options{left:auto;right:0;width:155px}.option{border:1px solid transparent;border-radius:12px;font-size:14px;min-height:38px;padding:4px 2px;display:flex;align-items:center;justify-content:center;gap:3px}.option[aria-pressed=true]{background:#ffeab2;border:1px dashed #dfb878}.option img{height:29px;width:35px;object-fit:contain}.tags .option{background:#fff0cb;font-size:13px}.tags .option[aria-pressed=true]{background:#f9d9d6}.weather-icon{font-size:23px;filter:saturate(.55)}.dog-icon{position:relative;display:block;width:37px;height:33px;background:url('assets/dog.png') center/contain no-repeat}.dog-icon:after{position:absolute;inset:12px 9px 7px;background:#fff9ee;border-radius:50%;content:attr(data-face);font:11px Xiaolai;text-align:center;color:#ac856a;white-space:nowrap}.menu{margin:9px 16px 0;padding:13px 19px 9px;background:url('assets/menu-frame.webp') center/100% 100% no-repeat}.menu h2{font-weight:400;font-size:clamp(18px,4.8vw,23px);display:flex;align-items:center;justify-content:center;white-space:nowrap;gap:5px;margin:0 0 9px;line-height:1.5}.menu h2 img{width:18px;height:21px;object-fit:contain}.bread-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 7px}.bread{position:relative;min-width:0;padding:0 1px 4px;border-radius:45%;font-size:16px;line-height:1.2;isolation:isolate}.bread:before{content:'';position:absolute;z-index:-1;left:0;right:0;top:24%;bottom:0;background:#ffeab252;border:1.5px solid transparent;border-radius:49% 48% 46% 51%}.bread-art{width:100%;height:57px;object-fit:contain;display:block;mix-blend-mode:multiply}.bread-name{display:block;margin-top:1px}.check{position:absolute;right:-3px;top:-4px;width:24px;height:24px}.deal-wrap{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:12px}.deal-wrap>span{font-size:24px;color:#f7c46d}.deal-wrap>span:first-child{transform:rotate(-25deg)}#deal{border:2px dashed #f4ca7c;outline:1px solid #fff1c9;outline-offset:-5px;border-radius:40% 45% 38% 40% / 47% 46% 50% 49%;background:#ffe6a6ab;font-size:18px;letter-spacing:5px;padding:4px 28px 5px;min-width:94px;min-height:32px}#deal[aria-disabled=true]{opacity:.7}.status{font-size:12px;text-align:center;margin:0;min-height:5px}.status:not(:empty){margin-top:4px;min-height:16px}.greeting{margin:11px 28px 0;padding:6px 10px 8px;border:2px dashed #f2cc83;border-radius:24% 20% 22% 18% / 25% 23% 26% 22%;background:#fffaf2a0}.greeting h2{font-size:16px;font-weight:400;text-align:center;margin:0 0 3px}.greeting-body{display:flex;align-items:center;gap:8px}.greeting-body>img{width:55px;height:53px;object-fit:contain;mix-blend-mode:multiply}.greeting-body p{font-size:14px;line-height:1.65;margin:0}.greeting small{display:block;font-size:10px;opacity:.8;margin-top:3px}.atlas-entry{display:flex;justify-content:center;margin:14px 0 12px}#open-atlas{display:flex;align-items:center;justify-content:center;gap:8px;border:2px dashed #edca83;background:#ffedc3a0;outline:1px solid #fff7df;outline-offset:-5px;border-radius:30px;font-size:18px;min-height:34px;padding:3px 15px}#open-atlas img{width:22px;height:23px;object-fit:contain}#open-atlas span{font-size:25px;line-height:20px}footer{position:relative;min-height:58px;text-align:center;padding:28px 6px 13px;color:var(--brown);font-size:11px;background:repeating-linear-gradient(90deg,transparent 0 16px,#ffe8aa60 16px 26px),repeating-linear-gradient(0deg,#fff9ee 0 16px,#fff0c5 16px 26px)}footer:before{content:'';position:absolute;top:0;left:0;right:0;height:19px;background:url('assets/footer-edge.webp') top center/100% auto no-repeat}dialog{border:2px dashed #efcd87;border-radius:26px;padding:17px;width:min(94vw,440px);max-height:85dvh;background:var(--paper) url('assets/paper.webp');color:var(--ink);overscroll-behavior:contain}dialog::backdrop{background:#6c5d4d55;backdrop-filter:blur(2px)}body:has(dialog[open]){overflow:hidden}.atlas-header{display:flex;align-items:center;justify-content:space-between}.atlas-header h2{display:flex;align-items:center;gap:7px;font-size:23px;font-weight:400;margin:0}.atlas-header img{width:27px}.atlas-header button,.clear-area button{background:#fff0c9;border:1px dashed #ddb987;border-radius:18px;padding:7px 12px;font-size:14px}.storage-note{font-size:12px;line-height:1.6}.record{border-top:1px dashed #d8c3a5;padding:10px 0}.record summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;font-size:16px}.record summary img{width:55px;height:42px;object-fit:contain;mix-blend-mode:multiply}.record summary time{font-size:12px;display:block}.record summary:after{content:'⌄';margin-left:auto}.record[open] summary:after{content:'⌃'}.record dl{font-size:14px;line-height:1.7;display:grid;grid-template-columns:48px 1fr;margin:10px 0}.record dt,.record dd{margin:0}.record dd{white-space:pre-wrap;overflow-wrap:anywhere}.record p{font-size:14px;line-height:1.6}.record small{font-size:10px}.empty{text-align:center;padding:32px 5px}.clear-area{margin-top:16px;text-align:center;font-size:13px}#confirm-clear{background:#f9d9d6;margin-left:6px}@media(min-width:480px){.shop{box-shadow:0 0 32px #ad86661a}.bread-art{height:68px}.bread-grid{gap:13px 9px}.menu{padding-top:17px;padding-bottom:13px}.menu h2{margin-bottom:12px}.brand{padding-top:24px}}@media(prefers-reduced-motion:no-preference){.greeting{animation:arrive .3s ease-out}@keyframes arrive{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}

.note textarea{overflow:hidden;scrollbar-width:none}.brand h1{white-space:nowrap}.shop{isolation:isolate}

/* Only the requested small footer music switch; all existing styles stay intact. */
#music-toggle{font:inherit;font-size:10px;line-height:1.2;color:var(--ink);background:#fff3cf;border:1px dashed #e5c38b;border-radius:12px;padding:3px 5px;vertical-align:middle;white-space:nowrap}
