:root{--primary: #5c8a6e;--primary-dark: #4a7259;--primary-light: #e6f0ea;--bg: #f4f3ef;--surface: #ffffff;--surface-2: #f9f8f6;--text: #2d3748;--muted: #718096;--border: rgba(0, 0, 0, .08);--ring: #84a98c;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 12px rgba(0,0,0,.08), 0 2px 4px rgba(0,0,0,.04)}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.6 Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.container,.footer-inner{max-width:980px;margin:0 auto}.container{padding:24px 20px}header{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:18px 24px;box-shadow:var(--shadow-sm)}header h1{font-size:1.5rem;font-weight:700;color:var(--text);letter-spacing:-.3px;margin:0}.header-inner{display:flex;align-items:center;gap:10px}.header-icon{color:var(--primary);display:flex;align-items:center}.panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px;box-shadow:var(--shadow-sm)}form{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px;box-shadow:var(--shadow-sm)}label>div{color:var(--muted);font-size:.85rem;font-weight:500}input,textarea,select{background:var(--surface-2);color:var(--text);border:1px solid rgba(0,0,0,.1);border-radius:8px;padding:10px 12px;font:inherit;width:100%;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}input::placeholder,textarea::placeholder{color:#b0bac4}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 3px #5c8a6e1f}button{font:inherit;font-weight:600;cursor:pointer;transition:filter .15s,transform .1s}button:active{transform:scale(.98)}button[type=submit]{background:var(--primary);color:#fff;border:none;padding:10px 20px;border-radius:8px;box-shadow:0 2px 8px #5c8a6e40}button[type=submit]:hover{filter:brightness(1.06)}button[type=button]{background:var(--surface-2);color:var(--text);border:1px solid var(--border);padding:10px 16px;border-radius:8px}button[type=button]:hover{background:#ededeb}section{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))!important}section article{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .2s ease}section article:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}article h3{font-size:1.05rem;color:var(--text)}article img{border-radius:10px;border:1px solid var(--border)}article .meta{color:var(--muted);font-size:.85rem}footer{color:var(--muted);border-top:1px solid var(--border);margin-top:40px;padding:24px 0 32px;text-align:center;font-size:.85rem}.footer-inner{padding:0 20px}.empty-state{display:flex;flex-direction:column;align-items:center;gap:8px;padding:52px 24px;color:var(--muted);text-align:center;grid-column:1 / -1;width:100%}.empty-state-icon{color:#c8d8ce}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--primary-light);color:var(--primary-dark);border:1px solid rgba(92,138,110,.2);font-size:.8rem}.welcome-page{min-height:100vh;background:linear-gradient(150deg,#eef4f0,#e8f0eb 45%,#f4f3ef);display:flex;align-items:center;justify-content:center;padding:40px 20px}.welcome-card{background:#fff;border-radius:24px;padding:52px 44px;max-width:500px;width:100%;box-shadow:0 20px 60px #00000014,0 4px 16px #0000000a;text-align:center}.welcome-icon-wrap{width:80px;height:80px;background:var(--primary-light);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 22px;color:var(--primary)}.welcome-title{font-size:1.9rem;font-weight:700;color:var(--text);margin:0 0 10px;letter-spacing:-.4px}.welcome-subtitle{font-size:.97rem;color:var(--muted);line-height:1.65;margin:0 0 28px}.welcome-features{display:grid;gap:10px;margin-bottom:32px;text-align:left}.welcome-feature{display:flex;align-items:center;gap:12px;padding:11px 14px;background:var(--surface-2);border-radius:10px;font-size:.9rem;color:var(--text);border:1px solid var(--border)}.welcome-feature span:first-child{font-size:1.25rem;flex-shrink:0}.welcome-btn{background:var(--primary);color:#fff;border:none;padding:14px 0;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 4px 16px #5c8a6e4d;transition:transform .15s,box-shadow .15s,filter .15s;width:100%}.welcome-btn:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 6px 20px #5c8a6e59}
