:root{--bg:#f6f1e7;--bg-card:#ffffff;--ink:#1c2a28;--ink-soft:#5c6b68;--brand:#10312e;--brand-soft:#1c4a45;--accent:#d9a441;--accent-soft:#f3e3c2;--danger:#b4443c;--ok:#2e7d5b;--radius:14px;--shadow:0 2px 12px rgba(16,49,46,0.08)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Rubik,Segoe UI,Heebo,sans-serif;background:var(--bg);color:var(--ink);min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,select,textarea{font-family:inherit}.container{max-width:1080px;margin:0 auto;padding:24px 20px 64px}.nav{background:var(--brand);color:#f6f1e7;padding:0 20px}.nav-inner{max-width:1080px;margin:0 auto;display:flex;align-items:center;gap:22px;height:62px}.nav .logo{font-size:20px;font-weight:700;color:var(--accent);letter-spacing:.5px}.nav a.link{opacity:.85;font-size:15px;padding:6px 2px}.nav a.link.active,.nav a.link:hover{opacity:1;border-bottom:2px solid var(--accent)}.nav .spacer{flex:1 1}.nav .pill{background:var(--brand-soft);border:1px solid rgba(217,164,65,.4);color:#f6f1e7;border-radius:999px;padding:6px 14px;font-size:14px}.nav .pill:hover{border-color:var(--accent)}h1.page-title{font-size:30px;margin:26px 0 6px;color:var(--brand)}p.page-sub{color:var(--ink-soft);margin-bottom:26px}h2.section{font-size:20px;color:var(--brand);margin:30px 0 14px}.card{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.grid{display:grid;grid-gap:16px;gap:16px}.grid.cols-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.activity{display:flex;gap:18px;align-items:center;padding:14px 18px;background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-border-start:4px solid var(--accent);border-inline-start:4px solid var(--accent)}.activity .date-badge{min-width:74px;text-align:center;background:var(--accent-soft);border-radius:10px;padding:8px 6px}.activity .date-badge .d{font-size:22px;font-weight:700;color:var(--brand);line-height:1}.activity .date-badge .m{font-size:12px;color:var(--ink-soft)}.activity .info{flex:1 1}.activity .info .t{font-weight:600;font-size:17px}.activity .info .meta{font-size:14px;color:var(--ink-soft);margin-top:2px}.btn{border:none;border-radius:10px;padding:10px 20px;font-size:15px;font-weight:600;transition:opacity .15s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--brand);color:#f6f1e7}.btn-primary:hover:not(:disabled){background:var(--brand-soft)}.btn-accent{background:var(--accent);color:var(--brand)}.btn-ghost{background:transparent;border:1px solid var(--brand);color:var(--brand)}.btn-sm{padding:6px 14px;font-size:13px}.btn-danger{background:var(--danger);color:white}.btn-ok{background:var(--ok);color:white}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-size:14px;font-weight:600;color:var(--brand)}.field input,.field select,.field textarea{border:1.5px solid #d8d2c4;border-radius:10px;padding:10px 12px;font-size:15px;background:white}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent)}.slot{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1.5px solid #e4ddcd;border-radius:10px;background:white;width:100%;text-align:start;font-size:15px}.slot:hover{border-color:var(--accent)}.slot.selected{border-color:var(--brand);background:var(--accent-soft)}.badge{border-radius:999px;padding:3px 12px;font-size:12.5px;font-weight:600}.badge.low{background:#ddefe4;color:var(--ok)}.badge.medium{background:#fbf0d7;color:#9a7215}.badge.high{background:#f7dedc;color:var(--danger)}.badge.status-PENDING{background:#fbf0d7;color:#9a7215}.badge.status-ACTIVE,.badge.status-CONFIRMED{background:#ddefe4;color:var(--ok)}.badge.status-CANCELLED,.badge.status-REJECTED{background:#f7dedc;color:var(--danger)}.badge.status-APPROVED,.badge.status-COMPLETED{background:#ddefe4;color:var(--ok)}.badge.status-PROPOSED{background:#fbf0d7;color:#9a7215}.idea-card{display:flex;flex-direction:column;gap:10px}.idea-card .votes{display:flex;align-items:center;gap:10px}.vote-btn{background:var(--accent-soft);border:none;border-radius:999px;padding:6px 16px;font-size:15px;font-weight:700;color:var(--brand)}.vote-btn:hover{background:var(--accent)}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:22px}.tab{border:none;background:transparent;padding:9px 18px;font-size:15px;border-radius:999px;color:var(--ink-soft);font-weight:600}.tab.active{background:var(--brand);color:#f6f1e7}.table{width:100%;border-collapse:collapse;font-size:14.5px}.table th{text-align:start;color:var(--ink-soft);font-weight:600;padding:8px 10px;border-bottom:2px solid var(--accent-soft)}.table td{padding:10px;border-bottom:1px solid #efe9db}.table tr:last-child td{border-bottom:none}.notice{border-radius:10px;padding:12px 16px;font-size:14.5px;margin:12px 0}.notice.ok{background:#ddefe4;color:var(--ok)}.notice.err{background:#f7dedc;color:var(--danger)}.access-code,.notice.info{background:var(--accent-soft);color:var(--brand)}.access-code{font-size:34px;letter-spacing:10px;font-weight:700;border-radius:12px;padding:14px 22px;text-align:center;margin:10px 0}.content-preview{background:#fbf8f1;border:1.5px dashed var(--accent);border-radius:10px;padding:16px;white-space:pre-wrap;font-size:14.5px;max-height:420px;overflow:auto}.flyer-frame{width:100%;height:560px;border:none;border-radius:10px;background:white}.muted{color:var(--ink-soft);font-size:14px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.mt{margin-top:16px}