body .admin-page:not(:has(.dashboard-hero)){--admin-green: #07543a;--admin-green-dark: #043f2c;--admin-mint: #e8f5ee;--admin-ink: #10251d;--admin-muted: #66776f;max-width:1440px;margin:0 auto}body .admin-page:not(:has(.dashboard-hero))>h1,body .admin-page:not(:has(.dashboard-hero))>.page-heading{position:relative;overflow:hidden;margin:0 0 26px;border:0;border-radius:22px;background:radial-gradient(circle at 92% 12%,rgba(255,255,255,.13) 0 70px,transparent 71px),radial-gradient(circle at 74% 130%,rgba(255,255,255,.08) 0 150px,transparent 151px),linear-gradient(120deg,var(--admin-green-dark),#08704d 72%,#15956a);padding:30px 34px;box-shadow:0 18px 42px #043f2c29;color:#fff}body .admin-page:not(:has(.dashboard-hero))>h1{min-height:112px;display:flex;align-items:center;font-size:clamp(1.65rem,2.5vw,2.25rem);letter-spacing:-.035em;color:#fff!important}body .admin-page>.page-heading{display:flex;align-items:center;justify-content:space-between;gap:28px}body .admin-page>.page-heading h1{margin:0 0 8px;color:#fff!important;font-size:clamp(1.65rem,2.5vw,2.25rem);letter-spacing:-.035em}body .admin-page>.page-heading p{max-width:700px;margin:0;color:#d7eee4;line-height:1.55}body .admin-page>.page-heading .filter{min-width:220px;color:#e5f5ed}body .admin-page>.page-heading .filter select{margin-top:7px;border-color:#fff6;background:#fff;color:var(--admin-ink)}body .admin-page>p:has(>a[routerlink]),body .admin-page>.back-link{margin:-10px 0 20px}body .admin-page>p:has(>a[routerlink]) a,body .admin-page>.back-link a{display:inline-flex;align-items:center;gap:7px;border:1px solid #cfe1d7;border-radius:999px;background:#fff;padding:8px 13px;color:var(--admin-green);font-size:.82rem;font-weight:750;text-decoration:none}body .admin-page>p:has(>a[routerlink]) a:before,body .admin-page>.back-link a:before{content:"\2190"}body .admin-page app-app-card{display:block;margin-bottom:22px}body .admin-page app-app-card .app-card{overflow:hidden;border:1px solid #dfe9e4;border-radius:18px;background:#fff;padding:0;box-shadow:0 10px 30px #19372b0e}body .admin-page app-app-card .app-card__header{margin:0;border-bottom:1px solid #e8efeb;background:linear-gradient(135deg,#f6fbf8,#fff);padding:19px 22px}body .admin-page app-app-card .app-card__title{color:var(--admin-ink);font-size:1.05rem;letter-spacing:-.015em}body .admin-page app-app-card .app-card__title:before{display:inline-block;width:7px;height:7px;margin-right:9px;border-radius:50%;background:#26a36f;box-shadow:0 0 0 5px #e2f3e9;vertical-align:2px;content:""}body .admin-page app-app-card .app-card__body{padding:22px}body .admin-page .admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 20px;max-width:none}body .admin-page .admin-form label,body .admin-page .status-form label{display:flex;flex-direction:column;gap:7px;color:#3b4f47;font-size:.8rem;font-weight:700}body .admin-page input,body .admin-page select,body .admin-page textarea{width:100%;min-height:45px;box-sizing:border-box;border:1px solid #cfddd6;border-radius:10px;background:#fff;padding:10px 12px;color:var(--admin-ink);font:inherit;font-weight:400;transition:border-color .16s ease,box-shadow .16s ease}body .admin-page input:focus,body .admin-page select:focus,body .admin-page textarea:focus{outline:0;border-color:var(--admin-green);box-shadow:0 0 0 4px #07543a1c}body .admin-page button{min-height:42px;border:0;border-radius:9px;background:linear-gradient(135deg,var(--admin-green),#0a7652);padding:10px 17px;color:#fff;font:inherit;font-size:.82rem;font-weight:750;cursor:pointer;box-shadow:0 7px 16px #07543a24;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}body .admin-page button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 20px #07543a33}body .admin-page button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}body .admin-page .admin-form>button{align-self:end;justify-self:start}body .admin-page .form-actions{display:flex;align-items:end;gap:10px}body .admin-page .button-secondary,body .admin-page .pagination button,body .admin-page .reset-button{border:1px solid #b9d1c4;background:#fff;color:var(--admin-green);box-shadow:none}body .admin-page .table-wrap{overflow:auto;border:1px solid #e1ebe6;border-radius:13px}body .admin-page table{width:100%;border-collapse:separate;border-spacing:0;font-size:.84rem}body .admin-page thead{background:#f1f8f4}body .admin-page th{border:0;border-bottom:1px solid #dbe8e1;padding:13px 15px;color:#536860;font-size:.7rem;font-weight:800;letter-spacing:.045em;text-align:left;text-transform:uppercase}body .admin-page td{border:0;border-bottom:1px solid #edf2ef;padding:14px 15px;color:#273c34;vertical-align:middle}body .admin-page tbody tr:last-child td{border-bottom:0}body .admin-page tbody tr{transition:background .15s ease}body .admin-page tbody tr:hover{background:#f8fbf9}body .admin-page td a{display:inline-flex;border-radius:8px;background:var(--admin-mint);padding:7px 11px;color:var(--admin-green);font-weight:750;text-decoration:none}body .admin-page .alert{border-radius:11px;padding:13px 15px;font-size:.85rem}body .admin-page .alert--error{border:1px solid #fecaca;background:#fef2f2;color:#b91c1c}body .admin-page .alert--success{border:1px solid #a7f3d0;background:#ecfdf5;color:#065f46}body .admin-page .detail-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:22px}body .admin-page .detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}body .admin-page .detail-list div{border-radius:11px;background:#f6faf8;padding:13px 15px}body .admin-page .detail-list dt{color:var(--admin-muted);font-size:.72rem;font-weight:700}body .admin-page .detail-list dd{margin:5px 0 0;color:var(--admin-ink);font-weight:650}body .admin-page .message-body{margin:0;white-space:pre-wrap;line-height:1.75}body .admin-page .status{display:inline-flex;border-radius:999px;background:#eef3f0;padding:6px 10px;color:#50655c;font-size:.72rem;font-weight:750}body .admin-page .status--new{background:#fff2da;color:#9a570e}body .admin-page .status--in_progress{background:#e3effb;color:#236695}body .admin-page .status--resolved{background:#e3f5ea;color:#087247}body .admin-page .pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;color:var(--admin-muted);font-size:.8rem}body .admin-page .pagination>div{display:flex;align-items:center;gap:10px}body .admin-page .tree{border-left:1px solid #c9ddd2;padding-left:20px}body .admin-page .tree .node{border:1px solid #e1ebe6;border-radius:11px;background:#fbfdfc;padding:11px 13px;transition:.15s ease}body .admin-page .tree .node:hover{border-color:#9fc9b1;box-shadow:0 6px 16px #19372b0f}body .admin-page .node-details span{border-radius:999px;background:#e8f5ee;padding:4px 8px;color:var(--admin-green);font-size:.68rem}body .admin-page .node-edit{min-height:34px;padding:7px 11px}body .admin-page .scope-list{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none}body .admin-page .scope-list li{border:1px solid #cfe1d7;border-radius:999px;background:#f3faf6;padding:7px 11px;color:var(--admin-green);font-size:.78rem}@media(max-width:850px){body .admin-page>.page-heading{align-items:flex-start;flex-direction:column}body .admin-page>.page-heading .filter{width:100%}body .admin-page .admin-form,body .admin-page .detail-grid{grid-template-columns:1fr}}@media(max-width:600px){body .admin-page:not(:has(.dashboard-hero))>h1,body .admin-page:not(:has(.dashboard-hero))>.page-heading{border-radius:16px;padding:24px 21px}body .admin-page app-app-card .app-card__body,body .admin-page app-app-card .app-card__header{padding:17px}body .admin-page .detail-list{grid-template-columns:1fr}body .admin-page .pagination{align-items:flex-start;flex-direction:column}}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page){--space-accent:#08704d;--space-dark:#043f2c;--space-bright:#1aa06f;--space-soft:#e8f5ee;--space-border:#dce8e2;--space-ink:#10251d;--space-muted:#66776f;max-width:1440px;margin:0 auto}body .operator-page{--space-accent:#07543a;--space-dark:#073b31;--space-bright:#16856a;--space-soft:#e5f3ed}body .supervisor-page{--space-accent:#176b63;--space-dark:#12483f;--space-bright:#278f82;--space-soft:#e4f4f1}body .partner-page{--space-accent:#6f6413;--space-dark:#3e4516;--space-bright:#a98e24;--space-soft:#f5f2df;--space-border:#e7e1bd}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page)>h1,body :is(.operator-page,.supervisor-page,.partner-page)>.page-header{position:relative;overflow:hidden;min-height:108px;box-sizing:border-box;margin:0 0 24px;border-radius:22px;background:radial-gradient(circle at 92% 5%,rgba(255,255,255,.13) 0 70px,transparent 71px),radial-gradient(circle at 72% 145%,rgba(255,255,255,.08) 0 155px,transparent 156px),linear-gradient(120deg,var(--space-dark),var(--space-accent) 72%,var(--space-bright));padding:29px 34px;box-shadow:0 18px 42px color-mix(in srgb,var(--space-dark) 20%,transparent);color:#fff!important}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page)>h1{display:flex;align-items:center;font-size:clamp(1.65rem,2.5vw,2.25rem);letter-spacing:-.035em}body :is(.operator-page,.supervisor-page,.partner-page)>.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px}body :is(.operator-page,.supervisor-page,.partner-page)>.page-header h1{margin:0;color:#fff!important;font-size:clamp(1.65rem,2.5vw,2.25rem);letter-spacing:-.035em}body :is(.operator-page,.supervisor-page,.partner-page)>.page-header a,body :is(.operator-page,.supervisor-page,.partner-page)>.page-header .btn{border:1px solid rgba(255,255,255,.45);border-radius:10px;background:#fff;padding:10px 15px;color:var(--space-accent);font-size:.82rem;font-weight:800;text-decoration:none;box-shadow:0 8px 18px #0000001a}body .youth-page>.page-intro,body .operator-page>.terminal-intro{max-width:850px;margin:-11px 0 23px;border-left:3px solid var(--space-bright);padding:7px 0 7px 14px;color:var(--space-muted);line-height:1.55}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) app-app-card{display:block;margin-bottom:22px}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) app-app-card .app-card{overflow:hidden;border:1px solid var(--space-border);border-radius:18px;background:#fff;padding:0;box-shadow:0 10px 30px #19372b0e}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) app-app-card .app-card__header{margin:0;border-bottom:1px solid #e8efeb;background:linear-gradient(135deg,color-mix(in srgb,var(--space-soft) 64%,#fff),#fff);padding:19px 22px}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) app-app-card .app-card__title{color:var(--space-ink);font-size:1.05rem;letter-spacing:-.015em}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) app-app-card .app-card__title:before{display:inline-block;width:7px;height:7px;margin-right:9px;border-radius:50%;background:var(--space-bright);box-shadow:0 0 0 5px var(--space-soft);vertical-align:2px;content:""}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) app-app-card .app-card__body{padding:22px}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-bottom:24px}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) app-stat-card .stat-card{min-width:0;min-height:122px;box-sizing:border-box;border:1px solid var(--space-border);border-radius:17px;background:linear-gradient(145deg,#fff,color-mix(in srgb,var(--space-soft) 40%,#fff));padding:20px;box-shadow:0 9px 24px #19372b0e;transition:transform .16s ease,box-shadow .16s ease}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) app-stat-card .stat-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px #19372b1a}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) app-stat-card .stat-card__label{color:var(--space-muted);font-weight:650}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) app-stat-card .stat-card__value{color:var(--space-accent);font-size:2rem}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) input,body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) select,body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) textarea{width:100%;min-height:45px;box-sizing:border-box;border:1px solid #cfddd6;border-radius:10px;background:#fff;padding:10px 12px;color:var(--space-ink);font:inherit;transition:border-color .16s ease,box-shadow .16s ease}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) input:focus,body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) select:focus,body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) textarea:focus{outline:0;border-color:var(--space-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--space-accent) 12%,transparent)}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) label>span{color:#3b4f47;font-size:.8rem;font-weight:700}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) button,body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) :is(.link-btn,.action-button,.back-link){border:0;border-radius:9px;background:linear-gradient(135deg,var(--space-accent),var(--space-bright));padding:10px 17px;color:#fff;font:inherit;font-size:.82rem;font-weight:750;text-decoration:none;cursor:pointer;box-shadow:0 7px 16px color-mix(in srgb,var(--space-accent) 18%,transparent);transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) button:hover:not(:disabled),body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) :is(.link-btn,.action-button,.back-link):hover{transform:translateY(-1px);box-shadow:0 10px 20px color-mix(in srgb,var(--space-accent) 24%,transparent)}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) :is(.secondary-button,.btn-secondary){border:1px solid #b9d1c4;background:#fff;color:var(--space-accent);box-shadow:none}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) .table-wrap{overflow:auto;border:1px solid #e1ebe6;border-radius:13px}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) table{width:100%;border-collapse:separate;border-spacing:0;font-size:.84rem}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) thead{background:color-mix(in srgb,var(--space-soft) 66%,#fff)}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) th{border:0;border-bottom:1px solid #dbe8e1;padding:13px 15px;color:#536860;font-size:.7rem;font-weight:800;letter-spacing:.045em;text-align:left;text-transform:uppercase}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) td{border:0;border-bottom:1px solid #edf2ef;padding:14px 15px;color:#273c34;vertical-align:middle}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) tbody tr:last-child td{border-bottom:0}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) tbody tr:hover{background:#f8fbf9}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) td a{display:inline-flex;border-radius:8px;background:var(--space-soft);padding:7px 11px;color:var(--space-accent);font-weight:750;text-decoration:none}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) .cta-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) .cta-list a{position:relative;min-height:64px;display:flex;align-items:center;border:1px solid var(--space-border);border-radius:12px;background:#fff;padding:14px 38px 14px 15px;color:var(--space-ink);font-size:.84rem;font-weight:750;text-decoration:none;transition:.16s ease}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) .cta-list a:after{position:absolute;right:15px;color:var(--space-accent);content:"\2192"}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) .cta-list a:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--space-accent) 45%,#fff);background:color-mix(in srgb,var(--space-soft) 46%,#fff)}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) :is(.activity-list,.item-list,.opportunity-list,.registration-list,.review-list){display:grid;gap:12px;margin:0;padding:0;list-style:none}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) :is(.activity-list,.item-list,.opportunity-list,.registration-list,.review-list)>li{border:1px solid var(--space-border);border-radius:13px;background:#fff;padding:16px;box-shadow:0 5px 14px #19372b09;transition:border-color .16s ease,transform .16s ease}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) :is(.activity-list,.item-list,.opportunity-list,.registration-list,.review-list)>li:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--space-accent) 40%,#fff)}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) :is(.badge,.status-badge){display:inline-flex;border-radius:999px;background:var(--space-soft);padding:5px 9px;color:var(--space-accent);font-size:.7rem;font-weight:800}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) .meta{color:var(--space-muted);font-size:.78rem;line-height:1.5}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) .alert{border-radius:11px;padding:13px 15px;font-size:.85rem}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) .alert--error{border:1px solid #fecaca;background:#fef2f2;color:#b91c1c}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) .alert--success{border:1px solid #a7f3d0;background:#ecfdf5;color:#065f46}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) .alert--warn{border:1px solid #fed7aa;background:#fff7ed;color:#9a3412}body .operator-page .profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}body .operator-page .profile-grid div{border-radius:11px;background:#f6faf8;padding:13px 15px}body .operator-page .profile-grid dt{color:var(--space-muted);font-size:.72rem;font-weight:700}body .operator-page .profile-grid dd{margin:5px 0 0;color:var(--space-ink);font-weight:650}body .partner-page>.back{display:inline-flex;align-items:center;gap:7px;margin:0 0 12px;border:1px solid var(--space-border);border-radius:999px;background:#fff;padding:8px 13px;color:var(--space-accent);font-size:.8rem;font-weight:750;text-decoration:none}body .partner-page>.back:before{content:"\2190"}body .partner-page>.back+h1{margin-top:0}body .partner-page .edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 20px}body .partner-page .edit-form>label:nth-child(-n+2){grid-column:1 / -1}body .partner-page .edit-form label{display:flex;flex-direction:column;gap:7px}body .partner-page .edit-form .date-grid{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}body .partner-page .edit-form>button{justify-self:start}body .partner-page .link-btn{display:inline-flex;margin-top:16px}body .partner-page .row-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:9px}body .partner-page .row-actions a{border:1px solid var(--space-border);border-radius:8px;background:var(--space-soft);padding:8px 12px;color:var(--space-accent);font-size:.78rem;font-weight:750;text-decoration:none}body .partner-page .participation-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}body .partner-page .participation-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--space-border);border-radius:11px;background:#fff;padding:13px 15px}body .partner-page .participation-list .status{border-radius:999px;background:var(--space-soft);padding:5px 9px;color:var(--space-accent);font-size:.7rem;font-weight:800}body .partner-page>.subtitle{margin:-11px 0 22px;border-left:3px solid var(--space-bright);padding:7px 0 7px 14px;color:var(--space-muted);font-weight:650}@media(max-width:760px){body :is(.operator-page,.supervisor-page,.partner-page)>.page-header{align-items:flex-start;flex-direction:column}}@media(max-width:600px){body :is(.youth-page,.operator-page,.supervisor-page,.partner-page)>h1,body :is(.operator-page,.supervisor-page,.partner-page)>.page-header{min-height:92px;border-radius:16px;padding:23px 21px}body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) app-app-card .app-card__body,body :is(.youth-page,.operator-page,.supervisor-page,.partner-page) app-app-card .app-card__header{padding:17px}body .partner-page .edit-form,body .partner-page .edit-form .date-grid{grid-template-columns:1fr}body .partner-page .participation-list li{align-items:flex-start;flex-direction:column}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Segoe UI,Helvetica Neue,sans-serif;color:#0f172a;background:#f5f7fa}button,input,select{font:inherit}a{color:inherit}
