:root{--green:#286353;--orange:#eda535;--cream:#fff8e8;color:#294b3e;background:#f9f3e5;font-family:'Trebuchet MS','Segoe UI',system-ui,sans-serif}body{background:radial-gradient(ellipse at 0 20%,#dce7cc55,transparent 35%),radial-gradient(ellipse at 95% 80%,#f4dfb955,transparent 35%),#f9f3e5}header{padding:18px 24px;border-bottom:1px solid #e4dcc744;max-width:1100px}.brand{font-family:Georgia,'Times New Roman',serif;font-size:19px;color:#214f43;letter-spacing:-.035em}.brand small{font-family:'Segoe UI',sans-serif;font-size:11px;letter-spacing:.02em}.brand .logo{padding:0;background:#e6edd9;border:2px solid #fff9e9;box-shadow:0 3px 0 #d5dec6;border-radius:22px;width:56px;height:58px;overflow:hidden;display:grid;place-items:center}.brand .logo img{width:52px;height:58px;object-fit:contain;transform:translateY(5px)}header select{border:1px solid #d5d7bf;box-shadow:0 3px 0 #e8e5d3;background:#fffbef}main{padding-top:22px;max-width:1100px}h1,h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.025em;color:#244f40}h1{font-size:clamp(29px,4vw,43px)}.eyebrow{color:#73947a;font-size:11px}.btn{border-radius:18px;border:1px solid #d4d9c0;background:#fffbef;box-shadow:0 3px 0 #d6dec450;transition:transform .15s,box-shadow .15s}.btn:hover{transform:translateY(-2px);box-shadow:0 5px 0 #d6dec470}.btn:active{transform:translateY(1px)}.btn.primary{background:linear-gradient(#347d6b,#276350);border-color:#215943;color:#fff9e6;box-shadow:0 4px 0 #164b3c}.btn.warm{background:linear-gradient(#ffc768,#eba131);box-shadow:0 4px 0 #c38833;border:2px solid #ffe4aa;color:#3d472c}.btn.ghost{background:transparent;box-shadow:none;border-color:transparent}.card{border:1px solid #e0d7be;background:linear-gradient(140deg,#fffdf5,#fcf5e5);border-radius:25px;box-shadow:0 5px 0 #e9e4cf55}.tag{background:#e7edd7;border:1px solid #d8e1c8;color:#47634b}.bottom{background:#fff9e9f5;border-color:#e1d7b9;box-shadow:0 -5px 28px #61714b10}.bottom .active{background:#e2ecd4;color:#285a47}.bottom button{font-weight:600}.bottom button span{font-size:22px}.fox{font-size:0;line-height:1;height:115px;background:url('fox-friend-v2.svg') center/contain no-repeat}.caption{background:linear-gradient(135deg,#e5efd5,#f3e7c9);border:1px solid #d1dfbd;padding:25px}.caption .fox{width:115px;min-height:115px}.progress{background:#e4e8cc}.progress>span{background:linear-gradient(90deg,#77a479,#9ebc79)}.notice{border-color:#b1bd8a}.topic-icon{width:54px;height:54px;border-radius:18px;background:#e8edd8;display:grid;place-items:center;flex-shrink:0}.row{row-gap:12px}.world-welcome{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.world-welcome h1{margin:4px 0;font-size:34px}.world-welcome .weather{background:#fff9e7;border:1px solid #ded9bb;border-radius:25px;padding:12px 17px;color:#78856b;font-size:12px;white-space:nowrap}.journey-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:34px;align-items:start}.journey-copy{padding-top:20px}.friend-message{display:flex;align-items:center;gap:8px}.friend-message img{width:135px;height:145px;object-fit:contain;flex-shrink:0}.speech-bubble{background:#fff9e9;border:1px solid #dedcc1;border-radius:22px 22px 22px 4px;padding:15px 18px;color:#68755b;line-height:1.7;position:relative}.journey-copy .intro{color:#75816d;font-size:14px}.daily-leaf{background:#e6edd6;border:1px solid #d1ddbb;border-radius:23px;padding:20px;margin:22px 0}.daily-leaf h3{color:#486443;margin:0 0 13px}.daily-leaf .row{justify-content:space-between}.journey-map{position:relative;aspect-ratio:600/860;border:6px solid #fff9e9;border-radius:35px;overflow:hidden;box-shadow:0 10px 0 #ccd9bb55,0 24px 42px #45633e18;background:#d2e3b4}.journey-map>img.landscape{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.map-sign{position:absolute;top:3%;left:5%;padding:11px 18px;background:#ffedc5ed;color:#775937;border:2px solid #dfbc7b;border-radius:13px;box-shadow:0 4px 0 #b7986050;font-family:Georgia,serif;font-size:17px}.quest-stop{position:absolute;transform:translate(-50%,-50%);border:0;background:none;color:#4e603c;min-width:116px;padding:0;display:flex;flex-direction:column;align-items:center;gap:4px}.quest-stop .medal{width:45px;height:45px;border-radius:50%;background:linear-gradient(#fff4c6,#e7c787);border:3px solid #fff8dc;box-shadow:0 4px 0 #977d4955;display:grid;place-items:center;font-weight:800;color:#6c7954;font-size:19px}.quest-stop.current .medal{background:linear-gradient(#ffce65,#eda32b);color:#79501d;outline:5px solid #fff3bf80;box-shadow:0 4px 0 #b67937}.quest-stop.done .medal{background:linear-gradient(#92b983,#579676);color:white}.quest-stop .stop-label{background:#fff6d8ed;border:1px solid #d6c08a;border-radius:9px;padding:5px 9px;font-size:11px;box-shadow:0 3px 0 #95815d22;max-width:154px;white-space:normal}.quest-stop:hover{filter:brightness(1.06)}.map-fox{position:absolute;width:65px;height:75px;left:11%;top:75%;filter:drop-shadow(0 4px 3px #64593a22);pointer-events:none}.map-bottom-title{position:absolute;bottom:2%;left:20%;right:20%;text-align:center;font-size:11px;color:#5d7a65}.forest-divider{text-align:center;color:#93a57c;letter-spacing:.5em;margin:35px 0 15px}.chapter-row{display:flex;gap:18px;align-items:center}.chapter-row .chapter-number{width:50px;height:50px;flex-shrink:0;background:#e5ebce;border-radius:17px;display:grid;place-items:center;color:#59835a}.route-meta{color:#77856c;font-size:13px}.dialogue-lines{display:grid;gap:14px}.dialogue-line{display:flex;align-items:flex-start;gap:10px}.dialogue-line:nth-child(even){flex-direction:row-reverse}.speaker-avatar{width:37px;height:37px;border-radius:50%;background:#e5edd8;display:grid;place-items:center;flex-shrink:0}.speaker-avatar img{width:34px;height:36px}.line-text{background:#fffdf2;border:1px solid #e1dabe;border-radius:0 19px 19px 19px;padding:14px 18px;max-width:85%;line-height:1.7}.dialogue-line:nth-child(even) .line-text{background:#e5eddb;border-radius:19px 0 19px 19px}.line-text p{margin:5px 0}.line-text .translation{font-size:13px;color:#78816d}.line-text .reading{font-size:12px;color:#8b957d}.listen-card{text-align:center;padding:28px}.listen-card img{width:120px;height:130px}.choice-correct{border-color:#83a47e}.conversation-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:22px 0}.conversation-tabs button{padding:10px 14px;font-size:12px}.conversation-tabs .selected{background:#dce9ce;border:1px solid #a9c396}.prompt-box{background:#eef0da;border-radius:21px;padding:20px;line-height:1.8}.stamp{display:inline-block;background:#ecdfbd;color:#886945;border-radius:12px;padding:9px 13px;font-size:12px}.wordrow{border-bottom-color:#e2dbc5}.word{font-family:Georgia,'Segoe UI',serif}.welcome-leaf{font-size:13px;color:#7f9571}.notebook-hero{display:flex;gap:18px;align-items:center}.notebook-hero img{width:100px;height:110px;object-fit:contain}.mini-due{font-size:12px;color:#6c805f}.plant-state{padding:12px 18px;border-radius:16px;background:#edf0db}.source{line-height:1.7}#video-box iframe{border:4px solid #fff9e9;box-shadow:0 7px 0 #d5ddc455;border-radius:23px}.grid{gap:18px}footer{color:#8a967a;margin-top:35px}@media(max-width:760px){.journey-layout{grid-template-columns:1fr;gap:10px}.journey-copy{padding-top:0}.journey-copy .intro{display:none}.friend-message{display:none}.daily-leaf{display:none}.journey-copy>.tag{display:none}.journey-copy h2{display:none}.journey-copy .row.quick-links{margin:0 0 12px}.journey-copy .quick-links .btn{font-size:12px;padding:10px 12px}.journey-map{max-width:470px;width:100%;margin:0 auto}.world-welcome{margin-bottom:13px}.world-welcome h1{font-size:28px}.world-welcome .weather{padding:9px 12px;font-size:10px}.brand{font-size:16px}.brand .logo{display:grid;width:42px;height:45px;border-radius:17px}.brand .logo img{width:40px;height:44px}.brand small{font-size:9px}header{padding:15px 16px}main{padding:15px 16px 110px}.map-sign{font-size:15px;padding:7px 12px}.quest-stop .medal{width:36px;height:36px;font-size:15px;border-width:2px}.quest-stop .stop-label{font-size:10px;max-width:126px;padding:4px 7px}.map-fox{width:50px;height:60px}.journey-copy .plant-state{display:none}.section{margin-top:25px}.chapter-row{gap:10px}.line-text{max-width:87%;padding:12px 14px}.notebook-hero img{width:80px;height:90px}.notebook-hero h1{font-size:30px}}@media(max-width:350px){.brand{font-size:13px}header select{max-width:132px}.quest-stop .stop-label{max-width:108px;font-size:9px}.quest-stop{min-width:105px}.world-welcome .weather{display:none}}@media(prefers-reduced-motion:no-preference){.map-fox{animation:friend-breathe 3s ease-in-out infinite}@keyframes friend-breathe{50%{transform:translateY(-3px) rotate(-2deg)}}}
