/* Shared styles for new Winziya pages (portfolio, client, tools, admin). Premium purple-blue brand. */
.wz-hero{background:linear-gradient(135deg,#4C1D95 0%,#6D28D9 45%,#2563EB 100%);color:#fff;padding:64px 0 52px;position:relative;overflow:hidden}
.wz-hero::after{content:"";position:absolute;inset:auto -10% -60% auto;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18),transparent 70%)}
.wz-wrap{max-width:1140px;margin:0 auto;padding:0 20px;position:relative;z-index:1}
.wz-hero h1{font-size:clamp(1.8rem,4vw,2.8rem);margin:0 0 10px;color:#fff}
.wz-hero p{max-width:720px;opacity:.92;font-size:1.05rem;margin:0}
.wz-sec{padding:40px 0}
.wz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.wz-card{background:#fff;border:1px solid rgba(124,58,237,.14);border-radius:20px;overflow:hidden;box-shadow:0 10px 30px -18px rgba(76,29,149,.35);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.wz-card:hover{transform:translateY(-4px);box-shadow:0 22px 40px -18px rgba(124,58,237,.45)}
.wz-card .wz-shot{aspect-ratio:16/10;background:linear-gradient(135deg,#7C3AED,#2563EB);overflow:hidden}
.wz-card .wz-shot img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.wz-cb{padding:18px;display:flex;flex-direction:column;gap:8px;flex:1}
.wz-cb h3{margin:0;font-size:1.15rem}
.wz-tag{display:inline-block;font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:99px;background:rgba(124,58,237,.1);color:#6D28D9;margin:0 6px 6px 0}
.wz-lbl{font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#7C3AED;margin-top:4px}
.wz-cb p{margin:0;color:#475569;font-size:.93rem;line-height:1.55}
.wz-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border-radius:12px;font-weight:700;text-decoration:none;border:0;cursor:pointer;background:linear-gradient(135deg,#7C3AED,#2563EB);color:#fff;font-size:.95rem;font-family:inherit}
.wz-btn.ghost{background:rgba(124,58,237,.08);color:#6D28D9;border:1px solid rgba(124,58,237,.25)}
.wz-btn.green{background:linear-gradient(135deg,#16A34A,#0A8F5F)}
.wz-btn:disabled{opacity:.6;cursor:not-allowed}
.wz-btn:hover{filter:brightness(1.07)}
.wz-box{background:#fff;border:1px solid rgba(124,58,237,.14);border-radius:18px;padding:20px;box-shadow:0 10px 30px -20px rgba(76,29,149,.35)}
.wz-f{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.wz-f label{font-weight:700;font-size:.85rem;color:#334155}
.wz-f input,.wz-f select,.wz-f textarea{padding:11px 12px;border:1px solid #CBD5E1;border-radius:10px;font:inherit;font-size:.95rem;background:#fff;color:#0F172A}
.wz-f textarea{min-height:90px;resize:vertical}
.wz-out{background:#0F172A;color:#E2E8F0;border-radius:12px;padding:14px;font-family:ui-monospace,monospace;font-size:.82rem;white-space:pre-wrap;word-break:break-all;max-height:380px;overflow:auto}
.wz-ok{color:#0A8F5F;font-weight:700}.wz-bad{color:#DC2626;font-weight:700}.wz-warn{color:#B45309;font-weight:700}
.wz-list{list-style:none;padding:0;margin:0}.wz-list li{padding:9px 0;border-bottom:1px dashed #E2E8F0;font-size:.93rem}
.wz-steps{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.wz-step{flex:1;min-width:90px;text-align:center;font-size:.75rem;font-weight:700;padding:8px 6px;border-radius:10px;background:#F1F5F9;color:#64748B}
.wz-step.done{background:linear-gradient(135deg,#7C3AED,#2563EB);color:#fff}
.wz-step.cur{background:#FEF3C7;color:#92400E}
.wz-muted{color:#64748B;font-size:.88rem}
.wz-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.wz-hide{display:none!important}
[data-theme="dark"] .wz-card,[data-theme="dark"] .wz-box,.dark .wz-card,.dark .wz-box{background:#111827;border-color:rgba(167,139,250,.25)}
[data-theme="dark"] .wz-cb p,.dark .wz-cb p{color:#CBD5E1}
[data-theme="dark"] .wz-f input,[data-theme="dark"] .wz-f select,[data-theme="dark"] .wz-f textarea{background:#0B1220;color:#E2E8F0;border-color:#334155}
[data-theme="dark"] .wz-f label{color:#CBD5E1}
@media(max-width:560px){.wz-grid{grid-template-columns:1fr}.wz-hero{padding:46px 0 38px}}
