:root{--accent-strong:#34543d;--card-shadow:0 12px 34px rgba(35,48,38,.075)}
html[data-theme=dark]{--accent-strong:#c8dfcc;--card-shadow:0 14px 36px rgba(0,0,0,.24)}
body{background-image:radial-gradient(circle at 88% -5%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 28%);background-attachment:fixed}
.topbar{height:72px;border-bottom-color:color-mix(in srgb,var(--line) 80%,transparent);box-shadow:0 1px 0 rgba(255,255,255,.45);gap:48px}
.brand-mark{background:linear-gradient(145deg,var(--accent-strong),var(--accent));box-shadow:0 6px 15px color-mix(in srgb,var(--accent) 26%,transparent);transition:transform .2s}
.brand:hover .brand-mark{transform:rotate(-4deg) scale(1.04)}
.categories{gap:30px}.cat-btn{font-weight:500;transition:color .18s}.cat-btn.active:after{height:3px;border-radius:3px 3px 0 0;background:var(--accent)}
.cat-btn em{background:var(--surface-2);border:1px solid var(--line);border-radius:8px;padding:1px 5px;margin-left:5px}
.search{width:270px;border-radius:11px;transition:width .25s,box-shadow .2s,border .2s}.search:focus-within{width:310px}
.icon-btn,.round-btn,.primary-btn,.secondary-btn,.danger-btn{transition:transform .18s,box-shadow .18s,background .18s,border .18s}
.icon-btn:hover,.round-btn:hover,.secondary-btn:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 5px 14px rgba(35,48,38,.08)}
.primary-btn{border-color:var(--accent-strong);background:var(--accent-strong);color:#fff;box-shadow:0 6px 16px color-mix(in srgb,var(--accent) 22%,transparent)}.primary-btn:hover{transform:translateY(-1px);box-shadow:0 9px 22px color-mix(in srgb,var(--accent) 30%,transparent)}
.container{padding-top:46px}.intro{align-items:stretch;gap:44px;padding:18px 0 62px}.intro-copy{padding:18px 0;flex:1}
.welcome-pill{display:inline-flex;align-items:center;gap:7px;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 20%,var(--line));border-radius:999px;padding:6px 10px;color:var(--accent-strong);font-size:10px;font-weight:600;margin-bottom:20px}
.welcome-pill span{width:6px;height:6px;background:#5ba76d;border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,#5ba76d 15%,transparent)}
.eyebrow{margin-top:0}.intro h1{font-family:Georgia,"STSong","Songti SC",serif;font-size:clamp(40px,5vw,62px);line-height:1.05;margin:10px 0 16px;letter-spacing:-.055em}.intro h1 span{color:var(--accent);font-style:italic;margin-left:.12em}.intro-copy>p:last-child{font-size:15px;line-height:1.8}
.overview-card{width:350px;min-height:206px;padding:23px 25px;border:1px solid color-mix(in srgb,var(--line) 84%,transparent);border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--accent-soft) 55%,var(--surface)));box-shadow:var(--card-shadow);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.overview-card:before{content:"";position:absolute;width:150px;height:150px;border:1px solid color-mix(in srgb,var(--accent) 12%,transparent);border-radius:50%;right:-70px;top:-82px}.overview-label,.overview-foot{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted)}
.overview-label i{font-style:normal;font-size:8px;letter-spacing:.15em;color:#4c955e;background:color-mix(in srgb,#64ae76 12%,transparent);padding:4px 7px;border-radius:999px}.overview-card .stats{align-self:stretch;justify-content:flex-start;gap:25px}.overview-card .stats>div{display:flex;flex-direction:column;gap:2px}.overview-card .stats strong{font-size:38px;line-height:1}.overview-card .stats span{font-size:10px}.overview-card .stats>i{height:40px;margin:0 2px}
.overview-foot{padding-top:13px;border-top:1px solid var(--line)}.overview-foot span{display:flex;align-items:center;gap:6px}.overview-foot b{width:6px;height:6px;background:#5ba76d;border-radius:50%}.overview-foot small{color:var(--faint);font-size:9px}
.section-head{justify-content:space-between;align-items:center;padding-bottom:15px;margin-bottom:18px}.section-head>div{display:flex;align-items:baseline;gap:10px}.section-head>small{font-size:10px;color:var(--faint);font-weight:400}.section-head h2{font-size:13px;letter-spacing:.04em}
.grid{gap:16px;background:transparent;border:0;border-radius:0;overflow:visible}.card{min-height:238px;border:1px solid var(--line);border-radius:16px;padding:22px 22px 20px;overflow:hidden;box-shadow:0 1px 2px rgba(35,48,38,.025);transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s,border-color .25s,background .2s}
.card:hover{background:var(--surface);transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 38%,var(--line));box-shadow:var(--card-shadow)}.card:focus-visible{outline:3px solid var(--accent-soft);border-color:var(--accent)}
.card-accent{position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 18%,transparent));opacity:0;transition:opacity .25s}.card:hover .card-accent{opacity:1}
.card-icon{width:46px;height:46px;border-radius:13px;background:linear-gradient(145deg,var(--surface-2),var(--accent-soft));border-color:color-mix(in srgb,var(--accent) 15%,var(--line));box-shadow:inset 0 1px rgba(255,255,255,.7);transition:transform .25s}.card:hover .card-icon{transform:scale(1.06) rotate(-2deg)}
.card-tools{display:flex;align-items:center;gap:7px}.category-label{font-size:9px;color:var(--faint);border:1px solid var(--line);padding:4px 7px;border-radius:999px}.pin-btn{width:29px;height:29px;padding:0}.card h3{font-size:16px;margin-top:22px;display:flex;align-items:center;justify-content:space-between}.open-arrow{font-size:13px;color:var(--faint);opacity:0;transform:translate(-5px,5px);transition:.2s}.card:hover .open-arrow{opacity:1;transform:none;color:var(--accent)}
.card-desc{font-size:12px;line-height:1.75}.tag{border:1px solid color-mix(in srgb,var(--line) 80%,transparent);background:var(--surface-2);padding:4px 8px;border-radius:6px}.card-actions{right:16px;bottom:15px;border-radius:9px;box-shadow:0 7px 20px rgba(30,42,32,.1);transform:translateY(4px);transition:opacity .18s,transform .18s}.card:hover .card-actions,.card:focus-within .card-actions{transform:none}.card-actions button{display:flex;align-items:center;gap:4px}.card-actions button:hover{color:var(--text);background:var(--surface-2);border-radius:6px}
.empty{background:color-mix(in srgb,var(--surface) 55%,transparent)}.empty>div{font-size:30px;color:var(--faint);margin-bottom:12px}.modal{animation:modal-in .2s ease}.backdrop{background:rgba(10,15,11,.58)}.preview-panel,.form-panel{border:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.form-head{background:linear-gradient(130deg,var(--surface),var(--accent-soft))}.field input,.field select,.field textarea{transition:border .18s,box-shadow .18s,background .18s}.toast{box-shadow:0 12px 30px rgba(0,0,0,.2)}
@keyframes modal-in{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:980px){.overview-card{width:320px}.topbar{height:auto}.search:focus-within{width:240px}}@media(max-width:760px){.intro{flex-direction:column;padding-bottom:45px}.overview-card{width:100%;min-height:180px}.section-head>small{display:none}.container{padding-top:24px}.intro h1{font-size:42px}.grid{gap:12px}}@media(max-width:480px){.brand small{display:none}.header-actions{gap:6px}.topbar{padding:12px 15px}.container{padding-left:15px;padding-right:15px}.intro h1{font-size:37px}.overview-card{padding:20px}.card{min-height:224px}.categories{gap:22px}.form-panel form,.form-head{padding-left:20px;padding-right:20px}}
