:root{color:#172033;background:#f6f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f6f7fb}a{color:#2454d6;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin-top:0;color:#111827}button,input,textarea,select{font:inherit}.layout{min-height:100vh}.topbar{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:10}.brand{font-weight:800;color:#111827;font-size:18px}.brand-sidebar{display:block;margin-bottom:28px}.nav{display:flex;gap:18px;align-items:center}.page-shell{max-width:1180px;margin:0 auto;padding:32px}.page-title-row{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px}.muted{color:#6b7280}.admin-layout{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr)}.sidebar{background:#111827;color:#fff;padding:28px;display:flex;flex-direction:column}.sidebar .brand{color:#fff}.side-nav{display:grid;gap:8px}.side-nav a{color:#d1d5db;padding:10px 12px;border-radius:10px}.side-nav a.router-link-active,.side-nav a:hover{background:#ffffff1a;color:#fff;text-decoration:none}.sidebar-footer{margin-top:auto;display:grid;gap:10px}.admin-main{padding:32px;min-width:0}.card,.table-card,.state-block{background:#fff;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 10px 30px #0f172a0a}.card{padding:24px}.state-block{padding:32px;text-align:center}.narrow-page{max-width:520px;margin:48px auto}.form-page{max-width:820px;margin:0 auto}.form{display:grid;gap:16px}.form label{display:grid;gap:8px;font-weight:700}.form input,.form textarea,.form select{width:100%;border:1px solid #d1d5db;border-radius:12px;padding:11px 13px;background:#fff}.form textarea{resize:vertical}.primary-button,.secondary-button{border:0;border-radius:12px;padding:11px 16px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.primary-button{background:#2454d6;color:#fff}.primary-button:hover{text-decoration:none;background:#1d43aa}.primary-button:disabled{opacity:.6;cursor:not-allowed}.secondary-button{background:#ffffff1a;color:#fff}.link-button{border:0;background:transparent;color:#2454d6;cursor:pointer;padding:0}.error-box{background:#fef2f2;color:#991b1b;border:1px solid #fecaca;padding:12px 14px;border-radius:12px}.success-box{background:#f0fdf4;color:#14532d;border:1px solid #bbf7d0;padding:20px;border-radius:14px}.work-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}.work-card{background:#fff;border:1px solid #e5e7eb;border-radius:18px;overflow:hidden;color:inherit}.work-card:hover{text-decoration:none;transform:translateY(-1px)}.work-card-image{height:180px;background:#eef2ff;display:flex;align-items:center;justify-content:center;color:#6b7280}.work-card-image img{width:100%;height:100%;object-fit:cover}.work-card-body{padding:16px}.work-card-body h3{margin-bottom:6px}.work-card-body p{margin:0;color:#6b7280}.work-detail{display:grid;grid-template-columns:minmax(280px,440px) minmax(0,1fr);gap:28px}.work-detail-gallery{display:grid;gap:12px;align-content:start}.work-detail-gallery img{width:100%;border-radius:14px;border:1px solid #e5e7eb}.status-pill{display:inline-flex;padding:5px 10px;border-radius:999px;background:#eef2ff;color:#3730a3;font-weight:700;margin-bottom:12px}.expert-panel{margin-top:28px;padding:20px;border-radius:16px;background:#f8fafc;border:1px solid #e5e7eb}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.metric-card{color:inherit}.metric-card:hover{text-decoration:none}.table-card{overflow:auto}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:13px 16px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:top}th{color:#6b7280;font-size:13px;text-transform:uppercase;letter-spacing:.04em}@media(max-width:900px){.topbar{padding:0 16px}.nav{gap:10px;font-size:14px}.page-shell,.admin-main{padding:18px}.admin-layout{grid-template-columns:1fr}.sidebar{position:static}.work-detail,.info-grid{grid-template-columns:1fr}}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid label,.form label{display:grid;gap:6px;font-weight:700;color:#334155}.form-grid input,.form input,.input{width:100%;border:1px solid #cbd5e1;border-radius:12px;padding:11px 13px;font:inherit;background:#fff}.form-grid input:focus,.form input:focus,.input:focus{outline:3px solid rgba(37,99,235,.14);border-color:#2563eb}.full-row{grid-column:1 / -1}.inline-button{display:inline-flex;text-decoration:none;width:fit-content}.auth-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px}.success-box{padding:12px 14px;border-radius:14px;background:#dcfce7;color:#166534;border:1px solid #86efac;margin:14px 0}.rbac-grid{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:20px;align-items:start}.rbac-users{position:sticky;top:18px}.user-list{display:grid;gap:8px;margin-top:12px;max-height:calc(100vh - 260px);overflow:auto}.user-row{text-align:left;border:1px solid #e2e8f0;border-radius:14px;background:#fff;padding:12px;display:grid;gap:4px;cursor:pointer}.user-row:hover,.user-row.active{border-color:#2563eb;background:#eff6ff}.user-row span,.user-row small{color:#64748b}.rbac-editor{display:grid;gap:22px}.rbac-block{display:grid;gap:14px}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.check-card{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:10px!important;border:1px solid #e2e8f0;border-radius:14px;padding:12px;background:#fff;cursor:pointer}.check-card input{width:auto!important;margin-top:4px}.check-card span{display:grid;gap:4px}.check-card small{color:#64748b;font-weight:500}.compact-input{max-width:280px}.permission-groups{display:grid;gap:18px}.permission-group{display:grid;gap:10px}.permission-table{display:grid;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden}.permission-row{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:12px 14px;border-bottom:1px solid #e2e8f0}.permission-row:last-child{border-bottom:0}.permission-row small{display:block;color:#64748b;margin-top:3px}.segmented{display:inline-flex;border:1px solid #cbd5e1;border-radius:999px;overflow:hidden;background:#fff}.segmented button{border:0;background:transparent;padding:8px 12px;cursor:pointer;font-weight:700;color:#475569}.segmented button.active{background:#1d4ed8;color:#fff}.empty-card{min-height:280px;display:grid;align-content:center;text-align:center}@media(max-width:900px){.form-grid,.rbac-grid,.permission-row{grid-template-columns:1fr}.rbac-users{position:static}}.auth-screen{min-height:calc(100vh - 68px);display:grid;grid-template-columns:minmax(280px,1fr) minmax(360px,520px);gap:28px;align-items:stretch;max-width:1180px;margin:0 auto;padding:34px 24px}.auth-screen--wide{grid-template-columns:minmax(300px,420px) minmax(0,1fr)}.auth-screen--compact{grid-template-columns:minmax(0,560px);justify-content:center}.auth-hero-card,.auth-side-card{position:relative;overflow:hidden;border-radius:28px;padding:30px;min-height:620px;display:flex;flex-direction:column;color:#fff;background:radial-gradient(circle at 16% 18%,rgba(250,204,21,.35),transparent 28%),radial-gradient(circle at 86% 72%,rgba(96,165,250,.28),transparent 32%),linear-gradient(135deg,#0f172a,#1e3a8a 48%,#7c2d12);box-shadow:0 24px 70px #0f172a38}.auth-side-card{min-height:auto}.auth-hero-card:after,.auth-side-card:after{content:"";position:absolute;inset:auto -90px -110px auto;width:320px;height:320px;border-radius:50%;background:#ffffff1a}.auth-brand{position:relative;z-index:1;display:inline-flex;align-items:center;gap:12px;color:inherit;text-decoration:none;width:fit-content}.auth-brand:hover{text-decoration:none}.auth-brand__mark{width:44px;height:44px;border-radius:15px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff29;border:1px solid rgba(255,255,255,.28);font-weight:900;letter-spacing:-.04em}.auth-brand strong{display:block;font-size:15px;line-height:1.2}.auth-brand small{display:block;color:#ffffffb8;margin-top:2px}.auth-panel .auth-brand{color:#0f172a;margin-bottom:28px}.auth-panel .auth-brand__mark{background:#eef2ff;border-color:#dbeafe;color:#1d4ed8}.auth-panel .auth-brand small{color:#64748b}.auth-hero-card__content,.auth-side-card__body{position:relative;z-index:1;margin-top:auto;max-width:560px}.auth-hero-card h1,.auth-side-card h1{color:#fff;font-size:clamp(34px,4vw,56px);line-height:.98;letter-spacing:-.055em;margin:0 0 18px}.auth-hero-card p,.auth-side-card p{color:#ffffffc7;font-size:17px;line-height:1.6}.auth-hero-card .eyebrow,.auth-side-card .eyebrow{color:#fde68a}.auth-role-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}.auth-role-grid article,.auth-checklist{border:1px solid rgba(255,255,255,.18);background:#ffffff1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:18px;padding:16px}.auth-role-grid span{display:inline-flex;color:#fde68a;font-size:12px;font-weight:900;margin-bottom:16px}.auth-role-grid strong{display:block;font-size:15px}.auth-role-grid small{color:#ffffffb8;display:block;margin-top:5px;line-height:1.35}.auth-panel{padding:32px;align-self:center;border-radius:28px}.auth-panel__header{margin-bottom:22px}.auth-panel__header h1,.auth-panel__header h2{margin-bottom:8px;font-size:clamp(28px,3vw,40px);line-height:1.04;letter-spacing:-.04em}.auth-panel__header.centered{text-align:center}.auth-form{display:grid;gap:16px}.auth-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-field{display:grid;gap:8px;font-weight:800;color:#334155}.auth-field input{width:100%;min-height:48px;border:1px solid #cbd5e1;border-radius:14px;padding:12px 14px;background:#fff;color:#0f172a}.auth-field input:focus{outline:4px solid rgba(37,99,235,.12);border-color:#2563eb}.password-control{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid #cbd5e1;border-radius:14px;background:#fff;overflow:hidden}.password-control:focus-within{outline:4px solid rgba(37,99,235,.12);border-color:#2563eb}.password-control input{border:0;border-radius:0}.password-control input:focus{outline:0}.password-control button{border:0;background:#f8fafc;color:#1d4ed8;font-weight:800;cursor:pointer;height:100%;padding:0 14px}.auth-submit{min-height:48px;width:100%}.auth-links--split{justify-content:space-between;border-top:1px solid #e2e8f0;padding-top:18px}.auth-bottom-link{margin:18px 0 0}.auth-checklist{position:relative;z-index:1;display:grid;gap:10px;margin-top:28px}.auth-check{display:flex;align-items:center;gap:10px;color:#ffffffbd}.auth-check span{width:24px;height:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff1f;color:#fff;font-weight:900}.auth-check.done{color:#fff}.auth-check.done span{background:#22c55e}.field-hint{color:#64748b;font-weight:600}.field-hint--danger{color:#b91c1c}.auth-success{display:grid;gap:12px;margin-bottom:18px}.auth-status-panel{display:grid;justify-items:center;text-align:center}.auth-status-panel .auth-brand{justify-self:start}.auth-status-icon{width:92px;height:92px;border-radius:28px;display:inline-flex;align-items:center;justify-content:center;margin:12px 0 20px;font-size:38px;font-weight:900;background:#eef2ff;color:#1d4ed8}.auth-status-icon.success{background:#dcfce7;color:#15803d}.auth-status-icon.error{background:#fee2e2;color:#b91c1c}@media(max-width:980px){.auth-screen,.auth-screen--wide{grid-template-columns:1fr;padding:18px}.auth-hero-card,.auth-side-card{min-height:auto}.auth-hero-card__content,.auth-side-card__body{margin-top:70px}.auth-role-grid{grid-template-columns:1fr}.auth-panel{align-self:stretch}}@media(max-width:640px){.auth-panel,.auth-hero-card,.auth-side-card{padding:22px;border-radius:22px}.auth-form-grid{grid-template-columns:1fr}.auth-links--split{display:grid;gap:10px;justify-content:stretch}.password-control{grid-template-columns:1fr}.password-control button{min-height:42px;border-top:1px solid #e2e8f0}}:root{--ts-bg: #f6f7fb;--ts-surface: #ffffff;--ts-surface-soft: #f8fafc;--ts-border: #e2e8f0;--ts-border-strong: #cbd5e1;--ts-text: #0f172a;--ts-muted: #64748b;--ts-primary: #2454d6;--ts-primary-dark: #1d43aa;--ts-danger: #dc2626;--ts-success: #059669;--ts-warning: #ea580c;--ts-info: #2563eb;--ts-radius-sm: 12px;--ts-radius-md: 16px;--ts-radius-lg: 22px;--ts-shadow-card: 0 14px 44px rgba(15, 23, 42, .06);--ts-focus: 0 0 0 4px rgba(36, 84, 214, .16)}:focus-visible{outline:none;box-shadow:var(--ts-focus)}::selection{background:#2454d62e}.page-shell,.admin-main{animation:ts-page-in .18s ease-out both}@keyframes ts-page-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.error-box,.success-box,.warning-box,.info-box,.empty-state{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:14px 16px;border-radius:var(--ts-radius-md);line-height:1.5;box-shadow:none}.error-box:before,.success-box:before,.warning-box:before,.info-box:before,.empty-state:before{width:24px;height:24px;border-radius:999px;display:inline-grid;place-items:center;font-size:13px;font-weight:900;line-height:1;flex:0 0 auto}.error-box{background:#fef2f2!important;color:#991b1b!important;border:1px solid #fecaca!important}.error-box:before{content:"!";background:#fee2e2;color:#b91c1c}.success-box{background:#ecfdf5!important;color:#14532d!important;border:1px solid #bbf7d0!important}.success-box:before{content:"✓";background:#dcfce7;color:#15803d}.warning-box{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.warning-box:before{content:"i";background:#ffedd5;color:#c2410c}.info-box,.empty-state{background:#eff6ff;color:#1e3a8a;border:1px solid #bfdbfe}.info-box:before,.empty-state:before{content:"i";background:#dbeafe;color:#1d4ed8}.error-box.compact,.success-box.compact,.warning-box.compact,.info-box.compact{padding:10px 12px;border-radius:14px}.form-hint,.field-hint{color:var(--ts-muted);font-size:13px;line-height:1.45}.field-error,.form-field-error{color:var(--ts-danger);font-size:13px;line-height:1.4;font-weight:700}.form input[aria-invalid=true],.form textarea[aria-invalid=true],.form select[aria-invalid=true],.form-grid input[aria-invalid=true],.form-grid textarea[aria-invalid=true],.form-grid select[aria-invalid=true],.input[aria-invalid=true]{border-color:#fca5a5!important;background:snow}.form input:disabled,.form textarea:disabled,.form select:disabled,.form-grid input:disabled,.form-grid textarea:disabled,.form-grid select:disabled,.input:disabled,button:disabled{opacity:.62;cursor:not-allowed}.form-actions,.action-row,.actions-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.primary-button,.secondary-button,.inline-button,.link-button,.segmented button{transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease,border-color .12s ease,color .12s ease}.primary-button:not(:disabled):hover,.secondary-button:not(:disabled):hover,.inline-button:not(:disabled):hover{transform:translateY(-1px)}.primary-button:not(:disabled):active,.secondary-button:not(:disabled):active,.inline-button:not(:disabled):active{transform:translateY(0)}.secondary-button.secondary-button--light,.secondary-button.light,.card .secondary-button,.auth-panel .secondary-button{background:#f1f5f9;color:#0f172a;border:1px solid #e2e8f0}.danger-button{border:0;border-radius:12px;padding:11px 16px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;background:#dc2626;color:#fff}.danger-button:hover{background:#b91c1c;text-decoration:none}.skeleton,.skeleton-line,.skeleton-card,[data-loading=true] .loading-shimmer{position:relative;overflow:hidden;background:#e2e8f0}.skeleton:after,.skeleton-line:after,.skeleton-card:after,[data-loading=true] .loading-shimmer:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.58),transparent);animation:ts-shimmer 1.25s infinite}.skeleton-line{height:12px;border-radius:999px}.skeleton-card{min-height:160px;border-radius:var(--ts-radius-lg)}.loading-card{padding:20px;border-radius:var(--ts-radius-lg);border:1px solid var(--ts-border);background:var(--ts-surface);display:grid;gap:14px}@keyframes ts-shimmer{to{transform:translate(100%)}}.table-card{border-radius:var(--ts-radius-lg);box-shadow:var(--ts-shadow-card)}.table-card table{min-width:720px}tbody tr{transition:background-color .12s ease}tbody tr:hover{background:#f8fafc}th{position:sticky;top:0;z-index:1;background:#fff}.cell-muted,.table-muted{color:var(--ts-muted)}.mobile-card-list{display:none}.filters,.filter-row,.toolbar-row,.page-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.filters>*,.filter-row>*,.toolbar-row>*,.page-toolbar>*{min-width:0}.modal-backdrop,.dialog-backdrop,.overlay-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a75}.modal,.dialog,.modal-card,.dialog-card{border-radius:24px;border:1px solid rgba(226,232,240,.9);box-shadow:0 28px 90px #0f172a3d}@media print{body{background:#fff!important}.topbar,.sidebar,.admin-sidebar,.page-toolbar,.filters,.filter-row,.no-print,button{display:none!important}.admin-layout{display:block!important}.admin-main,.page-shell{padding:0!important;max-width:none!important}.card,.table-card{box-shadow:none!important;border-color:#cbd5e1!important}}@media(max-width:760px){.page-title-row{display:grid;gap:12px}.primary-button,.secondary-button,.danger-button,.inline-button{width:100%}.form-actions,.action-row,.actions-row,.filters,.filter-row,.toolbar-row,.page-toolbar{align-items:stretch}.filters>*,.filter-row>*,.toolbar-row>*,.page-toolbar>*{width:100%}.table-card{overflow-x:auto;-webkit-overflow-scrolling:touch}th,td{padding:11px 12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}:root{--mobile-safe-gap: clamp(12px, 3vw, 20px);--mobile-safe-radius: 18px}html,body,#app{max-width:100%;overflow-x:clip}img,svg,video,canvas,iframe{max-width:100%}button,input,select,textarea{min-width:0}.card,.table-card,.state-block,.work-card,.metric-card,.auth-panel,.auth-hero-card,.auth-side-card,.admin-main,.page-shell,.modal-card,.dialog-card,.ts-dialog-card,.panel,.rbac-editor,.permission-row,.timeline-item,.application-card,.session-card,.stage-card,.notification-card{min-width:0;overflow-wrap:anywhere}.table-card,.table-responsive,.responsive-table,.table-wrap,.data-table-wrap,.overflow-table{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-card>table,.table-responsive>table,.responsive-table>table,.table-wrap>table,.data-table-wrap>table,.overflow-table>table{min-width:760px}.actions,.action-row,.button-row,.toolbar,.filters,.filter-row,.form-actions,.page-actions,.card-actions,.modal-actions,.dialog-actions,.ts-dialog-actions{display:flex;flex-wrap:wrap;gap:10px;min-width:0}.toolbar,.filters,.filter-row{align-items:center}.actions>*,.action-row>*,.button-row>*,.toolbar>*,.filters>*,.filter-row>*,.form-actions>*,.page-actions>*,.card-actions>*,.modal-actions>*,.dialog-actions>*,.ts-dialog-actions>*{min-width:0}.form-grid,.profile-grid,.info-grid,.dashboard-grid,.stats-grid,.metrics-grid,.work-grid,.application-grid,.session-grid,.stage-grid,.documents-grid,.qr-grid{min-width:0}.form input,.form textarea,.form select,.form-grid input,.form-grid textarea,.form-grid select,.input,.p-inputtext,.p-dropdown,.p-multiselect,.p-calendar,.p-inputnumber{max-width:100%}.p-dialog,.p-dialog-content,.p-dialog-header,.p-dialog-footer,.p-overlaypanel,.p-popover,.p-menu,.ts-dialog-card,.dialog-card,.modal-card{max-width:calc(100vw - 24px)!important}.p-dialog-content,.modal-body,.dialog-body,.ts-dialog-body{overflow-x:auto}.primary-button,.secondary-button,.link-button,.inline-button,button,a.button,.p-button{min-height:38px}@media(max-width:1024px){.page-title-row,.section-title-row,.hero-actions,.admin-hero,.auth-screen,.work-detail,.rbac-grid,.two-column,.split-layout,.detail-layout,.documents-layout,.qr-layout{grid-template-columns:1fr!important}.page-title-row,.section-title-row,.hero-actions,.admin-hero{align-items:stretch}.sticky,.rbac-users,.expert-sticky,.side-panel,.aside-panel{position:static!important;top:auto!important}}@media(max-width:760px){.page-shell,.admin-main,.auth-screen{padding-left:var(--mobile-safe-gap)!important;padding-right:var(--mobile-safe-gap)!important}.card,.table-card,.state-block,.auth-panel,.auth-hero-card,.auth-side-card,.modal-card,.dialog-card,.ts-dialog-card{border-radius:var(--mobile-safe-radius)!important;padding:var(--mobile-safe-gap)!important}.topbar,.public-topbar,.admin-topbar{min-height:60px;height:auto!important;flex-wrap:wrap;gap:10px}.sidebar,.side-nav{max-width:100%}.metrics-grid,.stats-grid,.dashboard-grid,.info-grid,.form-grid,.profile-grid,.work-grid,.application-grid,.session-grid,.stage-grid,.documents-grid,.qr-grid{grid-template-columns:1fr!important}.toolbar,.filters,.filter-row,.actions,.action-row,.button-row,.form-actions,.page-actions,.card-actions,.modal-actions,.dialog-actions,.ts-dialog-actions{align-items:stretch}.toolbar>*,.filters>*,.filter-row>*,.actions>*,.action-row>*,.button-row>*,.form-actions>*,.page-actions>*,.card-actions>*,.modal-actions>*,.dialog-actions>*,.ts-dialog-actions>*{flex:1 1 100%}.primary-button,.secondary-button,.inline-button,.p-button,a.button{width:100%;justify-content:center}th,td{padding:10px 12px}.hide-on-mobile,.desktop-only{display:none!important}}@media(max-width:520px){.page-shell,.admin-main,.auth-screen{padding-top:14px!important;padding-bottom:14px!important}h1{font-size:clamp(24px,8vw,34px);line-height:1.08}h2{font-size:clamp(20px,6vw,28px)}.table-card>table,.table-responsive>table,.responsive-table>table,.table-wrap>table,.data-table-wrap>table,.overflow-table>table{min-width:640px}.p-dialog,.ts-dialog-card,.dialog-card,.modal-card{width:calc(100vw - 18px)!important}}.app-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:grid;place-items:center;padding:20px;background:#0f172a94;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:app-dialog-fade .14s ease-out}.app-dialog-leave{opacity:0;transition:opacity .14s ease-out}.app-dialog-card{width:min(560px,100%);display:grid;grid-template-columns:48px 1fr;gap:16px;padding:20px;border-radius:24px;background:var(--surface-card, #fff);color:var(--text-color, #0f172a);box-shadow:0 24px 80px #0f172a47;border:1px solid rgb(148 163 184 / 22%);transform-origin:center;animation:app-dialog-pop .14s ease-out}.app-dialog-card--prompt{width:min(660px,100%)}.app-dialog-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:18px;font-weight:900;background:#2563eb1a;color:#2563eb}.app-dialog-card--danger .app-dialog-icon{background:#dc26261a;color:#dc2626}.app-dialog-card--warning .app-dialog-icon{background:#d977061f;color:#d97706}.app-dialog-card--success .app-dialog-icon{background:#16a34a1f;color:#16a34a}.app-dialog-body h2{margin:0;font-size:20px;line-height:1.25;letter-spacing:-.02em}.app-dialog-body p{margin:8px 0 0;color:var(--text-muted, #64748b);line-height:1.55}.app-dialog-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.app-dialog-btn{min-height:40px;border-radius:999px;padding:0 18px;border:1px solid transparent;font-weight:800;cursor:pointer}.app-dialog-btn--ghost{background:transparent;color:var(--text-color, #0f172a);border-color:#94a3b857}.app-dialog-btn--primary{background:var(--primary-color, #2563eb);color:#fff}.app-dialog-card--danger .app-dialog-btn--primary{background:#dc2626}.app-dialog-textarea{width:100%;margin-top:14px;resize:vertical;min-height:120px;border-radius:18px;border:1px solid rgb(148 163 184 / 35%);padding:12px 14px;font:inherit;outline:none}.app-dialog-textarea:focus{border-color:var(--primary-color, #2563eb);box-shadow:0 0 0 4px #2563eb1f}.app-dialog-error{margin-top:8px;color:#dc2626;font-weight:700;font-size:13px}.app-dialog-templates{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.app-dialog-templates button{border:1px solid rgb(148 163 184 / 30%);border-radius:999px;background:#f8fafceb;color:#334155;padding:7px 10px;cursor:pointer;font-weight:700;font-size:12px}@keyframes app-dialog-fade{0%{opacity:0}to{opacity:1}}@keyframes app-dialog-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:560px){.app-dialog-overlay{padding:12px;align-items:end}.app-dialog-card{grid-template-columns:1fr;border-radius:22px}.app-dialog-icon{display:none}.app-dialog-actions{flex-direction:column-reverse}.app-dialog-btn{width:100%}}
