@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@500;700;900&display=swap');
:root{--paper:#fffaf3;--surface:#fffefb;--ink:#403b35;--muted:#756e65;--line:#eae0d3;--accent:#c66c27;--accent-dark:#a8511e;--accent-light:#fff0d9;--sidebar:#fff7e9;--radius:18px;--shadow:0 4px 0 #d8bfa315}
body{background-color:var(--paper);background-image:radial-gradient(#d5c3ac48 .7px,transparent .7px);background-size:18px 18px;color:#443e35}h1,h2,h3,.brand,.support strong,.mention-rule strong,.celebrate-count{font-family:'Zen Maru Gothic','Noto Sans JP',sans-serif}button{color:inherit}.topbar{background:#fffaf3ed;border-color:#eee1d0}.breadcrumb strong{color:#765c43}.breadcrumb-root,.workspace-caption{color:#a0876b}.header-avatar{background:#ffe6b9;border-color:#eacb95;color:#8b5b30;border-radius:11px;transform:rotate(5deg)}.eyebrow{color:#b6783d}.page-intro{align-items:center}.page-intro h1,.reference-intro h1{color:#473c30;font-weight:700}.page-intro p,.reference-intro p{color:#796f61}.page-intro .intro-caption{display:none}
.sidebar{background:#fff7e9;border-right:1px solid #edddc6;color:#69523e}.sidebar:after{content:'';position:absolute;left:12px;top:0;bottom:0;border-left:1px dashed #ebd4af;pointer-events:none}.brand{color:#5f452e}.brand-mark{color:#e9a352}.brand small{color:#a68b70;letter-spacing:1.25px}.workspace{border-color:#e8d6b8;background:#fffdf7;color:#8a6d4f;border-radius:11px}.workspace-dot{background:#ebb456}.nav-label{font-size:10px;color:#ad8a60;letter-spacing:1px}.nav{color:#82684d;border:1px solid transparent;border-radius:12px}.nav>[data-icon]{color:#b29572}.nav:hover{color:#765026;background:#ffefd4}.nav.active{color:#8b521f;background:#ffebc6;border:1px solid #efca8b;box-shadow:0 3px 0 #e9c78f25}.nav.active>[data-icon]{color:#ba782f}.nav-active-dot{background:#dc9c48}.support{background:#fffdf7;border:1px dashed #dec39a;border-radius:15px;box-shadow:0 4px 0 #e3c8a220;transform:rotate(-1deg)}.support:before{content:'';width:64px;height:15px;position:absolute;top:-7px;left:56px;background:#f0ca7980;transform:rotate(-5deg)}.support:after{content:'✳';color:#edc88d60;font-size:60px;top:17px;right:6px;transform:rotate(12deg)}.support-line{color:#bd9d72;font-size:7px}.support strong{color:#725334;font-size:19px;line-height:1.9}.support p{color:#9b7d59}.support-link{color:#b57839}.settings-nav{color:#a08562}.settings-nav.active{color:#925f27;background:#fff0d4;border-color:#e9c995}.settings-nav.active [data-icon]{color:#bc8c4c}.profile{border-color:#ead8bc;color:#8c6844}.profile small{color:#b49b7d}.avatar{background:#d9e9d4;color:#6f8c5b;border:1px solid #c0d4b7;transform:rotate(-6deg)}.stamp-nav{width:100%;display:flex;align-items:center;gap:9px;background:#eef5e8;border:1px solid #d7e4cc;padding:12px 11px;margin:0 0 10px;border-radius:10px;color:#728859;font-size:10px;font-weight:600}.stamp-nav [data-icon] .ui-icon{width:16px;height:16px}.stamp-nav-arrow{margin-left:auto;font-size:13px}.stamp-nav:hover{background:#e1edd8;transform:rotate(-1deg)}.sidebar-close.icon-btn{background:#ffebce;color:#9e784d}.menu-toggle.icon-btn{background:#fffdf7;border-color:#e8d6bb;color:#a37846}.menu-scrim.show{background:#6650394d}.mobile-nav{background:#fffdf6f5;border-color:#e7d5b9;box-shadow:0 -4px 18px #a3793d07}.mobile-nav button{color:#b0926e}.mobile-nav button.active{background:#ffedcb;color:#9f692d;border:1px solid #f1d39d;border-radius:11px}.mobile-nav button.active:before{background:#eab15b}.mobile-nav button.active .ui-icon{color:#c78a3b}footer,footer>span:first-child{color:#ad9678}footer i{color:#c4b197}
.primary{background:#ffba70;color:#66401f;border:1px solid #df9a4f;box-shadow:0 4px 0 #df9a4f45;border-radius:11px;font-weight:700}.primary:hover{background:#ffc58b;color:#633b17;box-shadow:0 5px 0 #df9a4f45;transform:translateY(-1px)}.primary:active{transform:translateY(3px);box-shadow:0 1px 0 #df9a4f50}.primary:disabled{background:#f1e9dd;color:#a3917a;border-color:#e6d9c7;box-shadow:none;transform:none}.secondary{border-color:#e5d2b8;border-radius:10px;color:#947044;background:#fffdf8;box-shadow:0 2px 0 #dec7a62b}.secondary:hover{border-color:#d5b282;background:#fff3de;color:#886130;transform:translateY(-1px)}.secondary:active{transform:translateY(2px);box-shadow:none}.secondary:disabled{background:#edf5e9;border-color:#cfe0bf;color:#809767}.text-btn{color:#b77934}.text-btn:hover{color:#96581c}.panel{border-color:#ecdfcd;box-shadow:0 4px 0 #dfc5a416;border-radius:17px}.notice{background:#fff4dc;border-color:#efdab0;color:#987543}.icon-btn{background:#fff3dd;color:#ae8654}.icon-btn:hover{background:#ffe8bf;color:#8e622c}input[type=checkbox],input[type=radio]{accent-color:#c57e37}.muted{color:#8a7862}.pill{background:#fff8e9;color:#aa8958;border-color:#ead7b2;border-radius:7px}.pill.started{background:#fff0cb;border-color:#ebcf86;color:#b38a38}.pill.done{background:#edf7e7;border-color:#d3e6c4;color:#729356}.progress{background:#f3ebde}.progress>span{background:#efb256;border-radius:20px}
.daily-buddy{display:flex;align-items:center;gap:2px;min-width:0;background:transparent;border:0;padding:0;max-width:275px;color:#92704d;text-align:left;border-radius:12px}.mascot-svg{display:block;width:96px;height:87px;flex-shrink:0;overflow:visible}.buddy-message{position:relative;background:#fffdf5;border:1px solid #ead7ae;padding:11px 14px;border-radius:13px 13px 13px 3px;box-shadow:0 3px 0 #e0bf8a13;max-width:180px;transform:rotate(1deg);font-size:11px;line-height:1.8;color:#957448}.buddy-message small{font-size:8px;color:#c09b65;display:block;margin-bottom:3px;letter-spacing:.5px}.daily-buddy:hover .mascot-svg,.hero-buddy:hover .mascot-svg{transform:rotate(-6deg) translateY(-3px);transition:transform .2s}.daily-buddy:active .mascot-svg,.hero-buddy:active .mascot-svg{transform:translateY(3px) rotate(3deg)}.buddy-eyes{transform-box:fill-box;transform-origin:center;animation:blink 7s infinite}.buddy-hop{animation:buddyhop .4s ease}.reference-intro{align-items:center}.reference-intro-aside{display:none}.home-hero{background:#fff0b5;border:1px solid #eed593;border-radius:22px;color:#77562f;box-shadow:0 5px 0 #e8c17d20;overflow:visible}.home-hero:before{content:'';position:absolute;width:85px;height:22px;top:-10px;left:42px;background:repeating-linear-gradient(45deg,#efba6a80 0 7px,#f6d8a780 7px 14px);transform:rotate(-4deg);border-radius:2px}.hero-kicker{color:#bb8f4c;font-size:10px}.hero-kicker:before{background:#d89b45}.home-hero h2{font-size:36px;color:#76512a;letter-spacing:.2px}.home-hero h2 em{color:#dc8734;background:linear-gradient(transparent 65%,#ffe5ac 65%)}.home-hero p{color:#a28254;font-size:12px}.home-hero .primary{background:#ffa95c;color:#69401a;border-color:#e69448;box-shadow:0 4px 0 #d88e4830;font-weight:700}.home-hero .primary:hover{background:#ffba78}.home-hero .primary:active{transform:translateY(3px);box-shadow:none}.hero-art.notebook-scene{display:block;width:285px;height:250px;margin:0 12px 0 0;transform:none;position:relative}.hero-buddy{position:absolute;left:5px;top:0;background:transparent;padding:0;width:240px;height:215px;transform:rotate(-4deg)}.hero-buddy .mascot-svg{width:100%;height:100%;filter:drop-shadow(0 9px 3px #c6a46c12)}.scene-note{position:absolute;bottom:7px;right:4px;background:#fffef2;color:#ae8455;border:1px solid #e5cd9d;padding:12px 18px;border-radius:5px 14px 14px 14px;transform:rotate(6deg);font-family:'Zen Maru Gothic',sans-serif;font-size:12px;line-height:1.8;box-shadow:0 4px 0 #dab47715;pointer-events:none}.scene-star{position:absolute;color:#e7ad44;font-size:34px}.scene-star.one{right:3px;top:24px;transform:rotate(-10deg)}.scene-star.two{left:-15px;bottom:22px;color:#9bc099;font-size:25px}.stat{background:#fffef9;border-color:#ebddc7;border-radius:15px;box-shadow:0 3px 0 #dec49e0b}.stat:nth-child(2){background:#f1f8ec;border-color:#dbe7ce}.stat:nth-child(3){background:#eef6fb;border-color:#d9e8ef}.stat-title{color:#a0825e}.stat-title .ui-icon{color:#c6ac89}.stat-number{color:#785c3b}.stat-number small{color:#b3976f}.stat-sub{color:#9a805d}.next-lesson-title{color:#728b99}.purple{--cover:#e1efdb;--course-accent:#9cb98a;--course-ink:#708a5f}.blue{--cover:#ffebd0;--course-accent:#e3ac6f;--course-ink:#b28146}.peach{--cover:#e1eef8;--course-accent:#9cbad0;--course-ink:#6b8da5}.course{border-color:#e9dcca;border-radius:17px;box-shadow:0 4px 0 #e1c5a314;position:relative}.course:hover{box-shadow:0 7px 0 #e1c5a320;transform:translateY(-3px) rotate(-.35deg)}.course-cover{border-bottom:1px solid #ffffffb0}.course-cover:after{border-radius:50%;border-style:dashed;opacity:.3}.course-symbol{border-radius:12px 12px 12px 3px;border-color:#fff;background:#fff9}.course h3{color:#65503b;font-size:16px}.step-label{color:#b89a75}.course-description{color:#958064}.course-meta{color:#ad9474}.course-footer{border-color:#efe4d2;color:#ac9371}.next-tip{background:#fff8df;border:1px dashed #e7d29a;border-radius:15px}.next-tip>.ui-icon{color:#e0b65b}.next-tip strong{color:#a48547;font-size:13px}.next-tip p{color:#ac9464}.section-title h2{color:#765b3c;font-size:21px}.section-title p{color:#a28b6b}
.group-head{border-radius:17px 17px 0 0;border-color:#dfdbc755}.group-head h2{color:#605342;font-size:19px}.group-head:after{border-style:dashed;opacity:.24}.lesson-row{border-color:#e9dfcf;color:#665442}.lesson-row:last-child,.workflow-guide{border-radius:0 0 16px 16px;border-color:#e9dfcf}.lesson-row:hover{background:#fffbf1;box-shadow:inset 3px 0 0 #efba6e}.lesson-row h3{color:#72563a}.lesson-row p{color:#9b8365}.lesson-row time{color:#bda27b}.check-circle{background:#fffcf4;color:#bfa376;border-color:#e9dbbf}.check-circle.done{color:#fff;border-color:#daa552;background:#e1ad5b;transform:rotate(-9deg);box-shadow:0 0 0 3px #faeacc}.lesson-key-row{background:#fffbf2;color:#9b7847;border-color:#eee0c3}.lesson-key-row kbd{background:white;color:#a28254;border-color:#e8d6b2}.workflow-list li{border-color:#f0e7d7}.workflow-dot{background:#fff1cf;color:#c49a50;border:1px solid #eed8a5;border-radius:50%;font-weight:800}.workflow-list h3{color:#805f3d;font-size:16px}.workflow-list p{color:#967e60;font-size:14px}.lesson-chevron{color:#c5aa82}.lesson-key-box{background:#fff9ec;border:1px dashed #e5c98f;border-radius:13px}.lesson-key-box h3{color:#a18248}.lesson-key-box .lesson-key-row{background:white}.lesson-key-box .lesson-key-row kbd{background:#fff9e9}
.reference-layout{gap:23px}.reference-layout .quick-reference{background:#fffefb;border:1px solid #ead8b9;border-radius:18px;box-shadow:0 5px 0 #e5cda71a;overflow:visible}.quick-reference:before{width:16px;height:37px;right:26px;top:-13px;border:3px solid #c9a475;border-radius:9px;transform:rotate(13deg);opacity:.8;z-index:2}.quick-reference:after{content:'';position:absolute;top:-9px;left:39%;width:72px;height:18px;background:repeating-linear-gradient(45deg,#efcf9166 0 5px,#f9e8bd80 5px 10px);transform:rotate(-3deg);border-radius:1px;pointer-events:none}.quick-reference .reference-heading h2{color:#8a663c;font-size:18px;font-weight:700}.reference-heading h2{color:#8a663c;font-size:20px}.reference-symbol{background:#fff1cc;border-color:#efdbab;color:#c69a4c;border-radius:10px;transform:rotate(-5deg)}.quick-reference .ps-symbol{background:#e0eef9;border-color:#c6daed;color:#739fc2;transform:rotate(-6deg)}.quick-reference .mac-label{background:#fff5db;border:1px solid #ead8a9;color:#ab8a4e;border-radius:8px}.key-group{background:#faf1ff;border:1px solid #e9daef;border-radius:12px}.key-group:nth-child(2){background:#f0f7e9;border-color:#dde9d0}.key-group:nth-child(3){background:#fff2e2;border-color:#f0dfc2}.key-group h3{color:#a17bad;font-weight:600}.key-group:nth-child(2) h3{color:#8ba36f}.key-group:nth-child(3) h3{color:#c1a06d}.key-group h3:before{background:currentColor}.quick-reference .key-row{border-color:#d5c3dd50}.key-group:nth-child(2) .key-row{border-color:#c9d7b950}.key-group:nth-child(3) .key-row{border-color:#dfcba850}.quick-reference .key-row>span{color:#806981;font-size:13px}.key-group:nth-child(2) .key-row>span{color:#7e8c68}.key-group:nth-child(3) .key-row>span{color:#a98b5c}.keycap-copy{background:transparent;border:0;border-radius:5px;padding:0;display:inline-flex;align-items:center;flex-shrink:0;line-height:1;outline-offset:4px}.quick-reference kbd{color:#9c7aa8;background:#fffefe;border:1px solid #d9c6e4;border-bottom-width:2px;box-shadow:0 2px 0 #c8b1d538;border-radius:6px;font-weight:700}.key-group:nth-child(2) kbd{color:#8a9d71;border-color:#c7d7b4;box-shadow:0 2px 0 #a2bb8d30}.key-group:nth-child(3) kbd{color:#b4955f;border-color:#e1cfaa;box-shadow:0 2px 0 #c6a56b24}.keycap-copy:hover{transform:translateY(-2px) rotate(-2deg)}.keycap-copy:active{transform:translateY(2px);transition:transform .06s}.keycap-copy:active kbd{box-shadow:none}.keycap-copy.key-copied kbd{background:#e0f1d7;color:#729255;border-color:#b8d2a7}.reference-page .key-legend{color:#b29b7a;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.key-tap-note{font-size:9px;color:#c3ad8c}.key-help summary{color:#b69a6e}.key-help summary:after{color:#c8ad80}.key-help p{background:#fff7e7;border-color:#eedec2;color:#9b815b}.reference-page .important-line{color:#9a703d;font-family:'Zen Maru Gothic',sans-serif;font-size:23px}.save-shortcut{background:#fff4d8;border:1px solid #ecd79f;color:#b4975c}.save-shortcut kbd{background:#fffdf7;color:#b19250;border-color:#dfc888;box-shadow:0 2px 0 #ddbc7040}.preparation-steps li{color:#987d54}.preparation-steps strong{color:#80623b}.preparation-steps li:before{background:#fdf2d7;border:1px solid #eddcb0;color:#be9f60}.reference-note{color:#ad9875}.reference-layout .preparation{position:relative;background:#fffefa}.preparation:before{content:'';position:absolute;left:37px;top:-9px;width:58px;height:18px;background:#e9c3b973;transform:rotate(-5deg)}.reference-layout .slack-rule{background:#edf6e5;border:1px solid #d6e6c7;border-radius:18px}.slack-rule .reference-symbol{background:#fffdf4;border-color:#dae3c3;color:#9db576}.slack-rule .reference-heading h2{color:#8a9e6c}.slack-rule:after{color:#a9c58a22}.mention-rule{color:#9eaf85}.mention-rule strong{color:#82985e;font-weight:700}.submission-checks{position:relative}.review-group h3{color:#be9f6e}.review-item{border-color:#f0e6d3}.review-item strong{color:#95744c;font-family:'Zen Maru Gothic',sans-serif;font-weight:700;font-size:15px}.review-item>span>span{color:#b69b73}.review-item:has(input:checked){background:#f7faef}.review-item:has(input:checked)>span>strong{color:#9caf7e;text-decoration-color:#c5d7b4}.filename-group{background:#fffcf0;border:1px dashed #e7d49f;border-radius:13px}.filename-rule{color:#ae9465}.filename-rule strong{color:#a4874e}.file-item{border-color:#eee2bb}.file-item>strong{background:#fffef8;border-color:#e8d8ad;color:#b59a63}.file-item>span{color:#b09a71}.reference-page .secondary{color:#ac854d}.review-progress{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px;color:#af9670;margin-bottom:10px}.review-progress b{background:#fff3d5;color:#bfa367;border:1px solid #f0dfb1;border-radius:20px;padding:4px 10px;font-size:10px;white-space:nowrap}.review-meter{height:5px;background:#f6efdf;border-radius:8px;overflow:hidden;margin-bottom:23px}.review-meter>span{display:block;height:100%;width:0;background:#e8bd69;border-radius:8px;transition:width .25s}.review-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.review-actions .text-btn{font-size:10px;color:#c1ab85}.review-done-stamp{display:none;margin:0 18px 23px auto;padding:12px 17px;width:145px;border:3px double #9bbf80;border-radius:14px;color:#91b176;font-size:9px;line-height:1.7;letter-spacing:1px;text-align:center;transform:rotate(-7deg);font-weight:700}.review-done-stamp strong{display:block;font-family:'Zen Maru Gothic',sans-serif;font-size:17px;letter-spacing:0}.all-checked .review-done-stamp{display:block;animation:stamp-in .35s ease}.all-checked .review-meter>span{background:#a4c487}
.stamp-preview{background:#fffdf5;border:1px dashed #e1c693;border-radius:17px;margin-top:25px;padding:23px 25px;position:relative;box-shadow:0 4px 0 #d6b88312}.stamp-preview:before{content:'';position:absolute;left:38px;top:-8px;height:17px;width:60px;background:#bfd7bc73;transform:rotate(-4deg)}.stamp-preview-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.stamp-preview-heading .eyebrow{font-size:7px;color:#bea477;margin-bottom:7px}.stamp-preview h2{font-size:19px;color:#a17d46}.stamp-preview .text-btn{font-size:10px;color:#b59666}.stamp-trail{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:12px;margin:20px 0 12px}.mini-stamp{height:61px;border:1px dashed #e7d3ac;background:#fffcf3;border-radius:13px;display:grid;place-items:center;color:#d9c49d;font-size:15px;transform:rotate(-3deg)}.mini-stamp:nth-child(2n){transform:rotate(4deg)}.mini-stamp:nth-child(3n){background:#fbf7fd;border-color:#e4d6e8;color:#c8b3d2}.mini-stamp.earned{background:#fff0c4;border:2px solid #e5b960;color:#dba747;box-shadow:inset 0 0 0 3px #fff9e9}.mini-stamp.earned .ui-icon{width:26px;height:26px;stroke-width:1.7}.mini-stamp:hover{transform:translateY(-4px) rotate(5deg);border-style:solid}.stamp-preview>p{font-size:10px;color:#bca27b;line-height:1.8}.stamp-description{font-size:13px;color:#b19873;line-height:1.9;margin-bottom:22px}.stamp-description strong{color:#b58d48}.stamp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px 13px}.stamp-cell{background:transparent;padding:8px;border-radius:11px;display:flex;align-items:center;flex-direction:column;gap:10px}.stamp-cell:hover{background:#fff7e5;transform:translateY(-2px)}.stamp-art{width:89px;height:89px;border:2px dashed #ead8b7;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;border-radius:50%;color:#d5bf9c;background:#fffcf4;transform:rotate(-7deg);font-size:19px;font-weight:700}.stamp-art small{font-size:8px;font-weight:500;letter-spacing:1px}.stamp-art .ui-icon{height:26px;width:26px}.stamp-cell.earned .stamp-art{background:#fff1c9;border:3px double #dbad56;color:#d09b3d;box-shadow:0 0 0 4px #fdf6df}.stamp-cell:nth-child(2n) .stamp-art{transform:rotate(7deg)}.stamp-cell:nth-child(3n).earned .stamp-art{background:#eef6e4;border-color:#a7c186;color:#9ab779;box-shadow:0 0 0 4px #f7faef}.stamp-cell>strong{font-size:10px;font-weight:500;line-height:1.7;color:#ab9068;text-align:center;max-width:150px}.stamp-footnote{font-size:10px;color:#bfa781;margin-top:23px;text-align:center}#celebration-dialog{width:min(430px,calc(100vw - 34px));background:#fffdf2;border:1px solid #ebd3a3;border-radius:24px;text-align:center;padding:35px 25px 25px;overflow:visible}#celebration-content{position:relative}.celebrate-close{position:absolute;right:-12px;top:-21px;font-size:21px;width:29px;height:29px;background:#fff4d9;border:1px solid #ecd7ab;color:#bc9e68}.celebrate-kicker{display:block;font-size:8px;letter-spacing:1.8px;color:#bca16d;margin-bottom:25px}.celebrate-stamp{height:112px;width:112px;border:4px double #dcaf58;background:#fff0bc;box-shadow:0 0 0 7px #fff7de;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;margin:0 auto 24px;transform:rotate(-9deg);color:#c79b41;animation:stamp-in .35s ease}.celebrate-stamp .ui-icon{height:31px;width:31px}.celebrate-stamp strong{font-family:'Zen Maru Gothic',sans-serif;font-size:21px;line-height:1.4}.celebrate-count{font-size:35px;color:#d3a354;margin:16px 0 23px;line-height:1}.celebrate-count span{font-size:13px;color:#bfa579}#celebration-content h2{font-size:20px;color:#a78140;margin:0 0 11px;line-height:1.7}#celebration-content>p{font-size:12px;color:#b49a70;line-height:1.8}#celebration-content>.primary{display:flex;width:100%;justify-content:center;min-height:46px;margin-bottom:12px}#celebration-content>.text-btn{font-size:11px;color:#b69a69}#confetti-layer{position:fixed;inset:0;z-index:100;pointer-events:none;overflow:hidden}#confetti-layer>i{position:absolute;left:var(--x);top:35vh;width:8px;height:12px;border-radius:2px;animation:confetti 1.5s ease-out both;opacity:0}
/* Dense instructions retain comfortable contrast; pastel colors are reserved for surfaces. */
.course h3,.group-head h2,.lesson-row h3,.workflow-list h3{color:#61503e}.course-description,.lesson-row p,.workflow-list p,.lesson-step p{color:#806f5a}.reference-page .important-line{color:#805b30}.quick-reference .key-row>span{color:#786082}.key-group:nth-child(2) .key-row>span{color:#6d7e54}.key-group:nth-child(3) .key-row>span{color:#8c7148}.review-item strong{color:#7b5e39}.review-item>span>span,.file-item>span,.filename-rule{color:#957b55}.preparation-steps li{color:#8c714b}.preparation-steps strong{color:#70502f}.mention-rule strong{color:#6f854e}.mention-rule{color:#829565}.quick-reference kbd{color:#876394}.key-group:nth-child(2) kbd{color:#718a54}.key-group:nth-child(3) kbd{color:#9f814a}
.dialog-head{background:#fffdf7fa;border-color:#eee0c8}.dialog-head h2{color:#806138;font-weight:700}.dialog-head .icon-btn{background:#fff5df;border-color:#eeddb8;color:#b99a68}dialog{background:#fffefa;border-color:#ebd8b8;border-radius:20px}.dialog-bottom{background:#fffdf8f5;border-color:#ebdfc8}.dialog-bottom p{color:#ad936b}.lesson-summary{background:#fff6df;border:1px solid #f1dfb4;color:#a18a5b}.lesson-summary>span{color:#b59d73}.checklist{background:#f8fbed;border:1px solid #e2eacb;border-radius:14px}.checklist h3{color:#8ca05e}.check-item{color:#899963}.complete-banner{background:#f0f8e8;border:1px solid #d6e4c1;color:#91aa70}.quiz{border-color:#ead3a4;background:#fffdf7;border-radius:15px}.quiz h3{color:#aa8447}.quiz-option{background:#fff8e9;border-color:#eeddbb;color:#ad9569;border-radius:10px}.quiz-option:has(input:checked){background:#ffedc5;border-color:#e2bf77;color:#a07833}.quiz-answer{color:#a78c5c}.filename-example{background:#fff7e1;border-color:#e8d2a0;border-radius:13px}.filename-example h3{color:#ae8e4c}.filename-example code{background:#fffef9;border-color:#eee0bd;color:#a28650}.filename-example p{color:#b59f76}.lesson-key-box .lesson-key-row{color:#a48b5d}.lesson-key-box kbd{color:#ac8a4a;border-color:#e4d2aa}.field-label,#notes-dialog label{color:#aa8a56}textarea,input[type=text],select{background:#fffef8;border-color:#e6d4b4;color:#94764d;border-radius:11px}textarea::placeholder,input::placeholder{color:#c4ae89}.editor-row{border-color:#eee1c9}.editor-row strong{color:#a58a5f}.editor-row small,.editor-help{color:#bca581}.toast{background:#fff9e8;border:1px solid #e2ca96;box-shadow:0 5px 0 #cfa55b16;color:#a98645;border-radius:13px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #e6b866;outline-offset:4px}
@keyframes stamp-in{0%{transform:scale(1.25) rotate(-16deg);opacity:0}65%{transform:scale(.96) rotate(-7deg);opacity:1}100%{transform:scale(1) rotate(-7deg);opacity:1}}@keyframes buddyhop{0%,100%{transform:translateY(0)}40%{transform:translateY(-7px) rotate(-3deg)}70%{transform:translateY(1px)}}@keyframes blink{0%,45%,49%,100%{transform:scaleY(1)}47%{transform:scaleY(.15)}}@keyframes confetti{0%{opacity:0;transform:translate(0,-40px) rotate(0)}15%{opacity:1}100%{opacity:0;transform:translate(var(--dx),42vh) rotate(var(--spin))}}
@media(max-width:1250px){.daily-buddy{max-width:235px}.daily-buddy .mascot-svg{width:75px;height:70px}.buddy-message{padding:9px 11px;font-size:10px;max-width:155px}.home-hero h2{font-size:30px}.hero-art.notebook-scene{width:235px;height:215px;margin-right:0;margin-left:-15px}.hero-buddy{width:210px;height:190px}.scene-note{font-size:10px;padding:10px 13px}.scene-star.one{font-size:25px;right:0}.stamp-trail{gap:9px}.mini-stamp{height:51px}.reference-heading h2{font-size:18px}.quick-reference .reference-heading h2{font-size:17px}}
@media(max-width:1050px){.hero-art.notebook-scene{display:block;width:175px;flex-shrink:0;height:210px;margin-left:-20px;margin-right:-15px}.hero-buddy{width:190px;height:180px;left:-10px;top:15px}.scene-note{font-size:9px;right:-6px;bottom:-5px}.home-hero{padding:27px}.home-hero h2{font-size:28px}.daily-buddy{max-width:190px}.buddy-message{max-width:120px;font-size:9px;padding:9px 10px}.stamp-trail{gap:6px}.mini-stamp{height:42px;border-radius:10px;font-size:12px}.reference-layout .slack-rule{min-height:200px}}
@media(max-width:760px){.sidebar:after{left:11px}.daily-buddy{flex-direction:column;width:100px;flex-shrink:0;max-width:100px;gap:0;position:relative}.daily-buddy .mascot-svg{width:75px;height:66px}.buddy-message{font-size:9px;line-height:1.6;text-align:center;max-width:108px;padding:6px 9px;border-radius:10px;transform:rotate(3deg);margin-top:-4px}.buddy-message small{font-size:7px;margin-bottom:2px}.page-intro,.reference-intro{align-items:center;gap:14px}.page-intro>div:first-child,.reference-intro>div:first-child{min-width:0}.page-intro h1,.reference-intro h1{font-size:26px;letter-spacing:-.5px}.page-intro p,.reference-intro p{font-size:11px}.reference-intro{margin-bottom:22px}.home-hero{padding:26px;min-height:287px;overflow:hidden}.home-hero h2{font-size:30px;position:relative;z-index:2}.home-hero p{font-size:11px;position:relative;z-index:2;max-width:260px}.hero-kicker{font-size:8px}.home-hero .primary{font-size:11px;position:relative;z-index:2}.hero-art.notebook-scene{position:absolute;right:4px;bottom:13px;width:120px;height:140px;opacity:.85;margin:0;pointer-events:none}.hero-buddy{width:145px;height:135px;left:-2px;top:0;pointer-events:auto}.scene-note{display:none}.scene-star.one{right:0;top:10px;font-size:19px}.scene-star.two{display:none}.hero-copy{position:relative;z-index:2}.home-hero .primary{max-width:calc(100% - 35px);gap:14px}.home-hero:before{left:35px;width:66px}.stat-title{color:#a08358}.stamp-preview{padding:22px 20px;margin-top:23px}.stamp-preview h2{font-size:18px}.stamp-preview-heading .eyebrow{font-size:6px;letter-spacing:1.2px}.stamp-preview .text-btn{font-size:9px}.stamp-trail{grid-template-columns:repeat(9,minmax(0,1fr));gap:5px;margin-top:18px}.mini-stamp{height:35px;border-radius:9px;font-size:10px}.mini-stamp.earned .ui-icon{height:18px;width:18px}.stamp-preview>p{font-size:9px}.quick-reference .reference-heading h2{font-size:17px}.reference-heading h2{font-size:19px}.quick-reference .reference-heading{gap:9px}.quick-reference .mac-label{font-size:9px}.reference-page .key-legend{font-size:9px;gap:4px}.key-tap-note{font-size:8px}.key-help summary{font-size:9px}.quick-reference .key-row>span{font-size:13px}.quick-reference .keycap-copy kbd{font-size:11px}.reference-layout .quick-reference{padding:22px 20px 17px}.reference-page .important-line{font-size:22px}.preparation-steps li{font-size:14px}.save-shortcut{font-size:13px}.save-shortcut kbd{font-size:14px}.reference-note{font-size:11px}.review-item strong{font-size:16px}.review-item>span>span{font-size:14px}.review-progress{font-size:10px;align-items:flex-start;gap:10px}.review-progress b{font-size:9px;padding:3px 8px}.review-done-stamp{width:138px;margin-right:8px}.review-actions{gap:14px}.review-actions .text-btn{font-size:10px}.filename-rule{font-size:13px}.file-item>span{font-size:14px}.review-item>input{height:21px;width:21px}.stamp-cell>strong{font-size:10px}.stamp-art{width:76px;height:76px;font-size:17px}.stamp-grid{gap:14px 7px}.stamp-cell{padding:7px 3px}.stamp-art .ui-icon{width:23px;height:23px}.stamp-description{font-size:12px}.stamp-footnote{font-size:9px}#celebration-content h2{font-size:19px}.celebrate-stamp{width:102px;height:102px}.celebrate-stamp strong{font-size:20px}.reference-page .key-legend .key-tap-note{display:none}.course h3{font-size:16px}.workflow-list h3{font-size:15px}.workflow-list p{font-size:14px}.lesson-step p{font-size:14px}.check-item{font-size:13px}.quiz-option{font-size:13px}}
@media(max-width:440px){.page-intro h1,.reference-intro h1{font-size:24px}.page-intro p,.reference-intro p{font-size:11px}.page-intro,.reference-intro{gap:9px}.daily-buddy{width:91px;max-width:91px}.daily-buddy .mascot-svg{width:67px;height:58px}.buddy-message{font-size:8px;max-width:97px;padding:6px 7px}.buddy-message small{font-size:6px}.page-intro .eyebrow,.reference-intro .eyebrow{font-size:7px;letter-spacing:1.5px}.home-hero h2{font-size:28px}.home-hero{padding:25px 23px;min-height:290px}.home-hero p{font-size:10px;max-width:235px}.hero-art.notebook-scene{right:-8px;bottom:4px;width:115px;height:125px;opacity:.75}.hero-buddy{width:135px;height:125px}.home-hero .primary{font-size:10px;gap:12px;min-height:43px;padding:11px 13px}.stamp-preview{padding:20px 16px}.stamp-preview h2{font-size:17px}.stamp-trail{gap:4px}.mini-stamp{height:31px;font-size:9px;border-radius:7px}.mini-stamp.earned .ui-icon{width:16px;height:16px}.stamp-preview>p{font-size:8px}.quick-reference .reference-heading h2{font-size:15px}.quick-reference .mac-label{font-size:8px;padding:4px 6px}.reference-layout .quick-reference{padding:20px 17px 16px}.quick-reference .key-row>span{font-size:13px}.quick-reference .keycap-copy kbd{font-size:11px}.keycap-copy kbd{padding:2px 6px}.reference-heading h2{font-size:18px}.reference-page .important-line{font-size:21px}.review-item strong{font-size:15px}.file-item>span{font-size:13px}.reference-layout{gap:21px}.review-progress{font-size:9px}.review-meter{margin-bottom:21px}.key-tap-note{display:none}.stamp-art{height:70px;width:70px}.stamp-grid{gap:13px 5px}.stamp-cell>strong{font-size:9px}.celebrate-stamp{height:97px;width:97px}.celebrate-kicker{font-size:7px;letter-spacing:1.3px}#celebration-content h2{font-size:18px}#celebration-content>p{font-size:11px}.workflow-list p{font-size:14px}.lesson-row h3{font-size:14px}.lesson-row p{font-size:12px}.lesson-key-row{font-size:11px}}
@media(prefers-reduced-motion:reduce){.buddy-eyes,.buddy-hop,.celebrate-stamp,.review-done-stamp,#confetti-layer>i{animation:none!important}.daily-buddy:hover .mascot-svg,.hero-buddy:hover .mascot-svg,.course:hover,.mini-stamp:hover{transform:none}.keycap-copy{transition:none}}
/* Readable ink on bright paper; light colors stay in borders and illustrations. */
.course-description,.lesson-row p,.workflow-list p{color:#76634d}.quick-reference .key-row>span{color:#6e557a}.key-group:nth-child(2) .key-row>span{color:#5d6e45}.key-group:nth-child(3) .key-row>span{color:#7b603b}.quick-reference kbd{color:#755281}.key-group:nth-child(2) kbd{color:#5e7145}.key-group:nth-child(3) kbd{color:#866639}.reference-page .key-legend,.key-help summary{color:#8e744e}.reference-note,.preparation-steps li{color:#826745}.preparation-steps strong{color:#6f4f2d}.review-item strong{color:#775831}.review-item>span>span,.file-item>span,.filename-rule{color:#826a48}.filename-rule strong{color:#88672e}.review-group h3{color:#93703b}.review-progress{color:#92734a}.mention-rule{color:#6b7d50}.mention-rule strong{color:#637b43}.buddy-message{color:#80613e}.stat-sub,.course-meta,.course-footer{color:#9b7c54}.stamp-cell>strong,.stamp-description,.stamp-footnote{color:#92754d}.stamp-preview>p{color:#9e7e50}.stamp-preview h2{color:#9b7238}.celebrate-stamp{color:#b48229}#celebration-content>p{color:#967647}.check-item{color:#71804a}.quiz-option{color:#957744}.lesson-summary{color:#967949}.lesson-key-box .lesson-key-row{color:#997940}.lesson-key-box kbd{color:#9b783b}.filename-example code{color:#8e6f36}.filename-example p{color:#a28a5b}.review-actions .text-btn{color:#a68a5d}.reference-page .secondary{color:#99713b}.key-help p{color:#907047}.reference-heading h2{color:#886137}.review-progress b{color:#a68a4a}.save-shortcut{color:#a38647}.save-shortcut kbd{color:#9e7f3b}.stamp-description strong{color:#a17b34}.stamp-art small{font-weight:600}
@media(max-width:360px){.page-intro h1,.reference-intro h1{font-size:22px}.home-hero h2{font-size:26px}.mini-stamp{height:29px;padding:2px;min-width:0}.stamp-preview h2{font-size:16px}.stamp-preview-heading{gap:7px}}
.stamp-nav-arrow .ui-icon{width:13px;height:13px}.stamp-nav-arrow{display:block}.daily-buddy:focus-visible{outline:3px solid #e5b668;outline-offset:5px}
.export-reference{grid-column:1/-1}.export-methods{display:grid;grid-template-columns:1fr 1fr;gap:20px}.export-method{padding:20px;border:1px solid #ecd8ae;background:#fff7e6;border-radius:13px;min-width:0}.png-method{background:#f1f8e9;border-color:#d9e6c9}.export-method h3{font-size:16px;color:#93703f;line-height:1.7;margin:0 0 15px;font-weight:700}.png-method h3{color:#748b54}.export-method h3>span{display:inline-block;margin-right:4px;padding:3px 9px;border:1px solid #e8cca0;background:#fffdf6;border-radius:6px;font:700 12px/1.5 'Manrope',sans-serif;color:#a78448}.png-method h3>span{border-color:#cddfbb;color:#849b61}.export-keycap{margin:0 0 8px}.export-keycap kbd{font-size:12px;padding:6px 10px;color:#9a753c;background:#fffef8;border-color:#e5c994;box-shadow:0 2px 0 #dfbf7b22}.export-gesture{display:inline-block;font-size:11px;line-height:1.8;color:#8e9e72;background:#fffff8;border:1px solid #d8e4c7;padding:5px 9px;border-radius:6px;margin:0 0 8px}.export-method ol{padding-left:20px;margin:12px 0 17px;font-size:13px;line-height:1.95;color:#9b8259}.export-method li{padding-left:3px;margin:6px 0}.export-method strong{color:#856537;font-weight:600}.png-method ol{color:#7a8d5d}.png-method strong{color:#687e4a}.export-method code{display:block;overflow-wrap:anywhere;word-break:break-all;background:#fffef8;border:1px dashed #e4cf9f;padding:10px 11px;border-radius:7px;font:500 12px/1.8 ui-monospace,SFMono-Regular,Consolas,'Noto Sans JP',monospace;color:#a58954}.png-method code{border-color:#d1dfb7;color:#8b9f62}.filename-example code+code{margin-top:9px}
@media(max-width:760px){.export-methods{grid-template-columns:1fr;gap:16px}.export-method{padding:19px}.export-method h3{font-size:16px}.export-method ol{font-size:14px}.export-method code{font-size:12px}.export-gesture{font-size:12px}}
@media(max-width:600px){.lesson-key-row.long-key{flex-direction:column;align-items:flex-start;gap:6px}.lesson-key-row.long-key kbd{font-size:11px}}

.lesson-png-tip{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding:14px 16px;background:#f1f8e9;border:1px solid #d9e6c9;border-radius:10px;color:#52663c;font-size:14px;line-height:1.9;text-align:left}.lesson-png-tip strong{font-size:14px;color:#435b31}.lesson-png-tip>span{display:block;overflow-wrap:anywhere}
