.phx{--phx-ink:#183847;--phx-accent:#096b64;max-width:1000px;margin:24px auto;padding:clamp(14px,3vw,30px);color:var(--phx-ink);font:inherit;line-height:1.9;background:#f4f7f6;border-radius:22px;text-align:right}.phx *{box-sizing:border-box}.phx header{padding:20px 0}.phx h2{font-size:clamp(24px,4vw,36px);line-height:1.6}.phx h3{font-size:22px;margin:0 0 16px}.phx a{color:var(--phx-accent);text-underline-offset:4px}.phx-steps{display:flex;gap:10px;padding:0;list-style:none;flex-wrap:wrap}.phx-steps li{flex:1;min-width:170px;padding:12px;border-radius:12px;background:#e3ebe8}.phx-steps [aria-current],.phx-steps .done{background:#d1ede3;border:1px solid #167d66}.phx-card{padding:clamp(16px,3vw,28px);background:white;border:1px solid #dbe5e1;border-radius:16px;margin:20px 0}.phx-form{display:grid;gap:14px;margin:16px 0}.phx-form label{display:grid;gap:6px;font-weight:600}.phx-form input:not([type=checkbox]),.phx-form textarea,.phx-form select{width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #8daba1;border-radius:8px;background:#fff;color:#183847;font:inherit}.phx-form textarea{resize:vertical}.phx-form button{border:0;border-radius:9px;background:var(--phx-accent);color:white;min-height:46px;padding:10px 22px;justify-self:start;font:inherit;cursor:pointer}.phx-form button:disabled{opacity:.6;cursor:wait}.phx :focus-visible{outline:3px solid #dc9e24;outline-offset:3px}.phx-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.phx-tabs,.phx-routes{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.phx-tabs a,.phx-routes a{padding:10px 18px;border:1px solid #9eb9af;border-radius:10px;text-decoration:none}.phx-tabs [aria-current]{background:var(--phx-accent);color:#fff}.phx-invite{border-top:1px solid #dbe5e1;padding:18px 0}.phx-notice{background:#fff3d7;border:1px solid #b57c17;padding:16px;border-radius:10px;overflow-wrap:anywhere}.phx .phx-check{display:flex;align-items:center}.phx details{padding:14px;background:#f4f7f6;border-radius:10px}.phx summary{cursor:pointer;font-weight:700}.phx li,.phx p{overflow-wrap:anywhere}@media(max-width:600px){.phx{margin:0;border-radius:0}.phx-grid{grid-template-columns:1fr}.phx-steps{display:grid;grid-template-columns:1fr}.phx-form button{width:100%}.phx-tabs a,.phx-routes a{flex:1;text-align:center}.phx-card{padding:16px}}
.phx fieldset{min-width:0;border:1px solid #dbe5e1;border-radius:10px;padding:16px}.phx fieldset[hidden]{display:none}.phx-invite input[readonly]{box-sizing:border-box;display:block;width:100%;min-width:0;padding:10px;border:1px solid #8daba1;border-radius:8px;font:inherit}
.phx-form .phx-password-field{position:relative;display:block;min-width:0}
.phx-form .phx-password-field input{padding-left:58px}
.phx-form .phx-password-toggle{position:absolute;left:4px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;margin:0;padding:10px;border:0;border-radius:6px;background:transparent;color:var(--phx-ink);box-shadow:none}
.phx-form .phx-password-toggle:hover{background:#096b6410}
.phx-password-toggle svg{display:block;flex:none;pointer-events:none}
.phx-password-toggle .phx-password-slash{display:none}
.phx-password-toggle[aria-pressed="true"] .phx-password-slash{display:block}
.phx-password-field input::-ms-reveal,.phx-password-field input::-ms-clear{display:none}

/* Unified public entry: shared deadlines/resources and one active authentication form. */
.phx:has(.phx-entry-grid){max-width:1140px}
.phx-entry-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:24px;direction:ltr;align-items:start}
.phx-entry-grid>*{direction:rtl;min-width:0}
.phx-entry-grid .phx-card{margin:0}
.phx-entry-info{display:grid;gap:20px;min-width:0}
.phx-deadline{padding:22px 18px;border-radius:16px;border:1px solid #b68d4b;background:linear-gradient(130deg,#173340,#2d4651);color:#fff}
.phx-entry-kicker{color:#ffda78;font-size:13px}
.phx .phx-deadline h3{font-size:20px;color:#fff;margin:6px 0 18px}
.phx-clock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;direction:rtl;text-align:center}
.phx-clock>div{display:grid;gap:2px;padding:10px 4px;border-radius:10px;background:#ffffff10;border:1px solid #ffffff22}
.phx-clock b{font-size:27px;line-height:1.4;color:#ffda78;font-variant-numeric:tabular-nums}
.phx-clock span{font-size:12px;color:#e8eef1}
.phx-deadline p{margin:14px 0 0;font-size:13px;color:#e8eef1}
.phx-resource-list{padding:20px;border:1px solid #d6c7aa;border-radius:16px;background:#fffefa}
.phx-resource-list>h3{font-size:19px;margin-bottom:6px}.phx-resource-list>p{font-size:13px;margin:0 0 12px}
.phx-resource{padding:16px 0;border-top:1px solid #e8dfce}
.phx-resource:last-child{padding-bottom:0}.phx-resource-title{display:flex;gap:10px;align-items:center}
.phx-resource-title svg{flex:none;color:#9c7129}.phx-resource h4{margin:0;font-size:16px}
.phx-resource p{font-size:13px;margin:7px 0}.phx-resource img{max-width:100%;max-height:180px;object-fit:contain;border-radius:10px;margin-bottom:12px}
.phx-resource a{display:inline-flex;align-items:center;gap:10px;margin-top:10px;min-height:44px;font-size:14px;font-weight:700;text-decoration:none}
.phx-auth-tabs{display:flex;gap:6px;padding:5px;margin-bottom:24px;background:#e8ece9;border-radius:12px}
.phx .phx-auth-tabs a{flex:1;display:flex;justify-content:center;align-items:center;min-height:48px;border-radius:9px;font-weight:800;text-decoration:none;color:#38505b}
.phx .phx-auth-tabs [aria-selected="true"]{background:#096b64;color:#fff;box-shadow:0 3px 10px #17334020}
.phx-auth [hidden]{display:none!important}
.phx-auth [role="tabpanel"]>p{font-size:14px}.phx-auth h3{font-size:22px;margin-bottom:8px}
.phx-auth .phx-form{margin-bottom:0}.phx-auth .phx-login-help{border-top:1px solid #e8dfce;padding-top:20px;margin-top:24px}
.phx details.phx-resources-fold{margin:18px 0}.phx-resources-fold .phx-entry-info{margin-top:18px;grid-template-columns:repeat(2,minmax(0,1fr))}
body.mett-phoenix-page .phx:has(.phx-entry-grid)>header{padding:24px;margin-bottom:24px}
.phx:has(.phx-entry-grid)>header h2{margin:8px 0;font-size:clamp(25px,3vw,36px)}
.phx:has(.phx-entry-grid)>header p{margin:8px 0 0}
@media(max-width:800px){.phx-entry-grid{grid-template-columns:1fr}.phx-entry-info{grid-template-columns:1fr}.phx-resources-fold .phx-entry-info{grid-template-columns:1fr}.phx-entry-grid .phx-auth{order:2}.phx-clock b{font-size:24px}}

body.mett-phoenix-page main:has(.phx-entry-grid){padding-top:88px;padding-bottom:32px}
