@font-face{font-family:Schibsted Grotesk;font-style:normal;font-display:swap;font-weight:400 900;src:url(/fonts/schibsted-grotesk-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Schibsted Grotesk;font-style:normal;font-display:swap;font-weight:400 900;src:url(/fonts/schibsted-grotesk-latin-ext-wght-normal.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:100 800;src:url(/fonts/jetbrains-mono-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:100 800;src:url(/fonts/jetbrains-mono-latin-ext-wght-normal.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--color-primary: #111214;--color-accent: #3f6212;--color-accent-dark: #365314;--color-accent-strong: #3f6212;--color-accent-soft: color-mix(in srgb, #3f6212 10%, transparent);--color-accent-2: var(--color-accent);--color-accent-2-dark: var(--color-accent-dark);--color-accent-glow: color-mix(in srgb, #3f6212 18%, transparent);--color-on-accent: #ffffff;--color-background: #f7f7f4;--color-surface: #ffffff;--color-surface-2: #efefeb;--color-text: #2b2e33;--color-text-muted: #565c64;--color-text-heading: #111214;--color-border: #dddcd5;--color-border-strong: #bdbcb4;--color-border-control: #6b7078;--color-divider: rgba(17, 18, 20, .08);--color-grid: rgba(17, 18, 20, .05);--color-warning-text: #8a4b00;--admin-control-h: 3.6rem;--admin-icon-btn: 3.2rem;--admin-form-max: 84rem;--color-success: #15803d;--color-error: #c81e1e;--color-warning: #b45309;--color-scrim: rgba(12, 13, 15, .55);--color-overlay: rgba(12, 13, 15, .72);--gradient-brand: linear-gradient(var(--color-accent), var(--color-accent));--gradient-brand-hover: linear-gradient(var(--color-accent-dark), var(--color-accent-dark));--gradient-text: linear-gradient(var(--color-text-heading), var(--color-text-heading));--shadow-sm: 0 1px 2px 0 rgba(17, 18, 20, .06);--shadow-md: 0 6px 18px -8px rgba(17, 18, 20, .18);--shadow-lg: 0 24px 48px -16px rgba(17, 18, 20, .22);--shadow-accent: none;--font-main: "Schibsted Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--space-xs: .4rem;--space-sm: 1.2rem;--space-md: 2.4rem;--space-lg: 4.8rem;--space-xl: 8rem;--space-2xl: 12rem;--radius-sm: .4rem;--radius-md: .6rem;--radius-lg: 1rem;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .22s ease;--transition-slow: .4s ease;--header-height: 6.4rem;--sidebar-width: 30rem;--max-width: 120rem}[data-theme=dark]{--color-primary: #f3f4f6;--color-accent: #a3e635;--color-accent-dark: #bef264;--color-accent-strong: #a3e635;--color-accent-soft: color-mix(in srgb, #a3e635 12%, transparent);--color-accent-glow: color-mix(in srgb, #a3e635 18%, transparent);--color-on-accent: #0c0d0f;--color-background: #0c0d0f;--color-surface: #131518;--color-surface-2: #1a1d21;--color-text: #c9cdd3;--color-text-muted: #9ba2ab;--color-text-heading: #f3f4f6;--color-border: #2a2e34;--color-border-strong: #3d424a;--color-border-control: #6b7280;--color-divider: rgba(243, 244, 246, .08);--color-grid: rgba(243, 244, 246, .045);--color-warning-text: #fbbf24;--color-success: #4ade80;--color-error: #f87171;--color-warning: #fbbf24;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .4);--shadow-md: 0 8px 20px -10px rgba(0, 0, 0, .6);--shadow-lg: 0 24px 48px -16px rgba(0, 0, 0, .7)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:62.5%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 1.6rem);-webkit-text-size-adjust:100%;color-scheme:dark}html[data-theme=light]{color-scheme:light}html[data-theme=dark]{color-scheme:dark}body{font-family:var(--font-main);font-size:1.6rem;line-height:1.6;background-color:var(--color-background);color:var(--color-text);min-height:100dvh;margin:0;padding:0;overflow-x:clip;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body.is-locked{overflow:hidden}h1,h2,h3,h4,h5,h6{color:var(--color-text-heading);font-weight:var(--font-weight-bold);line-height:1.12;letter-spacing:-.02em;text-wrap:balance}h1{font-size:clamp(3.4rem,6vw,6rem);letter-spacing:-.035em}h2{font-size:clamp(2.6rem,3.6vw,3.8rem)}h3{font-size:clamp(1.9rem,2.2vw,2.4rem)}h4{font-size:1.9rem}h5{font-size:1.7rem}h6{font-size:1.6rem}p{line-height:1.7;text-wrap:pretty}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-dark)}img{max-width:100%;display:block}button{cursor:pointer;font-family:var(--font-main)}ul,ol{list-style:none}code,kbd,samp,.mono{font-family:var(--font-mono)}::selection{background:var(--color-accent);color:var(--color-on-accent)}.container{width:100%;padding-left:max(2rem,env(safe-area-inset-left),calc((100% - var(--max-width)) / 2));padding-right:max(2rem,env(safe-area-inset-right),calc((100% - var(--max-width)) / 2))}.section{display:flex;flex-direction:column;align-items:stretch;width:100%;padding:var(--space-lg) 0}.section--narrow .container{padding-left:max(2rem,env(safe-area-inset-left),calc((100% - 96rem)/2));padding-right:max(2rem,env(safe-area-inset-right),calc((100% - 96rem)/2))}.eyebrow{display:block;line-height:1.6;font-family:var(--font-mono);font-size:1.3rem;font-weight:500;letter-spacing:.02em;color:var(--color-text-muted)}.eyebrow__mark,.prompt{margin-right:.3rem;color:var(--color-accent);font-family:var(--font-mono)}.lead{font-size:clamp(1.7rem,1.8vw,1.9rem);line-height:1.65;color:var(--color-text);max-width:64ch}.page-head{display:flex;flex-direction:column;gap:1.4rem;padding-bottom:var(--space-lg);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-lg)}.page-head h1{max-width:20ch}.btn-primary,.btn-outline,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;padding:1.2rem 2rem;border-radius:var(--radius-md);font-size:1.5rem;font-weight:var(--font-weight-semibold);line-height:1.2;text-decoration:none;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);cursor:pointer;border:1px solid transparent;min-height:4.6rem;font-family:var(--font-main)}.btn-primary{background:var(--color-accent);color:var(--color-on-accent);border-color:var(--color-accent)}.btn-outline{background:transparent;color:var(--color-text-heading);border-color:var(--color-border-strong)}.btn-ghost{background:transparent;color:var(--color-text-heading);padding-left:.4rem;padding-right:.4rem}@media(hover:hover)and (pointer:fine){.btn-primary:hover{background:var(--color-accent-dark);border-color:var(--color-accent-dark);color:var(--color-on-accent)}.btn-outline:hover{border-color:var(--color-accent);color:var(--color-accent);background-color:var(--color-accent-soft)}.btn-ghost:hover{color:var(--color-accent)}}.btn-primary:disabled,.btn-outline:disabled{opacity:.7;cursor:not-allowed;pointer-events:none}.btn-arrow{font-family:var(--font-mono);transition:transform var(--transition-fast)}a:hover .btn-arrow{transform:translate(.3rem)}@media(max-width:640px){.contact__actions .btn-primary,.contact__actions .btn-outline,.not-found__actions .btn-primary,.not-found__actions .btn-outline,.public-form .btn-primary,.auth-form .btn-primary{width:100%}}.text-accent{color:var(--color-accent)}.text-muted{color:var(--color-text-muted)}.text-center{text-align:center}.logo-bracket{color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.icon-btn{width:4.4rem;height:4.4rem;border-radius:var(--radius-md);border:1px solid var(--color-border);background:transparent;color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;text-decoration:none;transition:color var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast)}@media(hover:hover)and (pointer:fine){.icon-btn:hover{color:var(--color-accent);border-color:var(--color-accent);background:var(--color-accent-soft)}}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:1.2rem;left:1.2rem;z-index:1000;padding:1.2rem 1.6rem;border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-on-accent);border:0;font:inherit;font-weight:600;cursor:pointer;transform:translateY(-200%);transition:transform var(--transition-fast)}.skip-link:focus{transform:translateY(0)}.skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg,var(--color-surface-2) 0%,var(--color-surface) 50%,var(--color-surface-2) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton--title{height:2.8rem;width:min(28rem,60%)}.skeleton--card{flex:1 1 28rem;height:32rem}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.gradient-text{color:var(--color-text-heading)}.tag{display:inline-flex;align-items:center;gap:.6rem;padding:.3rem .8rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:1.2rem;line-height:1.5;color:var(--color-text-muted);white-space:nowrap}.tag--accent{color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 45%,transparent)}.tag--warn{color:var(--color-warning-text);border-color:color-mix(in srgb,var(--color-warning-text) 55%,transparent);background:color-mix(in srgb,var(--color-warning-text) 8%,transparent)}.status-dot{display:inline-block;vertical-align:.1em;width:.8rem;height:.8rem;border-radius:50%;background:currentColor;flex:none}.status--completed{color:var(--color-accent)}.status--in-progress{color:var(--color-warning-text)}.status--planned{color:var(--color-text-muted)}.grid-bg{background-image:linear-gradient(var(--color-grid) 1px,transparent 1px),linear-gradient(90deg,var(--color-grid) 1px,transparent 1px);background-size:4rem 4rem;background-position:-1px -1px}.link{color:var(--color-text-heading);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--color-accent) 70%,transparent);text-decoration-thickness:.15rem;text-underline-offset:.35rem}.link:hover{color:var(--color-accent)}.section-head{display:flex;flex-direction:column;gap:1rem;margin-bottom:var(--space-md)}.section-head h2{max-width:24ch}.page-header{display:flex;flex-direction:column;gap:.6rem}.page-header h2{font-size:clamp(2.2rem,3vw,2.8rem)}.page-header p{color:var(--color-text-muted);font-size:1.5rem}.panel{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.badge{display:inline-flex;align-items:center;padding:.4rem 1rem;border-radius:var(--radius-full);font-size:1.3rem;font-weight:var(--font-weight-semibold)}.badge--accent{background:color-mix(in srgb,var(--color-accent) 15%,var(--color-surface));color:var(--color-accent-dark)}.avatar{display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);font-weight:var(--font-weight-bold)}.avatar--gradient{background:var(--gradient-brand);color:var(--color-on-accent)}.meta-list{display:grid;gap:var(--space-sm)}.meta-list__item{display:grid;gap:.4rem}.meta-list__term{font-size:1.3rem;font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.meta-list__value{font-size:1.6rem;color:var(--color-text-heading);overflow-wrap:anywhere;min-width:0}.alert{padding:var(--space-sm);border-radius:var(--radius-md);border:1px solid transparent;font-size:1.4rem;font-weight:var(--font-weight-medium)}.alert--success{background:color-mix(in srgb,var(--color-success) 10%,var(--color-surface));border-color:var(--color-success);color:var(--color-success)}.alert--error{background:color-mix(in srgb,var(--color-error) 10%,var(--color-surface));border-color:var(--color-error);color:var(--color-error)}.spinner{width:1.6rem;height:1.6rem;border:.2rem solid var(--color-border);border-top-color:var(--color-accent);border-radius:var(--radius-full);animation:spin .8s linear infinite}.spinner--on-accent{border-color:color-mix(in srgb,var(--color-on-accent) 35%,transparent);border-top-color:var(--color-on-accent)}.spinner--large{width:3.2rem;height:3.2rem;border-width:.3rem}@keyframes spin{to{transform:rotate(360deg)}}.public-form{display:flex;flex-direction:column;gap:var(--space-md)}.public-form__row{display:grid;grid-template-columns:1fr;gap:var(--space-md)}.form-field{display:flex;flex-direction:column;gap:.6rem}.form-field__label{font-size:1.4rem;font-weight:var(--font-weight-semibold);color:var(--color-text-heading)}.form-field__hint{font-size:1.3rem;color:var(--color-text-muted)}.form-field__error{font-size:1.2rem;color:var(--color-error)}.form-input{width:100%;min-height:4.6rem;padding:1.2rem 1.4rem;border:1px solid var(--color-border-control);border-radius:var(--radius-md);background:var(--color-background);color:var(--color-text);font-family:var(--font-main);font-size:1.5rem;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.form-input--surface-2{background:var(--color-surface-2)}.form-input--error{border-color:var(--color-error)}.form-input--textarea{resize:vertical;min-height:12rem}.form-actions{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:flex-end}.password-field{position:relative;display:flex;align-items:center}.password-field .form-input{padding-inline-end:4.4rem}.password-field__toggle{position:absolute;inset-inline-end:.2rem;display:inline-flex;align-items:center;justify-content:center;width:4.4rem;height:4.4rem;padding:0;border:none;background:none;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast)}.password-field__toggle:hover{color:var(--color-accent)}@media(min-width:641px){.container{padding-left:max(2rem,env(safe-area-inset-left),calc((100% - var(--max-width)) / 2));padding-right:max(2rem,env(safe-area-inset-right),calc((100% - var(--max-width)) / 2))}.section--narrow .container{padding-left:max(2rem,env(safe-area-inset-left),calc((100% - 90rem)/2));padding-right:max(2rem,env(safe-area-inset-right),calc((100% - 90rem)/2))}.public-form__row{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-form{display:flex;flex-direction:column;gap:var(--space-md);max-width:var(--admin-form-max);padding-bottom:8rem}.admin-form__grid{display:grid;grid-template-columns:1fr;gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.admin-form__field{display:flex;flex-direction:column;gap:.6rem}.admin-form__field--full{grid-column:1 / -1}.admin-form__field--checkbox{flex-direction:row;align-items:center;gap:.8rem}.admin-form__field--required label:after{content:" *";color:var(--color-error)}.admin-form__field label{font-size:1.4rem;font-weight:var(--font-weight-semibold);color:var(--color-text-heading)}.admin-form__field small{color:var(--color-text-muted);font-size:1.3rem}.admin-form__inline-row{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}.admin-form__inline-row .p-inputtext,.admin-form__inline-row input[pInputText]{flex:1 1 24rem}.admin-form__file-input{display:none}.admin-form__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.8rem}.admin-form__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.admin-form__toolbar-text{display:flex;flex-direction:column;gap:.4rem;flex:1 1 16rem;min-width:0}.admin-form__toolbar-text h2{font-size:clamp(2rem,3vw,2.4rem)}.admin-form__toolbar-text p{color:var(--color-text-muted);font-size:1.4rem}.admin-form__toolbar-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}.admin-form__sections{display:flex;flex-direction:column;gap:var(--space-md)}.admin-form__section{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.admin-form__section-title{display:flex;align-items:center;gap:.8rem;font-size:1.5rem;font-weight:var(--font-weight-semibold);color:var(--color-text-heading);padding-bottom:.8rem;border-bottom:1px solid var(--color-divider)}.admin-form__section-title i{color:var(--color-accent)}.admin-form__section-grid{display:grid;grid-template-columns:1fr;gap:var(--space-sm)}.admin-form__field--invalid .p-inputtext,.admin-form__field--invalid .p-textarea,.admin-form__field--invalid .p-select{border-color:var(--color-error)}.admin-form__error{font-size:1.2rem;color:var(--color-error)}.admin-form__preview{display:flex;flex-direction:column;gap:var(--space-sm)}.admin-form__preview-frame{width:100%;max-width:32rem;aspect-ratio:16 / 9;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-surface-2)}.admin-form__preview-frame img{width:100%;height:100%;object-fit:cover}.admin-form__actions--sticky{position:sticky;bottom:0;z-index:2;padding:var(--space-sm);border-top:1px solid var(--color-border);background:var(--color-background)}.admin-form__visibility{display:grid;grid-template-columns:1fr;gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2)}.admin-form .p-inputtext,.admin-form .p-inputnumber,.admin-form .p-select,.admin-form .p-textarea,.admin-form .p-password,.admin-form .p-password-input,.admin-table .p-inputtext,.admin-table .p-select,.admin-table .p-multiselect{width:100%;min-height:var(--admin-control-h);font-size:1.4rem}.admin-form .p-inputtext,.admin-table .p-inputtext{border-color:var(--color-border-control)}.admin-form .p-textarea{resize:vertical;min-height:12rem}@media(min-width:641px){.admin-form__grid,.admin-form__section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-table{display:flex;flex-direction:column;gap:var(--space-md)}.admin-table__header{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-sm)}.admin-table__filters{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center}.admin-table__search,.admin-table__filter,.admin-table__category-filter,.admin-table__platform-filter,.admin-table__role-filter,.admin-table__status-filter,.admin-table__featured-filter{flex:1 1 18rem;min-width:16rem;max-width:32rem}.admin-table .p-tag{font-size:1.2rem;padding:.2rem .8rem}.admin-table__wrapper{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.admin-table__name,.admin-table__title{font-weight:var(--font-weight-semibold);color:var(--color-text-heading)}.admin-table__muted,.admin-table__tech{color:var(--color-text-muted);font-size:1.4rem}.admin-table__link{display:inline-block;max-width:28rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;color:var(--color-accent);font-size:1.3rem}.admin-table__actions-col,.admin-table__actions{width:14rem;white-space:nowrap}.admin-table__actions{display:flex;gap:.4rem}.admin-table__actions .p-button{width:var(--admin-icon-btn);height:var(--admin-icon-btn);min-width:var(--admin-icon-btn)}.admin-chip-row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.admin-chip{display:inline-flex;align-items:center;padding:.15rem .6rem;border-radius:var(--radius-full);background:var(--color-surface-2);border:1px solid var(--color-border);font-size:1.2rem;color:var(--color-text)}.admin-table__empty{text-align:center;color:var(--color-text-muted);padding:var(--space-md)!important}@media(min-width:641px){.admin-table__header{flex-direction:row;align-items:flex-start;justify-content:space-between}.admin-table__search,.admin-table__filter,.admin-table__category-filter,.admin-table__platform-filter,.admin-table__role-filter,.admin-table__status-filter,.admin-table__featured-filter{flex:1 1 18rem;min-width:16rem;max-width:32rem}}.admin-table--projects .admin-table__grid{min-width:84rem}.admin-table--users .admin-table__grid{min-width:88rem}.admin-table--social .admin-table__grid{min-width:76rem}.admin-table__icon{display:inline-flex;align-items:center;gap:.6rem;color:var(--color-text-muted);font-size:1.4rem}.data-table{display:flex;flex-direction:column;gap:var(--space-md)}.data-table__header{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-sm)}.data-table__title{font-size:clamp(2rem,3vw,2.4rem);font-weight:var(--font-weight-bold);color:var(--color-text-heading)}.data-table__subtitle{color:var(--color-text-muted);font-size:1.5rem}.data-table__filters{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:stretch}.data-table__search,.data-table__combo{flex:1 1 18rem;min-width:16rem;max-width:32rem}.data-table__search input,.data-table__combo summary,.data-table__page-size select{width:100%;min-height:4.4rem;padding:.8rem 1.2rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit}.data-table__combo{position:relative}.data-table__combo summary{display:flex;align-items:center;justify-content:space-between;gap:.8rem;cursor:pointer;list-style:none}.data-table__combo summary::-webkit-details-marker{display:none}.data-table__combo-count{display:inline-flex;align-items:center;justify-content:center;min-width:2.2rem;height:2.2rem;padding:0 .6rem;border-radius:var(--radius-full);background:var(--color-accent);color:var(--color-on-accent);font-size:1.2rem}.data-table__combo ul{position:absolute;z-index:4;top:calc(100% + .4rem);left:0;right:0;margin:0;padding:.8rem;list-style:none;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-height:24rem;overflow:auto}.data-table__combo label{display:flex;align-items:center;gap:.8rem;min-height:3.6rem;padding:.4rem .6rem;cursor:pointer}.data-table__scroll{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.data-table table{width:100%;min-width:84rem;border-collapse:collapse}.data-table th,.data-table td{padding:1.2rem 1.6rem;text-align:left;border-bottom:1px solid var(--color-border);vertical-align:middle}.data-table th{font-size:1.3rem;color:var(--color-text-muted);background:var(--color-surface-2)}.data-table tbody tr:hover{background:var(--color-accent-soft);box-shadow:inset .3rem 0 0 var(--color-accent)}.data-table__status{display:block;text-align:center;color:var(--color-text-muted);padding:var(--space-md) 0}.data-table__tag,.data-table__chip{display:inline-flex;align-items:center;padding:.15rem .8rem;border-radius:var(--radius-full);border:1px solid var(--color-border);font-size:1.2rem}.data-table__tag--success{background:color-mix(in srgb,var(--color-success) 18%,var(--color-surface))}.data-table__tag--warn{background:color-mix(in srgb,var(--color-warning) 22%,var(--color-surface))}.data-table__tag--info{background:color-mix(in srgb,var(--color-accent) 16%,var(--color-surface))}.data-table__tag--secondary{background:var(--color-surface-2)}.data-table__chips{display:flex;flex-wrap:wrap;gap:.4rem}.data-table__chip{background:var(--color-surface-2)}.data-table__actions-col{width:14rem;white-space:nowrap}.data-table__row-actions{display:flex;gap:.4rem}.data-table__pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-sm)}.data-table__page-size{display:flex;align-items:center;gap:.8rem;color:var(--color-text-muted)}.data-table__page-size select{width:auto;min-width:8rem}.data-table__pages{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;color:var(--color-text-muted);font-size:1.4rem}.data-table__pages button{min-height:4.4rem;padding:0 1.4rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer}.data-table__pages button:disabled{opacity:.5;cursor:not-allowed}@media(min-width:641px){.data-table__header{flex-direction:row;align-items:flex-start;justify-content:space-between}}.admin-table__icon-img{width:2rem;height:2rem;object-fit:contain}.social-links--hero{display:flex;gap:1.2rem}.social-links--about{display:flex;flex-wrap:wrap;gap:1.2rem}.social-links__icon-btn{background:var(--color-surface)}.social-links__text-link{display:inline-flex;align-items:center;gap:.6rem;padding:.8rem 1.6rem;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-2);font-size:1.4rem;font-weight:var(--font-weight-medium);color:var(--color-text-muted);text-decoration:none;transition:border-color var(--transition-base),color var(--transition-base),background-color var(--transition-base)}.social-links__text-link:hover{border-color:var(--color-accent);color:var(--color-accent);background-color:color-mix(in srgb,var(--color-accent) 6%,var(--color-surface-2))}.social-links__icon-img{width:2rem;height:2rem;object-fit:contain}.profile{display:flex;flex-direction:column;gap:var(--space-md);max-width:var(--admin-form-max)}.profile__header{display:flex;flex-direction:column;gap:var(--space-sm)}.profile__header h1,.admin-layout h1{font-size:clamp(2.8rem,4vw,4rem)}.profile__header p{font-size:1.5rem;color:var(--color-text-muted)}.profile-form{display:flex;flex-direction:column;gap:var(--space-md);max-width:var(--admin-form-max)}.profile-form__summary.panel{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-md)}.profile-form__summary .admin-form__toolbar-text{flex:1 1 16rem;min-width:0}.profile-form__summary .badge{width:fit-content;max-width:100%}.profile-form__summary-actions{display:flex;flex-wrap:wrap;gap:1rem}.profile-form__summary-actions .p-button{min-height:var(--admin-control-h);font-size:1.4rem}.profile-form__avatar{width:7.2rem;height:7.2rem;font-size:2.4rem}.profile-form__muted{color:var(--color-text-muted)}@media(min-width:641px){.profile-form__summary.panel{flex-direction:row;align-items:flex-start}.profile-form__summary .meta-list{flex:1 1 100%;grid-template-columns:repeat(2,minmax(0,1fr))}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in-up{animation:fadeIn .3s ease both}:focus-visible{outline:2px solid var(--color-accent);outline-offset:.3rem;border-radius:var(--radius-sm)}#main-content:focus,#main-content:focus-visible{outline:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.animate-fade-in-up,.skeleton{opacity:1;animation:none}.main-content:before,.auth-layout:before,.admin-layout:before{display:none}}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--color-accent) 45%,var(--color-border)) var(--color-surface-2)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-surface-2)}::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-accent) 45%,var(--color-border));border-radius:var(--radius-full);border:2px solid var(--color-surface-2)}::-webkit-scrollbar-thumb:hover{background:var(--color-accent)}.app-notification{border:1px solid var(--color-border)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-lg)!important;font-family:var(--font-main)!important;padding:var(--space-md)!important}.app-notification__title{color:var(--color-text-heading)!important;font-size:1.6rem!important;font-weight:var(--font-weight-semibold)!important}.app-notification__content{color:var(--color-text)!important;font-size:1.5rem!important;line-height:1.6!important}.app-notification__confirm,.app-notification__cancel{border:none!important;border-radius:var(--radius-md)!important;font-size:1.4rem!important;font-weight:var(--font-weight-semibold)!important;padding:1rem 1.8rem!important}.app-notification__confirm{background:var(--gradient-brand)!important;color:var(--color-on-accent)!important}.app-notification__cancel{background:var(--color-surface-2)!important;color:var(--color-text)!important}.swal2-icon.swal2-success{border-color:var(--color-success)!important;color:var(--color-success)!important}.swal2-icon.swal2-error{border-color:var(--color-error)!important;color:var(--color-error)!important}.swal2-icon.swal2-warning{border-color:var(--color-warning)!important;color:var(--color-warning)!important}.swal2-icon.swal2-info{border-color:var(--color-accent)!important;color:var(--color-accent)!important}
