:root{--dmc-gold:#be8e40;--dmc-ink:#171717}
.portal-app{max-width:1060px;margin:0 auto;padding:32px 24px 60px;color:var(--dmc-ink)}
.app-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-bottom:24px}
.app-heading h1{margin:8px 0;font-size:clamp(26px,4vw,40px)}
.app-eyebrow{font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:#987031}
.app-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px}.app-card{background:#fff;border:1px solid #e7e0d6;border-radius:16px;padding:24px;box-shadow:0 9px 25px #00000006}
.app-card h2{font-size:21px;margin:0 0 12px}.app-card p,.app-muted{color:#666;line-height:1.6}
.app-form{display:grid;gap:13px}.app-form label{display:grid;gap:6px;font-weight:700;font-size:13px}.app-form input,.app-form select,.app-form textarea{width:100%;background:#fff;border:1px solid #cfc9bf;border-radius:8px;padding:12px;font:inherit;color:#171717;min-width:0}
.app-form input:focus,.app-form select:focus{outline:2px solid #be8e4066;border-color:var(--dmc-gold)}
.app-btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:1px solid #be8e40;background:#be8e40;border-radius:9px;padding:12px 18px;font-size:13px;font-weight:800;color:#181818;cursor:pointer;text-decoration:none}
.app-btn.alt{background:white}.app-btn.dark{background:#181818;color:white;border-color:#181818}.app-btn:disabled{opacity:.45;cursor:not-allowed}
.app-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.app-feedback{padding:12px 14px;border-radius:9px;background:#faf3e5;border:1px solid #e9d7ae;color:#6e5025;font-size:13px;line-height:1.5}
.app-feedback.error{background:#fff0f0;color:#9c2525;border-color:#ecc7c7}.app-feedback.ok{background:#effaf1;color:#25613c;border-color:#bedfc8}
.app-hidden{display:none!important}.app-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.app-stat{background:#171717;color:white;padding:22px;border-radius:12px}.app-stat strong{display:block;color:#e9c382;font-size:28px}.app-stat span{font-size:13px}
.app-table{width:100%;border-collapse:collapse;min-width:540px}.app-table th,.app-table td{text-align:left;padding:12px;border-bottom:1px solid #e8e2d8;font-size:13px}.app-table th{background:#f8f5f0;color:#70512b}.app-scroll{overflow:auto}
.app-avatar{width:96px;height:96px;border-radius:50%;background:#f5f0e5;object-fit:cover;border:3px solid #d4af6b}
.app-nav-link{color:#8a6428;font-weight:800;text-decoration:underline;text-underline-offset:3px}.app-note{font-size:12px;color:#696969}.app-full{grid-column:1/-1}
@media(max-width:740px){.app-layout,.app-grid{grid-template-columns:1fr}.portal-app{padding:25px 18px 45px}.app-card{padding:18px}}
