:root{--paper:#f5f2ea;--ink:#293128;--muted:#70786c;--orange:#cf542f;--line:#ddded3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 'Microsoft YaHei',sans-serif}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h2{font-size:30px}h3{font-size:21px}button:disabled{opacity:.4;cursor:default}main,.top,footer{max-width:1220px;margin:auto;padding:0 40px}.top{height:110px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:23px;font-weight:bold}.brand small{display:block;font-size:9px;letter-spacing:2px}.brandmark{font-size:35px;color:var(--orange)}nav{display:flex;gap:35px;font-size:13px}.live{font-size:11px;color:var(--muted)}.live i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#799063;margin-right:8px}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center;padding:70px 0 60px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:bold}.hero h1{font-size:75px;line-height:1.22;letter-spacing:-4px;margin:20px 0 25px}.orange{color:var(--orange)}.hero p{color:var(--muted);line-height:1.9}.textlink{display:inline-flex;gap:45px;margin-top:25px;border-bottom:1px solid;padding-bottom:7px;font-size:13px}.hero-art{position:relative;height:320px;display:grid;place-items:center}.hero-art:before{content:'';position:absolute;width:300px;height:300px;border:1px solid #c7cebb;border-radius:50%;transform:rotate(-25deg) scaleX(1.2)}.sun{position:absolute;font-size:170px;color:var(--orange);right:0;top:-55px}.note{background:#e1e7d5;transform:rotate(-8deg);padding:35px 40px;font-size:25px;z-index:1;box-shadow:7px 9px #29312808}.note strong{font-size:35px}.note span{display:block;font-size:9px;letter-spacing:2px;margin-top:20px}.orbit{position:absolute;bottom:0;right:10px;font-size:12px;color:var(--muted);transform:rotate(-8deg)}section{margin-bottom:65px}.card{background:#fffef9;border:1px solid var(--line);border-radius:16px}.music-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(200px,1fr);gap:20px}.music-card{padding:28px}.section-top,.tool-head{display:flex;justify-content:space-between;align-items:center}.pill{border:1px solid var(--line);border-radius:20px;padding:3px 10px;font-size:10px}.player-layout{display:grid;grid-template-columns:minmax(150px,.85fr) minmax(0,1fr);gap:28px;align-items:center;margin:35px 0 15px}.record{aspect-ratio:1;max-width:250px;border-radius:50%;background:repeating-radial-gradient(#242923 0 2px,#373e34 3px,#242923 4px);display:grid;place-items:center;box-shadow:0 12px 25px #27302725;animation:spin 18s linear infinite paused}.record.playing{animation-play-state:running}.record-label{width:38%;height:38%;border-radius:50%;overflow:hidden;background:var(--orange);color:#fff;display:grid;place-items:center;text-align:center;line-height:1.3;letter-spacing:1px}.record-label img{width:100%;height:100%;object-fit:cover}.player h2{font-size:24px;margin:6px 0;overflow-wrap:anywhere}.muted{font-size:12px;color:var(--muted)}.lyric{font-size:12px;color:var(--muted);min-height:40px;margin:10px 0;overflow-wrap:anywhere}input[type=range]{accent-color:var(--orange);width:100%}.time-row{display:flex;justify-content:space-between;font:10px monospace;color:var(--muted)}.controls{display:flex;gap:12px;align-items:center;margin:15px 0}.icon-button{background:none;border:0;padding:8px}.play-button{width:44px;height:44px;border:0;border-radius:50%;background:var(--ink);color:white}.volume{display:flex;align-items:center;gap:6px;font-size:10px;margin-left:auto}.volume input{width:50px}.upload-controls{display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin-top:20px}.button{display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--line);background:transparent;border-radius:8px;padding:10px 16px;font-size:12px;min-height:44px;cursor:pointer}.button:hover{background:#ebeee2}.button.primary{background:var(--orange);border-color:var(--orange);color:white}.mini-link{background:none;border:0;padding:7px 0;text-decoration:underline;text-underline-offset:4px;font-size:11px;cursor:pointer}.fine{font-size:10px;color:var(--muted);margin-top:12px}.playlist{list-style:none;padding:0;margin:15px 0 0;max-height:180px;overflow:auto}.playlist button{width:100%;background:none;border:0;border-top:1px solid var(--line);text-align:left;padding:10px 0;font-size:12px;overflow-wrap:anywhere}.playlist button.active{color:var(--orange);font-weight:bold}.aside-card{background:#e1e7d5;padding:27px;display:flex;flex-direction:column}.aside-card .eyebrow{font-size:8px}.asterisk{font-size:60px;color:#637a55;line-height:1.4;margin:12px 0}.aside-card h2{font-size:32px;line-height:1.5}.aside-card p{font-size:12px;color:var(--muted);margin-top:20px}.aside-bottom{font-size:8px;letter-spacing:1px;margin-top:auto;padding-top:25px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px;gap:15px}.section-heading h2{margin-top:8px}.section-heading p{font-size:12px;color:var(--muted)}.tools-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tool{padding:25px;display:flex;flex-direction:column}.tool-symbol{font-size:27px;color:var(--orange)}.tool h3{margin:18px 0 6px}.tool .muted{margin-bottom:18px;font-size:11px}input:not([type=range]):not([type=file]),textarea{width:100%;min-width:0;background:#fffefa;border:1px solid var(--line);padding:11px 13px;border-radius:8px}textarea{resize:vertical}input:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible,label:focus-within{outline:3px solid #d95d35;outline-offset:3px}.tool textarea{font-size:12px}.decision{text-align:center;font-size:22px;min-height:68px;padding:15px 0;overflow-wrap:anywhere}.wide{width:100%}.timer-presets{display:flex;gap:8px}.timer-presets button{border:0;border-radius:18px;background:#edefe4;font-size:10px;padding:7px 10px}.timer-presets .selected{background:var(--ink);color:white}.timer{font:60px/1.7 Georgia,serif;text-align:center;margin:20px 0}.timer-actions{display:flex;gap:10px;margin-top:auto}.timer-actions button{flex:1}.countdown-tool input{margin:7px 0}.days{text-align:center;font:50px/1.4 Georgia,serif;min-height:120px;padding:15px 0}.days small{display:block;font:11px/1.7 'Microsoft YaHei',sans-serif;color:var(--muted);overflow-wrap:anywhere}.countdown-tool>.button{margin-top:auto}.wall-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:24px}.message-form{padding:28px}.message-form h3{margin-bottom:20px}.message-form label{display:flex;justify-content:space-between;margin:15px 0 8px;font-size:12px}.message-form label span{font-size:10px;color:var(--muted)}.message-form button{margin-top:15px}.messages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;align-items:start}.wall-note{padding:22px;background:#ecebda;border-radius:4px;overflow-wrap:anywhere}.wall-note:nth-child(3n+2){background:#e1e8d9}.wall-note:nth-child(3n){background:#efe1d6}.wall-note p{white-space:pre-wrap;margin:15px 0 25px;font-size:13px}.note-author{font-weight:bold;font-size:12px}.note-date{font-size:9px;color:var(--muted)}.empty-wall{grid-column:1/-1;text-align:center;border:1px dashed #c4cbb7;padding:60px 25px;border-radius:12px;color:var(--muted);font-size:13px}.status{font-size:12px;color:#547047;overflow-wrap:anywhere}.status:not(:empty){padding:10px 0}.error{color:#a83a2b}footer{border-top:1px solid var(--line);padding-top:30px;padding-bottom:35px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}footer .brand{font-size:17px}footer p,footer>div{font-size:11px;color:var(--muted)}footer>div{display:flex;gap:20px}footer small{width:100%;font-size:10px;color:var(--muted)}.sr,.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}[hidden]{display:none!important}.admin-main{max-width:850px;padding-top:45px;min-height:80vh}.admin-main h1{margin:10px 0}.admin-login{max-width:420px;padding:25px;margin:30px 0}.admin-login button{margin-top:18px}.admin-toolbar{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}.admin-toolbar .selected{background:var(--ink);color:white}.admin-message{padding:23px;margin:15px 0;overflow-wrap:anywhere}.admin-message p{white-space:pre-wrap;margin:15px 0}.actions{display:flex;gap:10px;flex-wrap:wrap}.privacy p{margin:20px 0}.privacy h2{font-size:23px;margin-top:30px}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1000px){.live{display:none}.hero h1{font-size:65px}.hero-art{transform:scale(.85)}.record-wrap{display:none}.player-layout{grid-template-columns:1fr}.music-grid{grid-template-columns:1fr 210px}.tool{padding:20px}.tools-grid{gap:12px}.timer{font-size:48px}}@media(max-width:680px){main,.top,footer{padding-left:20px;padding-right:20px}.top{height:88px}.brand{font-size:18px;gap:7px}.brand small{font-size:7px}.brandmark{font-size:28px}nav{gap:15px;font-size:11px}.hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:15px;gap:0;margin-bottom:25px}.hero h1{font-size:57px;letter-spacing:-3px}.eyebrow{font-size:8px}.hero-art{height:245px;transform:scale(.77);margin:0 -15px}.hero-art:before{width:260px;height:260px}.sun{font-size:150px;top:-35px}.note{padding:25px 35px}.orbit{bottom:-5px}.music-grid{grid-template-columns:1fr}.aside-card{display:none}.music-card{padding:22px}.record-wrap{display:block;width:185px;margin:auto}.player-layout{gap:20px;margin-top:25px}.volume input{width:70px}.tools-grid,.wall-grid{grid-template-columns:1fr;gap:16px}.tool{padding:24px}.timer{font-size:65px;margin:8px 0}.section-heading h2{font-size:26px}.section-heading p{display:none}section{margin-bottom:45px}.message-form{padding:23px}.wall-note{padding:16px}.wall-note p{font-size:12px}.tool input,.tool textarea,.message-form input,.message-form textarea,.admin-login input{font-size:16px}footer p{width:100%}.admin-toolbar{gap:8px}}@media(max-width:360px){nav{gap:10px}.brand{font-size:16px}.messages{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important}}
