@charset "UTF-8";
:root{color-scheme:dark;--ink:var(--palette-000);--muted:var(--palette-001);--paper:var(--palette-002);--cream:var(--palette-003);--line:var(--palette-004);--green:var(--palette-005);--sage:var(--palette-006);--red:var(--palette-007);--gold:var(--palette-008);--shadow:0 8px 28px var(--palette-009);--sans:"Segoe UI","Microsoft YaHei","PingFang SC",system-ui,sans-serif;--surface-raised:var(--palette-010);--surface-input:var(--palette-011);--accent:var(--palette-012);--accent-deep:var(--palette-005);--on-accent:var(--palette-013);--border-strong:var(--palette-014)}

*{box-sizing:border-box}
body{margin:0;background:var(--palette-015);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.65;background-image:radial-gradient(var(--palette-016) .75px,transparent .75px);background-size:8px 8px}
button,input,textarea,select{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer;color:inherit}
button,a{touch-action:manipulation}
button:disabled{opacity:.5;cursor:wait}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
input:focus,textarea:focus,select:focus{outline:2px solid var(--palette-017);outline-offset:2px}
a{color:var(--green)}
h1,h2,h3,p{margin:0}
h1{font-size:30px;letter-spacing:-1px;line-height:1.4}
h2{font-size:20px;letter-spacing:.5px}
h3{font-size:15px}
button .ico{flex-shrink:0}
.ico{width:20px;height:20px;vertical-align:middle;flex-shrink:0}
.muted{color:var(--muted)}
.small{font-size:12px}
.mono{font-family:Consolas,monospace;letter-spacing:.8px}
.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--muted)}
.btn{min-height:42px;padding:8px 16px;border:1px solid var(--palette-017);background:var(--palette-015);box-shadow:2px 2px 0 var(--palette-018);display:inline-flex;gap:8px;align-items:center;justify-content:center;text-decoration:none;white-space:nowrap;transition:background .15s,transform .15s}
.btn:hover{background:var(--palette-015);transform:translateY(-1px)}
.btn:active{transform:translate(1px,1px);box-shadow:none}
.btn.primary{background:var(--green);color:var(--palette-019);border-color:var(--palette-017);box-shadow:2px 2px 0 var(--palette-018)}
.btn.primary:hover{background:var(--palette-015)}
.btn.soft{background:var(--palette-015);border-color:var(--palette-017);box-shadow:none}
.btn.flat{border:0;box-shadow:none;background:transparent;padding:6px 10px}
.btn.danger{color:var(--palette-008)}
.btn.square{padding:8px;width:42px}
.link-btn{border:0;background:none;color:var(--green);text-decoration:underline;text-underline-offset:4px;min-height:44px;padding:5px}
.statusbar{height:34px;background:var(--palette-015);color:var(--palette-019);display:flex;align-items:center;justify-content:space-between;padding:0 24px;font-size:11px;letter-spacing:.7px}
.statusbar .green-dot{display:inline-block;background:var(--palette-015);width:6px;height:6px;margin-right:8px}
.status-right{opacity:.8}
.desktop{max-width:1530px;margin:24px auto 40px;display:grid;grid-template-columns:208px minmax(0,1fr);min-height:calc(100vh - 98px);border:1px solid var(--palette-017);box-shadow:5px 5px 0 var(--palette-018);background:var(--cream)}
.sidebar{background:var(--palette-015);border-right:1px solid var(--palette-017);display:flex;flex-direction:column;padding:28px 16px 18px;position:relative;min-width:0}
.brand{display:flex;align-items:center;gap:9px;padding:0 9px 30px}
.brand .penguin{width:36px;height:43px}
.brand-name{font-size:17px;font-weight:700;letter-spacing:1px}
.brand-sub{font-size:10px;letter-spacing:1.5px;color:var(--palette-020)}
.nav{display:flex;flex-direction:column;gap:8px}
.nav button{min-height:49px;border:1px solid transparent;padding:11px 14px;display:flex;gap:13px;align-items:center;background:transparent;text-align:left;color:var(--palette-021);font-size:14px}
.nav button:hover{background:var(--palette-015)}
.nav button.active{background:var(--palette-015);border:1px solid var(--palette-017);box-shadow:2px 2px 0 var(--palette-018);color:var(--ink);font-weight:700}
.nav .nav-index{font-family:Consolas,monospace;margin-left:auto;font-size:10px;color:var(--palette-020)}
.sidebar-bottom{margin-top:auto;padding-top:32px}
.desk-pet{text-align:center;padding:16px 4px 0}
.desk-pet .penguin{height:91px;width:79px;filter:drop-shadow(3px 4px 0 var(--palette-022))}
.pet-ground{height:8px;background:var(--palette-015);margin:0 28px 12px;box-shadow:0 4px 0 var(--palette-018)}
.pet-caption{font-size:11px;color:var(--palette-020);line-height:1.9}
.sidebar-footer{border-top:1px dashed var(--palette-017);padding:18px 5px 0;margin-top:24px;display:flex;gap:9px;align-items:center;font-size:11px;color:var(--palette-020)}
.workspace{min-width:0}
.window-bar{height:38px;border-bottom:1px solid var(--palette-017);background:var(--palette-015);display:flex;align-items:center;justify-content:space-between;padding:0 24px;font-size:10px;letter-spacing:1px;color:var(--palette-020)}
.window-dots{display:flex;gap:6px}
.window-dots i{display:block;width:7px;height:7px;border:1px solid var(--palette-017);background:var(--palette-015)}
.content{padding:32px 34px 26px}
.page-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}
.page-head .eyebrow{margin-bottom:7px}
.page-head p{margin-top:7px;color:var(--muted);font-size:13px}
.head-actions{display:flex;gap:9px;flex-shrink:0}
.hero{position:relative;min-height:215px;overflow:hidden;border:1px solid var(--palette-017);margin-bottom:26px;background:var(--palette-015)}
.hero .landscape{position:absolute;right:0;top:0;width:64%;height:100%;opacity:.92}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--palette-023) 20%,var(--palette-024) 40%,var(--palette-025) 73%);pointer-events:none}
.hero-copy{position:relative;z-index:1;padding:26px 30px;max-width:65%}
.hero-copy h2{font-size:26px;margin:8px 0 8px}
.hero-copy p{font-size:13px;color:var(--palette-021);max-width:370px}
.hero-copy .text-link{display:inline-flex;gap:8px;align-items:center;border:0;background:none;padding:0;min-height:40px;color:var(--palette-021);margin-top:8px;font-size:12px;text-decoration:underline;text-underline-offset:4px}
.hero .penguin{position:absolute;right:11%;bottom:23px;height:123px;width:106px;z-index:2;filter:drop-shadow(4px 5px 0 var(--palette-022))}
.pixel-speech{position:absolute;right:6%;top:25px;background:var(--palette-015);border:1px solid var(--palette-017);box-shadow:2px 2px 0 var(--palette-018);padding:5px 12px;z-index:3;font-size:11px}
.pixel-speech:after{content:"";position:absolute;bottom:-5px;left:20px;width:7px;height:7px;background:var(--palette-015);border-right:1px solid var(--palette-017);border-bottom:1px solid var(--palette-017);transform:rotate(45deg)}
.two-col{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);gap:24px}
.paper{background:var(--paper);border:1px solid var(--palette-017);box-shadow:2px 2px 0 var(--palette-018);min-width:0}
.paper-head{padding:17px 22px;border-bottom:1px solid var(--palette-017);display:flex;align-items:center;justify-content:space-between;gap:10px}
.paper-head h2{font-size:16px}
.paper-head .ico{color:var(--palette-020)}
.paper-body{padding:21px 22px}
.paper-title{display:flex;gap:9px;align-items:center}
.tag{display:inline-block;padding:3px 8px;background:var(--palette-015);color:var(--palette-020);font-size:10px;letter-spacing:.2px;white-space:nowrap}
.tag.warm{background:var(--palette-015);color:var(--palette-008)}
.tag.red{background:var(--palette-026);color:var(--palette-008)}
.week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;padding:16px 20px 4px}
.day-chip{background:transparent;border:1px solid transparent;display:flex;flex-direction:column;align-items:center;gap:3px;min-height:65px;padding:7px 0;color:var(--palette-020)}
.day-chip .weekday{font-size:10px}
.day-chip .number{font-family:Consolas,monospace;font-size:18px;line-height:1.3}
.day-chip.selected{background:var(--palette-005);color:var(--palette-019);box-shadow:2px 2px 0 var(--palette-018)}
.day-chip:not(.selected):hover{background:var(--palette-015)}
.day-chip .dot{width:3px;height:3px;background:currentColor}
.day-caption{display:flex;justify-content:space-between;align-items:center;padding:15px 22px 8px}
.day-caption strong{font-size:12px}
.tasks{padding:0 22px 12px}
.task{display:flex;gap:12px;align-items:flex-start;border-bottom:1px dashed var(--palette-017);padding:17px 0}
.task:last-child{border-bottom:0}
.task-check{width:25px;height:30px;flex-shrink:0;background:none;border:0;padding:5px 2px;min-height:44px;margin-top:-5px}
.task-check span{display:block;width:18px;height:18px;border:1px solid var(--palette-017);background:var(--palette-015)}
.task-check .ico{width:18px;height:18px;background:var(--palette-005);color:white}
.task-info{flex:1;min-width:0}
.task-info h3{font-weight:500;font-size:14px}
.task.done h3{text-decoration:line-through;color:var(--palette-020)}
.task.cancelled{opacity:.55}
.task-meta{font-size:11px;color:var(--palette-020);margin-top:4px;display:flex;flex-wrap:wrap;gap:8px}
.task-edit{background:none;border:0;min-width:36px;min-height:40px;color:var(--palette-020);padding:5px}
.task-edit:hover{color:var(--palette-021);background:var(--palette-015)}
.class-list{background:var(--palette-015);padding:12px 14px;margin:5px 22px 14px;border-left:2px solid var(--palette-017);font-size:11px}
.class-list p{margin-top:4px}
.class-list .course{display:flex;justify-content:space-between;gap:12px;margin-top:6px}
.soft-note{font-size:11px;color:var(--palette-020);padding:14px 22px;border-top:1px dashed var(--palette-017);display:flex;gap:9px;align-items:flex-start}
.soft-note .ico{width:15px;height:15px;margin-top:2px}
.right-stack{display:flex;flex-direction:column;gap:22px}
.note-paper{background:var(--palette-015);border:1px solid var(--palette-027);padding:23px 23px 20px;position:relative;box-shadow:3px 3px 0 var(--palette-018)}
.note-paper:before{content:"";position:absolute;top:-6px;left:calc(50% - 23px);width:46px;height:13px;background:var(--palette-028);transform:rotate(-3deg)}
.note-paper h2{font-size:17px;margin-bottom:9px}
.note-paper p{font-size:12px;color:var(--palette-020);line-height:1.9}
.note-paper .btn{margin-top:17px;background:var(--palette-015);border-color:var(--palette-017);box-shadow:2px 2px 0 var(--palette-018)}
.writing-preview{border:0;width:100%;resize:vertical;min-height:110px;padding:10px 0;background:repeating-linear-gradient(transparent,transparent 29px,var(--palette-015) 29px,var(--palette-015) 30px);font-size:13px;line-height:30px;color:var(--ink)}
.writing-preview::placeholder{color:var(--palette-020)}
.quick-footer{display:flex;align-items:center;justify-content:space-between;margin-top:15px;gap:8px}
.quick-footer .small{color:var(--palette-020)}
.section-footer{margin-top:24px;display:flex;align-items:center;justify-content:space-between;color:var(--palette-020);font-size:10px;gap:12px}
.footer-mark{display:flex;gap:6px;align-items:center}
.bottom-nav{display:none}
.empty{padding:27px 18px;text-align:center;color:var(--palette-020);font-size:12px}
.empty .penguin{width:47px;height:56px;opacity:.85;margin-bottom:10px}
.empty h3{color:var(--palette-020);font-size:14px;margin-bottom:6px}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}
.date-control{display:flex;align-items:center;gap:12px}
.date-control strong{font-size:15px}
.date-control .btn{width:36px;padding:6px;min-height:36px}
.week-board{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--palette-017);background:var(--palette-015)}
.week-column{min-height:330px;border-right:1px solid var(--palette-017);padding:0 10px 15px;min-width:0}
.week-column:last-child{border-right:0}
.column-head{padding:15px 0 12px;border-bottom:1px dashed var(--palette-017);display:flex;align-items:center;gap:7px;color:var(--palette-020)}
.column-head strong{font-size:21px;font-family:Consolas,monospace}
.column-head span{font-size:10px}
.column-head.selected{color:var(--palette-008)}
.mini-task{display:block;width:100%;text-align:left;margin:10px 0 0;background:var(--palette-015);border:1px solid var(--palette-017);border-left:2px solid var(--palette-017);padding:10px 8px;color:var(--palette-021);word-break:break-word}
.mini-task strong{font-size:12px;font-weight:500;display:block;line-height:1.8}
.mini-task small{display:block;font-size:10px;color:var(--palette-020);margin-top:4px}
.mini-task.done{opacity:.58}
.mini-task.done strong{text-decoration:line-through}
.mini-course{font-size:10px;color:var(--palette-020);margin:10px 0;border-bottom:1px dotted var(--palette-017);padding-bottom:8px;line-height:1.7}
.add-day{border:1px dashed var(--palette-017);background:transparent;color:var(--palette-020);min-height:38px;width:100%;margin-top:13px}
.add-day:hover{background:var(--palette-015)}
.subsection{margin-top:26px}
.section-label{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:15px}
.section-label h2{font-size:18px}
.route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.route{padding:25px;background:var(--paper);border:1px solid var(--palette-017);box-shadow:3px 3px 0 var(--palette-018);position:relative}
.route-number{font-family:Consolas,monospace;font-size:37px;line-height:1;color:var(--palette-020);margin-bottom:18px}
.route h2{font-size:18px;margin-top:12px;margin-bottom:9px}
.route p{font-size:12px;color:var(--palette-020);line-height:1.9}
.route .btn{margin-top:22px;width:100%;font-size:12px}
.phase-list{margin-top:12px}
.phase{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:15px;position:relative;padding:20px 0;border-bottom:1px dashed var(--palette-017);align-items:start}
.phase-number{width:28px;height:28px;background:var(--palette-015);font:13px/28px Consolas;text-align:center;color:var(--palette-020);border:1px solid var(--palette-017)}
.phase.active .phase-number{background:var(--green);color:white}
.phase h3{margin:4px 0 7px}
.phase p{font-size:12px;color:var(--palette-020)}
.phase-date{font:11px Consolas;color:var(--palette-020);margin-top:6px}
.budget{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:19px 0}
.budget-item{border-bottom:2px solid var(--palette-017);padding:8px 0}
.budget-item strong{font:24px Consolas;color:var(--palette-021)}
.budget-item span{font-size:11px;margin-left:3px}
.budget-item p{font-size:11px;color:var(--palette-020)}
.budget-item:last-child{border-color:var(--palette-027)}
.notice{padding:14px 18px;background:var(--palette-015);border:1px solid var(--palette-017);font-size:12px;color:var(--palette-020);line-height:1.9}
.notice.warm{background:var(--palette-015);border-color:var(--palette-027);color:var(--palette-008)}
.tabset{display:flex;gap:4px;border-bottom:1px solid var(--palette-017);margin-bottom:24px}
.tabset button{border:0;background:transparent;padding:12px 20px;min-height:47px;color:var(--palette-020);border-bottom:3px solid transparent}
.tabset button.active{border-color:var(--palette-017);color:var(--palette-021);font-weight:700}
.form-field{display:flex;flex-direction:column;gap:7px;margin-bottom:20px}
.form-field label{font-size:12px;color:var(--palette-021);font-weight:700}
.form-field input,.form-field textarea,.form-field select{border:1px solid var(--palette-017);background:var(--palette-015);padding:10px 12px;min-height:43px;width:100%;color:var(--ink);border-radius:0}
.form-field textarea{resize:vertical;min-height:100px;line-height:1.9}
.form-field .diary-input{min-height:260px;line-height:32px;background:repeating-linear-gradient(var(--palette-015),var(--palette-015) 31px,var(--palette-015) 31px,var(--palette-015) 32px);padding-top:0;background-origin:content-box}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.moods{display:flex;gap:7px;flex-wrap:wrap}
.mood{border:1px solid var(--palette-017);background:var(--palette-015);min-height:38px;padding:6px 13px;font-size:12px}
.mood.selected{background:var(--palette-005);color:var(--palette-019);border-color:var(--palette-017)}
.journal-entry{padding:23px 0;border-bottom:1px dashed var(--palette-017)}
.journal-entry .body-text{white-space:pre-wrap;font-size:14px;line-height:2;margin-top:12px;overflow-wrap:anywhere}
.journal-entry h3{font-size:17px}
.journal-entry .small{color:var(--palette-020);margin-top:5px}
.journal-date{font-family:Consolas,monospace;color:var(--palette-008);font-size:12px;margin-bottom:8px}
.body-text{white-space:pre-wrap;overflow-wrap:anywhere}
.draft-row{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px dashed var(--palette-017);gap:12px}
.draft-row p{font-size:11px;color:var(--palette-020);margin-top:4px}
.exchange-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:25px}
.flow-step{padding:20px;border-top:3px solid var(--palette-017);background:var(--palette-015)}
.flow-step strong{font:22px Consolas;color:var(--palette-020);margin-right:10px}
.flow-step h3{display:inline;font-size:14px}
.flow-step p{font-size:12px;color:var(--palette-020);margin-top:12px}
.upload-area{padding:26px;border:1px dashed var(--palette-017);background:var(--palette-015);text-align:center;margin-bottom:18px}
.upload-area input{max-width:100%;font-size:12px}
.upload-area p{margin-bottom:15px;font-size:12px;color:var(--palette-020)}
.codebox{width:100%;min-height:200px;border:1px solid var(--palette-017);background:var(--palette-015);color:var(--palette-021);font:12px/1.7 Consolas,monospace;padding:14px;resize:vertical}
.error{color:var(--palette-008);background:var(--palette-026);border-left:3px solid var(--palette-027);padding:11px 14px;margin:14px 0;font-size:12px;white-space:pre-wrap}
.preview-entry{border-bottom:1px dashed var(--palette-017);padding:15px 0}
.preview-entry p{white-space:pre-wrap;line-height:1.9;font-size:13px;margin-top:7px}
.history-row{padding:15px 0;border-bottom:1px dashed var(--palette-017);font-size:12px}
.history-row time{display:block;font-size:10px;color:var(--palette-020)}
.history-row p{margin-top:6px}
.route-year{border-left:2px solid var(--palette-017);padding:0 0 24px 20px;margin-left:5px}
.route-year h3{margin-bottom:10px;font-size:15px}
.route-year p{font-size:13px;color:var(--palette-020);margin-top:8px;line-height:1.9}
.route-year .eyebrow{font-size:10px}
.route-year:last-child{padding-bottom:0}
dialog{padding:0;border:1px solid var(--palette-017);background:var(--palette-015);color:var(--ink);box-shadow:5px 5px 0 var(--palette-018);width:min(620px,calc(100vw - 32px));max-height:85vh}
dialog::backdrop{background:var(--palette-029);backdrop-filter:blur(2px)}
.modal-head{display:flex;justify-content:space-between;align-items:center;background:var(--palette-015);border-bottom:1px solid var(--palette-017);padding:12px 20px;position:sticky;top:0;z-index:1}
.modal-head h2{font-size:16px}
.modal-head button{background:transparent;border:1px solid var(--palette-017);width:34px;min-height:34px;display:grid;place-items:center}
.modal-body{padding:24px}
.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--palette-015);color:var(--palette-019);padding:13px 24px;border:1px solid var(--palette-017);box-shadow:3px 3px 0 var(--palette-018);max-width:calc(100vw - 30px);z-index:100;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;font-size:13px}
.toast.show{opacity:1;transform:translate(-50%,0)}
.boot{min-height:80vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px}
.boot h1{font-size:23px}
.boot p{color:var(--palette-020)}
.boot-dot{width:20px;height:20px;background:var(--green);box-shadow:5px 5px 0 var(--palette-018)}
.error-screen{padding:70px 25px;text-align:center}
.error-screen h1{font-size:22px}
.error-screen p{margin:20px auto;color:var(--palette-020)}
.house{width:90px}
.future-note{display:flex;align-items:center;gap:20px;background:var(--palette-015);padding:20px;margin-top:24px;border:1px solid var(--palette-017)}
.future-note p{font-size:12px;color:var(--palette-020);margin-top:5px}
.future-note .house{flex-shrink:0}
.future-note .btn{margin-left:auto}
.mobile-week{display:none}
.evaluation-list p{white-space:pre-wrap;font-size:12px;color:var(--palette-020);margin-top:5px}
.evaluation-list article{padding:13px 0;border-bottom:1px dashed var(--palette-017)}
.evaluation-list small{color:var(--palette-020)}
.review-summary{background:var(--palette-015);padding:20px;margin-bottom:24px;border-left:3px solid var(--palette-027)}
.review-summary .body-text{font-size:13px;line-height:1.9;margin-top:10px}
.review-summary h3{font-size:15px}
.week-caption{font-size:12px;color:var(--palette-020);margin-bottom:16px}
.sep{border:0;border-top:1px dashed var(--palette-017);margin:22px 0}
.saved-info{font-size:11px;color:var(--palette-020);margin-top:13px;overflow-wrap:anywhere}
.checkbox-note{font-size:12px;color:var(--palette-020)}
.footnote{font-size:11px;color:var(--palette-020);line-height:1.8;margin-top:14px}

@media(min-width:1650px){.desktop{margin-top:38px}
.content{padding:38px 46px}
}

@media(max-width:1200px){.desktop{margin:14px;grid-template-columns:175px 1fr}
.sidebar{padding-left:10px;padding-right:10px}
.brand{gap:5px}
.brand-name{font-size:15px}
.content{padding:26px 22px}
.two-col{grid-template-columns:minmax(0,1.4fr) minmax(235px,1fr);gap:18px}
.hero-copy{max-width:72%;padding:23px}
.hero-copy h2{font-size:24px}
.hero .penguin{right:8%;height:104px;width:90px}
.week-board{gap:0}
.week-column{padding-left:6px;padding-right:6px}
.route{padding:18px}
.route h2{font-size:16px}
.nav .nav-index{display:none}
}

@media(max-width:960px){.two-col{grid-template-columns:1fr}
.right-stack{display:grid;grid-template-columns:1fr 1fr}
.desktop{grid-template-columns:155px 1fr}
.brand-sub{font-size:8px}
.brand-name{font-size:13px}
.nav button{font-size:12px;padding:11px 9px;gap:9px}
.hero-copy p{max-width:290px}
.route-grid{grid-template-columns:1fr}
.route{display:grid;grid-template-columns:45px 1fr auto;gap:9px;align-items:center}
.route .route-number{grid-row:1/4;margin:0;font-size:27px}
.route h2{margin:0}
.route .tag{justify-self:start}
.route p{grid-column:2/4}
.route .btn{grid-column:2/4;margin-top:10px;width:auto;justify-self:start}
.week-board{display:none}
.mobile-week{display:flex;flex-direction:column;gap:14px}
.week-mobile-day{padding:17px;background:var(--palette-015);border:1px solid var(--palette-017)}
.week-mobile-day header{display:flex;align-items:center;justify-content:space-between}
.week-mobile-day .task{padding:12px 0}
.exchange-flow{gap:12px}
.flow-step{padding:15px}
.phase{grid-template-columns:30px 1fr}
.phase-date{grid-column:2;margin-top:-8px}
}

@media(max-width:650px){body{background:var(--palette-015);font-size:13px}
.statusbar{height:28px;font-size:9px;padding:0 14px}
.status-right{font-size:8px}
.desktop{margin:0;border:0;box-shadow:none;display:block;min-height:calc(100dvh - 28px)}
.sidebar{display:none}
.window-bar{height:31px;padding:0 19px;font-size:9px}
.content{padding:25px 18px 108px}
.page-head{align-items:flex-start;gap:10px;margin-bottom:22px}
.page-head h1{font-size:25px}
.page-head p{font-size:11px;max-width:240px}
.page-head .eyebrow{font-size:9px}
.head-actions .btn{padding:8px 10px;font-size:11px}
.head-actions .btn .ico{width:16px;height:16px}
.head-actions{gap:5px}
.hero{min-height:226px;margin-bottom:21px}
.hero-copy{padding:23px 19px;max-width:100%}
.hero-copy h2{font-size:23px;max-width:210px}
.hero-copy p{font-size:11px;max-width:190px;line-height:1.9}
.hero .landscape{width:100%;opacity:.7;top:0}
.hero:after{background:linear-gradient(90deg,var(--palette-023) 0%,var(--palette-030) 45%,var(--palette-025) 100%)}
.hero .penguin{height:94px;width:81px;right:6%;bottom:16px}
.pixel-speech{top:auto;bottom:122px;right:3%;font-size:9px;padding:4px 7px}
.hero-copy .text-link{font-size:11px;margin-top:12px}
.two-col{gap:20px}
.right-stack{display:flex;gap:20px}
.paper-head{padding:14px 17px}
.paper-body{padding:18px}
.week-strip{padding:13px 13px 3px;gap:4px}
.day-chip{min-height:58px}
.day-caption{padding:15px 18px 7px}
.tasks{padding:0 18px 8px}
.class-list{margin:5px 18px 12px}
.soft-note{padding:13px 18px}
.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--palette-015);border-top:1px solid var(--palette-017);z-index:30;padding:7px 7px calc(8px + env(safe-area-inset-bottom));justify-content:space-around;box-shadow:0 -4px 0 var(--palette-018)}
.bottom-nav button{border:0;background:transparent;display:flex;flex-direction:column;gap:4px;align-items:center;color:var(--palette-020);padding:5px 8px;min-width:50px;min-height:49px;font-size:10px}
.bottom-nav button.active{color:var(--palette-021);background:var(--palette-015);box-shadow:2px 2px 0 var(--palette-018)}
.bottom-nav .ico{height:19px;width:19px}
.section-footer{font-size:9px;flex-wrap:wrap}
.toolbar{gap:13px}
.date-control strong{font-size:13px}
.toolbar .btn{font-size:12px}
.week-caption{font-size:11px}
.note-paper{padding:24px 20px}
.phase-date{font-size:10px}
.budget{gap:10px}
.budget-item strong{font-size:22px}
.phase{gap:10px}
.phase p{font-size:11px}
.future-note{padding:15px;gap:12px;flex-wrap:wrap}
.future-note .house{width:65px}
.future-note .btn{margin-left:0;font-size:11px}
.future-note h3{font-size:13px}
.future-note p{font-size:11px}
.route{padding:19px}
.exchange-flow{grid-template-columns:1fr;gap:10px}
.flow-step{border-top:0;border-left:3px solid var(--palette-017);padding:14px 17px}
.flow-step p{margin-top:6px;font-size:11px}
.tabset button{padding:10px 14px;font-size:12px}
.form-row{grid-template-columns:1fr;gap:0}
.form-field .diary-input{min-height:250px}
.form-actions .btn{flex:1;font-size:12px}
.form-actions{gap:8px}
.toast{bottom:94px;font-size:12px;min-width:240px;text-align:center}
.modal-body{padding:20px}
.modal-head{padding:12px 18px}
.page-head .hide-mobile{display:none}
.notice{padding:13px;font-size:11px}
.section-label{flex-wrap:wrap}
.section-label h2{font-size:17px}
}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}


/* Narrow desktop branding and unobstructed mobile reading. */
@media (min-width:651px) and (max-width:1200px){.brand-name{font-size:12px;letter-spacing:0;white-space:nowrap}
.brand{padding-left:3px;padding-right:0;gap:6px}
.brand .penguin{width:28px;flex-shrink:0}
.brand-sub{font-size:8px;letter-spacing:.3px}
}

@media(max-width:650px){.hero .pixel-speech{display:none}
}

/* XuJK Grow OS · Red / Carbon · 2026-10-02 */
body{background:var(--palette-031);background-image:none;font-size:14px;line-height:1.75}
h1,h2,h3{color:var(--ink);text-wrap:balance}
h1{letter-spacing:-.7px;font-weight:650}
button,input,select,textarea{border-radius:3px}
a,.link-btn{color:var(--palette-032)}
.eyebrow{color:var(--muted);font-size:11px;letter-spacing:1.8px}
.statusbar{height:36px;background:var(--palette-031);border-bottom:1px solid var(--line);color:var(--muted);padding:0 max(24px,calc((100vw - 1480px)/2));letter-spacing:1px}
.statusbar .green-dot{background:var(--accent);width:5px;height:5px}
.desktop{max-width:1480px;grid-template-columns:236px minmax(0,1fr);margin:24px auto 40px;background:var(--cream);border:1px solid var(--line);box-shadow:0 16px 60px var(--palette-009);min-height:calc(100vh - 100px)}
.sidebar{background:var(--palette-033);border-right:1px solid var(--line);padding:30px 18px 22px}
.brand{gap:12px;padding:0 4px 32px;align-items:center}
.brand .penguin{width:36px;height:auto;flex-shrink:0}
.brand-name{font-size:18px;letter-spacing:-.6px;white-space:nowrap;font-weight:700}
.brand-sub{font-size:8px;letter-spacing:1.4px;color:var(--muted);margin-top:5px}
.penguin{object-fit:contain;image-rendering:pixelated;filter:drop-shadow(1px 0 0 var(--palette-034)) drop-shadow(-1px 0 0 var(--palette-034))}
.nav{gap:7px}
.nav button{color:var(--muted);min-height:50px;border-radius:3px;font-size:14px}
.nav button:hover{background:var(--palette-035);color:var(--ink)}
.nav button.active{background:var(--palette-036);color:var(--ink);border-color:var(--palette-037);box-shadow:inset 3px 0 0 var(--accent)}
.nav button.active .ico{color:var(--palette-038)}
.nav .nav-index{color:var(--palette-039)}
.pet-ground{height:2px;background:var(--palette-040);box-shadow:none;margin-top:12px}
.desk-pet .penguin{height:100px;width:auto;filter:drop-shadow(1px 0 0 var(--palette-034)) drop-shadow(-1px 0 0 var(--palette-034))}
.pet-caption,.sidebar-footer{color:var(--muted);font-size:12px}
.sidebar-footer{border-color:var(--line)}
.window-bar{background:var(--palette-041);color:var(--muted);border-color:var(--line);height:40px}
.window-dots i{background:var(--palette-042);border-color:var(--palette-043)}
.content{padding:32px}
.page-head{margin-bottom:28px}
.page-head p{font-size:14px;color:var(--muted)}
.btn{background:var(--surface-raised);border-color:var(--border-strong);color:var(--ink);box-shadow:none;min-height:44px;border-radius:3px;transition:background .18s,border-color .18s,color .18s}
.btn:hover{background:var(--palette-044);border-color:var(--palette-045);transform:none}
.btn:active{transform:none;background:var(--palette-046)}
.btn.primary{background:var(--accent-deep);border-color:var(--palette-047);color:var(--on-accent);box-shadow:none}
.btn.primary:hover{background:var(--palette-048);border-color:var(--palette-049)}
.btn.soft{background:var(--palette-050);border-color:var(--palette-051);color:var(--ink)}
.btn.flat{background:transparent;border:0;color:var(--palette-032);box-shadow:none}
.btn.flat:hover,.link-btn:hover{background:var(--palette-052)}
.btn.danger{color:var(--palette-008)}
.hero{min-height:244px;background:var(--palette-053);border-color:var(--palette-054);margin-bottom:28px}
.hero .landscape{width:64%;opacity:.9}
.hero:after{background:linear-gradient(90deg,var(--palette-055) 10%,var(--palette-056) 42%,var(--palette-057) 82%)}
.hero-copy{padding:32px;max-width:64%}
.hero-copy h2{font-size:28px;color:var(--ink);margin:10px 0 10px}
.hero-copy p{color:var(--palette-058);font-size:14px;line-height:1.9;max-width:390px}
.hero-copy .text-link{color:var(--palette-008);font-size:13px}
.hero .penguin{height:170px;width:auto;right:11%;bottom:18px;filter:drop-shadow(1px 0 0 var(--palette-059)) drop-shadow(-1px 0 0 var(--palette-059))}
.pixel-speech{background:var(--palette-060);border-color:var(--palette-061);color:var(--palette-062);box-shadow:none;border-radius:2px;top:20px;right:5%;font-size:12px}
.pixel-speech:after{background:var(--palette-060);border-color:var(--palette-061)}
.paper,.route,.week-board,.week-mobile-day{background:var(--paper);border-color:var(--line);box-shadow:none}
.paper-head{background:var(--palette-063);border-color:var(--line);padding:18px 22px}
.paper-head .ico{color:var(--palette-064)}
.paper-head h2{font-size:17px;font-weight:600}
.paper-body{padding:23px}
.day-chip{color:var(--muted);min-height:66px}
.day-chip.selected{background:var(--accent-deep);color:var(--on-accent);box-shadow:none}
.day-chip:not(.selected):hover{background:var(--palette-065);color:var(--ink)}
.task{border-color:var(--line)}
.task-info h3{font-size:15px;line-height:1.8;color:var(--ink)}
.task-meta{color:var(--muted);font-size:12px;gap:10px}
.task-check{width:28px;min-height:44px}
.task-check span{border-color:var(--palette-066);background:var(--surface-input);width:20px;height:20px;border-radius:2px}
.task-check .ico{background:var(--accent-deep);color:var(--on-accent);width:20px;height:20px}
.task-edit{color:var(--palette-067);min-height:44px;min-width:44px}
.task-edit:hover{background:var(--palette-065);color:var(--ink)}
.task.done h3{color:var(--muted)}
.class-list{background:var(--palette-068);border-left-color:var(--palette-069);color:var(--muted);font-size:12px}
.soft-note{font-size:12px;color:var(--muted);border-color:var(--line)}
.note-paper{background:var(--palette-070);border-color:var(--palette-071);box-shadow:none;padding:25px;overflow:hidden}
.note-paper:before{top:0;left:0;width:3px;height:100%;transform:none;background:var(--accent)}
.note-paper p{font-size:14px;color:var(--palette-072);line-height:1.9}
.note-paper h2{font-size:19px}
.note-paper .btn{background:var(--palette-073);border-color:var(--palette-074);color:var(--ink);box-shadow:none}
.note-paper .btn:hover{background:var(--palette-075)}
.writing-preview{color:var(--ink);background:repeating-linear-gradient(transparent,transparent 31px,var(--palette-076) 31px,var(--palette-076) 32px);line-height:32px;font-size:15px;min-height:130px}
.writing-preview::placeholder,input::placeholder,textarea::placeholder{color:var(--palette-077);opacity:1}
.quick-footer .small,.section-footer{color:var(--muted)}
.future-note{background:var(--palette-078);border-color:var(--palette-079);padding:22px}
.future-note p{font-size:14px;color:var(--muted)}
.route{padding:26px}
.route-number{color:var(--palette-080);font-size:34px}
.route h2{font-size:20px}
.route p,.phase p{font-size:14px;color:var(--muted);line-height:1.9}
.route .btn{font-size:13px}
.tag{background:var(--palette-081);color:var(--palette-082);font-size:11px}
.tag.warm{background:var(--palette-083);color:var(--palette-084)}
.tag.red{background:var(--palette-085);color:var(--palette-086)}
.notice,.review-summary{background:var(--palette-087);border-color:var(--palette-088);color:var(--palette-089);font-size:13px}
.notice.warm{background:var(--palette-090);border-color:var(--palette-091);color:var(--palette-092)}
.phase{border-color:var(--line)}
.phase-number{background:var(--palette-093);border-color:var(--palette-094);color:var(--palette-095)}
.phase.active .phase-number{background:var(--accent-deep);color:var(--on-accent)}
.phase-date{color:var(--muted);font-size:12px}
.budget-item{border-color:var(--palette-088)}
.budget-item:last-child{border-color:var(--palette-096)}
.budget-item strong{color:var(--palette-097)}
.budget-item p,.footnote{color:var(--muted);font-size:12px}
.week-column,.column-head{border-color:var(--line)}
.column-head{color:var(--muted)}
.column-head.selected{color:var(--palette-098)}
.mini-task{background:var(--palette-099);border-color:var(--palette-100);border-left-color:var(--palette-101);color:var(--ink);border-radius:3px}
.mini-task:hover{background:var(--palette-102);border-color:var(--palette-103)}
.mini-task small,.mini-course,.week-caption{color:var(--muted);font-size:12px}
.mini-task strong{font-size:13px}
.mini-course{border-color:var(--line)}
.add-day{background:transparent;border-color:var(--palette-104);color:var(--palette-105);min-height:44px}
.add-day:hover{background:var(--palette-106)}
.date-control .btn{width:44px;min-height:44px}
.tabset{border-color:var(--line)}
.tabset button{color:var(--muted);font-size:14px}
.tabset button.active{color:var(--ink);border-color:var(--accent)}
.form-field label{color:var(--palette-107);font-size:14px}
.form-field input,.form-field select,.form-field textarea,.codebox{background:var(--surface-input);border-color:var(--palette-108);color:var(--ink);font-size:15px;min-height:44px}
.form-field .diary-input{background:repeating-linear-gradient(var(--surface-input),var(--surface-input) 31px,var(--palette-109) 31px,var(--palette-109) 32px);background-origin:content-box;line-height:32px}
.mood{background:var(--palette-110);color:var(--muted);border-color:var(--palette-111);min-height:44px}
.mood.selected{background:var(--accent-deep);color:var(--on-accent);border-color:var(--palette-112)}
.flow-step{background:var(--paper);border-color:var(--palette-113)}
.flow-step strong{color:var(--palette-114)}
.flow-step p{color:var(--muted);font-size:14px}
.upload-area{background:var(--palette-115);border-color:var(--palette-116);padding:24px}
.upload-area p,.draft-row p{color:var(--muted);font-size:13px}
.upload-area input::file-selector-button{background:var(--palette-117);border:1px solid var(--palette-118);color:var(--ink);padding:10px 14px;border-radius:3px;cursor:pointer;margin:10px}
.codebox{font-family:Consolas,monospace;font-size:13px}
.error{background:var(--palette-119);border-color:var(--palette-120);color:var(--palette-121)}
.history-row,.journal-entry,.draft-row,.evaluation-list article,.preview-entry,.sep{border-color:var(--line)}
.history-row{font-size:14px}
.history-row time,.journal-date{color:var(--palette-122);font-size:12px}
.route-year{border-color:var(--palette-123)}
.route-year p,.evaluation-list p{color:var(--palette-124);font-size:14px}
.journal-entry .body-text,.body-text{line-height:2;font-size:15px}
.journal-entry .small,.saved-info,.evaluation-list small{color:var(--muted);font-size:12px}
.empty,.empty h3{color:var(--muted);font-size:14px}
.empty .penguin{width:54px;height:auto;opacity:1}
.review-summary .body-text{font-size:15px}
dialog{background:var(--palette-125);border-color:var(--palette-126);box-shadow:0 24px 100px var(--palette-127);border-radius:4px}
dialog::backdrop{background:var(--palette-128);backdrop-filter:blur(4px)}
.modal-head{background:var(--palette-129);border-color:var(--palette-130)}
.modal-head button{border-color:var(--palette-131);min-height:44px;width:44px}
.toast{background:var(--palette-132);border-color:var(--palette-133);color:var(--ink);box-shadow:0 8px 32px var(--palette-134)}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--palette-135);outline-offset:4px}
input:focus,textarea:focus,select:focus{outline:2px solid var(--palette-136);outline-offset:3px}
.boot-dot{background:var(--accent-deep);box-shadow:3px 3px 0 var(--palette-137)}
@media(min-width:1650px){.content{padding:38px 42px}}
@media(max-width:1200px){.desktop{margin:16px;grid-template-columns:208px minmax(0,1fr)}.sidebar{padding-left:14px;padding-right:14px}.brand-name{font-size:16px;letter-spacing:-.6px}.brand-sub{font-size:7px;letter-spacing:1px}.brand .penguin{width:30px}.content{padding:28px 24px}.hero-copy{padding:28px;max-width:70%}.hero .penguin{height:155px;right:7%}.nav button{padding:11px 12px}}
@media(min-width:651px) and (max-width:960px){.desktop{grid-template-columns:174px minmax(0,1fr)}.sidebar{padding:25px 10px}.brand{gap:7px}.brand-name{font-size:13px;letter-spacing:-.3px}.brand-sub{font-size:6px;letter-spacing:.8px}.brand .penguin{width:25px}.nav button{padding:11px 8px;font-size:13px;gap:8px}.hero-copy{max-width:70%;padding:25px}.hero-copy p{max-width:260px}.hero .penguin{height:145px;right:6%;bottom:15px}.pixel-speech{font-size:10px;right:4%}.route{padding:23px}.route h2{font-size:18px}}
@media(max-width:650px){body{background:var(--palette-138);font-size:14px}.statusbar{height:30px;font-size:9px;padding:0 16px}.status-right{display:none}.desktop{display:block;margin:0;border:0;box-shadow:none;min-height:calc(100dvh - 30px)}.window-bar{font-size:10px;height:36px;padding:0 18px}.content{padding:26px 18px 114px}.page-head h1{font-size:25px;line-height:1.5}.page-head p{font-size:13px}.page-head .eyebrow{font-size:9px}.hero{min-height:244px}.hero-copy{padding:24px 20px;max-width:100%}.hero-copy h2{font-size:24px;max-width:215px}.hero-copy p{font-size:13px;max-width:192px}.hero-copy .text-link{font-size:12px}.hero .landscape{width:100%;opacity:.9}.hero:after{background:linear-gradient(90deg,var(--palette-055) 0%,var(--palette-139) 47%,var(--palette-057) 100%)}.hero .penguin{height:124px;width:auto;right:5%;bottom:18px}.paper-head{padding:16px 18px}.paper-body{padding:20px 18px}.task-info h3{font-size:15px}.note-paper{padding:24px 21px}.future-note p{font-size:13px}.bottom-nav{background:var(--palette-140);border-color:var(--palette-141);box-shadow:none;padding-top:8px}.bottom-nav button{color:var(--palette-142);min-height:50px}.bottom-nav button.active{color:var(--palette-143);background:var(--palette-144);box-shadow:none;border-radius:3px}.form-field input,.form-field textarea,.form-field select{font-size:16px}.tabset button{font-size:13px;padding:12px 11px}.flow-step{border-color:var(--palette-145)}.flow-step p{font-size:13px}.section-footer{font-size:11px;gap:6px}.notice{font-size:12px}.route h2{font-size:17px}.route p,.phase p{font-size:14px}.head-actions .btn{font-size:12px}.future-note{padding:18px}.phase-date{font-size:12px}.form-actions .btn{font-size:14px}.soft-note{font-size:12px}}

/* Built-in QQ wardrobe. Mascot changes never replace the page or its forms. */
.pet-switch{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:0;background:transparent;border:1px solid transparent;border-radius:4px;color:var(--palette-146);min-width:44px;min-height:44px}
.pet-switch:hover{background:var(--palette-147);border-color:var(--palette-148)}
.pet-switch:active{background:var(--palette-149)}

.brand .pet-switch{flex-shrink:0}
.brand .pet-switch .penguin{position:static;width:32px;height:42px;object-fit:contain}
.desk-pet .pet-switch{width:114px;padding:8px 3px}
.desk-pet .pet-switch .penguin{height:100px;width:86px;object-fit:contain}
.hero .pet-switch{position:absolute;right:11%;bottom:12px;z-index:2;width:142px;height:194px;gap:4px}
.hero .pet-switch .penguin{position:static;height:158px;width:130px;object-fit:contain;right:auto;bottom:auto}
.window-bar{height:48px;padding-right:16px}
.window-pet-btn{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid transparent;min-height:44px;padding:2px 10px;color:var(--palette-153);font-size:11px;letter-spacing:.2px}
.window-pet-btn:hover{background:var(--palette-154);border-color:var(--palette-155)}
.window-pet-btn .window-penguin{position:static;height:29px;width:24px;object-fit:contain}
dialog[data-kind="penguin"]{width:min(700px,calc(100vw - 32px))}
.pet-wardrobe-intro{color:var(--muted);font-size:14px;margin-bottom:18px}
.pet-wardrobe-stage{display:flex;align-items:center;justify-content:center;gap:36px;min-height:192px;border:1px solid var(--palette-156);background:var(--palette-157);background-image:radial-gradient(var(--palette-158) .8px,transparent .8px);background-size:10px 10px;padding:18px;margin-bottom:18px;overflow:hidden}
.pet-wardrobe-stage .pet-large{position:static;height:160px;width:142px;object-fit:contain;flex-shrink:0}
.pet-wardrobe-stage h3{font-size:22px;margin:7px 0 8px}
.pet-wardrobe-stage p{color:var(--palette-159);font-size:13px;max-width:220px;line-height:1.8}
.pet-wardrobe-stage .tag{margin-top:12px;background:var(--palette-160);color:var(--palette-161)}
.pet-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.pet-option{display:flex;align-items:center;flex-direction:column;justify-content:center;padding:16px 10px 12px;min-width:0;background:var(--palette-115);border:1px solid var(--palette-162);border-radius:4px;color:var(--ink);gap:8px}
.pet-option:hover{background:var(--palette-163);border-color:var(--palette-164)}
.pet-option[aria-pressed="true"]{background:var(--palette-165);border-color:var(--palette-166);box-shadow:inset 0 0 0 1px var(--palette-166)}
.pet-option .pet-thumbnail{position:static;width:86px;height:112px;object-fit:contain}
.pet-option strong{font-weight:600;font-size:14px;line-height:1.5}
.pet-option-status{color:var(--palette-167);font-size:11px;line-height:1.5;min-height:17px}
.pet-option[aria-pressed="true"] .pet-option-status{color:var(--palette-168)}
.pet-wardrobe-note{font-size:12px;color:var(--muted);margin:16px 0 18px}
.pet-wardrobe-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:4px}
.pet-wardrobe-actions .btn{min-width:130px}
/* More choices stay scrollable while the preview and confirmation remain visible. */
dialog[data-kind="penguin"]{max-height:90dvh;overflow:hidden}
dialog[data-kind="penguin"] .modal-body{display:flex;flex-direction:column;max-height:calc(90dvh - 74px);overflow-y:auto}
dialog[data-kind="penguin"] .pet-wardrobe-stage{flex-shrink:0}
dialog[data-kind="penguin"] .pet-options{overflow-y:auto;max-height:420px;min-height:132px;flex-shrink:1;padding:3px;scrollbar-color:var(--palette-169) var(--palette-115)}
dialog[data-kind="penguin"] .pet-wardrobe-note,dialog[data-kind="penguin"] .pet-wardrobe-actions{flex-shrink:0}
@media(max-width:650px){dialog[data-kind="penguin"] .pet-options{grid-template-columns:repeat(3,minmax(0,1fr));max-height:260px}dialog[data-kind="penguin"] .modal-body{padding:16px}dialog[data-kind="penguin"] .pet-wardrobe-stage{min-height:132px}dialog[data-kind="penguin"] .pet-wardrobe-stage .pet-large{height:110px;width:88px}}
@media(max-width:1200px){.brand .pet-switch{min-width:38px}.brand .pet-switch .penguin{width:28px;height:38px}.hero .pet-switch{right:7%;height:184px;width:130px}.hero .pet-switch .penguin{width:118px;height:148px}}
@media(min-width:651px) and (max-width:960px){.brand{gap:5px}.brand .pet-switch{min-width:32px}.brand .pet-switch .penguin{width:25px;height:36px}.hero .pet-switch{right:5%;height:165px;width:116px;bottom:10px}.hero .pet-switch .penguin{height:130px;width:108px}}
@media(max-width:650px){.window-bar{height:48px;padding:0 12px 0 18px;font-size:9px;letter-spacing:.4px}.window-pet-btn{padding:2px 5px;gap:5px;font-size:10px}.window-pet-btn .window-penguin{height:27px;width:22px}.hero .pet-switch{right:3%;bottom:7px;height:150px;width:105px}.hero .pet-switch .penguin{position:static;height:116px;width:96px}.pet-wardrobe-stage{min-height:155px;padding:14px;gap:17px;margin-bottom:14px}.pet-wardrobe-stage .pet-large{height:130px;width:102px}.pet-wardrobe-stage h3{font-size:19px}.pet-wardrobe-stage p{font-size:12px}.pet-wardrobe-stage .eyebrow{font-size:9px;letter-spacing:1px}.pet-options{gap:8px}.pet-option{padding:12px 5px 10px;gap:5px}.pet-option .pet-thumbnail{width:70px;height:88px}.pet-option strong{font-size:13px}.pet-option-status{font-size:10px}.pet-wardrobe-intro{font-size:13px;margin-bottom:14px}.pet-wardrobe-note{font-size:11px;margin:14px 0}.pet-wardrobe-actions{gap:10px}.pet-wardrobe-actions .btn{flex:1;min-width:0;font-size:13px}.pet-wardrobe-stage .tag{font-size:10px;margin-top:8px}}

:root,[data-theme="qq"]{color-scheme:dark;--palette-000:#f1ece9;--palette-001:#b1a8ad;--palette-002:#1b191d;--palette-003:#141316;--palette-004:#383137;--palette-005:#c92340;--palette-006:#271d23;--palette-007:#ef778d;--palette-008:#f2a4b0;--palette-009:#00000026;--palette-010:#211e23;--palette-011:#151317;--palette-012:#e13d59;--palette-013:#ffffff;--palette-014:#645960;--palette-015:#1c1a1e;--palette-016:#1c1a1e30;--palette-017:#423b40;--palette-018:#00000030;--palette-019:#f5f1ee;--palette-020:#aaa3a8;--palette-021:#e6dfe1;--palette-022:#ffffff18;--palette-023:#181417;--palette-024:#181417f2;--palette-025:#18141700;--palette-026:#251c21;--palette-027:#70424e;--palette-028:#1c1a1ebd;--palette-029:#1c1a1e66;--palette-030:#181417d9;--palette-031:#111013;--palette-032:#ef8c9e;--palette-033:#171418;--palette-034:#ffffff20;--palette-035:#242026;--palette-036:#302027;--palette-037:#63313f;--palette-038:#f4869b;--palette-039:#a69ba2;--palette-040:#53323d;--palette-041:#171519;--palette-042:#34252c;--palette-043:#6c4856;--palette-044:#30282f;--palette-045:#8a6876;--palette-046:#3b2a32;--palette-047:#dc3855;--palette-048:#a81934;--palette-049:#f16c84;--palette-050:#292027;--palette-051:#59404b;--palette-052:#312029;--palette-053:#20151b;--palette-054:#5a303e;--palette-055:#1c161b;--palette-056:#1c161bf2;--palette-057:#1c161b00;--palette-058:#c8b8c1;--palette-059:#d7869e80;--palette-060:#2d2028;--palette-061:#976174;--palette-062:#ecd9e2;--palette-063:#1e1b20;--palette-064:#e58b9d;--palette-065:#33242d;--palette-066:#8b7984;--palette-067:#c4adb9;--palette-068:#252027;--palette-069:#8e586b;--palette-070:#261b22;--palette-071:#51313e;--palette-072:#c9b7c1;--palette-073:#36212d;--palette-074:#745164;--palette-075:#452936;--palette-076:#383038;--palette-077:#aaa0a7;--palette-078:#1d191e;--palette-079:#423039;--palette-080:#b17d90;--palette-081:#37202c;--palette-082:#f0b4c4;--palette-083:#3f242d;--palette-084:#f3c5cf;--palette-085:#48232e;--palette-086:#fbb0be;--palette-087:#292028;--palette-088:#654453;--palette-089:#d2bec8;--palette-090:#322027;--palette-091:#794051;--palette-092:#f0c1cd;--palette-093:#30212a;--palette-094:#754659;--palette-095:#edb5c8;--palette-096:#a8546b;--palette-097:#f1a1b4;--palette-098:#ff8ca2;--palette-099:#2a2027;--palette-100:#5f3b4d;--palette-101:#d25476;--palette-102:#39242e;--palette-103:#996277;--palette-104:#6e5763;--palette-105:#d1b4c3;--palette-106:#34232d;--palette-107:#d8c8d1;--palette-108:#68545f;--palette-109:#342b32;--palette-110:#251d24;--palette-111:#6b5060;--palette-112:#f07c95;--palette-113:#9f405c;--palette-114:#ed879f;--palette-115:#211b22;--palette-116:#7e5068;--palette-117:#382530;--palette-118:#806074;--palette-119:#40212b;--palette-120:#ff7b96;--palette-121:#ffd4de;--palette-122:#edb0c5;--palette-123:#65364b;--palette-124:#d3c7ce;--palette-125:#1e191f;--palette-126:#8a506b;--palette-127:#00000080;--palette-128:#09070bdd;--palette-129:#2b1d26;--palette-130:#684151;--palette-131:#946077;--palette-132:#38212e;--palette-133:#bb6685;--palette-134:#00000055;--palette-135:#ff9db6;--palette-136:#f789a9;--palette-137:#552638;--palette-138:#141216;--palette-139:#1c161bd9;--palette-140:#1c161d;--palette-141:#744458;--palette-142:#c1afba;--palette-143:#ffe8ef;--palette-144:#502433;--palette-145:#ac4666;--palette-146:#f1b5c6;--palette-147:#42243340;--palette-148:#ad697e;--palette-149:#54243966;--palette-150:#825063;--palette-151:#2d1c26;--palette-152:#f3c4d4;--palette-153:#e5bacb;--palette-154:#36202b;--palette-155:#79445b;--palette-156:#644052;--palette-157:#301d27;--palette-158:#67455150;--palette-159:#d6beca;--palette-160:#512e40;--palette-161:#f9c4d8;--palette-162:#64525e;--palette-163:#30222c;--palette-164:#ce87a3;--palette-165:#3b2330;--palette-166:#f185a8;--palette-167:#bdacb7;--palette-168:#ffbed6;--palette-169:#986477;--palette-170:#1a1317;--palette-171:#d92340;--palette-172:#38212a;--palette-173:#542332;--palette-174:#74293b;--palette-175:#66515a;--palette-176:#231b20;--palette-177:#e36073;--palette-178:#9f3546;--palette-179:#393035;--palette-180:#e15a70;--palette-181:#f3dedf;--palette-182:#6a3a45;--palette-183:#241b20;--ink:#f1ece9;--muted:#b1a8ad;--paper:#1b191d;--cream:#141316;--line:#383137;--surface-raised:#211e23;--surface-input:#151317;--accent:#e13d59;--accent-deep:#c92340;--accent-hover:#a81934;--on-accent:#ffffff;--border-strong:#645960;--page-bg:#111013;--hero-bg:#1c161b;--accent-soft:#302027;--accent-text:#f2a4b0;--green:var(--accent-deep);--red:var(--accent-text);--gold:var(--accent-text);--sage:var(--accent-soft)}

[data-theme="miku"]{color-scheme:dark;--palette-000:#e9f1f0;--palette-001:#a8b1b0;--palette-002:#191d1d;--palette-003:#131616;--palette-004:#313837;--palette-005:#29c3b3;--palette-006:#1d2726;--palette-007:#82e4db;--palette-008:#a9ede6;--palette-009:#00000026;--palette-010:#1e2323;--palette-011:#131717;--palette-012:#46d8c9;--palette-013:#ffffff;--palette-014:#596463;--palette-015:#1a1e1e;--palette-016:#1a1e1e30;--palette-017:#3b4241;--palette-018:#00000030;--palette-019:#eef5f4;--palette-020:#a3aaa9;--palette-021:#dfe6e5;--palette-022:#ffffff18;--palette-023:#141818;--palette-024:#141818f2;--palette-025:#14181800;--palette-026:#1c2524;--palette-027:#42706b;--palette-028:#1a1e1ebd;--palette-029:#1a1e1e66;--palette-030:#141818d9;--palette-031:#101313;--palette-032:#93e8e0;--palette-033:#141818;--palette-034:#ffffff20;--palette-035:#202625;--palette-036:#20302e;--palette-037:#31635e;--palette-038:#92e8df;--palette-039:#9ba6a5;--palette-040:#325350;--palette-041:#151919;--palette-042:#253433;--palette-043:#486c68;--palette-044:#28302f;--palette-045:#688a87;--palette-046:#2a3b39;--palette-047:#3ed6c7;--palette-048:#229f93;--palette-049:#7ae3d8;--palette-050:#202928;--palette-051:#405956;--palette-052:#20312f;--palette-053:#15201f;--palette-054:#305a56;--palette-055:#161c1b;--palette-056:#161c1bf2;--palette-057:#161c1b00;--palette-058:#b8c8c6;--palette-059:#86d7cf80;--palette-060:#202d2c;--palette-061:#619792;--palette-062:#d9ecea;--palette-063:#1b2020;--palette-064:#8be5dc;--palette-065:#243332;--palette-066:#798b89;--palette-067:#adc4c2;--palette-068:#202726;--palette-069:#588e89;--palette-070:#1b2625;--palette-071:#31514e;--palette-072:#b7c9c7;--palette-073:#213634;--palette-074:#517470;--palette-075:#294542;--palette-076:#303837;--palette-077:#a0aaa9;--palette-078:#191e1e;--palette-079:#304240;--palette-080:#7db1ac;--palette-081:#203735;--palette-082:#b5efe9;--palette-083:#243f3c;--palette-084:#c5f3ee;--palette-085:#234844;--palette-086:#bbf0eb;--palette-087:#202928;--palette-088:#446562;--palette-089:#bed2d0;--palette-090:#203230;--palette-091:#407973;--palette-092:#c1f0eb;--palette-093:#21302e;--palette-094:#467570;--palette-095:#b5ede7;--palette-096:#54a8a0;--palette-097:#a6ece5;--palette-098:#a0ebe3;--palette-099:#202a29;--palette-100:#3b5f5b;--palette-101:#54d2c5;--palette-102:#243937;--palette-103:#629994;--palette-104:#576e6c;--palette-105:#b4d1ce;--palette-106:#233432;--palette-107:#c8d8d6;--palette-108:#546866;--palette-109:#2b3433;--palette-110:#1d2524;--palette-111:#506b68;--palette-112:#87e5dc;--palette-113:#409f96;--palette-114:#8de7de;--palette-115:#1b2221;--palette-116:#507e79;--palette-117:#253836;--palette-118:#60807d;--palette-119:#21403d;--palette-120:#92e8df;--palette-121:#dcf7f5;--palette-122:#b0ede7;--palette-123:#366560;--palette-124:#c7d3d2;--palette-125:#191f1e;--palette-126:#508a84;--palette-127:#00000080;--palette-128:#070b0bdd;--palette-129:#1d2b2a;--palette-130:#416864;--palette-131:#60948f;--palette-132:#213836;--palette-133:#66bbb2;--palette-134:#00000055;--palette-135:#aeeee7;--palette-136:#97e9e1;--palette-137:#265550;--palette-138:#121616;--palette-139:#161c1bd9;--palette-140:#161d1c;--palette-141:#44746f;--palette-142:#afc1bf;--palette-143:#ecfbf9;--palette-144:#24504c;--palette-145:#46aca2;--palette-146:#b6f0ea;--palette-147:#24423f40;--palette-148:#69ada6;--palette-149:#24544f66;--palette-150:#50827d;--palette-151:#1c2d2b;--palette-152:#c4f3ee;--palette-153:#bae5e1;--palette-154:#203634;--palette-155:#447974;--palette-156:#406460;--palette-157:#1d302e;--palette-158:#45676450;--palette-159:#bed6d4;--palette-160:#2e514e;--palette-161:#c9f4ef;--palette-162:#526462;--palette-163:#22302f;--palette-164:#87cec7;--palette-165:#233b39;--palette-166:#8fe7de;--palette-167:#acbdbb;--palette-168:#c9f4ef;--palette-169:#649893;--palette-170:#131a19;--palette-171:#2cd0c0;--palette-172:#213836;--palette-173:#23544f;--palette-174:#29746d;--palette-175:#516664;--palette-176:#1b2322;--palette-177:#65ded2;--palette-178:#359f94;--palette-179:#303938;--palette-180:#5eddd0;--palette-181:#def3f1;--palette-182:#3a6a65;--palette-183:#1b2423;--ink:#e8f4f1;--muted:#a1b9b4;--paper:#172220;--cream:#101a18;--line:#304c45;--surface-raised:#20332e;--surface-input:#0f1c18;--accent:#4fdbc7;--accent-deep:#176f61;--accent-hover:#125b4f;--on-accent:#ffffff;--border-strong:#567d72;--page-bg:#0c1412;--hero-bg:#13251f;--accent-soft:#1e3d34;--accent-text:#8be1ce;--green:var(--accent-deep);--red:var(--accent-text);--gold:var(--accent-text);--sage:var(--accent-soft)}

[data-theme="chiikawa"]{color-scheme:light;--palette-000:#312024;--palette-001:#50484a;--palette-002:#eae7e8;--palette-003:#eeebec;--palette-004:#dad5d6;--palette-005:#842e44;--palette-006:#e8e0e2;--palette-007:#60313d;--palette-008:#4e2832;--palette-009:#00000026;--palette-010:#e7e3e4;--palette-011:#eeeaeb;--palette-012:#7a3f4d;--palette-013:#1f1f1f;--palette-014:#c0b9bb;--palette-015:#e9e6e7;--palette-016:#e9e6e730;--palette-017:#d4cfd0;--palette-018:#00000030;--palette-019:#301c21;--palette-020:#524c4e;--palette-021:#34292b;--palette-022:#00000018;--palette-023:#edeaeb;--palette-024:#edeaebf2;--palette-025:#edeaeb00;--palette-026:#e8e1e3;--palette-027:#d0b0b8;--palette-028:#e9e6e7bd;--palette-029:#e9e6e766;--palette-030:#edeaebd9;--palette-031:#f0edee;--palette-032:#582d38;--palette-033:#edeaeb;--palette-034:#00000020;--palette-035:#e6e1e2;--palette-036:#e6dadd;--palette-037:#dcb8c1;--palette-038:#582d38;--palette-039:#574e50;--palette-040:#dbc3c9;--palette-041:#ede9ea;--palette-042:#e3d7da;--palette-043:#ccb3b9;--palette-044:#e0dadc;--palette-045:#b79fa5;--palette-046:#dfd3d6;--palette-047:#7d4150;--palette-048:#842e44;--palette-049:#63333f;--palette-050:#e6dfe0;--palette-051:#d1bfc4;--palette-052:#e6d9dc;--palette-053:#ede4e6;--palette-054:#dcbec5;--palette-055:#ece7e8;--palette-056:#ece7e8f2;--palette-057:#ece7e800;--palette-058:#4a393d;--palette-059:#63333f80;--palette-060:#e6dcde;--palette-061:#bc97a0;--palette-062:#3d1f27;--palette-063:#e9e5e6;--palette-064:#5c2f3b;--palette-065:#e3d8db;--palette-066:#6b5c60;--palette-067:#513a40;--palette-068:#e6e0e1;--palette-069:#c29ca6;--palette-070:#e9e0e3;--palette-071:#dbc4ca;--palette-072:#4b383d;--palette-073:#e6d6da;--palette-074:#c6aeb4;--palette-075:#e1ccd1;--palette-076:#dbd5d7;--palette-077:#554c4e;--palette-078:#eae6e7;--palette-079:#dcced2;--palette-080:#6e424d;--palette-081:#e6d5d9;--palette-082:#49262e;--palette-083:#e4d0d5;--palette-084:#42222a;--palette-085:#e5c9d0;--palette-086:#47242d;--palette-087:#e6dfe0;--palette-088:#cfb7bd;--palette-089:#483237;--palette-090:#e6d8dc;--palette-091:#d2aab4;--palette-092:#44232b;--palette-093:#e5dadd;--palette-094:#ceadb5;--palette-095:#4a262f;--palette-096:#c58b99;--palette-097:#502933;--palette-098:#522a34;--palette-099:#e6dee0;--palette-100:#d5bbc1;--palette-101:#773d4c;--palette-102:#e4d4d8;--palette-103:#bb959f;--palette-104:#c2b2b6;--palette-105:#4f3138;--palette-106:#e4d7da;--palette-107:#422f34;--palette-108:#c4b6b9;--palette-109:#ded8d9;--palette-110:#e8e1e3;--palette-111:#c7b4b8;--palette-112:#5d303b;--palette-113:#cd96a4;--palette-114:#5a2f3a;--palette-115:#e9e3e5;--palette-116:#c7a7af;--palette-117:#e3d4d8;--palette-118:#bca6ac;--palette-119:#e6cfd5;--palette-120:#582d38;--palette-121:#381d24;--palette-122:#4c2730;--palette-123:#d8b7bf;--palette-124:#413337;--palette-125:#eae5e6;--palette-126:#c79fa9;--palette-127:#00000080;--palette-128:#f6f2f3dd;--palette-129:#e8dde0;--palette-130:#d1b5bc;--palette-131:#bd99a2;--palette-132:#e6d4d9;--palette-133:#793e4d;--palette-134:#00000055;--palette-135:#4c2730;--palette-136:#562c37;--palette-137:#e2c2ca;--palette-138:#efebec;--palette-139:#ece7e8d9;--palette-140:#ece6e8;--palette-141:#cfadb6;--palette-142:#4e3d41;--palette-143:#31191f;--palette-144:#e3c5cd;--palette-145:#c98e9d;--palette-146:#48252e;--palette-147:#e4ced340;--palette-148:#7a4351;--palette-149:#e2c3cb66;--palette-150:#c7a4ad;--palette-151:#e9dbdf;--palette-152:#42222a;--palette-153:#4b2730;--palette-154:#e6d5da;--palette-155:#cfaab3;--palette-156:#d1b8be;--palette-157:#e8d9dd;--palette-158:#ceb6bc50;--palette-159:#492e35;--palette-160:#ddc4ca;--palette-161:#402129;--palette-162:#c5b8bc;--palette-163:#e5dadd;--palette-164:#663441;--palette-165:#e4d2d7;--palette-166:#5a2e39;--palette-167:#503f43;--palette-168:#402129;--palette-169:#ba969f;--palette-170:#eee8ea;--palette-171:#842e44;--palette-172:#e6d4d9;--palette-173:#e3c4cc;--palette-174:#dbb3bd;--palette-175:#c6b7bb;--palette-176:#e9e2e4;--palette-177:#6c3845;--palette-178:#cf9ba8;--palette-179:#dbd4d6;--palette-180:#6f3947;--palette-181:#391d24;--palette-182:#d6b4bc;--palette-183:#e9e2e4;--ink:#402f35;--muted:#756168;--paper:#fffafb;--cream:#fff5f7;--line:#e0cdd3;--surface-raised:#fffafb;--surface-input:#ffffff;--accent:#bd526d;--accent-deep:#a83f5b;--accent-hover:#8b3049;--on-accent:#ffffff;--border-strong:#ab808e;--page-bg:#f3e7eb;--hero-bg:#fae6ed;--accent-soft:#f7dce5;--accent-text:#8d3c56;--green:var(--accent-deep);--red:var(--accent-text);--gold:var(--accent-text);--sage:var(--accent-soft)}

[data-theme="toro"]{color-scheme:light;--palette-000:#312920;--palette-001:#504c48;--palette-002:#eae8e7;--palette-003:#eeedeb;--palette-004:#dad8d5;--palette-005:#845c2e;--palette-006:#e8e4e0;--palette-007:#604a31;--palette-008:#4e3c28;--palette-009:#00000026;--palette-010:#e7e5e3;--palette-011:#eeecea;--palette-012:#7a5e3f;--palette-013:#1f1f1f;--palette-014:#c0bdb9;--palette-015:#e9e8e6;--palette-016:#e9e8e630;--palette-017:#d4d1cf;--palette-018:#00000030;--palette-019:#30271c;--palette-020:#524f4c;--palette-021:#342f29;--palette-022:#00000018;--palette-023:#edecea;--palette-024:#edeceaf2;--palette-025:#edecea00;--palette-026:#e8e5e1;--palette-027:#d0c1b0;--palette-028:#e9e8e6bd;--palette-029:#e9e8e666;--palette-030:#edecead9;--palette-031:#f0efed;--palette-032:#58442d;--palette-033:#edecea;--palette-034:#00000020;--palette-035:#e6e3e1;--palette-036:#e6e0da;--palette-037:#dccbb8;--palette-038:#58442d;--palette-039:#57534e;--palette-040:#dbcfc3;--palette-041:#edebe9;--palette-042:#e3ddd7;--palette-043:#ccc0b3;--palette-044:#e0deda;--palette-045:#b7ac9f;--palette-046:#dfdad3;--palette-047:#7d6141;--palette-048:#845c2e;--palette-049:#634c33;--palette-050:#e6e2df;--palette-051:#d1c9bf;--palette-052:#e6e0d9;--palette-053:#ede9e4;--palette-054:#dccebe;--palette-055:#eceae7;--palette-056:#eceae7f2;--palette-057:#eceae700;--palette-058:#4a4239;--palette-059:#634c3380;--palette-060:#e6e1dc;--palette-061:#bcab97;--palette-062:#3d2f1f;--palette-063:#e9e7e5;--palette-064:#5c472f;--palette-065:#e3ded8;--palette-066:#6b645c;--palette-067:#51463a;--palette-068:#e6e3e0;--palette-069:#c2b09c;--palette-070:#e9e5e0;--palette-071:#dbd0c4;--palette-072:#4b4238;--palette-073:#e6ded6;--palette-074:#c6bbae;--palette-075:#e1d7cc;--palette-076:#dbd8d5;--palette-077:#55504c;--palette-078:#eae8e6;--palette-079:#dcd5ce;--palette-080:#6e5942;--palette-081:#e6ded5;--palette-082:#493926;--palette-083:#e4dad0;--palette-084:#423322;--palette-085:#e5d8c9;--palette-086:#473724;--palette-087:#e6e2df;--palette-088:#cfc4b7;--palette-089:#483e32;--palette-090:#e6e0d8;--palette-091:#d2bfaa;--palette-092:#443523;--palette-093:#e5e0da;--palette-094:#cebead;--palette-095:#4a3926;--palette-096:#c5aa8b;--palette-097:#503e29;--palette-098:#52402a;--palette-099:#e6e2de;--palette-100:#d5c9bb;--palette-101:#775c3d;--palette-102:#e4dcd4;--palette-103:#bbaa95;--palette-104:#c2bab2;--palette-105:#4f4131;--palette-106:#e4ded7;--palette-107:#42392f;--palette-108:#c4bdb6;--palette-109:#dedbd8;--palette-110:#e8e5e1;--palette-111:#c7beb4;--palette-112:#5d4830;--palette-113:#cdb396;--palette-114:#5a462f;--palette-115:#e9e6e3;--palette-116:#c7b8a7;--palette-117:#e3dcd4;--palette-118:#bcb2a6;--palette-119:#e6dbcf;--palette-120:#58442d;--palette-121:#382b1d;--palette-122:#4c3a27;--palette-123:#d8c9b7;--palette-124:#413b33;--palette-125:#eae8e5;--palette-126:#c7b49f;--palette-127:#00000080;--palette-128:#f6f4f2dd;--palette-129:#e8e3dd;--palette-130:#d1c4b5;--palette-131:#bdac99;--palette-132:#e6ded4;--palette-133:#795d3e;--palette-134:#00000055;--palette-135:#4c3b27;--palette-136:#56432c;--palette-137:#e2d3c2;--palette-138:#efedeb;--palette-139:#eceae7d9;--palette-140:#eceae6;--palette-141:#cfbfad;--palette-142:#4e463d;--palette-143:#312619;--palette-144:#e3d5c5;--palette-145:#c9ad8e;--palette-146:#483825;--palette-147:#e4dace40;--palette-148:#7a6043;--palette-149:#e2d4c366;--palette-150:#c7b7a4;--palette-151:#e9e3db;--palette-152:#423322;--palette-153:#4b3a27;--palette-154:#e6dfd5;--palette-155:#cfbeaa;--palette-156:#d1c5b8;--palette-157:#e8e1d9;--palette-158:#cec3b650;--palette-159:#493d2e;--palette-160:#ddd1c4;--palette-161:#403221;--palette-162:#c5bfb8;--palette-163:#e5e0da;--palette-164:#664f34;--palette-165:#e4dcd2;--palette-166:#5a452e;--palette-167:#50483f;--palette-168:#403221;--palette-169:#baa996;--palette-170:#eeebe8;--palette-171:#845c2e;--palette-172:#e6ded4;--palette-173:#e3d4c4;--palette-174:#dbc8b3;--palette-175:#c6bfb7;--palette-176:#e9e6e2;--palette-177:#6c5438;--palette-178:#cfb79b;--palette-179:#dbd8d4;--palette-180:#6f5639;--palette-181:#392c1d;--palette-182:#d6c6b4;--palette-183:#e9e6e2;--ink:#302e2a;--muted:#716d65;--paper:#fffdfa;--cream:#f8f7f3;--line:#d8d3c9;--surface-raised:#fdfcf9;--surface-input:#ffffff;--accent:#887261;--accent-deep:#645747;--accent-hover:#4d4338;--on-accent:#ffffff;--border-strong:#a29a8b;--page-bg:#eeece6;--hero-bg:#f6f1e8;--accent-soft:#eee5d8;--accent-text:#6f5943;--green:var(--accent-deep);--red:var(--accent-text);--gold:var(--accent-text);--sage:var(--accent-soft)}

[data-theme="rilakkuma"]{color-scheme:light;--palette-000:#312a20;--palette-001:#504d48;--palette-002:#eae9e7;--palette-003:#eeedeb;--palette-004:#dad8d5;--palette-005:#845f2e;--palette-006:#e8e4e0;--palette-007:#604b31;--palette-008:#4e3e28;--palette-009:#00000026;--palette-010:#e7e5e3;--palette-011:#eeecea;--palette-012:#7a603f;--palette-013:#1f1f1f;--palette-014:#c0bdb9;--palette-015:#e9e8e6;--palette-016:#e9e8e630;--palette-017:#d4d2cf;--palette-018:#00000030;--palette-019:#30271c;--palette-020:#52504c;--palette-021:#342f29;--palette-022:#00000018;--palette-023:#edecea;--palette-024:#edeceaf2;--palette-025:#edecea00;--palette-026:#e8e5e1;--palette-027:#d0c2b0;--palette-028:#e9e8e6bd;--palette-029:#e9e8e666;--palette-030:#edecead9;--palette-031:#f0efed;--palette-032:#58452d;--palette-033:#edecea;--palette-034:#00000020;--palette-035:#e6e3e1;--palette-036:#e6e1da;--palette-037:#dcccb8;--palette-038:#58462d;--palette-039:#57534e;--palette-040:#dbd0c3;--palette-041:#edebe9;--palette-042:#e3ded7;--palette-043:#ccc1b3;--palette-044:#e0deda;--palette-045:#b7ad9f;--palette-046:#dfdad3;--palette-047:#7d6341;--palette-048:#845f2e;--palette-049:#634e33;--palette-050:#e6e3df;--palette-051:#d1c9bf;--palette-052:#e6e0d9;--palette-053:#ede9e4;--palette-054:#dccfbe;--palette-055:#eceae7;--palette-056:#eceae7f2;--palette-057:#eceae700;--palette-058:#4a4239;--palette-059:#634e3380;--palette-060:#e6e2dc;--palette-061:#bcac97;--palette-062:#3d301f;--palette-063:#e9e7e5;--palette-064:#5c492f;--palette-065:#e3ded8;--palette-066:#6b645c;--palette-067:#51473a;--palette-068:#e6e3e0;--palette-069:#c2b29c;--palette-070:#e9e5e0;--palette-071:#dbd1c4;--palette-072:#4b4238;--palette-073:#e6dfd6;--palette-074:#c6bcae;--palette-075:#e1d8cc;--palette-076:#dbd8d5;--palette-077:#55514c;--palette-078:#eae8e6;--palette-079:#dcd6ce;--palette-080:#6e5b42;--palette-081:#e6dfd5;--palette-082:#493a26;--palette-083:#e4dbd0;--palette-084:#423422;--palette-085:#e5d9c9;--palette-086:#473824;--palette-087:#e6e3df;--palette-088:#cfc5b7;--palette-089:#483e32;--palette-090:#e6e0d8;--palette-091:#d2c0aa;--palette-092:#443623;--palette-093:#e5e0da;--palette-094:#cebfad;--palette-095:#4a3a26;--palette-096:#c5ac8b;--palette-097:#503f29;--palette-098:#52412a;--palette-099:#e6e2de;--palette-100:#d5cabb;--palette-101:#775e3d;--palette-102:#e4ddd4;--palette-103:#bbab95;--palette-104:#c2bbb2;--palette-105:#4f4231;--palette-106:#e4ded7;--palette-107:#423a2f;--palette-108:#c4beb6;--palette-109:#dedbd8;--palette-110:#e8e5e1;--palette-111:#c7beb4;--palette-112:#5d4a30;--palette-113:#cdb596;--palette-114:#5a472f;--palette-115:#e9e6e3;--palette-116:#c7b9a7;--palette-117:#e3ddd4;--palette-118:#bcb3a6;--palette-119:#e6dccf;--palette-120:#58462d;--palette-121:#382c1d;--palette-122:#4c3c27;--palette-123:#d8cab7;--palette-124:#413b33;--palette-125:#eae8e5;--palette-126:#c7b69f;--palette-127:#00000080;--palette-128:#f6f4f2dd;--palette-129:#e8e3dd;--palette-130:#d1c5b5;--palette-131:#bdad99;--palette-132:#e6ded4;--palette-133:#795f3e;--palette-134:#00000055;--palette-135:#4c3c27;--palette-136:#56442c;--palette-137:#e2d4c2;--palette-138:#efedeb;--palette-139:#eceae7d9;--palette-140:#eceae6;--palette-141:#cfc0ad;--palette-142:#4e473d;--palette-143:#312719;--palette-144:#e3d6c5;--palette-145:#c9af8e;--palette-146:#483925;--palette-147:#e4dace40;--palette-148:#7a6243;--palette-149:#e2d5c366;--palette-150:#c7b8a4;--palette-151:#e9e3db;--palette-152:#423422;--palette-153:#4b3b27;--palette-154:#e6dfd5;--palette-155:#cfbfaa;--palette-156:#d1c6b8;--palette-157:#e8e2d9;--palette-158:#cec4b650;--palette-159:#493e2e;--palette-160:#ddd2c4;--palette-161:#403321;--palette-162:#c5c0b8;--palette-163:#e5e0da;--palette-164:#665034;--palette-165:#e4ddd2;--palette-166:#5a472e;--palette-167:#50493f;--palette-168:#403321;--palette-169:#baaa96;--palette-170:#eeece8;--palette-171:#845f2e;--palette-172:#e6ded4;--palette-173:#e3d5c4;--palette-174:#dbc9b3;--palette-175:#c6bfb7;--palette-176:#e9e6e2;--palette-177:#6c5638;--palette-178:#cfb89b;--palette-179:#dbd8d4;--palette-180:#6f5839;--palette-181:#392d1d;--palette-182:#d6c7b4;--palette-183:#e9e6e2;--ink:#463522;--muted:#78634a;--paper:#fffbf0;--cream:#fcf3df;--line:#dcc9a5;--surface-raised:#fff9e9;--surface-input:#fffdf6;--accent:#a56c32;--accent-deep:#855524;--accent-hover:#69401b;--on-accent:#ffffff;--border-strong:#ad8a5e;--page-bg:#eee1c8;--hero-bg:#f5e4be;--accent-soft:#eedcb6;--accent-text:#795020;--green:var(--accent-deep);--red:var(--accent-text);--gold:var(--accent-text);--sage:var(--accent-soft)}

/* Shared readable surfaces and accents, including light character themes. */
body,.statusbar{background:var(--page-bg)}
.desktop{background:var(--cream)}
.sidebar,.window-bar,.paper-head,.modal-head,.bottom-nav{background:var(--surface-raised)}
.hero{background:var(--hero-bg)}
.hero:after{background:linear-gradient(90deg,var(--hero-bg) 10%,color-mix(in srgb,var(--hero-bg) 95%,transparent) 42%,transparent 82%)}
.hero-copy p,.hero-copy .text-link,.note-paper p,.form-field label,.route-year p,.evaluation-list p{color:var(--ink)}
.paper,.route,.week-board,.week-mobile-day,dialog{background:var(--paper)}
.nav button.active,.bottom-nav button.active,.mood,.tag,.tag.warm,.tag.red,.notice,.review-summary,.note-paper,.future-note,.class-list,.flow-step,.upload-area{background:var(--accent-soft)}
.nav button.active,.bottom-nav button.active{color:var(--ink);border-color:var(--border-strong)}
.nav button.active .ico,.paper-head .ico,a,.link-btn,.btn.flat,.btn.danger,.column-head.selected,.journal-date,.budget-item strong,.route-number,.flow-step strong,.tag,.tag.warm,.tag.red{color:var(--accent-text)}
.nav button:hover,.btn:hover,.day-chip:not(.selected):hover,.task-edit:hover,.add-day:hover,.mini-task:hover,.btn.flat:hover,.link-btn:hover{background:var(--accent-soft);color:var(--ink)}
.btn.soft,.mini-task,.notice.warm,.phase-number,.pixel-speech,.pixel-speech:after,.note-paper .btn{background:var(--accent-soft);border-color:var(--border-strong);color:var(--ink)}
.btn.primary,.day-chip.selected,.mood.selected,.phase.active .phase-number,.task-check .ico{background:var(--accent-deep);color:var(--on-accent);border-color:var(--accent)}
.btn.primary:hover{background:var(--accent-hover);color:var(--on-accent)}
.notice,.notice.warm,.review-summary{color:var(--ink)}
.form-field input,.form-field select,.form-field textarea,.codebox{background:var(--surface-input);color:var(--ink);border-color:var(--border-strong)}
.form-field .diary-input{background:repeating-linear-gradient(var(--surface-input),var(--surface-input) 31px,var(--line) 31px,var(--line) 32px);background-origin:content-box}
.writing-preview{background:repeating-linear-gradient(transparent,transparent 31px,var(--line) 31px,var(--line) 32px)}
.writing-preview::placeholder,input::placeholder,textarea::placeholder{color:var(--muted)}
.pet-switch,.window-pet-btn{color:var(--accent-text)}

.pet-wardrobe-stage{background-color:var(--accent-soft);border-color:var(--border-strong)}
.pet-wardrobe-stage p,.pet-option-status{color:var(--muted)}
.pet-wardrobe-stage .tag{background:var(--paper);color:var(--accent-text)}
.pet-option{background:var(--paper);border-color:var(--border-strong)}
.pet-option:hover,.pet-option[aria-pressed="true"]{background:var(--accent-soft);border-color:var(--accent)}
.pet-option[aria-pressed="true"]{box-shadow:inset 0 0 0 1px var(--accent)}
.pet-option[aria-pressed="true"] .pet-option-status{color:var(--accent-text)}
dialog[data-kind="penguin"] .pet-options{scrollbar-color:var(--border-strong) var(--paper)}
.pet-families{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px;flex-shrink:0}
.pet-family{border:1px solid var(--border-strong);background:var(--paper);color:var(--muted);padding:8px 12px;min-height:44px}
.pet-family[aria-pressed="true"]{background:var(--accent-soft);color:var(--ink);border-color:var(--accent)}
.pet-option[hidden]{display:none}
button:disabled{cursor:default}
@media(max-width:650px){.hero:after{background:linear-gradient(90deg,var(--hero-bg) 0%,color-mix(in srgb,var(--hero-bg) 85%,transparent) 47%,transparent 100%)}.pet-family{padding:6px 9px;font-size:12px}}
:root{--danger-ink:#ffd4de;--danger-bg:#40212b;--danger-border:#ff7b96}
[data-theme="chiikawa"],[data-theme="toro"],[data-theme="rilakkuma"]{--danger-ink:#8b2640;--danger-bg:#fff0f3;--danger-border:#a83f5b}
.error{background:var(--danger-bg);color:var(--danger-ink);border-color:var(--danger-border)}

/* Planning information replaces the introductory slogans. */
.copy-prompt{display:inline-flex;align-items:center;justify-content:center;min-width:44px;width:44px;min-height:44px;height:44px;padding:10px;flex-shrink:0;border:1px solid var(--border-strong);background:var(--paper);color:var(--accent-text)}.copy-prompt:hover{background:var(--accent-soft);border-color:var(--accent)}.copy-prompt .ico{width:19px;height:19px}.task-tools{display:flex;gap:4px;align-items:center;flex-shrink:0}.task-tools .task-edit{min-width:44px;min-height:44px}.mini-proposal-wrap{border:1px dashed var(--border-strong);margin:8px 0;background:var(--paper)}.mini-proposal-wrap .mini-proposal{border:0;margin:0}.mini-prompt-toolbar{display:flex;justify-content:flex-end;border-top:1px solid var(--line);padding:2px}.mini-prompt-toolbar .copy-prompt,.mini-task-controls .copy-prompt{border:0;background:transparent}.mini-task-controls{display:flex;align-items:stretch;border-top:1px solid var(--line)}.mini-task-controls .mini-complete{border:0;flex:1;min-width:0}.task-prompt-text{width:100%;min-height:280px;max-height:52dvh;margin:12px 0;font-size:14px;line-height:1.8;background:var(--surface-input);color:var(--ink);border:1px solid var(--border-strong);padding:12px;resize:vertical}dialog[data-kind="task-prompt"]{width:min(720px,calc(100vw - 32px));max-height:90dvh;overflow:auto}@media(max-width:650px){.task-tools{flex-direction:column;align-self:flex-start}.task-prompt-text{font-size:16px}}
.fixed-schedule{display:grid;gap:8px}.full-fixed{padding:14px 22px;border-bottom:1px solid var(--line);background:var(--cream)}.fixed-item{border-left:3px solid var(--accent);padding:8px 12px;display:flex;flex-wrap:wrap;gap:5px 16px;font-size:13px}.fixed-item strong{color:var(--ink)}.fixed-item span{color:var(--accent-text)}.fixed-item p{flex-basis:100%;font-size:12px;line-height:1.8;color:var(--muted)}.fixed-item.pending{border-left-color:var(--border-strong)}.fixed-item.pending span{color:var(--muted)}.mini-fixed .fixed-item{padding:9px 8px;gap:5px;font-size:11px;flex-direction:column;border-bottom:1px solid var(--line)}.daily-proposals{padding:16px 22px;border-top:1px solid var(--line)}.daily-proposals>p{margin-top:7px;line-height:1.8}.mini-proposals{margin-top:12px}.mini-proposals>strong{font-size:10px;color:var(--muted)}.mini-proposal{display:block;text-align:left;width:100%;background:var(--paper);border:1px dashed var(--border-strong);color:var(--ink);padding:10px;margin:8px 0;min-height:44px;overflow-wrap:anywhere}.mini-proposal strong{display:block;font-size:12px;line-height:1.8}.mini-proposal small{display:block;color:var(--muted);font-size:10px;margin-top:6px}.mini-proposal:hover{background:var(--surface-raised);border-color:var(--accent)}.schedule-weekdays{border:1px solid var(--line);padding:12px;margin:10px 0 20px;display:flex;flex-wrap:wrap;gap:8px}.schedule-weekdays legend{font-size:13px;padding:0 5px}.schedule-weekdays label{display:flex;align-items:center;gap:7px;min-height:44px;padding:0 6px;font-size:13px}.schedule-weekdays input{width:16px;height:16px}.mobile-week .daily-proposals,.mobile-week .full-fixed{padding-left:12px;padding-right:12px}
.page-head{margin-bottom:24px}.page-head h1{font-size:30px}.page-head:has(:not(.eyebrow)) .eyebrow{letter-spacing:1px}
.daily-focus{display:flex;align-items:center;gap:24px;background:var(--hero-bg);border:1px solid var(--line);padding:24px 28px;margin-bottom:24px}
.daily-focus>div{flex:1;min-width:0}.daily-focus h2{font-size:23px;line-height:1.5;margin:7px 0 10px}.daily-focus p{line-height:1.8;font-size:14px;color:var(--ink);max-width:760px}
.daily-focus{padding:18px 24px}.daily-focus h2{font-size:20px;margin:4px 0}.daily-focus .pet-switch{flex-basis:90px}.daily-focus .penguin{width:74px;height:94px}.daily-focus .text-link{background:none;border:0;color:var(--accent-text);padding:0;min-height:36px;display:inline-flex;align-items:center;gap:6px}.daily-suggestions{padding:14px 22px;border-top:1px solid var(--line);background:var(--surface-raised)}
.daily-focus .pet-switch{flex:0 0 110px}.daily-focus .penguin{position:static;width:94px;height:120px;object-fit:contain}.daily-focus .text-link{margin-top:10px;font-size:13px}
.phase-result{border-left:2px solid var(--border-strong);padding-left:12px;margin-top:12px!important}.phase-result strong{font-size:12px;color:var(--accent-text);margin-right:8px}
.phase-dates{font-size:12px!important;color:var(--muted)!important;margin:8px 0}
.list-empty{padding:24px;font-size:14px;color:var(--muted);line-height:1.8}.task-note{font-size:12px;color:var(--muted);white-space:pre-wrap;line-height:1.8;margin:5px 0 0}.task-info{min-width:0}.task-info h3{overflow-wrap:anywhere}
.goal-focus{display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding:16px 22px;border-top:1px solid var(--line);font-size:12px}.goal-focus strong{font-size:13px}
.schedule-note{padding:14px 22px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.schedule-note summary,details summary{cursor:pointer;min-height:32px;line-height:1.8}.schedule-note p{line-height:1.8;margin-top:8px}
.suggestion{display:flex;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.suggestion:last-child{border-bottom:0}.suggestion>div:first-child{flex:1;min-width:0}.suggestion h3{font-size:15px;line-height:1.7;margin:5px 0}.suggestion p{font-size:13px;line-height:1.8;color:var(--muted)}.suggestion small{font-size:11px;color:var(--accent-text)}.suggestion-actions{display:flex;flex-wrap:wrap;gap:4px;align-items:center;justify-content:flex-end;max-width:185px}
.diary-modes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.diary-modes .btn{min-height:44px}.paper-body>.writing-preview,.paper-body>.diary-input{width:100%;min-height:170px;color:var(--ink);border:1px solid var(--line);padding:12px;margin-top:10px;font-size:15px;line-height:2}.paper-body>.diary-input{min-height:330px;background:var(--surface-input)}.quick-footer{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-top:16px}.quick-footer .small{font-size:11px;color:var(--muted)}
.original-reference{margin-top:14px;font-size:12px;color:var(--muted)}.original-reference p{max-height:220px;overflow:auto;margin-top:10px}.diary-date-control{padding-bottom:0}.diary-date-control input{margin:0 0 15px 12px;max-width:190px;background:var(--surface-input);color:var(--ink);border:1px solid var(--border-strong);padding:10px}.diary-date-control .moods{margin-bottom:12px}
.goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.goal-card{border:1px solid var(--line);padding:18px;background:var(--surface-raised)}.goal-card h3{font-size:16px;margin-bottom:8px}.goal-card p{font-size:14px;line-height:1.8}.goal-card .btn{margin-top:8px}
.mini-task-card{margin:12px 0;border:1px solid var(--line);background:var(--accent-soft)}.mini-task-card.done{opacity:.72}.mini-task-card .mini-task{border:0;margin:0;width:100%;text-align:left;white-space:normal;overflow-wrap:anywhere}.mini-complete{display:flex;align-items:center;gap:5px;width:100%;border:0;border-top:1px solid var(--line);min-height:44px;padding:9px;font-size:11px;background:var(--paper);color:var(--accent-text)}.mini-complete .ico{width:14px;height:14px}.mini-complete:hover{background:var(--accent-soft)}
.planning-diff{margin:18px 0;border:1px solid var(--line);padding:14px}.planning-diff h3{font-size:15px;margin-bottom:12px}.diff-row{display:grid;grid-template-columns:80px minmax(0,1fr) minmax(0,1fr);gap:12px;border-top:1px solid var(--line);padding:12px 0}.diff-row strong,.diff-row small{font-size:12px;color:var(--muted)}.diff-row p{font-size:13px;white-space:pre-wrap;line-height:1.8;overflow-wrap:anywhere}.budget-edit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
#handoff-prompt{min-height:235px;font-size:13px;line-height:1.8}dialog[data-kind="planning"],dialog[data-kind="planning-preview"],dialog[data-kind="import-preview"]{width:min(800px,calc(100vw - 32px));max-height:90dvh;overflow:auto}.phase .phase-number{flex-shrink:0}.phase>div{min-width:0}.body-text{overflow-wrap:anywhere}
@media(max-width:960px){.daily-focus{padding:20px}.daily-focus .pet-switch{flex-basis:80px}.daily-focus .penguin{width:76px;height:105px}.suggestion{flex-wrap:wrap}.suggestion-actions{max-width:none}.goal-grid{gap:12px}.goal-card{padding:14px}.diff-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.diff-row>strong{grid-column:1/-1}}
@media(max-width:650px){.page-head h1{font-size:25px}.daily-focus{align-items:flex-start;gap:10px;padding:18px 16px}.daily-focus h2{font-size:19px}.daily-focus p{font-size:13px}.daily-focus .eyebrow{font-size:10px;letter-spacing:0}.daily-focus .pet-switch{flex-basis:58px;min-width:58px;margin-top:10px}.daily-focus .penguin{width:56px;height:85px}.goal-grid{grid-template-columns:1fr}.suggestion{gap:12px}.suggestion>div:first-child{flex-basis:100%}.suggestion .btn{min-height:44px}.diary-modes .btn{font-size:12px;padding:8px 10px}.diff-row{grid-template-columns:1fr}.diff-row>strong{grid-column:auto}.paper-body>.writing-preview,.paper-body>.diary-input{font-size:16px}.phase{align-items:flex-start}.phase h3{font-size:16px}.goal-focus{padding:14px 18px}.window-bar>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-head .head-actions{flex-wrap:wrap}.budget-edit{grid-template-columns:1fr 1fr}.route .btn{margin-top:8px}.day-caption strong{font-size:12px}}

/* Image-only character controls retain a usable touch target. */
.pet-switch,.window-pet-btn{min-width:44px;min-height:44px}

.public-demo-notice{padding:12px 14px;margin:0 0 20px;border:1px solid var(--line);font-size:13px;line-height:1.8;overflow-wrap:anywhere;color:var(--muted)}
button:disabled,[aria-disabled="true"]{cursor:default;opacity:.5}textarea[readonly]{cursor:text}
