:root{--bg:#fafbf8;--paper:#fff;--ink:#2f3b2c;--muted:#92998a;--line:#e3e7dd;--soft:#eff2e8;--olive:#7f8d6e;--danger:#a64432}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 Arial,Helvetica,sans-serif}button,input,textarea{font:inherit}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #a9ba8e;outline-offset:3px}.header{border-bottom:1px solid var(--line);background:#fafbf8}.header-inner{max-width:1120px;min-height:96px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 32px}.brand{font-size:23px;letter-spacing:.8px;font-weight:800;white-space:nowrap}.correction{position:relative;text-decoration:line-through;text-decoration-thickness:2px}.correction>span{position:absolute;top:-.85em;left:20%;font-size:.57em;color:var(--olive);transform:rotate(-11deg);text-decoration:none}nav{display:flex;gap:3px;background:var(--soft);padding:5px;border-radius:13px}nav a{padding:10px 18px;font-size:13px;border-radius:9px;color:#75816c}nav a.active{background:white;color:var(--ink);box-shadow:0 1px 6px #24311708}main{max-width:1120px;margin:0 auto;padding:48px 32px 64px;min-height:66vh}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:700;color:#849172;margin:0 0 13px}h1{font-size:42px;line-height:1.12;letter-spacing:-1.5px;margin:0 0 14px;max-width:650px}h2{font-size:22px;line-height:1.25;margin:0 0 12px}h3{font-size:18px;line-height:1.25;margin:0 0 7px}.muted{color:var(--muted)}.intro{margin:0 0 28px;color:var(--muted);font-size:14px}.search-wrap{position:relative;max-width:520px;margin:28px 0 24px}.search-wrap span{position:absolute;left:17px;top:10px;color:var(--muted);font-size:23px}.search-wrap input{padding-left:46px}input,textarea{width:100%;padding:13px 15px;background:white;color:var(--ink);border:1px solid var(--line);border-radius:10px;min-width:0}input::placeholder,textarea::placeholder{color:#9ba292}textarea{resize:vertical;min-height:85px}label{display:block;font-size:13px;margin:13px 0 6px}input[type=checkbox]{width:auto}button,.btn{border:0;border-radius:9px;padding:10px 15px;background:var(--soft);color:#6f7e5f;font-weight:600;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary{background:var(--ink);color:white}.danger{color:var(--danger);background:#faf0ed}.text-btn{background:none;padding:5px;color:var(--olive)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.shop-card{display:flex;text-align:left;background:white;border:1px solid var(--line);border-radius:16px;padding:0;overflow:hidden;align-items:stretch;min-height:178px;color:var(--ink);width:100%;transition:transform .15s,box-shadow .15s}.shop-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #27361e09}.shop-card>img{width:32%;object-fit:cover;flex-shrink:0}.card-body{flex:1;padding:22px 20px;min-width:0}.card-heading{display:flex;justify-content:space-between;gap:10px}.arrow{font-size:23px;color:#8d9685;line-height:1}.card-body p{font-size:13px;font-weight:400;color:var(--muted);margin:8px 0 15px;overflow-wrap:anywhere}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #f1f3ed;padding-top:12px}.count{font-size:11px;color:var(--muted);font-weight:400}.pill{padding:8px 12px;border-radius:8px;background:var(--soft);color:#7d8b6b;font-size:12px}.empty{padding:45px 20px;text-align:center;border:1px dashed var(--line);border-radius:14px;color:var(--muted);grid-column:1/-1}footer{border-top:1px solid var(--line);padding:32px max(32px,calc((100vw - 1056px)/2));display:flex;justify-content:space-between;gap:20px;align-items:center}footer .brand{font-size:17px}footer>span{font-size:11px;color:var(--muted)}dialog{width:min(480px,calc(100% - 28px));max-height:90dvh;overflow:auto;border:1px solid var(--line);border-radius:20px;padding:30px;color:var(--ink);box-shadow:0 30px 100px #19221430}dialog::backdrop{background:#1d281b66;backdrop-filter:blur(3px)}.close{position:absolute;right:12px;top:12px;font-size:24px;background:transparent;padding:0;width:32px;height:32px;color:var(--muted)}.modal-image{width:85px;height:85px;border-radius:14px;object-fit:cover;margin-bottom:20px}.link-row{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--soft);border-radius:11px;margin:10px 0;gap:15px}.link-row small{display:block;color:var(--muted);word-break:break-all;font-size:12px;font-weight:400;margin-top:3px}.fine{font-size:11px;color:var(--muted)}.error{color:var(--danger);font-size:13px;min-height:20px}.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.auth-tabs,.chat-tabs{display:flex;padding:5px;background:var(--soft);border:1px solid var(--line);border-radius:12px;gap:5px;margin:22px 0 16px}.auth-tabs button,.chat-tabs button{flex:1;background:transparent;font-weight:400}.auth-tabs .active,.chat-tabs .active{background:white;box-shadow:0 2px 6px #1e2a1805}.chat-layout{max-width:850px}.chat-box{border:1px solid var(--line);border-radius:15px;background:white;overflow:hidden}.chat-top{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line)}.chat-top h2{font-size:17px;margin:0}.chat-top .fine{margin:3px 0 0}.chat-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.messages{height:390px;overflow:auto;padding:20px;background:linear-gradient(125deg,#f9fbf5,#f3f6ec);scroll-behavior:smooth}.messages .empty{border:0;margin:70px 0}.message{margin-bottom:13px;max-width:86%;width:fit-content;background:#fff;padding:10px 14px;border:1px solid var(--line);border-radius:12px 12px 12px 3px;overflow-wrap:anywhere}.message.mine{margin-left:auto;background:#eaf0df;border-radius:12px 12px 3px 12px}.message header{font-size:11px;color:var(--olive);display:flex;gap:12px;justify-content:space-between}.message time{font-size:10px;color:#9ba38f}.message p{margin:5px 0 0;white-space:pre-wrap;font-size:14px}.compose{border-top:1px solid var(--line);padding:16px 20px}.compose form{display:flex;gap:10px;align-items:flex-end}.compose textarea{min-height:48px;max-height:140px;flex:1}.compose p{margin:4px 0 12px}.members{padding:18px;min-height:390px}.member{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid var(--line)}.avatar{height:36px;width:36px;border-radius:50%;background:var(--soft);display:grid;place-items:center;font-weight:600;color:var(--olive)}.member small{margin-left:auto;color:var(--muted)}.online{color:#7a9460!important}.admin-layout{display:grid;grid-template-columns:240px 1fr;gap:24px}.panel{border:1px solid var(--line);background:white;padding:24px;border-radius:14px;margin-bottom:18px}.admin-list{display:flex;flex-direction:column;gap:8px}.admin-list button{justify-content:space-between;text-align:left}.admin-link{display:grid;grid-template-columns:1fr 2fr auto;gap:8px;margin-bottom:10px}.admin-link input{padding:10px}.inline{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.admin-image{width:100px;height:100px;object-fit:cover;border-radius:10px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line)}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:12px;padding:13px 20px;box-shadow:0 8px 30px #0002;font-size:13px;max-width:90vw;z-index:10}[hidden]{display:none!important}.full{width:100%}.nowrap{white-space:nowrap}.load-older{display:flex;margin:0 auto 15px}button:has(> .count){font-weight:400}
@media(min-width:1200px){main{padding-top:60px}.grid{gap:24px}.search-wrap{margin-top:34px}}
@media(max-width:700px){.header-inner{min-height:72px;padding:18px 20px;gap:14px}.brand{font-size:18px;letter-spacing:.3px}nav{padding:4px;border-radius:12px}nav a{font-size:10px;padding:9px 10px}main{padding:22px 20px 28px;min-height:52vh}h1{font-size:28px;letter-spacing:-.8px;line-height:1.15;max-width:330px}.eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:12px}.intro{font-size:12px;margin-bottom:20px}.search-wrap{margin:20px 0 16px}.search-wrap input{font-size:12px;height:46px}.grid{grid-template-columns:1fr;gap:16px}.shop-card{min-height:134px;border-radius:15px}.shop-card>img{width:30%}.card-body{padding:15px 12px}.card-body h3{font-size:16px}.card-body p{font-size:11px;margin:5px 0 12px}.card-bottom{padding-top:8px}.count{font-size:9px}.pill{font-size:11px;padding:8px 10px}footer{padding:26px 20px;align-items:flex-start;flex-direction:column}footer .brand{font-size:15px}footer>span{display:none}.chat-top{padding:14px}.chat-actions button{padding:7px 10px;font-size:11px}.messages{height:340px;padding:14px}.compose{padding:14px}.compose form{gap:6px}.compose button{padding:11px}.admin-layout{grid-template-columns:1fr}.admin-list{flex-direction:row;flex-wrap:wrap}.panel{padding:16px}.admin-link{grid-template-columns:1fr auto}.admin-link input:nth-child(2){grid-row:2;grid-column:1/-1}.admin-link button{grid-row:1;grid-column:2}dialog{padding:24px}.message{max-width:94%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
