:root{--bg:#f7f5f1;--panel:#fff;--panel2:#f2eee8;--text:#28231f;--muted:#736b64;--line:#e9e2da;--brand:#ed9a22;--brand2:#ffbf49;--purple:#7659d6;--danger:#d94b50;--green:#3a9a78;--shadow:0 16px 50px rgba(61,46,29,.08);--radius:22px}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Pretendard,"Noto Sans KR",system-ui,sans-serif;color:var(--text);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}body.dark{--bg:#111218;--panel:#1c1d25;--panel2:#262732;--text:#f4f2f0;--muted:#aaa5b0;--line:#30313c;--brand:#9c72e8;--brand2:#bd98ff;--purple:#9c72e8;--shadow:0 16px 50px rgba(0,0,0,.25)}
[hidden]{display:none!important}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.2fr) minmax(420px,.8fr);background:#fffaf2}.auth-art{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle at 50% 65%,#fff 0 18%,transparent 19%),linear-gradient(145deg,#fffaf2,#fff3d8);position:relative;overflow:hidden}.auth-art:before,.auth-art:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:#ffd89055}.auth-art:before{left:-90px;top:8%}.auth-art:after{right:-110px;bottom:8%}.brand-mark{font-size:44px;color:#f0a322}.auth-art h1,.mobile-brand,.logo strong{font-family:"Jua","Arial Rounded MT Bold",sans-serif}.auth-art h1{font-size:58px;margin:4px;color:#4d3828}.auth-art p{color:#786a5e;line-height:1.7}.pet-drawing{font-size:76px;margin-top:45px;filter:drop-shadow(0 12px 15px #a8753430)}.pet-drawing small{font-size:32px;color:#f28a78}.auth-card{width:min(420px,80%);align-self:center;justify-self:center;display:flex;flex-direction:column;gap:15px}.auth-card h2{font-size:30px;margin:0}.auth-card label,.form-grid label{display:grid;gap:7px;font-size:13px;font-weight:700}.auth-card input,.form-grid input,.form-grid select,.form-grid textarea,.search{width:100%;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:14px;padding:13px 15px;outline:none}.auth-card input:focus,.form-grid input:focus,.form-grid textarea:focus,.search:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 14%,transparent)}.eyebrow{color:var(--brand);font-weight:900;font-size:11px;letter-spacing:.16em}.muted{color:var(--muted)}.primary,.secondary,.danger,.text-button,.icon-button{border:0;border-radius:13px;padding:10px 15px;font-weight:750}.primary{background:linear-gradient(135deg,var(--brand),var(--brand2));color:white}.secondary{background:var(--panel2);color:var(--text)}.danger{background:#fff0f0;color:var(--danger)}.text-button{background:none;color:var(--brand)}.wide{width:100%;padding:14px}.auth-note{text-align:center;color:#9a9289;font-size:11px}.mobile-brand{display:none}
.shell{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:var(--panel);border-right:1px solid var(--line);padding:25px 17px;display:flex;flex-direction:column;z-index:20}.logo{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--text);font-size:23px;padding:4px 12px 26px}.logo span{color:var(--brand)}nav{display:grid;gap:5px}.sidebar button{border:0;background:transparent;color:var(--muted);border-radius:14px;padding:12px 14px;text-align:left;font-weight:700;display:flex;align-items:center;gap:12px}.sidebar button i{font-style:normal;width:22px;text-align:center;font-size:18px}.sidebar button:hover,.sidebar button.active{background:var(--panel2);color:var(--brand)}.sidebar-bottom{margin-top:auto;display:grid;gap:15px}.account{border-top:1px solid var(--line);padding:18px 6px 0;display:grid;grid-template-columns:38px 1fr 30px;align-items:center;gap:9px}.account>span,.avatar{display:grid;place-items:center;width:38px;height:38px;background:var(--brand);color:#fff;border-radius:50%;font-weight:900}.account div{min-width:0;display:grid}.account small{color:var(--muted);overflow:hidden;text-overflow:ellipsis}.account button{padding:5px}.workspace{min-width:0}.topbar{height:76px;position:sticky;top:0;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(18px);display:flex;align-items:center;padding:0 32px;z-index:15;border-bottom:1px solid color-mix(in srgb,var(--line) 65%,transparent)}.pet-switcher{display:flex;gap:8px;align-items:center}.pet-chip{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--panel);color:var(--text);padding:7px 12px;border-radius:99px}.pet-chip img{width:32px;height:32px;border-radius:50%;object-fit:cover}.pet-chip.active{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 12%,transparent)}.top-actions{margin-left:auto;display:flex;gap:8px}.top-actions button,.menu-button{width:42px;height:42px;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:13px}.menu-button{display:none}.bell{position:relative}.bell b{position:absolute;right:-4px;top:-5px;min-width:19px;height:19px;padding:0 4px;border-radius:10px;background:var(--danger);color:#fff;font-size:10px;line-height:19px}
#content{padding:32px;max-width:1560px;margin:auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.page-head h1{font-size:30px;margin:0 0 6px}.page-head p{margin:0;color:var(--muted)}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.grid{display:grid;gap:18px}.dashboard-grid{grid-template-columns:1.2fr .8fr}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:20px}.stat{padding:18px}.stat small,.item small{color:var(--muted)}.stat b{display:block;font-size:24px;margin-top:8px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.section-title h2{font-size:17px;margin:0}.list{display:grid;gap:9px}.item{display:flex;align-items:center;gap:12px;padding:13px;border-radius:16px;background:var(--panel2)}.item-icon{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand) 15%,var(--panel));font-size:19px}.item-main{min-width:0;flex:1}.item-main b,.item-main span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-actions{display:flex;gap:4px}.item-actions button{border:0;background:transparent;color:var(--muted);padding:7px;border-radius:9px}.item-actions button:hover{background:var(--panel);color:var(--brand)}.empty{text-align:center;padding:40px;color:var(--muted)}.tabs{display:flex;gap:5px;background:var(--panel2);padding:5px;border-radius:15px;width:max-content;margin-bottom:18px}.tabs button{border:0;background:transparent;color:var(--muted);padding:9px 16px;border-radius:11px}.tabs button.active{background:var(--panel);color:var(--brand);font-weight:800;box-shadow:0 3px 10px #0000000b}.filterbar{display:flex;gap:10px;align-items:center;margin-bottom:18px}.filterbar .search{max-width:360px}.date-input{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:10px 13px;border-radius:12px}.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}
.hero{padding:25px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 17%,var(--panel)),var(--panel));display:flex;gap:22px;align-items:center}.hero img,.pet-placeholder{width:90px;height:90px;border-radius:50%;object-fit:cover;background:#ffe8b5;display:grid;place-items:center;font-size:42px}.hero h2{margin:0 0 4px;font-size:26px}.hero p{margin:4px 0;color:var(--muted)}.health-card{min-height:170px}.money{font-variant-numeric:tabular-nums}.community-hero{background:linear-gradient(135deg,#6d50cc,#9e78ed);color:white;padding:28px;overflow:hidden;position:relative}.community-hero:after{content:"♡";position:absolute;font-size:150px;right:30px;top:-38px;opacity:.1}.ad-carousel{height:210px;border-radius:var(--radius);overflow:hidden;position:relative;background:var(--panel2)}.ad-carousel img{width:100%;height:100%;object-fit:cover}.ad-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:5px}.ad-dots i{width:7px;height:7px;border-radius:8px;background:#ffffff99}.ad-dots i.active{width:22px;background:#fff}.board-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.board{padding:18px;cursor:pointer;transition:.2s}.board:hover{transform:translateY(-3px);border-color:var(--purple)}.board .emoji{font-size:25px}.board h3{margin:10px 0 4px}.board p{font-size:12px;color:var(--muted);margin:0;line-height:1.5}.post{cursor:pointer}.post:hover{border-color:var(--purple)}.post-body{line-height:1.75}.post-body img{max-width:100%;height:auto;border-radius:16px;display:block;margin:10px 0;cursor:zoom-in}.comments{margin-top:20px}.comment{border-top:1px solid var(--line);padding:14px 0}.banner-img{width:100%;display:block;border-radius:18px}
.modal-backdrop{position:fixed;inset:0;background:#1118;backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px;z-index:100}.modal{width:min(650px,100%);max-height:90vh;overflow:auto;background:var(--panel);border-radius:24px;box-shadow:0 30px 90px #0005}.modal.large{width:min(920px,100%)}.modal-head{position:sticky;top:0;background:var(--panel);z-index:2;padding:20px 22px 14px;display:flex;align-items:center;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font-size:20px;flex:1}.modal-head button{border:0;background:var(--panel2);color:var(--text);width:34px;height:34px;border-radius:50%}.modal-body{padding:20px 22px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.form-grid .full{grid-column:1/-1}.form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;padding-top:5px}.check{display:flex!important;grid-auto-flow:column;justify-content:start;align-items:center}.check input{width:auto}.toast{position:fixed;top:20px;left:50%;transform:translateX(-50%);background:#27242a;color:white;padding:12px 18px;border-radius:14px;z-index:200;box-shadow:var(--shadow)}.lightbox{position:fixed;inset:0;background:#000e;display:grid;place-items:center;z-index:150}.lightbox img{max-width:94vw;max-height:92vh;object-fit:contain}.lightbox button{position:absolute;top:18px;right:18px;width:44px;height:44px;border:0;border-radius:50%;background:#fff2;color:white;font-size:25px}.block-editor{display:grid;gap:10px}.edit-block{background:var(--panel2);padding:10px;border-radius:14px}.edit-block img{max-width:100%;max-height:260px;border-radius:12px}.drawer{position:fixed;right:0;top:0;height:100vh;width:min(420px,92vw);background:var(--panel);z-index:90;box-shadow:-20px 0 60px #0002;padding:24px;overflow:auto}.drawer-head{display:flex;align-items:center}.drawer-head h2{flex:1}
@media(max-width:1100px){.shell{grid-template-columns:86px 1fr}.sidebar{padding:20px 10px}.logo strong,.sidebar nav button:not(.active){font-size:0}.sidebar nav button{justify-content:center}.sidebar nav button i{font-size:20px}.account div,.account>button,.sidebar-bottom>button{display:none}.account{grid-template-columns:1fr;justify-items:center}.dashboard-grid{grid-template-columns:1fr}.board-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.auth-page{grid-template-columns:1fr}.auth-art{display:none}.auth-card{width:min(420px,88%)}.mobile-brand{display:block;color:#513b2c;font-size:30px;margin-bottom:20px}.shell{display:block}.sidebar{position:fixed;left:-270px;width:245px;transition:.25s}.shell.menu-open .sidebar{left:0}.sidebar .logo strong,.sidebar nav button:not(.active){font-size:initial}.sidebar nav button{justify-content:flex-start}.sidebar-bottom>button{display:flex}.account div,.account>button{display:grid}.topbar{padding:0 16px}.menu-button{display:block;margin-right:10px}#content{padding:20px 14px}.stats{grid-template-columns:repeat(2,1fr)}.two-col,.three-col,.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.board-grid{grid-template-columns:1fr 1fr}.page-head{align-items:flex-start;flex-direction:column}.pet-switcher{overflow:auto;max-width:65vw}.pet-chip span{display:none}}
.dashboard-pet{margin-bottom:24px}.community-search{margin-top:38px}.community-subnav{display:grid;gap:3px;padding:3px 0 8px 42px}.community-subnav button{font-size:12px!important;padding:7px 10px!important;justify-content:flex-start!important}.pagination{display:flex;justify-content:center;align-items:center;gap:14px;margin:20px 0}.pagination button:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:1100px){.community-subnav{display:none}}
