@font-face{font-family:Aptos;src:url('../fonts/aptos/Aptos.woff2') format('woff2');font-display:swap}
:root{--bg:#f5f9ff;--panel:#ffffff;--text:#14213d;--muted:#64748b;--line:#dbeafe;--brand:#2563eb;--brand2:#8b5cf6;--danger:#dc2626;--ok:#15803d;--shadow:0 18px 45px rgba(37,99,235,.10);--radius:22px}
[data-theme="dark"]{--bg:#0f172a;--panel:#172033;--text:#f8fafc;--muted:#b8c0cc;--line:#334155;--brand:#60a5fa;--brand2:#c084fc;--shadow:0 18px 45px rgba(0,0,0,.25)}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,var(--bg),#fff);color:var(--text);font-family:Aptos,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}a{color:var(--brand);text-decoration:none}img,video,audio{max-width:100%}.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:16px 6vw;background:rgba(255,255,255,.78);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}[data-theme="dark"] .top{background:rgba(15,23,42,.78)}.brand{font-weight:900;font-size:1.5rem;color:var(--text);display:flex;align-items:center;gap:10px}.brand img{width:38px;height:38px;object-fit:contain;display:block}.brand span{line-height:1}nav{display:flex;gap:12px;align-items:center}nav a{padding:9px 13px;border-radius:999px;font-weight:800;transition:background .18s ease,color .18s ease,transform .18s ease}.nav-dashboard:hover{background:var(--brand);color:#fff}.nav-logout{color:var(--danger)}.nav-logout:hover{background:var(--danger);color:#fff}nav a:hover{transform:translateY(-1px)}.pill,.primary,button{border:0;border-radius:999px;background:#e0ecff;color:var(--brand);padding:10px 16px;font-weight:800;cursor:pointer}button.primary,.primary{background:linear-gradient(135deg,var(--brand),var(--brand2));color:white}.danger{color:var(--danger)!important}.container{width:min(1100px,92vw);margin:36px auto}.hero{padding:54px;border-radius:32px;background:radial-gradient(circle at top left,#dbeafe,transparent 55%),var(--panel);box-shadow:var(--shadow);margin-bottom:26px}.hero h1{font-size:clamp(2rem,6vw,4rem);line-height:1;margin:0 0 14px}.posts{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}.post,.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card{padding:24px;margin:18px 0}.card > :first-child{margin-top:0}.card > :last-child{margin-bottom:0}.post{overflow:hidden;padding:22px}.post img{width:100%;height:190px;object-fit:cover;border-radius:18px}.post h2{margin:.7rem 0 .2rem}.meta,.muted{color:var(--muted);font-size:.95rem}.read{font-weight:800}.shell{width:min(1280px,96vw);margin:28px auto;display:grid;grid-template-columns:260px 1fr;gap:22px}.side{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;height:max-content;position:sticky;top:86px}.side a,.side span{display:block;padding:12px 14px;border-radius:14px;margin:4px 0}.side a:hover{background:#eaf2ff}.panel{padding:28px;min-width:0}.form{display:grid;gap:16px}.form label{display:grid;gap:7px;font-weight:800}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--text);padding:12px 14px;font:inherit}textarea{resize:vertical}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.actions{display:flex;gap:12px;flex-wrap:wrap}.flash{padding:13px 16px;border-radius:16px;margin:0 0 16px}.flash.ok{background:#dcfce7;color:#166534}.flash.bad{background:#fee2e2;color:#991b1b}table{width:100%;border-collapse:separate;border-spacing:0 10px}th{text-align:left;color:var(--muted)}td,th{padding:10px}tr{background:var(--panel)}td:first-child{border-radius:14px 0 0 14px}td:last-child{border-radius:0 14px 14px 0}.inline{display:inline}.link{background:transparent;padding:0 0 0 10px}.article{background:var(--panel);border:1px solid var(--line);border-radius:32px;padding:clamp(22px,4vw,48px);box-shadow:var(--shadow)}.article .cover{width:100%;max-height:420px;object-fit:cover;border-radius:24px}.content img,.content video,.content audio{display:block;margin:24px auto;border-radius:18px}.content audio{width:100%}progress{width:100%;height:18px;border:0;border-radius:99px;overflow:hidden;display:block;margin-top:12px}.form.card{padding:24px}.form.card label{padding:0 2px}input,textarea,select{box-shadow:inset 0 1px 0 rgba(255,255,255,.45)}footer{text-align:center;color:var(--muted);padding:40px 20px}@media(max-width:800px){.shell{grid-template-columns:1fr}.side{position:static}.grid2{grid-template-columns:1fr}.top{align-items:flex-start;gap:10px;flex-direction:column}nav{flex-wrap:wrap}.panel{padding:18px}}

button.danger:hover,a.danger:hover{background:var(--danger)!important;color:#fff!important;}


/* TileMpa style update v20260429-4 */
.action-edit{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#e0ecff;color:var(--brand);padding:8px 13px;font-weight:800;transition:background .18s ease,color .18s ease,transform .18s ease}
.action-edit:hover{background:var(--brand);color:#fff;transform:translateY(-1px)}
.action-delete{border:0;border-radius:999px;background:#fff;color:var(--danger)!important;padding:8px 13px;margin-left:8px;font-weight:800;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}
.action-delete:hover{background:var(--danger)!important;color:#fff!important;transform:translateY(-1px)}
td .action-edit,td .action-delete{white-space:nowrap}
small.muted{display:block;margin-top:6px}
.hero p{max-width:820px}
