:root{--text:#181613b8;--text-heading:#181613;--bg:#f4efe4;--bg-elevated:#fbf8f1;--input-bg:#fffcf7;--surface:#fbf8f1;--surface-2:#f0ebe0;--border:#1816131f;--card-border:#18161314;--accent:#c84b31;--accent-hover:#a63d28;--accent-light:#c84b3124;--accent-glow:#c84b3159;--accent-rgb:200, 75, 49;--accent-warm-rgb:130, 82, 58;--gradient-start:#c84b31;--gradient-end:#8b4a38;--gradient-mesh:radial-gradient(ellipse 80% 50% at 70% -20%, #c84b311f, transparent), radial-gradient(ellipse 60% 40% at 0% 50%, #82523a12, transparent);--shadow:0 1px 3px #1816130f;--shadow-md:0 10px 25px -5px #18161314, 0 4px 10px -5px #1816130a;--shadow-lg:0 20px 40px -10px #1816131a, 0 8px 20px -8px #1816130f;--shadow-glow:0 0 40px var(--accent-glow);--hero-on-photo-text:var(--bg-elevated);--hero-on-photo-text-dim:color-mix(in srgb, var(--bg-elevated) 90%, transparent);--hero-on-photo-border:color-mix(in srgb, var(--input-bg) 40%, transparent);--hero-on-photo-border-hover:color-mix(in srgb, var(--input-bg) 66%, transparent);--hero-on-photo-fill-hover:color-mix(in srgb, var(--input-bg) 9%, transparent);--hero-scrim-1:color-mix(in srgb, var(--text-heading) 90%, transparent);--hero-scrim-2:color-mix(in srgb, var(--text-heading) 60%, transparent);--hero-scrim-3:color-mix(in srgb, var(--text-heading) 28%, transparent);--hero-scrim-4:color-mix(in srgb, var(--text-heading) 6%, transparent);--hero-scrim-mobile-t:color-mix(in srgb, var(--text-heading) 44%, transparent);--hero-scrim-mobile-m:color-mix(in srgb, var(--text-heading) 74%, transparent);--hero-scrim-mobile-b:color-mix(in srgb, var(--text-heading) 86%, transparent);--font-sans:"Geist", system-ui, -apple-system, sans-serif;--font-display:"Fraunces", Georgia, "Times New Roman", serif;--container-max:1120px;--section-gradient-crema:linear-gradient(180deg, var(--input-bg) 0%, var(--surface) 100%);--surface-elevated-border:1px solid color-mix(in srgb, var(--text-heading) 9%, transparent);--surface-elevated-shadow:0 4px 24px #1816130f;--section-padding:88px 24px;--radius:10px;--radius-lg:16px;--radius-xl:24px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration:.35s;font-family:var(--font-sans);color:var(--text);background:var(--input-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:18px;line-height:1.65}@media (width<=1024px){:root{--section-padding:64px 20px;font-size:16px}}@media (prefers-reduced-motion:reduce){:root{--duration:.01ms}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden}@media (width<=768px){html,body{width:100%;margin:0;padding:0;overflow-x:hidden}#root{width:100%;max-width:100vw;padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0);margin:0 auto;overflow-x:hidden}}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;pointer-events:auto}#root{flex-direction:column;min-height:100vh;display:flex}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}h1,h2,h3{font-family:var(--font-display);font-optical-sizing:auto;color:var(--text-heading);letter-spacing:-.03em;margin:0;font-weight:600}h1{font-size:clamp(2rem,5vw,3.25rem);line-height:1.15}h2{margin-bottom:.5rem;font-size:clamp(1.4rem,3vw,1.9rem)}p{margin:0}ul{margin:0;padding:0;list-style:none}.container{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}@media (width<=768px){.container{max-width:100%;padding-left:20px;padding-right:20px}}@media (width<=480px){.container{padding-left:16px;padding-right:16px}}.reveal{opacity:0;transition:opacity .7s var(--ease-out), transform .7s var(--ease-out);transform:translateY(28px)}.reveal.reveal--in{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.reveal--in.reveal,.reveal--in .reveal{opacity:1;transform:translateY(0)}main{flex:1;width:100%}@media (width<=768px){main{flex-direction:column;align-items:center;display:flex;overflow-x:hidden}main.area-personale-page--portal{align-items:stretch;display:block}main>section{width:100%;max-width:100%}}.site-header{--header-sticky-gap:max(14px, env(safe-area-inset-top,0px));--header-float-x:clamp(8px, 2vw, 20px);top:var(--header-sticky-gap);z-index:100;margin:var(--header-sticky-gap) var(--header-float-x) 0;width:auto;max-width:none;transition:box-shadow var(--duration) var(--ease-out);border-radius:22px;padding:10px 0;position:sticky}.site-header .container{padding-left:clamp(6px,1.4vw,12px);padding-right:clamp(6px,1.4vw,12px)}.site-header--glass{background:color-mix(in srgb, var(--input-bg) 58%, transparent);-webkit-backdrop-filter:saturate(1.35)blur(18px);border:1px solid color-mix(in srgb, var(--input-bg) 72%, transparent);box-shadow:inset 0 1px #fff9,0 6px 20px #1816130f,0 22px 48px #18161317}.site-header--glass:after{display:none}.header-inner{justify-content:space-between;align-items:center;gap:clamp(8px,1.8vw,16px);display:flex;position:relative}.header-nav{z-index:1;box-sizing:border-box;width:max-content;min-width:0;max-width:calc(100% - clamp(220px,40vw,400px));position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.nav-desktop.header-nav{justify-content:center}.logo-link,.header-actions{z-index:2;position:relative}.header-actions{flex-shrink:0;align-items:center;gap:clamp(10px,2vw,18px);display:flex}.nav-area-personale{letter-spacing:.06em;text-transform:uppercase;border:1px solid color-mix(in srgb, var(--text-heading) 22%, transparent);color:var(--text-heading);background:color-mix(in srgb, var(--input-bg) 35%, transparent);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:9px 14px;font-size:.6875rem;font-weight:600;text-decoration:none;transition:border-color .2s,color .2s,background .2s,box-shadow .2s}.nav-area-personale:hover,.nav-area-personale:focus-visible{border-color:var(--accent);color:var(--accent);background:var(--accent-light);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 25%, transparent)}.nav-area-personale:focus-visible{outline:none}.nav-area-personale--drawer{border-top:1px solid color-mix(in srgb, var(--text-heading) 12%, transparent);color:var(--accent);margin-top:8px;font-weight:700;padding-top:16px!important}.logo-link{min-width:0;color:var(--text-heading);transition:opacity var(--duration);flex:0 auto;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.logo-link:hover{opacity:.9}.logo-typewriter{font-family:var(--font-sans);letter-spacing:-.02em;color:var(--text-heading);font-size:1.2rem;font-weight:700}.logo-suffix{color:var(--accent)}.logo-cursor{color:var(--accent);margin-left:1px;font-weight:400;animation:.9s step-end infinite cursor-blink;display:inline-block}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}.hamburger{cursor:pointer;background:0 0;border:none;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:48px;height:48px;padding:0;transition:background .25s,transform .2s;display:none}.hamburger:hover{background:rgba(var(--accent-rgb), .08)}.hamburger[aria-expanded=true]{background:rgba(var(--accent-rgb), .12)}.hamburger-line{background:var(--text-heading);width:24px;height:2.5px;transition:transform .3s var(--ease-out), opacity .25s;border-radius:2px;display:block}.hamburger[aria-expanded=true] .hamburger-line:first-child{transform:translateY(8.5px)rotate(45deg)}.hamburger[aria-expanded=true] .hamburger-line:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger[aria-expanded=true] .hamburger-line:nth-child(3){transform:translateY(-8.5px)rotate(-45deg)}.nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:20px;display:flex}.nav--minimal{gap:clamp(10px,2.2vw,22px)}.nav-link{letter-spacing:.04em;color:color-mix(in srgb, var(--text-heading) 78%, var(--text) 22%);border-bottom:none;padding:6px 2px;font-size:.8125rem;font-weight:500;text-decoration:none;transition:color .2s,opacity .2s}.nav-desktop.nav--minimal .nav-link:hover,.nav-desktop.nav--minimal .nav-link:focus-visible{color:var(--accent);opacity:1;transform:none}.nav-desktop.nav--minimal .nav-link.active{color:var(--accent)}.nav-desktop.nav--minimal .nav-link:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 65%, transparent);outline-offset:3px;border-radius:2px}@media (width<=768px){:root{--header-height:56px;--header-sticky-gap:max(10px, env(safe-area-inset-top,0px));--header-margin-left:max(8px, env(safe-area-inset-left,0px));--header-margin-right:max(8px, env(safe-area-inset-right,0px))}.site-header{margin-top:var(--header-sticky-gap);margin-right:var(--header-margin-right);margin-bottom:0;margin-left:var(--header-margin-left);height:var(--header-height);transition:border-radius .25s var(--ease-out), box-shadow .25s ease;border-radius:18px;align-items:center;padding-top:0;padding-bottom:0;display:flex}body.menu-open .site-header{border-radius:18px 18px 0 0}body.menu-open .site-header--glass{border-bottom:none;box-shadow:inset 0 1px #ffffff8c,0 4px 16px #1816130d}.site-header .container{padding-left:8px;padding-right:8px}.site-header--glass{background:color-mix(in srgb, var(--bg-elevated) 64%, transparent);-webkit-backdrop-filter:saturate(1.25)blur(16px);box-shadow:inset 0 1px #ffffff8c,0 4px 16px #18161312,0 18px 40px #18161314}.header-inner{gap:8px;width:100%}.logo-link{flex:1;gap:0;min-width:0}.logo-typewriter{font-size:1.1rem}.header-actions{gap:8px}.nav-area-personale{padding:8px 11px;font-size:.625rem}.nav-area-personale--header-bar{display:none}.hamburger{flex-shrink:0;display:flex}.nav-desktop{display:none}.nav-dropdown{top:calc(var(--header-sticky-gap,max(10px, env(safe-area-inset-top,0px))) + var(--header-height,56px));z-index:200;padding:0 var(--header-margin-right) 0 var(--header-margin-left);box-sizing:border-box;background:color-mix(in srgb, var(--input-bg) 64%, transparent);-webkit-backdrop-filter:saturate(1.25)blur(16px);opacity:0;visibility:hidden;flex-direction:column;align-items:stretch;transition:opacity .3s,visibility .3s;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-dropdown--open{opacity:1;visibility:visible;-webkit-overflow-scrolling:touch;overflow-y:auto}.nav-dropdown-panel{border:var(--surface-elevated-border);transform-origin:top;opacity:0;width:100%;transition:transform .45s var(--ease-spring), opacity .35s ease;background:0 0;border-top:none;border-radius:0 0 18px 18px;flex-direction:column;flex-shrink:0;gap:2px;padding:12px 8px 20px;display:flex;transform:translateY(-100%)scaleY(.98)}.nav-dropdown-panel--glass{box-shadow:0 4px 16px #18161312,0 18px 40px #18161314}.nav-dropdown--open .nav-dropdown-panel{opacity:1;transform:translateY(0)scaleY(1)}.nav-dropdown .nav-link{text-align:left;letter-spacing:.04em;width:100%;color:color-mix(in srgb, var(--text-heading) 85%, var(--text) 15%);animation:nav-link-in .4s var(--ease-out) backwards;background:0 0;border:none;border-radius:12px;padding:14px 16px;font-size:.9375rem;font-weight:500;transition:background .2s,color .2s;display:block}.nav-dropdown--open .nav-dropdown-panel .nav-link:first-child{animation-delay:60ms}.nav-dropdown--open .nav-dropdown-panel .nav-link:nth-child(2){animation-delay:.1s}.nav-dropdown--open .nav-dropdown-panel .nav-link:nth-child(3){animation-delay:.14s}.nav-dropdown--open .nav-dropdown-panel .nav-link:nth-child(4){animation-delay:.18s}.nav-dropdown--open .nav-dropdown-panel .nav-link:nth-child(5){animation-delay:.22s}.nav-dropdown--open .nav-dropdown-panel .nav-link:nth-child(6){animation-delay:.26s}.nav-dropdown .nav-link:hover,.nav-dropdown .nav-link:focus{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent);transform:none}html.menu-open,body.menu-open{width:100%;height:100%;position:fixed;overflow:hidden!important}}@keyframes nav-link-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.btn{border-radius:var(--radius);transition:transform var(--duration) var(--ease-spring), box-shadow var(--duration), background var(--duration), border-color var(--duration), color var(--duration);border:1px solid #0000;align-items:center;gap:10px;padding:14px 24px;font-size:1rem;font-weight:600;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:linear-gradient(135deg, var(--gradient-start), var(--gradient-end));color:#fff;box-shadow:0 4px 14px rgba(var(--accent-rgb), .4)}.btn-primary:hover{box-shadow:0 8px 24px rgba(var(--accent-rgb), .45);transform:translateY(-2px)}.btn-primary .btn-icon{transition:transform var(--duration) var(--ease-out)}.btn-primary:hover .btn-icon{transform:translate(4px)}.btn-hero-minimal{background:linear-gradient(135deg, var(--gradient-start), var(--gradient-end));color:var(--hero-on-photo-text);border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);letter-spacing:.05em;box-shadow:0 4px 16px rgba(var(--accent-rgb), .35);border-radius:999px;gap:8px;padding:11px 24px;font-size:.875rem;font-weight:500}.btn-hero-minimal:hover{border-color:color-mix(in srgb, var(--accent) 55%, transparent);background:linear-gradient(135deg, var(--accent-hover), var(--gradient-end));box-shadow:0 6px 22px rgba(var(--accent-rgb), .42);transform:none}.btn-hero-minimal .btn-icon{opacity:.92;transition:transform var(--duration) var(--ease-out), opacity var(--duration);font-size:.92em}.btn-hero-minimal:hover .btn-icon{opacity:1;transform:translate(3px)}.btn-hero-minimal:active{transform:scale(.99)}.btn-hero-ghost{color:var(--hero-on-photo-text);border:1px solid var(--hero-on-photo-border-hover);letter-spacing:.05em;box-shadow:none;background:0 0;border-radius:999px;gap:8px;padding:11px 24px;font-size:.875rem;font-weight:500}.btn-hero-ghost:hover{border-color:var(--hero-on-photo-text);background:var(--hero-on-photo-fill-hover);box-shadow:none;transform:none}.btn-hero-ghost .btn-icon{opacity:.85;transition:transform var(--duration) var(--ease-out), opacity var(--duration);font-size:.92em}.btn-hero-ghost:hover .btn-icon{opacity:1;transform:translate(3px)}.btn-hero-ghost:active{transform:scale(.99)}.btn-secondary{color:var(--text-heading);border-color:var(--border);background:0 0}.btn-secondary:hover{background:var(--surface);border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.btn-secondary .btn-icon{transition:transform var(--duration) var(--ease-out)}.btn-secondary:hover .btn-icon{transform:translate(4px)}.btn--large{padding:16px 28px;font-size:1.05rem}.btn-glow:hover{box-shadow:0 0 32px var(--accent-glow), 0 8px 24px rgba(var(--accent-rgb), .4)}.btn-icon{font-size:1.15em;line-height:1}.hero--animated{background:var(--section-gradient-crema);justify-content:center;align-items:center;min-height:min(88vh,860px);padding:0;display:flex;position:relative;overflow:hidden}.hero-anim{pointer-events:none;z-index:0;position:absolute;inset:0}.hero-anim__base{background:var(--section-gradient-crema);position:absolute;inset:0}.hero-anim__mesh{opacity:.38;background:var(--gradient-mesh);animation:18s ease-in-out infinite alternate hero-mesh-shift;position:absolute;inset:0}@keyframes hero-mesh-shift{0%{opacity:.45;transform:translate(0)scale(1)}to{opacity:.62;transform:translate(-3%,2%)scale(1.06)}}.hero-anim__orb{filter:blur(80px);opacity:.38;will-change:transform;border-radius:50%;position:absolute}.hero-anim__orb--1{background:radial-gradient(circle, rgba(var(--accent-rgb), .26) 0%, rgba(var(--accent-warm-rgb), .08) 55%, transparent 72%);width:min(52vw,520px);height:min(52vw,520px);animation:22s ease-in-out infinite hero-orb-a;top:18%;left:-12%}.hero-anim__orb--2{background:radial-gradient(circle, rgba(var(--accent-warm-rgb), .22) 0%, rgba(var(--accent-rgb), .1) 50%, transparent 70%);width:min(48vw,480px);height:min(48vw,480px);animation:26s ease-in-out infinite hero-orb-b;bottom:8%;right:-10%}.hero-anim__orb--3{background:radial-gradient(circle, rgba(var(--accent-rgb), .12) 0%, transparent 65%);width:min(36vw,360px);height:min(36vw,360px);animation:20s ease-in-out infinite hero-orb-c;top:42%;left:38%}@keyframes hero-orb-a{0%,to{transform:translate(0)scale(1)}50%{transform:translate(12%,8%)scale(1.12)}}@keyframes hero-orb-b{0%,to{transform:translate(0)scale(1.05)}50%{transform:translate(-10%,-12%)scale(1)}}@keyframes hero-orb-c{0%,to{transform:translate(-6%,4%)scale(1)}33%{transform:translate(8%,-6%)scale(1.08)}66%{transform:translate(4%,10%)scale(.96)}}@media (prefers-reduced-motion:reduce){.hero-anim__mesh,.hero-anim__orb--1,.hero-anim__orb--2,.hero-anim__orb--3{animation:none}.hero-anim__mesh{opacity:.5;transform:none}}.hero-inner{z-index:1;width:100%;max-width:var(--container-max);box-sizing:border-box;text-align:center;justify-content:center;margin:0 auto;padding:88px 24px 96px;display:flex;position:relative}.hero-content{max-width:900px;margin:0 auto}.hero-title{flex-direction:column;align-items:center;gap:0;margin:0 auto 20px;display:flex}.hero-title--garden{font-family:var(--font-display);letter-spacing:-.03em;max-width:100%;color:var(--text-heading);font-size:clamp(2rem,5.5vw,3.75rem);font-weight:500;line-height:1.08}.hero--animated .hero-title--garden>.hero-title-line:not(.hero-title-emphasis){color:var(--text-heading)}.hero--animated .hero-title--garden>.hero-title-line.hero-title-emphasis{color:var(--accent);text-shadow:none;font-style:italic;font-weight:500}.hero-lead{max-width:640px;color:var(--text);margin:0 auto 32px;font-size:clamp(1rem,2.2vw,1.2rem);line-height:1.65}.hero-title-line{display:block}.hero-cta{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:0;display:flex}.hero-cta-btn{transition:transform .2s var(--ease-out), filter .2s ease, background .2s ease, border-color .2s ease, color .2s ease;background:var(--text-heading);color:var(--bg-elevated);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:14px 22px;font-family:inherit;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.hero-cta-btn:hover{filter:brightness(1.05);transform:scale(1.02)}.hero-cta-btn--ghost{color:var(--text-heading);border-color:color-mix(in srgb, var(--text-heading) 22%, transparent);filter:none;background:0 0}.hero-cta-btn--ghost:hover{background:var(--bg-elevated);border-color:var(--accent);color:var(--accent);filter:none}.hero-cta-btn .btn-icon{transition:transform var(--duration) var(--ease-out);font-size:1.05em}.hero-cta-btn:hover .btn-icon{transform:translate(3px)}.hero-cta--hierarchy{flex-direction:column;align-items:center;gap:14px}.hero-cta-btn--cal-primary{background:linear-gradient(135deg, var(--gradient-start), var(--gradient-end));color:#fff;border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);box-shadow:0 6px 22px rgba(var(--accent-rgb), .42);padding:16px 26px;font-size:1rem;font-weight:700}.hero-cta-btn--cal-primary:hover{filter:brightness(1.05);transform:scale(1.02)}.hero-cta-packs-link{color:var(--text);border-bottom:1px solid color-mix(in srgb, var(--accent) 35%, transparent);align-items:center;gap:6px;margin:0;padding-bottom:2px;font-size:.9rem;font-weight:600;text-decoration:none;transition:color .2s,border-color .2s;display:inline-flex}.hero-cta-packs-link:hover{color:var(--accent);border-bottom-color:var(--accent)}.hero-cta-packs-link .btn-icon{transition:transform var(--duration) var(--ease-out);font-size:1em}.hero-cta-packs-link:hover .btn-icon{transform:translate(3px)}@media (width<=1024px){.hero-inner{padding:64px 20px 72px}}@media (width<=900px){.hero--animated{min-height:min(82vh,780px)}.hero-inner{padding:56px 20px 52px}.hero-content{max-width:100%}.hero-anim__orb--1{top:10%;left:-25%}.hero-anim__orb--2{right:-28%}}.section-title{text-align:center;margin-bottom:14px}.section-desc{text-align:center;max-width:640px;color:var(--text);margin:0 auto 48px;font-size:1.05rem;line-height:1.7}.section-hero-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text-heading);text-align:center;max-width:900px;margin:0 auto 20px;font-size:clamp(2rem,5.5vw,3.75rem);font-weight:500;line-height:1.08}.section-hero-title .section-hero-line{display:block}.section-hero-title .section-hero-line--emph{color:var(--accent);font-style:italic}.section-hero-sub{text-align:center;max-width:640px;color:var(--text);margin:0 auto 48px;font-size:clamp(1rem,2.2vw,1.2rem);line-height:1.65}.section-hero-sub--tight{margin-bottom:32px}.section-cta-line{text-align:center;margin-top:32px;margin-bottom:0}.link-cta{color:var(--accent);transition:color var(--duration), transform .2s;font-weight:600}.link-cta:hover{color:var(--gradient-end);transform:translate(4px)}.section-block{padding:var(--section-padding);background:var(--section-gradient-crema)}.cosa-fai-grid{grid-template-columns:repeat(3,1fr);gap:32px;max-width:900px;margin:0 auto;display:grid}.cosa-fai-item{text-align:center;border-radius:var(--radius-lg);background:var(--bg-elevated);border:1px solid var(--border);transition:transform var(--duration) var(--ease-out), box-shadow var(--duration), border-color var(--duration);padding:24px 16px}.cosa-fai-item:hover{box-shadow:var(--shadow-md);border-color:rgba(var(--accent-rgb), .2);transform:translateY(-4px)}.cosa-fai-num{background:linear-gradient(135deg, var(--accent-light), rgba(var(--accent-warm-rgb), .15));width:40px;height:40px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;font-size:1.1rem;font-weight:700;display:inline-flex}.cosa-fai-title{margin-bottom:8px;font-size:1.1rem}.cosa-fai-item p{color:var(--text);margin:0;font-size:.95rem;line-height:1.6}@media (width<=768px){.cosa-fai-grid{grid-template-columns:1fr;gap:20px}}.section--pacchetti{background:var(--section-gradient-crema)}.pricing-shell{max-width:1120px}.pricing-cat-toggle{border:1px solid var(--border);background:var(--bg-elevated);border-radius:999px;gap:4px;margin-bottom:36px;padding:6px;display:inline-flex}.pricing-cat-btn{cursor:pointer;color:var(--text-heading);transition:background .25s var(--ease-out), color .25s ease;background:0 0;border:none;border-radius:999px;align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:.9375rem;font-weight:500;display:inline-flex}.pricing-cat-btn.is-active{background:var(--text-heading);color:var(--bg)}.pricing-cat-icon{flex-shrink:0;width:15px;height:15px}.pricing-hero-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text-heading);max-width:900px;margin:0 0 20px;font-size:clamp(2.25rem,6vw,3.75rem);font-weight:500;line-height:1.08}.pricing-hero-line{display:block}.pricing-hero-line--emph{color:var(--accent);font-style:italic}.pricing-hero-sub{color:var(--text);max-width:640px;margin:0 0 32px;font-size:clamp(1rem,2.2vw,1.2rem);line-height:1.65}.pricing-period-wrap{margin-bottom:28px}.pricing-period-toggle{background:var(--text-heading);border-radius:999px;flex-wrap:wrap;gap:4px;padding:6px;display:inline-flex}.pricing-period-btn{cursor:pointer;color:color-mix(in srgb, var(--bg) 72%, transparent);transition:background .25s var(--ease-out), color .25s ease;background:0 0;border:none;border-radius:999px;align-items:center;gap:8px;padding:10px 18px;font-family:inherit;font-size:.9375rem;font-weight:500;display:inline-flex}.pricing-period-btn.is-active{background:var(--bg);color:var(--text-heading)}.pricing-period-note{letter-spacing:.06em;text-transform:uppercase;background:color-mix(in srgb, var(--accent) 28%, transparent);color:#e8a294;border-radius:999px;padding:3px 8px;font-size:.625rem;font-weight:700}.pricing-period-btn.is-active .pricing-period-note{background:var(--accent);color:var(--bg-elevated)}.pricing-cards-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:20px;margin-bottom:36px;display:grid}@keyframes pricing-card-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.pricing-card-v2{border-radius:var(--radius-xl);background:var(--bg-elevated);border:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);transition:transform .4s var(--ease-out), box-shadow .35s ease;animation:pricing-card-in .5s var(--ease-out) backwards;flex-direction:column;padding:28px 24px 24px;display:flex;position:relative}.pricing-card-v2:hover{transform:translateY(-4px);box-shadow:0 16px 40px #1816131a}.pricing-card-v2--featured{background:var(--text-heading);color:var(--bg-elevated);border-color:var(--text-heading);box-shadow:0 20px 50px #1816132e}.pricing-featured-ribbon{background:var(--accent);color:var(--bg-elevated);letter-spacing:.14em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:.625rem;font-weight:700;display:inline-flex;position:absolute;top:-10px;left:24px}.pricing-featured-badge-icon{width:11px;height:11px}.pricing-card-v2-head{margin-bottom:22px}.pricing-card-v2-name{font-family:var(--font-display);color:inherit;margin:0 0 8px;font-size:1.65rem;font-weight:500}.pricing-card-v2-tagline{opacity:.78;min-height:3.1em;color:inherit;margin:0;font-size:.875rem;line-height:1.55}.pricing-card-v2-priceblock{border-bottom:1px solid color-mix(in srgb, var(--text-heading) 12%, transparent);margin-bottom:22px;padding-bottom:22px}.pricing-card-v2--featured .pricing-card-v2-priceblock{border-bottom-color:color-mix(in srgb, var(--bg-elevated) 18%, transparent)}.pricing-card-v2-price-row{flex-wrap:wrap;align-items:baseline;gap:2px 6px;display:flex}.pricing-card-v2-euro{font-family:var(--font-display);opacity:.9;font-size:1.35rem;font-weight:400}.pricing-card-v2-amount{font-family:var(--font-display);letter-spacing:-.04em;font-feature-settings:"tnum" 1;font-size:clamp(2.75rem,5vw,3.75rem);font-weight:500;line-height:1}.pricing-card-v2-suffix{opacity:.62;margin-left:2px;font-size:.875rem}.pricing-card-v2-footnote{font-family:var(--font-display);opacity:.62;margin:8px 0 0;font-size:.8125rem;font-style:italic}.pricing-card-v2-ideal{letter-spacing:.06em;text-transform:uppercase;opacity:.62;margin:14px 0 0;font-size:.6875rem;font-weight:600}.pricing-card-v2-ideal span{text-transform:none;letter-spacing:.02em;opacity:.92;font-size:.8125rem;font-weight:700}.pricing-card-v2-feature-groups{flex-direction:column;flex:1;gap:18px;margin-bottom:24px;display:flex}.pricing-card-v2-feature-group-title{letter-spacing:.06em;text-transform:uppercase;opacity:.72;margin:0 0 10px;font-size:.72rem;font-weight:700}.pricing-card-v2-feature-group .pricing-card-v2-features{margin-bottom:0}.pricing-card-v2-features{flex:1;gap:12px;margin:0 0 24px;padding:0;list-style:none;display:grid}.pricing-card-v2-feature{opacity:.92;align-items:flex-start;gap:12px;font-size:.875rem;line-height:1.55;display:flex}.pricing-feature-check{flex-shrink:0;width:16px;height:16px;margin-top:2px}.pricing-feature-lead{opacity:.95;font-style:italic}.pricing-card-v2-cta{background:var(--text-heading);width:100%;color:var(--bg-elevated);cursor:pointer;transition:transform .2s var(--ease-out), filter .2s ease;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:14px 20px;font-family:inherit;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.pricing-card-v2-cta:hover{filter:brightness(1.05);transform:scale(1.02)}.pricing-card-v2-cta.is-featured-cta{background:var(--accent);color:var(--bg-elevated)}.pricing-cta-arrow{width:16px;height:16px}.pricing-meta-grid{border-radius:var(--radius-xl);background:var(--bg-elevated);border:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:20px;padding:28px 28px 32px;display:grid}.pricing-meta-label{letter-spacing:.14em;text-transform:uppercase;opacity:.55;margin-bottom:8px;font-size:.6875rem;font-weight:700}.pricing-meta-title{font-family:var(--font-display);color:var(--text-heading);margin-bottom:8px;font-size:1.35rem;font-weight:500}.pricing-meta-desc{color:var(--text);margin:0;font-size:.875rem;line-height:1.6}.pricing-store-note{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--accent) 8%, transparent);border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);margin-bottom:24px;padding:22px 24px}.pricing-store-note-title{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;font-size:.6875rem;font-weight:700}.pricing-store-note p{color:var(--text);margin:0;font-size:.875rem;line-height:1.65}.pricing-bottom-note{opacity:.55;text-align:center;margin:0;font-size:.75rem}@media (width<=960px){.pricing-shell{max-width:100%}.pricing-cat-toggle{flex-direction:row;width:100%;max-width:100%;margin-bottom:28px;display:flex}.pricing-cat-btn{flex:1;justify-content:center;gap:6px;min-width:0;padding:10px 12px;font-size:.875rem}.pricing-hero-title{margin-bottom:16px}.pricing-hero-sub{margin-bottom:24px}.pricing-period-wrap{width:100%;margin-bottom:22px}.pricing-period-toggle{border-radius:var(--radius-lg);grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;max-width:100%;padding:5px;display:grid}.pricing-period-btn{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;padding:10px 6px;font-size:.8125rem;line-height:1.2}.pricing-period-note{letter-spacing:.04em;padding:2px 5px;font-size:.5625rem}.pricing-cards-grid{grid-template-columns:1fr;gap:16px;width:100%;max-width:none;margin-bottom:28px;margin-left:0;margin-right:0}.pricing-card-v2{padding:26px 18px 20px}.pricing-card-v2--featured{padding-top:30px}.pricing-card-v2-name{font-size:1.45rem}.pricing-card-v2-tagline{min-height:0}.pricing-card-v2-amount{font-size:clamp(2.25rem,10vw,3.75rem)}.pricing-featured-ribbon{max-width:calc(100% - 32px);left:16px}.pricing-meta-grid{grid-template-columns:1fr;gap:20px;padding:22px 18px 24px}.pricing-meta-title{font-size:clamp(1.05rem,4.2vw,1.35rem);line-height:1.2}.pricing-store-note{padding:18px 16px}.pricing-card-v2-cta{padding:13px 16px;font-size:.8125rem}}@media (width<=380px){.pricing-period-btn{padding:9px 4px;font-size:.75rem}.pricing-period-note{padding:2px 4px;font-size:.5rem}.pricing-cat-btn{padding:9px 8px;font-size:.8125rem}}.problemi-cta-row{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:12px;display:flex}.problemi-cta-row--hierarchy{align-items:stretch}.problemi-cta-packs-link{color:color-mix(in srgb, var(--bg-elevated) 72%, transparent);border-bottom:1px solid color-mix(in srgb, var(--bg-elevated) 28%, transparent);margin-top:14px;font-size:.9rem;font-weight:600;text-decoration:none;transition:color .2s,border-color .2s;display:inline-block}.problemi-cta-packs-link:hover{color:var(--bg-elevated);border-bottom-color:var(--accent)}.contact-sla{border-radius:var(--radius-xl);background:var(--bg-elevated);border:var(--surface-elevated-border);max-width:640px;box-shadow:var(--surface-elevated-shadow);color:var(--text-heading);margin:0 auto 28px;padding:22px 24px;font-size:.95rem;line-height:1.65}.contact-sla p{margin:0 0 10px}.contact-sla p:last-child{margin-bottom:0}.contact-cal{max-width:720px;margin:0 auto 28px}.contact-cal-intro{text-align:center;max-width:640px;color:var(--text);margin:0 auto 20px;font-size:clamp(1rem,2.2vw,1.15rem);line-height:1.65}.contact-cal-frame-wrap{border-radius:var(--radius-xl);border:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);background:var(--bg-elevated);min-height:520px;overflow:hidden}.contact-cal-iframe{border:none;width:100%;height:620px;display:block}.contact-cal-inline-wrap .contact-cal-inline-root{-webkit-overflow-scrolling:touch}.chi-sono-card{border-radius:var(--radius-xl);background:var(--bg-elevated);border:var(--surface-elevated-border);max-width:860px;box-shadow:var(--surface-elevated-shadow);margin:0 auto;padding:28px 26px}.chi-sono-quote{border-left:4px solid var(--accent);background:linear-gradient(90deg, rgba(var(--accent-rgb), .1), rgba(var(--accent-rgb), .02));color:var(--text-heading);border-radius:12px;margin:0 0 18px;padding:16px 18px;font-size:1.08rem;font-weight:600;line-height:1.5}.chi-sono-chips{flex-wrap:wrap;gap:10px;margin:0 0 18px;display:flex}.chi-sono-chip{color:var(--accent);background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .2);border-radius:999px;align-items:center;padding:8px 12px;font-size:.86rem;font-weight:700;display:inline-flex}.chi-sono-story{gap:12px;display:grid}.chi-sono-story-item{border-radius:var(--radius-lg);background:var(--surface);border:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);transition:transform var(--duration) var(--ease-out), border-color var(--duration), box-shadow var(--duration);padding:14px 14px 14px 18px;position:relative}.chi-sono-story-item:before{content:"";background:linear-gradient(180deg, var(--accent), var(--gradient-end));border-radius:999px;width:3px;position:absolute;top:12px;bottom:12px;left:0}.chi-sono-story-item:hover{border-color:color-mix(in srgb, var(--text-heading) 14%, transparent);transform:translateY(-3px);box-shadow:0 16px 40px #1816131a}.chi-sono-story-label{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-bottom:8px;font-size:.76rem;font-weight:800;display:inline-block}.chi-sono-text{color:var(--text);margin:0;font-size:1.01rem;line-height:1.75}.chi-sono-points{gap:10px;margin:0 0 16px;padding:0;list-style:none;display:grid}.chi-sono-points li{color:var(--text-heading);padding-left:28px;font-weight:500;position:relative}.chi-sono-points li:before{content:"•";color:var(--accent);font-weight:700;position:absolute;left:10px}.section-desc--come-lavoro{text-align:center;max-width:56ch;margin-bottom:26px}.come-lavoro-pitch{border-radius:var(--radius-xl);background:var(--bg-elevated);border:var(--surface-elevated-border);max-width:920px;box-shadow:var(--surface-elevated-shadow);margin:0 auto 28px;padding:22px}.come-lavoro-pitch-text{color:var(--text-heading);text-align:left;margin:0 0 14px;font-size:1.05rem;line-height:1.7}.come-lavoro-proof{color:var(--text);flex-wrap:wrap;align-items:center;gap:10px;font-size:.95rem;display:flex}.come-lavoro-proof-item{align-items:baseline;gap:6px;display:inline-flex}.come-lavoro-proof-sep{opacity:.5}.come-lavoro-proof-link{color:var(--accent);transition:color var(--duration), transform .2s;font-weight:700;text-decoration:none}.come-lavoro-proof-link:hover{color:var(--gradient-end);transform:translate(4px)}.come-lavoro-grid{grid-template-columns:repeat(2,1fr);gap:24px;max-width:920px;margin:0 auto 40px;display:grid}.come-lavoro-step{background:var(--bg-elevated);border:var(--surface-elevated-border);border-radius:var(--radius-xl);box-shadow:var(--surface-elevated-shadow);transition:transform var(--duration) var(--ease-out), box-shadow var(--duration), border-color var(--duration);padding:24px 22px;position:relative}.come-lavoro-step:hover{border-color:color-mix(in srgb, var(--text-heading) 14%, transparent);transform:translateY(-4px);box-shadow:0 16px 40px #1816131a}.come-lavoro-badge{align-items:center;gap:10px;margin-bottom:14px;display:inline-flex}.come-lavoro-num{background:linear-gradient(135deg, var(--accent-light), rgba(var(--accent-warm-rgb), .18));width:52px;height:52px;color:var(--accent);letter-spacing:-.02em;box-shadow:0 10px 24px rgba(var(--accent-rgb), .12);border-radius:16px;justify-content:center;align-items:center;font-size:1.25rem;font-weight:800;display:inline-flex}.come-lavoro-icon{width:40px;height:40px;color:var(--text-heading);background:#1816130a;border:1px solid #1816130f;border-radius:14px;justify-content:center;align-items:center;display:inline-flex}.come-lavoro-icon svg{width:22px;height:22px}.come-lavoro-title{color:var(--text-heading);margin-bottom:10px;font-size:1.1rem;font-weight:700;line-height:1.3}.come-lavoro-step p{color:var(--text);margin:0;font-size:.95rem;line-height:1.6}.come-lavoro-cta{text-align:center;padding-top:12px}.come-lavoro-cta-card{border-radius:var(--radius-xl);background:var(--text-heading);max-width:920px;color:var(--bg-elevated);border:1px solid var(--text-heading);margin:0 auto;padding:28px 24px;box-shadow:0 20px 50px #1816132e}.come-lavoro-cta-title{color:inherit;margin:0 0 10px;font-size:1.25rem;font-weight:800}.come-lavoro-cta-text{color:color-mix(in srgb, var(--bg-elevated) 88%, transparent);max-width:56ch;margin-bottom:18px;margin-left:auto;margin-right:auto;font-size:1.03rem;line-height:1.6}.come-lavoro-cta-card .btn-primary{background:var(--accent);color:var(--bg-elevated);border-color:#0000}.come-lavoro-cta-card .btn-primary:hover{filter:brightness(1.06)}@media (width>=1100px){.come-lavoro-grid{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:34px}.come-lavoro-step{padding:22px 18px}.come-lavoro-step:not(:last-child):after{content:"";border-top:2px solid rgba(var(--accent-rgb), .3);border-right:2px solid rgba(var(--accent-rgb), .3);pointer-events:none;width:20px;height:20px;position:absolute;top:34px;right:-10px;transform:rotate(45deg)}.come-lavoro-step:not(:last-child):before{content:"";background:rgba(var(--accent-rgb), .22);pointer-events:none;width:36px;height:2px;position:absolute;top:43px;right:-18px}}@media (width<=700px){.section-desc--come-lavoro{text-align:center;margin-bottom:22px}.come-lavoro-pitch{padding:16px}.come-lavoro-pitch-text{text-align:center}.come-lavoro-proof{justify-content:center}.come-lavoro-grid{grid-template-columns:1fr;gap:20px}.chi-sono-card{padding:22px 18px}.chi-sono-quote{padding:14px;font-size:1rem}}.per-chi-scenarios{gap:14px;max-width:920px;margin:0 auto;padding:0;list-style:none;display:grid}.per-chi-scenario{border-radius:var(--radius-xl);background:var(--bg-elevated);border:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);transition:transform var(--duration) var(--ease-out), border-color var(--duration), box-shadow var(--duration);padding:16px 18px 16px 50px;position:relative}.per-chi-scenario:before{content:"?";background:rgba(var(--accent-rgb), .12);width:22px;height:22px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:800;display:inline-flex;position:absolute;top:18px;left:16px}.per-chi-scenario:hover{border-color:color-mix(in srgb, var(--text-heading) 14%, transparent);transform:translateY(-4px);box-shadow:0 16px 40px #1816131a}.per-chi-scenario-title{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);margin:0 0 6px;font-size:.94rem;font-weight:800}.per-chi-scenario p{color:var(--text-heading);margin:0;font-size:1rem;line-height:1.6}@media (width<=700px){.per-chi-scenario{padding:14px 14px 14px 44px}.per-chi-scenario p{font-size:.96rem}}.problems{padding:var(--section-padding);background:var(--section-gradient-crema)}.problemi-intro-question{color:var(--text-heading);margin-bottom:12px;font-size:1.2rem;font-weight:700}.problemi-intro-desc{color:var(--text);text-align:center;max-width:640px;margin-bottom:40px;margin-left:auto;margin-right:auto;font-size:clamp(1rem,2.2vw,1.2rem);line-height:1.65}.problemi-two-cols{grid-template-columns:1fr 1fr;align-items:stretch;gap:28px;display:grid}.problemi-col{border-radius:var(--radius-xl);border:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);flex-direction:column;padding:28px 30px;display:flex}.problemi-col--left{background:var(--bg-elevated)}.problemi-col--right{background:var(--text-heading);color:var(--bg-elevated);border-color:var(--text-heading);box-shadow:0 20px 50px #1816132e}.problemi-col-title{color:var(--text-heading);text-transform:uppercase;letter-spacing:.03em;margin-bottom:16px;font-size:1.05rem;font-weight:700}.problemi-col-title--accent{color:var(--accent)}.problemi-col--right .problemi-col-title{color:color-mix(in srgb, var(--bg-elevated) 92%, transparent)}.problemi-col--right .problemi-col-title--accent{color:#e8a294}.problemi-col--right .problemi-soluzione-desc{color:color-mix(in srgb, var(--bg-elevated) 78%, transparent)}.problemi-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.problemi-list--no li{color:var(--text-heading);border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);align-items:center;gap:12px;padding:12px 16px 12px 14px;font-size:.95rem;font-weight:500;line-height:1.4;display:flex}.problemi-list--no li:before{content:"✕";text-align:center;color:#18161373;flex-shrink:0;width:20px;font-size:.9rem;font-weight:700}.problemi-accordion{gap:10px;margin:0;padding:0;list-style:none;display:grid}.problema-item{border:var(--surface-elevated-border);border-radius:var(--radius-lg);background:var(--bg-elevated);box-shadow:var(--surface-elevated-shadow);overflow:hidden}.problema-toggle{cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:18px 1fr;align-items:start;column-gap:8px;width:100%;padding:12px 14px;display:grid}.problema-toggle-icon{text-align:center;width:18px;color:var(--accent);font-size:.95rem;font-weight:800;line-height:1.4}.problema-toggle-text{color:var(--text-heading);min-width:0;font-size:.95rem;font-weight:600;line-height:1.4}.problema-content{opacity:0;max-height:0;padding:0 14px 0 40px;transition:max-height .3s,opacity .22s,padding .3s;overflow:hidden}.problema-content.is-open{opacity:1;max-height:140px;padding:0 14px 12px 40px}.problema-content p{color:var(--text);margin:0;font-size:.92rem;line-height:1.55}.problemi-list--yes li{color:var(--text-heading);padding:10px 0 10px 32px;font-size:.98rem;font-weight:500;line-height:1.45;position:relative}.problemi-list--yes li:before{content:"✓";color:var(--accent);font-size:1rem;font-weight:700;position:absolute;top:.5em;left:0}.problemi-soluzione-desc{color:var(--text);margin-bottom:16px;font-size:.98rem;line-height:1.6}.problemi-soluzione-intro{color:var(--text-heading);margin-bottom:10px;font-size:.95rem;font-weight:600}.problemi-col--left .problemi-list{flex:1;min-height:0}.problemi-col--right .problemi-list--yes{margin-bottom:20px}.problemi-col--right .problemi-col-title:not(:first-child){margin-top:22px}.problemi-cta-block{border-top:1px solid color-mix(in srgb, var(--bg-elevated) 22%, transparent);margin-top:auto;padding-top:24px}.problemi-col--right .btn-primary{background:var(--accent);color:var(--bg-elevated)}.problemi-col--right .btn-secondary{color:var(--bg-elevated);border-color:color-mix(in srgb, var(--bg-elevated) 35%, transparent)}.problemi-col--right .btn-secondary:hover{background:color-mix(in srgb, var(--bg-elevated) 12%, transparent);border-color:var(--accent);color:var(--accent)}.problemi-cta-text{color:var(--text);margin-bottom:18px;font-size:1rem;line-height:1.6}.problemi-cta-block .btn{margin-top:0}@media (width<=900px){.problemi-two-cols{grid-template-columns:1fr;gap:28px}.problemi-col--left,.problemi-col--right{padding:20px 22px}}.card-grid{gap:28px;display:grid}.card-grid--3{grid-template-columns:repeat(3,1fr)}.card-grid--2{grid-template-columns:repeat(2,1fr)}.card{background:var(--bg-elevated);border:1px solid var(--card-border);border-radius:var(--radius-lg);transition:transform var(--duration) var(--ease-out), box-shadow var(--duration), border-color var(--duration);flex-direction:column;padding:32px;display:flex}.card:hover{box-shadow:var(--shadow-lg), 0 0 0 1px rgba(var(--accent-rgb), .08);border-color:rgba(var(--accent-rgb), .2);transform:translateY(-6px)}.card-icon{border-radius:var(--radius);background:linear-gradient(135deg, var(--accent-light), rgba(var(--accent-warm-rgb), .12));width:52px;height:52px;transition:transform var(--duration) var(--ease-spring);justify-content:center;align-items:center;margin-bottom:18px;font-size:26px;display:flex}.card:hover .card-icon{transform:scale(1.05)rotate(-3deg)}.card-title{margin-bottom:10px;font-size:1.2rem;font-weight:700}.card-desc{color:var(--text);flex-grow:1;margin-bottom:18px;font-size:.98rem;line-height:1.6}.card-list{color:var(--text);margin-bottom:22px;font-size:.92rem}.card-list li{padding:5px 0}.card-list li:before{content:"+ ";color:var(--accent);font-weight:700}.card-btn{color:var(--text-heading);border:1px solid var(--border);border-radius:var(--radius);transition:background var(--duration), border-color var(--duration), color var(--duration), transform .2s;align-self:flex-start;align-items:center;gap:6px;margin-top:auto;padding:12px 18px;font-size:.92rem;font-weight:600;display:inline-flex}.card-btn:hover{background:linear-gradient(135deg, var(--accent-light), rgba(var(--accent-warm-rgb), .1));border-color:var(--accent);color:var(--accent);transform:translate(4px)}@media (width<=900px){.card-grid--3,.card-grid--2{grid-template-columns:1fr}}.projects{padding:var(--section-padding);background:var(--section-gradient-crema)}.project-list{flex-direction:column;gap:40px;display:flex}.project-card{background:var(--bg-elevated);border:1px solid var(--card-border);border-radius:var(--radius-xl);transition:transform var(--duration) var(--ease-out), box-shadow var(--duration), border-color var(--duration);overflow:hidden}.project-card:hover{box-shadow:var(--shadow-lg), 0 0 0 1px rgba(var(--accent-rgb), .06);border-color:rgba(var(--accent-rgb), .15);transform:translateY(-4px)}.project-card--mockup{box-shadow:none;background:0 0;border-color:#0000}.project-card--mockup:hover{box-shadow:none;border-color:#0000}.project-card-inner{grid-template-columns:1fr 420px;align-items:center;gap:48px;padding:44px 48px;display:grid}.project-main{min-width:0;max-width:520px}.project-title{color:var(--text-heading);margin-bottom:28px;font-size:1.4rem;line-height:1.3}.project-block{margin-bottom:24px}.project-block--result{margin-bottom:32px}.project-label{text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin-bottom:8px;font-size:.8rem;font-weight:700;display:block}.project-text{color:var(--text);margin:0;font-size:1.05rem;line-height:1.75}.project-text--result{color:var(--text-heading);font-size:1.08rem;font-weight:600}.project-cta{margin-top:12px}.project-visual{cursor:default;background:0 0;justify-content:center;align-items:center;min-height:320px;display:flex}.project-mockup-wrap{background:0 0;justify-content:center;align-items:center;max-width:300px;max-height:560px;animation:4s ease-in-out infinite mockup-float;display:flex;position:relative}@keyframes mockup-float{0%,to{transform:translateY(0)}25%{transform:translateY(-8px)}50%{transform:translateY(0)}75%{transform:translateY(-8px)}}.project-mockup-img{object-fit:contain;object-position:center;width:auto;max-width:300px;height:auto;min-height:380px;max-height:560px;transition:transform .4s var(--ease-spring), filter .4s ease, opacity .5s ease}.project-mockup-img--hover{opacity:0;pointer-events:none;object-fit:contain;object-position:center;width:100%;height:100%;transition:opacity .5s ease, transform .4s var(--ease-spring), filter .4s ease;position:absolute;inset:0}.project-visual:hover .project-mockup-img--default{opacity:0}.project-visual:hover .project-mockup-img--hover{opacity:1;filter:brightness(1.04);box-shadow:none;transform:scale(1.06)}.project-device{box-shadow:var(--shadow-md);transition:transform var(--duration) var(--ease-spring);border-radius:16px;padding:10px}.project-card:hover .project-device{transform:scale(1.04)}.project-device.project-phone{background:linear-gradient(160deg,#27272a,#18181b);width:120px;height:220px;box-shadow:0 16px 32px #0000002e}.project-device .project-phone-screen{background:linear-gradient(#fef3c7 0%,#fde68a 100%);border-radius:12px;width:100%;height:100%}.project-device.project-laptop{background:linear-gradient(145deg,#d4d4d4,#f0f0f0);border-radius:10px;width:200px;height:132px;box-shadow:0 12px 28px #0000001f}.project-device .project-laptop-screen{background:linear-gradient(180deg, var(--surface-2), #d4cdc0);border-radius:6px;width:100%;height:100%}@media (width<=900px){.project-card-inner{grid-template-columns:1fr;gap:28px;padding:28px 24px}.project-visual{order:-1;min-height:280px}.project-mockup-wrap{max-width:260px;max-height:480px}.project-mockup-img{max-width:260px;min-height:320px;max-height:480px}}.cta-final{padding:var(--section-padding);text-align:center;background:var(--section-gradient-crema);position:relative;overflow:hidden}.cta-final-bg{background:linear-gradient(145deg, rgba(var(--accent-rgb), .05) 0%, transparent 42%, rgba(var(--accent-warm-rgb), .06) 100%);pointer-events:none;position:absolute;inset:0}.cta-final .container{position:relative}.cta-final-buttons{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:28px;display:flex}.cta-final-whatsapp{margin-bottom:20px}.cta-final-whatsapp-label{color:var(--text);margin:0 0 10px;font-size:.9rem;font-weight:600}.contact-email-note{max-width:480px;color:var(--text);opacity:.88;margin:0 auto 24px;font-size:.85rem;line-height:1.55}.contact-email-note-link{color:var(--accent);border-bottom:1px solid color-mix(in srgb, var(--accent) 35%, transparent);font-weight:600;text-decoration:none}.contact-email-note-link:hover{color:var(--accent-hover);border-bottom-color:var(--accent-hover)}.cta-final-or{color:var(--text);opacity:.9;margin:0 auto 16px;font-size:.9rem}.contact-form{text-align:left;max-width:420px;margin:0 auto 28px}.contact-form-row{margin-bottom:16px}.contact-label{color:var(--text-heading);margin-bottom:6px;font-size:.9rem;font-weight:600;display:block}.contact-input{width:100%;font-family:var(--font-sans);border:1px solid var(--border);border-radius:var(--radius);background:var(--input-bg);color:var(--text-heading);padding:12px 14px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.contact-input::placeholder{color:#1816136b}.contact-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .15);outline:none}.contact-textarea{resize:vertical;min-height:100px}.contact-form .btn{justify-content:center;width:100%;margin-top:8px}.contact-error{color:#dc2626;margin-top:12px;font-size:.9rem}.contact-success{text-align:center;background:rgba(var(--accent-rgb), .08);border-radius:var(--radius-lg);border:1px solid rgba(var(--accent-rgb), .2);max-width:400px;margin:0 auto 28px;padding:32px 24px}.contact-success-title{color:var(--text-heading);margin-bottom:8px;font-size:1.2rem;font-weight:700}.contact-success-desc{color:var(--text);margin:0;font-size:.98rem}.cta-final-alt{color:var(--text);margin:0;font-size:.95rem}.cta-final-alt .link-whatsapp,.cta-final-alt .link-email{color:var(--accent);font-weight:600}.cta-final-alt .link-email:hover{text-decoration:underline}.btn-whatsapp{color:#fff;border-radius:var(--radius);background:#25d366;border:none;justify-content:center;align-items:center;gap:8px;padding:14px 24px;font-size:1rem;font-weight:600;text-decoration:none;transition:background .2s,transform .2s;display:inline-flex;box-shadow:0 2px 8px #25d36659}.btn-whatsapp:hover{color:#fff;background:#20bd5a;transform:translateY(-2px)}.btn-whatsapp-secondary{border-radius:var(--radius);border:1px solid color-mix(in srgb, #25d366 45%, var(--border));color:#128c7e;background:0 0;justify-content:center;align-items:center;gap:6px;padding:10px 18px;font-size:.8125rem;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s,color .2s,transform .2s;display:inline-flex}.btn-whatsapp-secondary:hover{color:#0d6e4d;background:#25d3661f;border-color:#25d366;transform:translateY(-1px)}.problemi-col--right .btn-whatsapp-secondary{border-color:color-mix(in srgb, var(--bg-elevated) 32%, transparent);color:color-mix(in srgb, var(--bg-elevated) 92%, transparent)}.problemi-col--right .btn-whatsapp-secondary:hover{color:#fff;background:#25d36624;border-color:#4ade80}.site-footer{color:color-mix(in srgb, var(--bg-elevated) 76%, transparent);background:linear-gradient(#0a0a09 0%,#121110 48%,#0e0e0d 100%);padding:36px 0 16px;font-size:.875rem;line-height:1.5}.site-footer-inner{max-width:1120px}.footer-grid{grid-template-columns:1.35fr 1fr 1fr;gap:14px;margin-bottom:18px;display:grid}.footer-col{border-radius:var(--radius-lg);border:1px solid color-mix(in srgb, var(--bg-elevated) 14%, transparent);background:color-mix(in srgb, var(--bg-elevated) 5%, transparent);padding:16px 18px;box-shadow:0 4px 28px #00000059}.footer-col--brand{padding:18px 20px}.footer-brand{font-family:var(--font-display);letter-spacing:-.03em;color:var(--bg-elevated);margin:0 0 8px;font-size:clamp(1.05rem,2vw,1.4rem);font-weight:500;line-height:1.1}.footer-brand-line{display:block}.footer-brand-line--emph{color:#e8a294;margin-top:4px;font-size:.86em;font-style:italic;font-weight:500}.footer-local,.footer-piva{color:color-mix(in srgb, var(--bg-elevated) 72%, transparent);margin:0 0 4px;font-size:.8125rem;line-height:1.5}.footer-piva:last-child,.footer-local:last-child{margin-bottom:0}.footer-title{letter-spacing:.14em;text-transform:uppercase;color:var(--bg-elevated);opacity:.55;margin:0 0 8px;font-size:.6875rem;font-weight:700}.footer-links{gap:5px;display:grid}.footer-link{color:color-mix(in srgb, var(--bg-elevated) 90%, transparent);transition:color var(--duration), transform .2s var(--ease-out);font-size:.8125rem;font-weight:500;text-decoration:none}.footer-link:hover{color:#e8a294;transform:translate(3px)}.footer-link--quiet{opacity:.78;font-weight:400}.footer-link--quiet:hover{opacity:1}.footer-bottom{border-top:1px solid color-mix(in srgb, var(--bg-elevated) 12%, transparent);text-align:center;color:color-mix(in srgb, var(--bg-elevated) 52%, transparent);opacity:.95;margin:0;padding-top:14px;font-size:.7rem;line-height:1.45}.footer-bottom-link{color:color-mix(in srgb, var(--bg-elevated) 78%, transparent);transition:color var(--duration);font-weight:600;text-decoration:none}.footer-bottom-link:hover{color:#e8a294}@media (width<=900px){.footer-grid{grid-template-columns:1fr 1fr}.footer-col--brand{grid-column:1/-1}}@media (width<=640px){.site-footer{padding:28px 0 14px}.footer-grid{grid-template-columns:1fr;gap:12px;margin-bottom:16px}.footer-col--brand{grid-column:auto}.footer-col{padding:14px 16px}}.site-footer--portal{padding:10px 0 max(10px, env(safe-area-inset-bottom,0px));background:color-mix(in srgb, var(--text-heading) 94%, #1a1816);border-top:1px solid #ffffff14;font-size:.72rem;line-height:1.35}.site-footer-portal-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;max-width:1120px;display:flex}.site-footer-portal-copy{color:#ffffff94;margin:0}.site-footer-portal-sep{margin:0 .35em}.site-footer-portal-links{flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.site-footer-portal-link{color:#ffffffc7;font-size:.72rem;font-weight:500;text-decoration:none;transition:color .15s}.site-footer-portal-link:hover{color:#e8a294}@media (width<=480px){.site-footer-portal-inner{flex-direction:column;align-items:flex-start;gap:6px}}.project-list--simple{gap:32px;max-width:720px;margin:0 auto;display:grid}.project-card-simple{background:var(--bg-elevated);border:var(--surface-elevated-border);border-radius:var(--radius-xl);box-shadow:var(--surface-elevated-shadow);color:inherit;transition:transform var(--duration) var(--ease-out), box-shadow var(--duration), border-color var(--duration);grid-template-columns:140px 1fr;align-items:start;gap:28px;padding:28px 32px;text-decoration:none;display:grid}.project-card-simple:hover{border-color:color-mix(in srgb, var(--text-heading) 14%, transparent);transform:translateY(-4px);box-shadow:0 16px 40px #1816131a}.project-card-simple:hover .project-card-simple-link{color:var(--accent);transform:translate(4px)}.project-card-simple-visual{justify-content:center;align-items:center;display:flex}.project-card-simple-img{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;max-width:120px;height:auto}.project-card-simple-content{min-width:0}.project-card-simple-title{color:var(--text-heading);margin-bottom:16px;font-size:1.25rem;font-weight:700;line-height:1.3}.project-card-simple-block{margin-bottom:14px}.project-card-simple-block--result{margin-bottom:18px}.project-card-simple-block p{color:var(--text);margin:0;font-size:.95rem;line-height:1.5}.project-card-simple-block--result p{color:var(--text-heading);font-weight:600}.project-card-simple-label{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-bottom:4px;font-size:.75rem;font-weight:700;display:block}.project-card-simple-link{color:var(--text-heading);transition:color var(--duration), transform var(--duration);font-size:.95rem;font-weight:600;display:inline-block}@media (width<=640px){.project-card-simple{text-align:center;grid-template-columns:1fr}.project-card-simple-img{max-width:100px}}.faq-list{gap:12px;max-width:860px;margin:0 auto;padding:0;list-style:none;display:grid}.faq-item{border:var(--surface-elevated-border);border-radius:var(--radius-xl);background:var(--bg-elevated);box-shadow:var(--surface-elevated-shadow);overflow:hidden}.faq-toggle{cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:22px 1fr;align-items:start;column-gap:10px;width:100%;padding:14px 16px;display:grid}.faq-toggle-icon{width:22px;height:22px;color:var(--accent);background:rgba(var(--accent-rgb), .1);border-radius:50%;justify-content:center;align-items:center;font-weight:800;line-height:1;display:inline-flex}.faq-toggle-text{color:var(--text-heading);min-width:0;font-size:1rem;font-weight:700;line-height:1.45}.faq-content{opacity:0;max-height:0;padding:0 16px 0 48px;transition:max-height .3s,opacity .22s,padding .3s;overflow:hidden}.faq-content.is-open{opacity:1;max-height:180px;padding:0 16px 14px 48px}.faq-content p{color:var(--text);margin:0;font-size:.95rem;line-height:1.65}.faq-cta-line{text-align:center;max-width:860px;margin:28px auto 0}.project-detail-page{padding-bottom:80px}.project-detail-hero{background:var(--section-gradient-crema);border-bottom:var(--surface-elevated-border);padding:48px 0 40px}.project-detail-back{color:var(--accent);transition:color var(--duration), transform .2s;margin-bottom:24px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block}.project-detail-back:hover{color:var(--accent-hover);transform:translate(-4px)}.project-detail-title{color:var(--text-heading);margin:0 0 28px;font-size:2rem;font-weight:700;line-height:1.2}.project-detail-hero-mockup{justify-content:center;margin-top:24px;display:flex}.project-detail-hero-mockup img{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;max-width:200px;height:auto}.project-detail-content{max-width:640px;margin:0 auto;padding-top:48px}.project-detail-section{margin-bottom:40px}.project-detail-section-title{color:var(--accent);text-transform:uppercase;letter-spacing:.04em;margin-bottom:16px;font-size:1.2rem;font-weight:700}.project-detail-p{color:var(--text);margin:0 0 14px;font-size:1.05rem;line-height:1.7}.project-detail-p:last-child{margin-bottom:0}.project-detail-list{color:var(--text);margin:0;padding-left:24px;font-size:1.05rem;line-height:1.7}.project-detail-list li{margin-bottom:10px}.project-detail-cta{background:linear-gradient(135deg, var(--accent-light), rgba(var(--accent-warm-rgb), .08));border:1px solid rgba(var(--accent-rgb), .2);border-radius:var(--radius-lg);text-align:center;margin-top:48px;padding:32px}.project-detail-cta p{color:var(--text-heading);margin:0 0 18px;font-size:1.1rem;font-weight:600}.project-detail-notfound{text-align:center;padding:80px 24px}.project-detail-notfound h1{color:var(--text-heading);margin-bottom:12px;font-size:1.5rem}.project-detail-notfound p{color:var(--text);margin-bottom:24px}.area-personale-page{padding:var(--section-padding);padding-top:calc(env(safe-area-inset-top,0px) + clamp(6.25rem, 16vh, 10.5rem));background:var(--section-gradient-crema)}#area-personale{scroll-margin-top:calc(env(safe-area-inset-top,0px) + clamp(72px, 12vh, 104px))}.area-personale-inner{max-width:1120px}.area-personale-hero-title{margin-bottom:16px}.area-personale-hero-sub{max-width:560px;margin-bottom:28px;margin-left:auto;margin-right:auto}.area-login-card{border-radius:var(--radius-xl);background:var(--bg-elevated);border:var(--surface-elevated-border);max-width:420px;box-shadow:var(--surface-elevated-shadow);margin:0 auto 28px;padding:26px 24px 28px}.area-login-form{text-align:left}.area-login-form .contact-form-row:last-of-type{margin-bottom:20px}.area-login-submit{justify-content:center;width:100%;margin-top:4px}.area-login-feedback{border-radius:var(--radius);margin:0 0 16px;padding:12px 14px;font-size:.9rem;line-height:1.55}.area-login-feedback--info{background:color-mix(in srgb, var(--accent) 10%, transparent);border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);color:var(--text-heading)}.area-login-feedback--success{color:var(--text-heading);background:#2d6a4f1f;border:1px solid #2d6a4f47}.area-login-feedback--error{background:color-mix(in srgb, var(--accent) 8%, transparent);border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);color:var(--text-heading)}.area-personale-foot{text-align:center;margin:0}@media (width<=640px){.area-personale-page{padding-top:calc(env(safe-area-inset-top,0px) + clamp(5.5rem, 14vh, 8.5rem))}.area-login-card{padding:22px 18px 24px}}.area-dashboard-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px 24px;margin-bottom:28px;display:flex}.area-dashboard-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 8px;font-size:.8rem;font-weight:600}.area-dashboard-title{color:var(--text-heading);margin:0 0 10px;font-size:clamp(1.75rem,4vw,2.25rem);line-height:1.15}.area-dashboard-lead{max-width:42rem;color:var(--text);margin:0;font-size:1rem;line-height:1.55}.area-dashboard-logout{flex-shrink:0}.area-dashboard-placeholder{text-align:center;color:var(--text);margin:0 0 24px}.area-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px;display:grid}.area-dashboard-card{border-radius:var(--radius-xl);background:var(--bg-elevated);border:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);padding:22px 24px}.area-dashboard-card--muted{text-align:center;max-width:36rem;margin:0 auto 24px}.area-dashboard-card-title{color:var(--text-heading);margin:0 0 16px;font-size:1.1rem;font-weight:700}.area-dashboard-card-text{color:var(--text);margin:0 0 16px;font-size:.95rem;line-height:1.55}.area-dashboard-dl{gap:12px;margin:0;display:grid}.area-dashboard-dl div{gap:4px;display:grid}.area-dashboard-dl dt{letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 70%, transparent);margin:0;font-size:.78rem;font-weight:600}.area-dashboard-dl dd{color:var(--text-heading);margin:0;font-size:1rem}.area-dashboard-projects{gap:14px;margin:0;padding:0;list-style:none;display:grid}.area-dashboard-project{border-radius:var(--radius-lg);border:1px solid var(--card-border);background:color-mix(in srgb, var(--bg) 40%, transparent);padding:14px 16px}.area-dashboard-project-title{color:var(--text-heading);margin:0 0 6px;font-size:1rem;font-weight:700}.area-dashboard-project-desc{color:var(--text);margin:0 0 8px;font-size:.92rem;line-height:1.5}.area-dashboard-project-meta{color:color-mix(in srgb, var(--text) 65%, transparent);margin:0;font-size:.8rem}.area-dashboard-card--wide{margin-bottom:20px}.area-dashboard-card-text--compact{margin-bottom:18px}.area-invoices-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.area-invoices-table{border-collapse:collapse;width:100%;font-size:.92rem}.area-invoices-table th,.area-invoices-table td{text-align:left;border-bottom:1px solid var(--card-border);padding:12px 14px}.area-invoices-table th{letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 70%, transparent);font-size:.75rem;font-weight:700}.area-invoices-table tbody tr:last-child td{border-bottom:none}.area-invoices-desc{color:var(--text-heading);font-weight:600;display:block}.area-invoices-ref{color:color-mix(in srgb, var(--text) 60%, transparent);margin-top:4px;font-size:.78rem;display:block}.area-invoice-status{letter-spacing:.02em;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-block}.area-invoice-status--paid{color:#1b4332;background:#2d6a4f24;border:1px solid #2d6a4f59}.area-invoice-status--pending{color:#7c5e10;background:#b089001f;border:1px solid #b089004d}.area-invoices-row--clickable{cursor:pointer;transition:background .15s}.area-invoices-row--clickable:hover,.area-invoices-row--clickable:focus-visible{background:color-mix(in srgb, var(--accent) 6%, transparent);outline:none}.area-invoice-detail-back{margin:0 0 20px}.area-invoice-detail-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.area-invoice-detail-mono{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.85em}.area-invoice-detail-notes{margin-bottom:20px}.area-invoice-detail-download{margin-bottom:24px}.area-invoice-detail-pending-file{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--accent) 8%, transparent);border:1px dashed color-mix(in srgb, var(--accent) 28%, transparent);padding:18px 20px}.area-invoice-detail-pending-title{color:var(--text-heading);margin:0 0 8px;font-size:1rem;font-weight:700}@media (width<=768px){.area-dashboard-grid{grid-template-columns:1fr}.area-dashboard-logout{justify-content:center;width:100%}.area-invoices-table thead{display:none}.area-invoices-table tr{border-bottom:1px solid var(--card-border);padding:14px 0;display:block}.area-invoices-table td{border-bottom:none;grid-template-columns:minmax(88px,34%) 1fr;gap:4px 12px;padding:6px 0;display:grid}.area-invoices-table td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.04em;color:color-mix(in srgb, var(--text) 65%, transparent);font-size:.72rem;font-weight:700}}.area-personale-page--portal{background:color-mix(in srgb, var(--bg) 92%, #e8e4dc);width:100%;max-width:none;min-height:calc(100dvh - 1px);padding:0;display:block}.area-personale-page--portal .portal-shell{width:100%;max-width:none}.area-personale-page.area-personale-page--login{padding:calc(env(safe-area-inset-top,0px) + clamp(1.75rem, 5vh, 3rem)) clamp(16px, 4vw, 24px) clamp(2rem, 6vh, 4rem);background:linear-gradient(165deg, color-mix(in srgb, var(--section-gradient-crema) 80%, white) 0%, color-mix(in srgb, var(--bg) 70%, #f0ebe3) 55%, var(--bg) 100%)}body.layout--portal-area .area-personale-page--login{padding-top:calc(env(safe-area-inset-top,0px) + clamp(1.75rem, 5vh, 3rem))}.area-personale-login-wrap{max-width:440px;margin-left:auto;margin-right:auto}.area-personale-login-hero{text-align:center;margin-bottom:28px}.area-personale-login-title{letter-spacing:-.02em;color:var(--text-heading);margin:0 0 12px;font-size:clamp(2rem,5vw,2.6rem);line-height:1.1}.area-personale-login-lead{color:var(--text);margin:0;font-size:1rem;line-height:1.6}.area-login-card--modern{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);border-radius:20px;max-width:none;margin-bottom:24px;padding:28px 26px 30px;box-shadow:inset 0 1px #ffffffb3,0 12px 40px #18161312}body.layout--portal-area{--portal-sidebar-width:clamp(248px, 22vw, 280px);--portal-panel-dark-bg:#1a1816e0;--portal-nav-text:#f6f2eb;--portal-nav-text-hover:color-mix(in srgb, var(--accent) 42%, #f5f0e8);--portal-nav-text-active:color-mix(in srgb, var(--accent) 72%, #f5c4b8)}.portal-shell{grid-template-columns:var(--portal-sidebar-width) minmax(0, 1fr);align-items:stretch;width:100%;max-width:100%;min-height:100dvh;display:grid}@keyframes portal-sidebar-glow-pulse-tl{0%,to{opacity:.3}50%{opacity:.92}}@keyframes portal-sidebar-glow-pulse-br{0%,to{opacity:.2}50%{opacity:.85}}@keyframes portal-brand-enter{0%{opacity:0;transform:translateY(-10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes portal-nav-enter{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes portal-nav-icon-pulse{0%,to{filter:drop-shadow(0 0 #0000)}50%{filter:drop-shadow(0 0 6px color-mix(in srgb, var(--accent) 55%, transparent))}}.portal-sidebar{z-index:50;box-sizing:border-box;width:var(--portal-sidebar-width);height:100dvh;min-height:100dvh;max-height:100dvh;padding:max(20px, env(safe-area-inset-top,0px)) 16px max(18px, env(safe-area-inset-bottom,0px)) max(16px, env(safe-area-inset-left,0px));overscroll-behavior:none;contain:paint;isolation:isolate;background:var(--portal-panel-dark-bg);-webkit-backdrop-filter:saturate(1.15)blur(22px);border:none;border-right:1px solid #ffffff1a;border-radius:0;flex-direction:column;align-self:start;gap:4px;margin:0;display:flex;position:sticky;top:0;overflow:hidden;box-shadow:inset -1px 0 #ffffff0f}.portal-sidebar:before,.portal-sidebar:after{content:"";z-index:0;pointer-events:none;will-change:opacity;position:absolute;inset:0}.portal-sidebar:before{background:radial-gradient(ellipse 95% 60% at -12% -5%, color-mix(in srgb, var(--accent) 34%, transparent), transparent 58%);animation:3.8s ease-in-out infinite portal-sidebar-glow-pulse-tl}.portal-sidebar:after{background:radial-gradient(ellipse 80% 55% at 108% 102%, color-mix(in srgb, var(--accent) 38%, transparent), transparent 54%), radial-gradient(ellipse 50% 40% at 92% 82%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 48%), radial-gradient(ellipse 35% 28% at 78% 95%, color-mix(in srgb, var(--accent-glow) 45%, transparent), transparent 50%);animation:4.6s ease-in-out -1.4s infinite portal-sidebar-glow-pulse-br}.portal-sidebar>*{z-index:1;position:relative}.portal-sidebar-brand{border-bottom:1px solid #ffffff1a;margin-bottom:8px;padding-bottom:14px;animation:.55s cubic-bezier(.22,1,.36,1) backwards portal-brand-enter}.portal-sidebar-logo{background:color-mix(in srgb, var(--bg-elevated) 92%, transparent);border-radius:14px;padding:10px 12px;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s;display:inline-flex;box-shadow:0 2px 12px #0000001f}.portal-sidebar-logo:hover{box-shadow:0 4px 20px #00000029, 0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent);transform:translateY(-2px)scale(1.02)}.portal-sidebar-logo .logo-typewriter{font-size:1.1rem}.portal-sidebar-nav{flex-direction:column;gap:2px;padding:8px 0;display:flex}.portal-sidebar-nav--secondary{border-top:1px solid #ffffff14;padding-top:4px}.portal-sidebar-nav-label{letter-spacing:.08em;text-transform:uppercase;color:#f5f0e86b;margin:0 0 6px;padding:0 12px;font-size:.68rem;font-weight:600}.portal-nav-link{--nav-i:0;width:100%;font:inherit;text-align:left;color:var(--portal-nav-text);cursor:pointer;animation:.45s cubic-bezier(.22,1,.36,1) backwards portal-nav-enter;animation-delay:calc(var(--nav-i) * 70ms + .14s);background:0 0;border:none;border-radius:12px;align-items:center;gap:12px;padding:11px 12px 11px 14px;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .28s,color .28s,transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s;display:flex;position:relative;overflow:hidden}.portal-nav-link:before{content:"";background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 55%, #f5c4b8), var(--accent));border-radius:0 3px 3px 0;width:3px;height:0;transition:height .28s cubic-bezier(.22,1,.36,1);position:absolute;top:50%;left:0;transform:translateY(-50%)}.portal-nav-link-icon{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:transform .28s cubic-bezier(.22,1,.36,1);display:flex}.portal-nav-link-icon svg{width:20px;height:20px;display:block}.portal-nav-link-label{flex:1;min-width:0;line-height:1.25}.portal-nav-link:hover,.portal-nav-link:focus-visible{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--portal-nav-text-hover);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 12%, transparent);outline:none;transform:translate(5px)}.portal-nav-link:hover:before,.portal-nav-link:focus-visible:before{height:36%}.portal-nav-link:hover .portal-nav-link-icon,.portal-nav-link:focus-visible .portal-nav-link-icon{transform:scale(1.14)rotate(-4deg)}.portal-nav-link--active{background:color-mix(in srgb, var(--accent) 24%, transparent);color:var(--portal-nav-text-active);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 22%, transparent), 0 4px 18px color-mix(in srgb, var(--accent) 12%, transparent);font-weight:600}.portal-nav-link--active:before{height:62%}.portal-nav-link--active .portal-nav-link-icon{animation:2.4s ease-in-out infinite portal-nav-icon-pulse;transform:scale(1.08)}.portal-nav-link--logout{color:color-mix(in srgb, var(--portal-nav-text) 68%, transparent);margin-top:4px}.portal-nav-link--logout:hover,.portal-nav-link--logout:focus-visible{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--portal-nav-text-hover);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 10%, transparent)}.portal-nav-link--logout:hover .portal-nav-link-icon,.portal-nav-link--logout:focus-visible .portal-nav-link-icon{transform:translate(3px)scale(1.08)}.portal-nav-link--logout:disabled{opacity:.55;cursor:not-allowed}.portal-sidebar-foot{border-top:1px solid #ffffff14;margin-top:auto;padding-top:12px}.portal-main{z-index:1;box-sizing:border-box;width:100%;min-width:0;min-height:100dvh;padding:clamp(16px,2.5vw,28px) clamp(16px,2.5vw,32px) clamp(32px,5vw,48px);position:relative;overflow-x:hidden}.portal-main-inner{width:100%;max-width:none;margin:0}.portal-kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin:0 0 8px;font-size:.78rem;font-weight:600}.portal-page-title{letter-spacing:-.02em;color:var(--text-heading);margin:0 0 10px;font-size:clamp(1.65rem,3.5vw,2.15rem);line-height:1.12}.portal-page-lead{max-width:min(42rem,100%);color:var(--text);margin:0;font-size:.98rem;line-height:1.55}.portal-loading{text-align:center;color:color-mix(in srgb, var(--text) 75%, transparent);margin:0;padding:24px 0}.portal-alert{border-radius:var(--radius-lg);margin:0 0 20px;padding:14px 16px;font-size:.92rem;line-height:1.5}.portal-alert--error{background:color-mix(in srgb, var(--accent) 10%, transparent);border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);color:var(--text-heading)}.portal-welcome{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px 32px;margin-bottom:28px;display:flex}.portal-stat-grid{grid-template-columns:repeat(3,minmax(88px,1fr));gap:12px;display:grid}.portal-stat{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);text-align:center;border-radius:16px;padding:14px 16px;box-shadow:0 4px 20px #1816130d}.portal-stat-value{letter-spacing:-.03em;color:var(--text-heading);font-size:1.65rem;font-weight:700;line-height:1.1;display:block}.portal-stat-label{letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 65%, transparent);margin-top:6px;font-size:.72rem;font-weight:600;display:block}.portal-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,22px);width:100%;margin-bottom:18px;display:grid}.portal-panel{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--text-heading) 7%, transparent);border-radius:18px;margin-bottom:18px;padding:22px 24px;box-shadow:0 6px 28px #1816130d}.portal-panel--spacious{padding-bottom:20px}.portal-panel--center{text-align:center;max-width:32rem;margin-left:auto;margin-right:auto}.portal-panel--center .btn{margin-top:8px}.portal-panel--highlight{background:linear-gradient(135deg, color-mix(in srgb, var(--accent-light) 40%, var(--bg-elevated)), var(--bg-elevated));border-color:color-mix(in srgb, var(--accent) 18%, transparent)}.portal-panel-head{margin-bottom:18px}.portal-panel-title{color:var(--text-heading);margin:0 0 8px;font-size:1.05rem;font-weight:700}.portal-panel-desc{color:color-mix(in srgb, var(--text) 85%, transparent);margin:0;font-size:.92rem;line-height:1.55}.portal-info-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.portal-info-list li{border-bottom:1px solid color-mix(in srgb, var(--text-heading) 7%, transparent);gap:4px;padding-bottom:14px;display:grid}.portal-info-list li:last-child{border-bottom:none;padding-bottom:0}.portal-info-label{letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 62%, transparent);font-size:.72rem;font-weight:600}.portal-info-value{color:var(--text-heading);word-break:break-word;font-size:.98rem;font-weight:500}.portal-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.88em}.portal-badge{letter-spacing:.02em;white-space:nowrap;border-radius:999px;align-items:center;padding:5px 12px;font-size:.78rem;font-weight:700;display:inline-flex}.portal-badge--paid{color:#1b4332;background:#2d6a4f24;border:1px solid #2d6a4f52}.portal-badge--pending{color:#7c5e10;background:#b089001f;border:1px solid #b0890047}.portal-invoice-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.portal-invoice-card{border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);background:color-mix(in srgb, var(--bg) 35%, var(--bg-elevated));width:100%;font:inherit;text-align:left;cursor:pointer;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 16px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.portal-invoice-card:hover,.portal-invoice-card:focus-visible{border-color:color-mix(in srgb, var(--accent) 35%, transparent);outline:none;transform:translateY(-1px);box-shadow:0 6px 20px #18161314}.portal-invoice-card-icon{width:40px;height:40px;color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border-radius:12px;place-items:center;font-size:1rem;font-weight:700;display:grid}.portal-invoice-card-body{flex-direction:column;gap:6px;min-width:0;display:flex}.portal-invoice-card-top{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.portal-invoice-card-title{color:var(--text-heading);font-size:.95rem;font-weight:600}.portal-invoice-card-meta{color:color-mix(in srgb, var(--text) 70%, transparent);font-size:.85rem}.portal-invoice-card-chevron{color:color-mix(in srgb, var(--text) 45%, transparent);font-size:1.1rem}.portal-empty{text-align:center;border:1px dashed color-mix(in srgb, var(--text-heading) 14%, transparent);background:color-mix(in srgb, var(--bg) 50%, transparent);border-radius:14px;padding:28px 20px}.portal-empty-title{color:var(--text-heading);margin:0 0 8px;font-weight:700}.portal-empty-text{color:var(--text);margin:0;font-size:.92rem}.portal-project-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.portal-project-card{border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);background:color-mix(in srgb, var(--bg) 40%, transparent);border-radius:14px;padding:16px 18px}.portal-project-title{color:var(--text-heading);margin:0 0 6px;font-size:1rem;font-weight:700}.portal-project-desc{color:var(--text);margin:0 0 8px;font-size:.92rem;line-height:1.5}.portal-project-meta{color:color-mix(in srgb, var(--text) 62%, transparent);margin:0;font-size:.8rem}.portal-project-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:clamp(14px,2vw,20px);margin-bottom:clamp(24px,4vw,40px);display:grid}.portal-project-grid .portal-project-card{min-height:100%;color:inherit;border:1px solid color-mix(in srgb, var(--text-heading) 10%, transparent);background:var(--bg-elevated);border-radius:16px;flex-direction:column;gap:10px;padding:20px 22px;text-decoration:none;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s,border-color .28s;display:flex;box-shadow:0 4px 22px #1816130f}.portal-project-grid .portal-project-card:hover{border-color:color-mix(in srgb, var(--accent) 32%, transparent);box-shadow:0 12px 32px color-mix(in srgb, var(--accent) 14%, #18161314);transform:translateY(-4px)}.portal-project-grid .portal-project-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.portal-project-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.portal-project-card-badge{letter-spacing:.06em;text-transform:uppercase;color:#1b4332;background:#2d6a4f24;border:1px solid #2d6a4f47;border-radius:999px;padding:4px 10px;font-size:.68rem;font-weight:700}.portal-project-card--archived{opacity:.92}.portal-project-card-title{color:var(--text-heading);margin:0;font-size:clamp(1.05rem,2.2vw,1.2rem);font-weight:700;line-height:1.25}.portal-project-card-desc{color:var(--text);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin:0;font-size:.92rem;line-height:1.55;display:-webkit-box;overflow:hidden}.portal-project-card-desc--empty{color:color-mix(in srgb, var(--text) 58%, transparent);font-style:italic}.portal-project-card-meta{border-top:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);color:color-mix(in srgb, var(--text) 62%, transparent);justify-content:space-between;align-items:center;gap:12px;margin:4px 0 0;padding-top:12px;font-size:.78rem;display:flex}.portal-project-card-cta{color:var(--accent);white-space:nowrap;font-weight:700}a.portal-project-cta{color:#fff;background:var(--accent);box-shadow:0 4px 16px color-mix(in srgb, var(--accent) 35%, transparent);border-radius:12px;justify-content:center;align-items:center;margin-top:4px;padding:12px 20px;font-size:.92rem;font-weight:700;text-decoration:none;display:inline-flex}.portal-project-intro-desc--muted{color:color-mix(in srgb, var(--text) 58%, transparent)}.portal-page-body--project-animated .portal-project-grid .portal-project-card{animation-delay:calc(var(--proj-block-i,0) * 90ms + .22s)}.portal-project-intro{background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 10%, var(--bg-elevated)), var(--bg-elevated));border:1px solid color-mix(in srgb, var(--accent) 16%, transparent);padding:22px 24px}.portal-page-body--project-animated .portal-project-intro{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 12%, var(--bg-elevated)) 0%, var(--bg-elevated) 45%, color-mix(in srgb, var(--accent) 8%, var(--bg-elevated)) 100%);background-size:200% 200%}.portal-project-intro-meta{margin:0 0 12px}.portal-project-category{letter-spacing:.05em;text-transform:uppercase;border-radius:999px;align-items:center;padding:5px 12px;font-size:.72rem;font-weight:600;display:inline-flex}.portal-project-category--sito{color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);border:1px solid color-mix(in srgb, var(--accent) 30%, transparent)}.portal-project-category--app{color:#4a5ab8;background:#5c6bc024;border:1px solid #5c6bc047}.portal-project-intro-title{letter-spacing:-.02em;color:var(--text-heading);margin:0 0 10px;font-size:clamp(1.35rem,2.8vw,1.75rem);line-height:1.15}.portal-project-intro-desc{max-width:52rem;color:var(--text);white-space:pre-wrap;margin:0;font-size:.98rem;line-height:1.6}.portal-detail-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.portal-pending-file{background:color-mix(in srgb, var(--accent) 8%, transparent);border:1px dashed color-mix(in srgb, var(--accent) 28%, transparent);border-radius:14px;padding:18px 20px}.portal-pending-file-title{color:var(--text-heading);margin:0 0 8px;font-size:1rem;font-weight:700}@media (width<=900px){body.layout--portal-area{--portal-sidebar-width:min(248px, 78vw)}.portal-sidebar-logo .logo-typewriter{font-size:1.05rem}.portal-main{padding:clamp(12px,2.5vw,20px) clamp(12px,3vw,20px) clamp(24px,5vw,40px)}:is(.portal-main:has(.portal-page-body--project),.portal-main:has(.portal-page-body--dashboard)){padding:0 0 clamp(24px,5vw,40px)}.portal-page-body--project,.portal-page-body--dashboard{--portal-project-gutter:clamp(12px, 2.5vw, 20px);--portal-dash-gutter:clamp(12px, 2.5vw, 20px)}.portal-welcome{flex-direction:column;align-items:stretch}.portal-stat-grid{grid-template-columns:repeat(3,1fr)}}.portal-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;margin-bottom:24px;display:flex}:is(.portal-main:has(.portal-page-body--project),.portal-main:has(.portal-page-body--dashboard)){padding:0 0 clamp(32px,5vw,48px)}.portal-page-body--project{--portal-project-gutter:clamp(16px, 2.5vw, 28px);width:100%;max-width:none}.portal-page-body--project>:not(.portal-dash-hero):not(.portal-page-header):not(.portal-panel--phases-header),.portal-page-body--dashboard.portal-page-body--project>:not(.portal-dash-hero):not(.portal-page-header):not(.portal-panel--phases-header){padding-right:var(--portal-project-gutter);padding-left:var(--portal-project-gutter)}.portal-page-body--dashboard.portal-page-body--project .portal-dash-inner--flush{padding-left:0;padding-right:0}.portal-page-body--dashboard .portal-doc-list,.portal-page-body--dashboard .portal-report-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.portal-page-body--dashboard .portal-doc-card{transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s}.portal-page-body--dashboard .portal-doc-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #18161314}.portal-page-body--dashboard-ready .portal-dash-inner>.portal-dash-block,.portal-page-body--dashboard-ready .portal-dash-inner>.portal-panel,.portal-page-body--dashboard-ready .portal-dash-inner>.portal-grid-2,.portal-page-body--dashboard-ready .portal-dash-inner>ul,.portal-page-body--dashboard-ready .portal-dash-inner>.portal-breadcrumb{animation:.5s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;animation-delay:calc(var(--portal-dash-i,0) * 70ms + .18s)}.portal-page-body--dashboard .portal-panel{border-radius:18px;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s}.portal-page-body--dashboard .portal-panel:hover{transform:translateY(-2px);box-shadow:0 10px 28px #18161314}.portal-page-header--charcoal{box-sizing:border-box;width:100%;max-width:none;padding:clamp(10px, 1.6vw, 14px) var(--portal-project-gutter,clamp(16px, 2.5vw, 28px)) clamp(11px, 1.5vw, 14px);background:var(--portal-panel-dark-bg);-webkit-backdrop-filter:saturate(1.15)blur(22px);border:1px solid #ffffff1a;border-top:none;border-left:none;align-items:flex-start;gap:8px 16px;margin:0 0 clamp(10px,1.5vw,14px)}.portal-page-header--charcoal:has(+.portal-panel--phases-header){border-bottom:none;margin-bottom:0}.portal-page-body--project .portal-panel.portal-panel--phases-header{box-sizing:border-box;width:100%;max-width:none;padding:clamp(18px, 2.5vw, 22px) var(--portal-project-gutter);border-top:none;border-radius:0 0 18px 18px;margin:0 0 18px;box-shadow:0 6px 28px #1816130d}.portal-page-header--charcoal .portal-page-title{color:#fff;flex-wrap:wrap;align-items:baseline;gap:0;margin:0 0 4px;font-size:clamp(1.12rem,2.1vw,1.35rem);line-height:1.15;display:inline-flex}.portal-page-header--charcoal .portal-page-lead{color:#f5f0e8b8;margin:0;font-size:clamp(.8rem,1.35vw,.86rem);line-height:1.42;animation:.55s cubic-bezier(.22,1,.36,1) .14s backwards portal-project-reveal}.portal-page-header-meta{margin:0 0 5px}.portal-page-header--charcoal .portal-project-category{letter-spacing:.04em;padding:3px 8px;font-size:.62rem}.portal-page-header--charcoal .portal-project-category--on-dark.portal-project-category--sito{color:#ffc4ad;background:color-mix(in srgb, var(--accent) 32%, transparent);border-color:color-mix(in srgb, var(--accent) 55%, transparent)}.portal-page-header--charcoal .portal-project-category--on-dark.portal-project-category--app{color:#d4dcff;background:#8b9cff38;border-color:#8b9cff61}.portal-page-header--charcoal .portal-page-lead--description{white-space:pre-wrap;max-width:52rem}.portal-page-header--charcoal .portal-page-lead--muted{color:#f5f0e87a;font-style:italic}@keyframes portal-project-header-enter{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:translateY(0)}}@keyframes portal-project-reveal{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes portal-project-intro-shine{0%,to{background-position:0%}50%{background-position:100%}}@keyframes portal-timeline-dot-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 45%, transparent);transform:scale(1)}50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--accent) 0%, transparent);transform:scale(1.25)}}@keyframes portal-check-pop{0%{opacity:0;transform:scale(.85)translate(-6px)}to{opacity:1;transform:scale(1)translate(0)}}.portal-page-body--project-animated .portal-page-header--charcoal{animation:.6s cubic-bezier(.22,1,.36,1) backwards portal-project-header-enter}.portal-page-body--project-animated .portal-project-block{animation:.55s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;animation-delay:calc(var(--proj-block-i,0) * .1s + .18s)}.portal-page-body--project-animated .portal-project-intro.portal-project-block{animation-name:portal-project-reveal,portal-project-intro-shine;animation-duration:.55s,8s;animation-timing-function:cubic-bezier(.22,1,.36,1),ease-in-out;animation-iteration-count:1,infinite;animation-fill-mode:backwards,none;animation-delay:calc(var(--proj-block-i,0) * .1s + .18s), 0s}.portal-page-body--project-animated .portal-timeline-step{animation:.45s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;animation-delay:calc(var(--proj-phase-i,0) * 70ms + .42s);transition:transform .25s cubic-bezier(.22,1,.36,1),border-color .25s,background .25s,box-shadow .25s}.portal-page-body--project-animated .portal-timeline-step:hover{transform:translateY(-2px)}.portal-page-body--project-animated .portal-timeline-step--current{box-shadow:0 4px 16px color-mix(in srgb, var(--accent) 18%, transparent)}.portal-page-body--project-animated .portal-timeline-step--current .portal-timeline-dot{animation:2.2s ease-in-out infinite portal-timeline-dot-pulse}.portal-page-body--project-animated .portal-timeline-step--done .portal-timeline-dot{background:var(--accent)}.portal-page-body--project-animated .portal-checklist-item{animation:.4s cubic-bezier(.22,1,.36,1) backwards portal-check-pop;animation-delay:calc(var(--proj-check-i,0) * 60ms + .55s);transition:transform .22s,box-shadow .22s}.portal-page-body--project-animated .portal-checklist-item:hover{transform:translate(4px);box-shadow:0 4px 14px #1816130f}.portal-page-body--project-animated .portal-feed-list--full li{animation:.45s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;animation-delay:calc(var(--proj-note-i,0) * 80ms + .5s);transition:background .2s,padding .2s}.portal-page-body--project-animated .portal-feed-list--full li:hover{background:color-mix(in srgb, var(--accent) 6%, transparent);border-radius:10px}.portal-page-body--project-animated .portal-project-cta{transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s}.portal-page-body--project-animated .portal-project-cta:hover{box-shadow:0 8px 24px color-mix(in srgb, var(--accent) 28%, transparent);transform:translateY(-2px)}.portal-page-body{width:100%}.portal-site-status-panel{background:linear-gradient(145deg, color-mix(in srgb, #2d6a4f 8%, var(--bg-elevated)), var(--bg-elevated));border:1px solid #2d6a4f38;border-radius:18px;margin-bottom:clamp(18px,3vw,24px);padding:clamp(18px,2.5vw,24px);box-shadow:0 8px 28px #2d6a4f1f}.portal-site-status-panel-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.portal-site-status-panel-title{color:var(--text-heading);margin:0 0 4px;font-size:1.05rem;font-weight:700}.portal-site-status-panel-lead{color:color-mix(in srgb, var(--text) 65%, transparent);margin:0;font-size:.86rem}.portal-site-status-live-tag{letter-spacing:.06em;text-transform:uppercase;color:#1b4332;background:#52b78859;border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:.72rem;font-weight:700;animation:2.4s ease-in-out infinite portal-site-status-live-blink}@keyframes portal-site-status-live-blink{0%,to{opacity:1;box-shadow:0 0 #52b78880}50%{opacity:.82;box-shadow:0 0 0 6px #0000}}.portal-site-status-list{gap:16px;display:grid}.portal-site-status-list--multi{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-site-status-project{background:color-mix(in srgb, var(--bg) 55%, var(--bg-elevated));border:1px solid #2d6a4f2e;border-radius:14px;padding:16px 18px}.portal-site-status-project--alert{background:color-mix(in srgb, #c1121f 6%, var(--bg-elevated));border-color:#c1121f59}.portal-site-status-project-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.portal-site-status-project-title-wrap{align-items:center;gap:10px;min-width:0;display:flex}.portal-site-status-pulse{border-radius:50%;flex-shrink:0;width:10px;height:10px}.portal-site-status-pulse--ok{background:#40916c;animation:1.8s ease-out infinite portal-site-status-pulse-ok;box-shadow:0 0 #52b7888c}.portal-site-status-pulse--down{background:#c1121f;animation:1.2s ease-in-out infinite portal-site-status-pulse-down}.portal-site-status-pulse--neutral{background:color-mix(in srgb, var(--text-heading) 35%, transparent)}.portal-site-status-project--neutral .portal-site-status-project-badge{color:color-mix(in srgb, var(--text) 58%, transparent);text-transform:none;letter-spacing:0;font-weight:600}.portal-site-status-project--link{color:inherit;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .15s;display:block}.portal-site-status-project--link:hover{border-color:color-mix(in srgb, var(--accent) 35%, transparent);box-shadow:0 6px 22px color-mix(in srgb, var(--accent) 12%, transparent);transform:translateY(-1px)}.portal-site-status-project--link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.portal-site-status-phase-titles{min-width:0}.portal-site-status-project--phase .portal-site-status-project-title{color:var(--text-heading);margin:0;font-size:.98rem;font-weight:700}.portal-site-status-phase-label{letter-spacing:.03em;color:color-mix(in srgb, var(--accent) 75%, var(--text));margin:2px 0 0;font-size:.78rem;font-weight:600}.portal-site-status-pulse--phase{background:color-mix(in srgb, var(--accent) 70%, #2d6a4f);box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 40%, transparent);animation:2s ease-out infinite portal-site-status-pulse-phase}@keyframes portal-site-status-pulse-phase{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 45%, transparent)}70%{box-shadow:0 0 0 8px color-mix(in srgb, var(--accent) 0%, transparent)}to{box-shadow:0 0 #0000}}.portal-site-status-project--phase-action{background:color-mix(in srgb, #fff8e6 40%, var(--bg-elevated));border-color:#b0890059}.portal-site-status-project--phase-wait{border-color:color-mix(in srgb, var(--text-heading) 12%, transparent)}.portal-site-status-phase-cta{color:var(--accent);flex-shrink:0;font-size:.78rem;font-weight:700}.portal-site-status-phase-summary{color:var(--text-heading);margin:0 0 12px;font-size:.95rem;font-weight:600;line-height:1.4}.portal-site-status-tasks{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.portal-site-status-task{align-items:flex-start;gap:10px;font-size:.86rem;line-height:1.45;display:flex}.portal-site-status-task-marker{background:color-mix(in srgb, var(--text-heading) 10%, transparent);width:1.25rem;height:1.25rem;color:color-mix(in srgb, var(--text) 70%, transparent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.72rem;font-weight:800;display:flex}.portal-site-status-task--done .portal-site-status-task-marker{color:#2d6a4f;background:#2d6a4f33}.portal-site-status-task--urgent .portal-site-status-task-marker{color:#7c5e10;background:#b0890040}.portal-site-status-task-body{flex-direction:column;gap:2px;min-width:0;display:flex}.portal-site-status-task-label{color:var(--text-heading);font-weight:600}.portal-site-status-task--done .portal-site-status-task-label{color:color-mix(in srgb, var(--text) 65%, transparent);font-weight:500}.portal-site-status-task-detail{color:color-mix(in srgb, var(--text) 62%, transparent);font-size:.8rem}.portal-site-status-goto-project{margin-top:12px;display:inline-block}@keyframes portal-site-status-pulse-ok{0%{box-shadow:0 0 #52b7888c}70%{box-shadow:0 0 0 10px #0000}to{box-shadow:0 0 #0000}}@keyframes portal-site-status-pulse-down{0%,to{opacity:1}50%{opacity:.45}}.portal-site-status-project-title{margin:0;font-size:.98rem;font-weight:700}.portal-site-status-project-title a{color:var(--text-heading);text-decoration:none}.portal-site-status-project-title a:hover{color:var(--accent)}.portal-site-status-project-badge{letter-spacing:.04em;text-transform:uppercase;color:#2d6a4f;margin:0;font-size:.78rem;font-weight:700}.portal-site-status-project--alert .portal-site-status-project-badge{color:#9b2226}.portal-site-status-viz{margin-bottom:12px}.portal-site-status-bars{align-items:flex-end;gap:4px;height:56px;margin:0 0 10px;padding:0;list-style:none;display:flex}.portal-site-status-chart-caption{color:color-mix(in srgb, var(--text) 62%, transparent);margin:0 0 8px;font-size:.78rem}.portal-site-status-chart-empty{color:color-mix(in srgb, var(--text) 65%, transparent);margin:0 0 12px;font-size:.88rem}.portal-site-status-bar{transform-origin:bottom;border-radius:4px 4px 0 0;flex:1;min-width:5px;transition:height .35s}.portal-site-status-bar--data{background:linear-gradient(#b7e4c7 0%,#52b788 45%,#2d6a4f 100%)}.portal-site-status-viz--down .portal-site-status-bar--data{background:linear-gradient(#f4a3a8 0%,#e5383b 50%,#9b2226 100%)}.portal-site-status-viz--loading .portal-site-status-bar--data{opacity:.5}.portal-site-status-period-bars{align-items:flex-end;gap:clamp(12px,3vw,24px);height:72px;margin:0 0 12px;padding:0;list-style:none;display:flex}.portal-site-status-period-item{flex-direction:column;flex:1;align-items:center;gap:4px;min-width:0;height:100%;display:flex}.portal-site-status-period-bar{background:linear-gradient(#95d5b2,#2d6a4f);border-radius:6px 6px 0 0;width:100%;max-width:48px;min-height:4px;margin-top:auto;transition:height .35s}.portal-site-status-period-label{color:color-mix(in srgb, var(--text) 58%, transparent);font-size:.72rem}.portal-site-status-period-value{color:var(--text-heading);font-size:.82rem;font-weight:700}.portal-site-status-uptime-row{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.portal-site-status-uptime-label,.portal-site-status-uptime-value{color:color-mix(in srgb, var(--text) 70%, transparent);white-space:nowrap;font-size:.78rem;font-weight:600}.portal-site-status-uptime-value{color:#2d6a4f}.portal-site-status-fill-track{background:color-mix(in srgb, var(--text-heading) 8%, transparent);border-radius:999px;height:8px;overflow:hidden}.portal-site-status-fill{border-radius:inherit;background:linear-gradient(90deg,#2d6a4f,#52b788 40%,#95d5b2 60%,#52b788 80%,#2d6a4f) 0 0/200% 100%;height:100%;transition:width .6s;animation:2.8s linear infinite portal-site-status-fill-shimmer;display:block}.portal-site-status-viz--down .portal-site-status-fill{background:linear-gradient(90deg,#9b2226,#e5383b,#9b2226);animation:none}@keyframes portal-site-status-fill-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.portal-site-status-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px;margin:0;display:grid}.portal-site-status-stats dt{letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 58%, transparent);margin:0 0 2px;font-size:.72rem;font-weight:600}.portal-site-status-stats dd{color:var(--text-heading);margin:0;font-size:.92rem;font-weight:700}.portal-site-status-unconfigured{color:color-mix(in srgb, var(--text) 68%, transparent);margin:0;font-size:.88rem;line-height:1.5}@media (width<=720px){.portal-site-status-list--multi,.portal-site-status-stats{grid-template-columns:minmax(0,1fr)}}.portal-page-body--dashboard{--portal-dash-gutter:clamp(16px, 2.5vw, 28px);--portal-project-gutter:var(--portal-dash-gutter);width:100%;max-width:none;padding:0}.portal-page-body--dashboard .portal-dash-inner{padding:0 var(--portal-dash-gutter) clamp(28px, 4vw, 40px)}.portal-dash-hero{position:relative;overflow:hidden}.portal-page-body--dashboard-ready .portal-dash-hero{animation:.65s cubic-bezier(.22,1,.36,1) backwards portal-project-header-enter}.portal-dash-hero-orbs{pointer-events:none;position:absolute;inset:0;overflow:hidden}.portal-dash-orb{filter:blur(52px);opacity:.35;border-radius:50%;position:absolute}.portal-dash-orb--a{background:color-mix(in srgb, var(--accent) 65%, transparent);width:200px;height:200px;animation:16s ease-in-out infinite portal-dash-orb-drift;top:-50px;right:-30px}.portal-dash-orb--b{background:#8b9cff80;width:140px;height:140px;animation:20s ease-in-out infinite reverse portal-dash-orb-drift;bottom:-40px;left:8%}@keyframes portal-dash-orb-drift{0%,to{transform:translate(0)scale(1)}50%{transform:translate(10px,-6px)scale(1.05)}}.portal-dash-hero-inner{z-index:1;position:relative}.portal-dash-kicker{letter-spacing:.06em;text-transform:uppercase;color:#f5f0e894;margin:0 0 6px;font-size:.82rem;font-weight:600}.portal-dash-hero .portal-page-title{margin-bottom:8px;font-size:clamp(1.35rem,3vw,1.85rem)}.portal-dash-hero:has(.portal-page-header-actions){flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 20px;display:flex}.portal-dash-hero .portal-page-header-actions{z-index:1;align-self:flex-start;padding-top:2px;position:relative}.portal-dash-stats{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:clamp(22px,3vw,32px);display:grid}@media (width<=720px){.portal-dash-stats{grid-template-columns:1fr}}.portal-dash-stat{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);border-radius:18px;flex-direction:column;gap:6px;padding:16px 18px;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s;display:flex;box-shadow:0 6px 24px #1816130f}.portal-page-body--dashboard-ready .portal-dash-stat{animation:.55s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;animation-delay:calc(var(--portal-dash-i,0) * 80ms + .1s)}.portal-dash-stat:hover{transform:translateY(-3px);box-shadow:0 12px 32px #18161314}.portal-dash-stat--accent{border-color:color-mix(in srgb, var(--accent) 28%, transparent)}.portal-dash-stat--ok{border-color:#2d6a4f38}.portal-dash-stat-label{letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 58%, transparent);font-size:.72rem;font-weight:700}.portal-dash-stat-value{font-family:var(--font-display);letter-spacing:-.04em;color:var(--text-heading);font-size:clamp(1.85rem,4vw,2.35rem);font-weight:600;line-height:1}.portal-page-body--dashboard-ready .portal-dash-stat-value{animation:.5s cubic-bezier(.22,1,.36,1) backwards portal-dash-stat-pop;animation-delay:calc(var(--portal-dash-i,0) * 80ms + .22s)}@keyframes portal-dash-stat-pop{0%{opacity:0;transform:scale(.92)translateY(6px)}70%{transform:scale(1.03)translateY(0)}to{opacity:1;transform:scale(1)translateY(0)}}.portal-dash-stat-hint{color:color-mix(in srgb, var(--text) 65%, transparent);font-size:.8rem}.portal-dash-section{margin-bottom:clamp(22px,3vw,30px)}.portal-page-body--dashboard-ready .portal-dash-section{animation:.55s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;animation-delay:calc(var(--portal-dash-i,0) * 60ms + .16s)}.portal-dash-section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 14px;margin-bottom:14px;display:flex}.portal-dash-section-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-heading);margin:0;font-size:1.15rem;font-weight:600}.portal-dash-section-lead{width:100%;color:color-mix(in srgb, var(--text) 68%, transparent);margin:0;font-size:.88rem}.portal-dash-section-link{color:var(--accent);font-size:.86rem;font-weight:600;text-decoration:none;transition:transform .2s,color .2s}.portal-dash-section-link:hover{color:var(--text-heading);transform:translate(3px)}.portal-dash-cards{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width<=640px){.portal-dash-cards{grid-template-columns:1fr}}.portal-dash-card{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);color:inherit;border-radius:18px;align-items:center;gap:14px;padding:15px 17px;text-decoration:none;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s,border-color .28s;display:flex;box-shadow:0 4px 20px #1816130d}.portal-page-body--dashboard-ready .portal-dash-card{animation:.5s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;animation-delay:calc(var(--portal-dash-i,0) * 70ms + .2s)}.portal-dash-card:hover{border-color:color-mix(in srgb, var(--accent) 22%, transparent);transform:translateY(-4px);box-shadow:0 14px 32px #18161317}.portal-dash-card--accent .portal-dash-card-icon{background:linear-gradient(135deg, var(--gradient-start), var(--gradient-end));color:#fff}.portal-dash-card--highlight{border-color:color-mix(in srgb, var(--accent) 35%, transparent)}.portal-dash-card-icon{background:color-mix(in srgb, var(--text-heading) 6%, transparent);width:42px;height:42px;color:var(--text-heading);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;transition:transform .25s cubic-bezier(.22,1,.36,1);display:flex}.portal-dash-card:hover .portal-dash-card-icon{transform:scale(1.06)rotate(-2deg)}.portal-dash-card-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.portal-dash-card-title{color:var(--text-heading);font-size:.92rem;font-weight:700}.portal-dash-card-desc{color:color-mix(in srgb, var(--text) 68%, transparent);font-size:.8rem;line-height:1.4}.portal-dash-card-arrow{color:color-mix(in srgb, var(--text) 38%, transparent);flex-shrink:0;font-weight:700;transition:transform .2s,color .2s}.portal-dash-card:hover .portal-dash-card-arrow{color:var(--accent);transform:translate(4px)}.portal-dash-block{margin-bottom:clamp(20px,3vw,28px)}.portal-page-body--dashboard-ready .portal-dash-block{animation:.55s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;animation-delay:calc(var(--portal-dash-i,0) * 60ms + .24s)}.portal-dash-block .portal-site-status-panel{margin-bottom:0}.portal-dash-open-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.portal-dash-open-item{border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);background:var(--bg-elevated);border-radius:14px;transition:transform .22s,border-color .22s,box-shadow .22s;overflow:hidden}.portal-page-body--dashboard-ready .portal-dash-open-item{animation:.45s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;animation-delay:calc(var(--portal-dash-i,0) * 70ms + .28s)}.portal-dash-open-item:hover{border-color:color-mix(in srgb, var(--accent) 25%, transparent);transform:translate(4px);box-shadow:0 6px 18px #1816130f}.portal-dash-open-link{color:inherit;padding:14px 16px;text-decoration:none;display:block}.portal-dash-open-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.portal-dash-open-top strong{color:var(--text-heading);font-size:.9rem}.portal-dash-open-status{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent);border-radius:999px;padding:3px 9px;font-size:.72rem;font-weight:700}.portal-dash-open-desc{color:color-mix(in srgb, var(--text) 68%, transparent);font-size:.82rem;line-height:1.45;display:block}.portal-dash-open-reply{color:#2d6a4f;margin-top:8px;font-size:.78rem;font-weight:700;display:inline-block}.portal-dash-widgets{margin-bottom:20px}.portal-page-body--dashboard-ready .portal-dash-widgets .portal-dash-widget{animation:.5s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal}.portal-page-body--dashboard-ready .portal-dash-widgets .portal-dash-widget:first-child{animation-delay:calc(var(--portal-dash-i,0) * 60ms + .32s)}.portal-page-body--dashboard-ready .portal-dash-widgets .portal-dash-widget:nth-child(2){animation-delay:calc(var(--portal-dash-i,0) * 60ms + .38s)}.portal-page-body--dashboard-ready .portal-dash-widgets .portal-dash-widget:nth-child(3){animation-delay:calc(var(--portal-dash-i,0) * 60ms + .44s)}.portal-dash-widget{transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s}.portal-dash-widget:hover{transform:translateY(-2px);box-shadow:0 10px 28px #18161314}.portal-page-body--dashboard-ready .portal-dash-feed{animation:.55s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;animation-delay:calc(var(--portal-dash-i,0) * 60ms + .48s)}.portal-widget-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,20px);margin-bottom:20px;display:grid}.portal-widget{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--text-heading) 7%, transparent);border-radius:16px;padding:18px 20px;box-shadow:0 4px 20px #1816130d}.portal-widget--alert{background:color-mix(in srgb, #c1121f 6%, var(--bg-elevated));border-color:#c1121f59}.portal-widget-title{letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 62%, transparent);margin:0 0 12px;font-size:.78rem;font-weight:700}.portal-widget-muted{color:color-mix(in srgb, var(--text) 68%, transparent);margin:0;font-size:.88rem}.portal-widget-big{color:var(--text-heading);margin:0 0 6px;font-size:2rem;font-weight:700}.portal-widget-list{margin:0 0 12px;padding:0;list-style:none}.portal-widget-list li{color:var(--text-heading);margin-bottom:6px;font-size:.95rem}.portal-widget-link{color:var(--accent);font-size:.88rem;font-weight:600;text-decoration:none}.portal-widget-link:hover{text-decoration:underline}.portal-status-line{align-items:center;gap:10px;margin:0;font-weight:600;display:flex}.portal-status-line--ok{color:#1b4332}.portal-status-line--bad{color:#9b2226}.portal-status-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.portal-status-dot--ok{background:#2d6a4f;box-shadow:0 0 0 4px #2d6a4f40}.portal-status-dot--bad{background:#c1121f;box-shadow:0 0 0 4px #c1121f38}.portal-progress{background:color-mix(in srgb, var(--text-heading) 10%, transparent);border-radius:999px;height:8px;overflow:hidden}.portal-progress-bar{border-radius:inherit;background:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 70%, #1b4332));height:100%;transition:width .25s;display:block}.portal-mod-counter-head{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.portal-mod-counter-label{color:var(--text);font-size:.88rem}.portal-mod-counter-value{color:var(--text-heading);font-weight:700}.portal-mod-counter-warn{color:#7c5e10;margin:12px 0 0;font-size:.85rem;line-height:1.5}.portal-mod-counter--compact .portal-mod-counter-warn{margin-top:8px;font-size:.8rem}.portal-widget--mods-multi{grid-column:1/-1}.portal-dashboard-mods-list{flex-direction:column;gap:16px;margin:0 0 12px;padding:0;list-style:none;display:flex}.portal-dashboard-mods-item{border-bottom:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);padding-bottom:16px}.portal-dashboard-mods-item:last-child{border-bottom:none;padding-bottom:0}.portal-dashboard-mods-project{justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 8px;font-size:.92rem;font-weight:700;display:flex}.portal-dashboard-mods-project a{color:var(--text-heading);text-decoration:none}.portal-dashboard-mods-project a:hover{color:var(--accent)}.portal-dashboard-mods-kind{letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 55%, transparent);font-size:.72rem;font-weight:600}.portal-dashboard-mods-unassigned{color:color-mix(in srgb, var(--text) 65%, transparent);margin:0 0 10px;font-size:.82rem;line-height:1.45}.portal-mod-counter--warn .portal-progress-bar{background:linear-gradient(90deg,#b08900,#e9c46a)}.portal-mod-hero{grid-template-columns:minmax(0,.95fr) minmax(0,1.35fr);align-items:stretch;gap:clamp(12px,2vw,18px) clamp(20px,4vw,36px);margin-bottom:clamp(8px,2vw,14px);display:grid}.portal-mod-hero-main{flex-direction:column;min-width:0;display:flex}.portal-mod-intro-panel{flex-direction:column;justify-content:center;min-height:100%;margin:0;display:flex}.portal-mod-intro-label{letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb, var(--accent) 75%, var(--text));margin:0 0 8px;font-size:.68rem;font-weight:700}.portal-mod-intro-title{letter-spacing:-.02em;color:var(--text-heading);margin:0 0 10px;font-size:clamp(1.1rem,2.2vw,1.35rem);font-weight:700;line-height:1.2}.portal-mod-intro-desc{color:color-mix(in srgb, var(--text) 72%, transparent);margin:0;font-size:.92rem;line-height:1.55}.portal-mod-section-title{margin:0 0 clamp(12px,2vw,16px)}.portal-mod-project-picker-sr{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.portal-mod-plans-grid{margin-bottom:0}.portal-mod-project-card{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;appearance:none}.portal-mod-project-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.portal-mod-project-card--selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--bg-elevated));box-shadow:0 12px 32px color-mix(in srgb, var(--accent) 16%, #18161314), inset 0 0 0 1px color-mix(in srgb, var(--accent) 22%, transparent)}.portal-mod-project-card--selected:hover{transform:translateY(-4px)}.portal-mod-project-card--exhausted:not(.portal-mod-project-card--selected){opacity:.88}.portal-mod-project-card-desc{color:color-mix(in srgb, var(--text) 68%, transparent);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.86rem;line-height:1.45;display:-webkit-box;overflow:hidden}.portal-mod-project-card-meter-li{padding-top:4px}.portal-mod-quota-section{margin-bottom:clamp(8px,2vw,14px)}.portal-mod-quota-card{max-width:28rem}.portal-mod-quota-card .portal-mod-counter{margin:0}.portal-mod-step{color:#fff;background:var(--accent);width:1.55rem;height:1.55rem;box-shadow:0 2px 10px color-mix(in srgb, var(--accent) 40%, transparent);vertical-align:middle;border-radius:999px;justify-content:center;align-items:center;margin-right:10px;font-size:.78rem;font-weight:800;line-height:1;display:inline-flex}.portal-mod-form-panel,.portal-mod-history-panel{border:1px solid color-mix(in srgb, var(--text-heading) 9%, transparent);background:var(--bg-elevated);border-radius:18px;margin-top:clamp(8px,2vw,14px);padding:clamp(20px,3vw,26px);box-shadow:0 6px 26px #1816130e}.portal-mod-form-panel-head,.portal-mod-history-panel-head{border-bottom:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);margin-bottom:clamp(14px,2.5vw,20px);padding-bottom:14px}.portal-mod-history-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 20px;display:flex}.portal-mod-selected-strip{border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 12%, var(--bg-elevated)), var(--bg-elevated));border-radius:14px;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 clamp(16px,2.5vw,22px);padding:clamp(14px,2vw,18px) clamp(16px,2.5vw,20px);animation:.45s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;display:flex}.portal-mod-selected-strip-label{letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 55%, transparent);font-size:.68rem;font-weight:700}.portal-mod-selected-strip-title{color:var(--text-heading);font-size:clamp(1rem,2vw,1.12rem);font-weight:800}.portal-mod-selected-strip-quota{color:color-mix(in srgb, var(--text) 70%, transparent);margin-left:auto;font-size:.82rem;font-weight:600}.portal-mod-sla-line{margin:0 0 16px}.portal-mod-exhausted-note{color:#7c5e10;background:#e9c46a2e;border:1px solid #b0890047;border-radius:12px;margin:0 0 18px;padding:12px 16px;font-size:.9rem;line-height:1.5}.portal-mod-form-grid{gap:16px;display:grid}@media (width>=720px){.portal-mod-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-mod-form-row--full,.portal-mod-fieldset{grid-column:1/-1}}.portal-mod-input{border-radius:12px;transition:border-color .2s,box-shadow .2s}.portal-mod-input:focus{border-color:color-mix(in srgb, var(--accent) 55%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.portal-mod-submit-wrap{margin-top:8px}.portal-mod-submit-btn{cursor:pointer;background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 92%, #1b4332), var(--accent));width:100%;max-width:22rem;box-shadow:0 4px 20px color-mix(in srgb, var(--accent) 38%, transparent), inset 0 1px 0 #ffffff38;border:none;border-radius:14px;padding:0;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s,filter .25s;display:inline-block}.portal-mod-submit-btn:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.2);transform:none}.portal-mod-submit-btn:not(:disabled):hover{box-shadow:0 10px 28px color-mix(in srgb, var(--accent) 42%, transparent), inset 0 1px 0 #ffffff3d;transform:translateY(-2px)}.portal-mod-submit-btn-inner{color:#fff;text-align:center;padding:14px 22px;font-size:.95rem;font-weight:700;display:block}.portal-mod-history-filters{flex-wrap:wrap;flex-shrink:0;gap:8px;display:flex}.portal-mod-history-filter{border:1px solid color-mix(in srgb, var(--text-heading) 12%, transparent);background:color-mix(in srgb, var(--bg) 50%, transparent);color:color-mix(in srgb, var(--text) 75%, transparent);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:.82rem;font-weight:600;transition:background .2s,border-color .2s,color .2s,transform .2s cubic-bezier(.22,1,.36,1)}.portal-mod-history-filter:hover{border-color:color-mix(in srgb, var(--accent) 35%, transparent);color:var(--text-heading);transform:translateY(-1px)}.portal-mod-history-filter--active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--text-heading)}.portal-mod-history-filter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.portal-mod-request-list>li{list-style:none}.portal-mod-request-card{width:100%;color:inherit;cursor:default;align-items:flex-start;gap:14px;text-decoration:none;display:flex}.portal-mod-request-icon{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent);font-size:1rem;font-weight:700}.portal-mod-request-desc{color:var(--text);white-space:pre-wrap;margin-top:4px;font-size:.9rem;line-height:1.5;display:block}.portal-mod-request-dates{color:color-mix(in srgb, var(--text) 62%, transparent);margin-top:8px;font-size:.78rem;display:block}.portal-request-project{letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--text-heading) 85%, transparent);background:color-mix(in srgb, var(--text-heading) 8%, transparent);border:1px solid color-mix(in srgb, var(--text-heading) 12%, transparent);border-radius:999px;padding:4px 10px;font-size:.68rem;font-weight:700}.portal-progress--inline{height:6px}.portal-progress--warn .portal-progress-bar{background:linear-gradient(90deg,#b08900,#e9c46a)}.portal-page-body--project-animated .portal-mod-project-card.portal-project-block{animation-delay:calc(var(--proj-block-i,0) * 90ms + .2s)}.portal-page-body--project-animated .portal-mod-project-card:hover{transform:translateY(-4px)}.portal-page-body--project-animated .portal-mod-request-list>li{animation:.48s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;animation-delay:calc(var(--mod-req-i,0) * 60ms + .38s)}.portal-page-body--project-animated .portal-mod-request-card{transition:border-color .28s,box-shadow .28s cubic-bezier(.22,1,.36,1),transform .28s cubic-bezier(.22,1,.36,1)}.portal-page-body--project-animated .portal-mod-request-list>li:hover .portal-mod-request-card{transform:translateY(-3px)}@media (width<=900px){.portal-mod-hero{grid-template-columns:1fr}.portal-mod-selected-strip-quota{width:100%;margin-left:0}}@media (width<=520px){.portal-mod-submit-btn{max-width:none}}.portal-panel--feed{margin-bottom:24px}.portal-feed-text{color:var(--text-heading);margin:0 0 8px;font-size:1.02rem;line-height:1.55}.portal-feed-meta{color:color-mix(in srgb, var(--text) 62%, transparent);margin:0 0 16px;font-size:.82rem}.portal-feed-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.portal-feed-list li{border-bottom:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);gap:4px;padding-bottom:12px;display:grid}.portal-feed-list li:last-child{border-bottom:none;padding-bottom:0}.portal-feed-list time{text-transform:uppercase;letter-spacing:.05em;color:color-mix(in srgb, var(--text) 58%, transparent);font-size:.75rem;font-weight:600}.portal-timeline{flex-wrap:wrap;gap:10px 8px;margin:0 0 4px;padding:0;list-style:none;display:flex}.portal-timeline-step{border:1px solid color-mix(in srgb, var(--text-heading) 12%, transparent);color:color-mix(in srgb, var(--text) 70%, transparent);border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:.82rem;display:flex}.portal-timeline-step--current{border-color:color-mix(in srgb, var(--accent) 40%, transparent);background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--text-heading);font-weight:600}.portal-timeline-step--done{opacity:.65}.portal-timeline-dot{background:currentColor;border-radius:50%;width:8px;height:8px}.portal-phase-current{border:1px solid color-mix(in srgb, var(--accent) 20%, transparent);background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 11%, var(--bg-elevated)) 0%, var(--bg-elevated) 42%, color-mix(in srgb, var(--accent) 5%, var(--surface-2)) 100%);box-shadow:0 1px 0 #ffffff8c inset, 0 10px 28px color-mix(in srgb, var(--accent) 10%, #1816130f);border-radius:16px;margin:clamp(20px,3vw,28px) 0 0;padding:0;position:relative;overflow:hidden}.portal-phase-current--compact{background:color-mix(in srgb, var(--accent) 7%, var(--bg-elevated));box-shadow:none;border-radius:12px;margin:12px 0 0;padding:11px 14px 11px 16px}.portal-phase-current--compact:before{border-radius:12px 0 0 12px;width:3px}.portal-phase-current--compact .portal-phase-current-desc{max-width:none;color:color-mix(in srgb, var(--text) 88%, transparent);margin:0;font-size:.88rem;line-height:1.5}.portal-phase-current:before{content:"";background:linear-gradient(180deg, var(--accent), var(--gradient-end));border-radius:16px 0 0 16px;width:4px;position:absolute;top:0;bottom:0;left:0}.portal-phase-current-glow{aspect-ratio:1;background:radial-gradient(circle, color-mix(in srgb, var(--accent) 22%, transparent) 0%, transparent 68%);pointer-events:none;border-radius:50%;width:min(220px,45%);position:absolute;top:-40%;right:-8%}.portal-phase-current-inner{gap:0;padding:clamp(18px,2.8vw,24px) clamp(20px,3vw,28px) clamp(20px,2.8vw,24px) clamp(22px,3.2vw,30px);display:grid;position:relative}.portal-phase-current-head{border-bottom:1px solid color-mix(in srgb, var(--accent) 14%, transparent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:14px;padding-bottom:14px;display:flex}.portal-phase-current-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 58%, transparent);font-size:.72rem;font-weight:700}.portal-phase-current-progress{letter-spacing:.03em;color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);border-radius:999px;align-items:center;padding:5px 11px;font-size:.75rem;font-weight:700;display:inline-flex}.portal-phase-current-title{letter-spacing:-.02em;color:var(--text-heading);align-items:center;gap:12px;margin:0 0 12px;font-size:clamp(1.2rem,2.4vw,1.45rem);font-weight:700;line-height:1.2;display:flex}.portal-phase-current-dot{background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 28%, transparent);border-radius:50%;flex-shrink:0}.portal-phase-current-desc{max-width:46rem;color:color-mix(in srgb, var(--text) 92%, transparent);margin:0;font-size:clamp(.92rem,1.6vw,.98rem);line-height:1.65}.portal-page-body--project-animated .portal-phase-current{animation:.55s cubic-bezier(.22,1,.36,1) .48s backwards portal-project-reveal}.portal-page-body--project-animated .portal-phase-current--compact .portal-phase-current-dot{animation:none}.portal-panel:has(.portal-timeline) .portal-panel-desc{margin-bottom:clamp(16px,2.5vw,22px)}.portal-phase-cards{margin-bottom:clamp(20px,3vw,32px)}.portal-phase-cards-heading{letter-spacing:-.02em;color:var(--text-heading);flex-direction:column;gap:6px;margin:0 0 clamp(16px,2.5vw,22px);font-size:clamp(1.05rem,2vw,1.2rem);font-weight:700;display:flex}.portal-phase-cards-sub{color:color-mix(in srgb, var(--text) 68%, transparent);font-size:.9rem;font-weight:500;line-height:1.5}.portal-phase-cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,18px);display:grid}.portal-phase-card{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);border-radius:16px;flex-direction:column;min-height:100%;margin-bottom:0;padding:0;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s,border-color .25s;display:flex;overflow:hidden;box-shadow:0 4px 20px #1816130d}.portal-phase-card:hover{border-color:color-mix(in srgb, var(--accent) 22%, transparent);box-shadow:0 10px 28px color-mix(in srgb, var(--accent) 10%, #18161312);transform:translateY(-2px)}.portal-phase-card--wide{grid-column:1/-1}.portal-phase-card--brief-urgent{border-color:#b91c1c73;box-shadow:0 0 0 1px #b91c1c38,0 10px 28px #71191825}.portal-phase-card--brief-urgent .portal-phase-card-head{background:color-mix(in srgb, #b91c1c 10%, var(--bg-elevated))}.portal-dev-preview-progress-wrap{flex-direction:column;grid-column:1/-1;gap:clamp(14px,2vw,18px);display:flex}.portal-dev-preview-progress-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:clamp(14px,2vw,18px);display:grid}.portal-dev-progress-tile-inner{flex:1;justify-content:center;align-items:center;min-height:0;padding:4px 0 2px;display:flex}.portal-dev-progress-detail-below{border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);background:color-mix(in srgb, var(--text-heading) 3%, var(--bg-elevated));border-radius:14px;padding:14px 16px}.portal-dev-progress-detail-below-desc{margin:0}.portal-phase-card--dev-progress-tile{box-sizing:border-box;flex-shrink:0;width:11.5rem;height:11.5rem;min-height:0}.portal-phase-card--dev-progress-tile .portal-phase-card-head{padding:10px 12px}.portal-phase-card--dev-progress-tile .portal-phase-card-title{font-size:.82rem}.portal-phase-card--dev-progress-tile .portal-phase-card-icon{font-size:.95rem}.portal-phase-card--dev-progress-tile .portal-phase-card-body{flex-direction:column;flex:1;justify-content:center;align-items:stretch;min-height:0;padding:10px 12px 14px;display:flex}@media (width<=640px){.portal-dev-preview-progress-row{grid-template-columns:1fr;justify-items:stretch}.portal-phase-card--dev-progress-tile{width:min(11.5rem,92vw);height:min(11.5rem,92vw);margin-inline:auto}}.portal-phase-card--dev-hero{border-color:color-mix(in srgb, var(--accent) 38%, transparent);min-height:100%;box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent), 0 14px 36px color-mix(in srgb, var(--accent) 12%, #18161314)}.portal-phase-card--dev-hero .portal-phase-card-head{background:color-mix(in srgb, var(--accent) 10%, var(--bg-elevated))}.portal-dev-staging-link{word-break:break-all;color:var(--text-heading);background:color-mix(in srgb, var(--accent) 12%, transparent);border:2px solid color-mix(in srgb, var(--accent) 35%, transparent);border-radius:14px;margin:4px 0 10px;padding:14px 18px;font-size:clamp(1rem,2.4vw,1.25rem);font-weight:700;text-decoration:none;transition:border-color .2s,background .2s,transform .2s;display:block}.portal-dev-staging-link:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 18%, transparent);transform:translateY(-1px)}.portal-dev-staging-meta{color:var(--text);margin:0 0 8px;font-size:.88rem}.portal-dev-staging-meta--muted{color:var(--text-muted,#666);font-style:italic}.portal-dev-staging-lead{margin-top:10px}.portal-phase-card--review-hero{border-color:color-mix(in srgb, var(--accent) 38%, transparent);min-height:100%;box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent), 0 14px 36px color-mix(in srgb, var(--accent) 12%, #18161314)}.portal-phase-card--review-hero .portal-phase-card-head{background:color-mix(in srgb, var(--accent) 10%, var(--bg-elevated))}.portal-review-staging-link{word-break:break-all;color:var(--text-heading);background:color-mix(in srgb, var(--accent) 12%, transparent);border:2px solid color-mix(in srgb, var(--accent) 35%, transparent);border-radius:14px;margin:6px 0 14px;padding:14px 18px;font-size:clamp(1rem,2.4vw,1.25rem);font-weight:700;text-decoration:none;transition:border-color .2s,background .2s,transform .2s;display:block}.portal-review-staging-link:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 18%, transparent);transform:translateY(-1px)}.portal-review-test-tips{color:var(--text-heading);margin:0;padding-left:1.15rem;font-size:.9rem;line-height:1.55}.portal-review-test-tips li{margin:.35em 0}.portal-review-checklist{flex-direction:column;gap:10px;margin:12px 0 0;padding:0;list-style:none;display:flex}.portal-review-checklist-row{background:color-mix(in srgb, var(--text-heading) 4%, transparent);border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:10px 12px;display:flex}.portal-review-check-label{cursor:pointer;color:var(--text-heading);flex:1;align-items:flex-start;gap:10px;min-width:0;font-size:.94rem;line-height:1.45;display:flex}.portal-review-checkbox{width:1.15rem;height:1.15rem;accent-color:var(--accent);flex-shrink:0;margin-top:.14rem}.portal-review-check-saving{color:var(--text-muted);font-size:.78rem}.portal-review-correction-form{flex-direction:column;gap:12px;margin-top:4px;display:flex}.portal-review-textarea{border:1px solid var(--card-border);background:var(--bg-elevated,var(--surface));resize:vertical;width:100%;min-height:100px;color:var(--text-heading);border-radius:10px;padding:12px 14px;font-family:inherit;font-size:.92rem;line-height:1.5}.portal-review-secondary-btn{border:1px solid color-mix(in srgb, var(--text-heading) 22%, transparent);background:var(--surface);cursor:pointer;color:var(--text-heading);border-radius:10px;align-self:flex-start;padding:10px 18px;font-weight:600}.portal-review-secondary-btn:disabled{opacity:.55;cursor:not-allowed}.portal-phase-card--review-approve{border-color:#c2410c59;box-shadow:0 0 0 1px #c2410c26,0 10px 28px #7d300f22}.portal-phase-card--review-approve .portal-phase-card-head{background:color-mix(in srgb, #c2410c 8%, var(--bg-elevated))}.portal-review-approve-btn{letter-spacing:.01em;color:#fff;cursor:pointer;background:linear-gradient(165deg,#b45309 0%,#c2410c 48%,#9a3412 100%);border:none;border-radius:14px;width:100%;margin-top:8px;padding:16px 20px;font-size:1.05rem;font-weight:800;transition:transform .2s,filter .2s;box-shadow:0 2px #7c2d128c,0 10px 28px #812b0854}.portal-review-approve-btn:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.portal-review-approve-btn:disabled{opacity:.48;cursor:not-allowed;box-shadow:none;filter:grayscale(.15);transform:none}.portal-review-approve-hint{color:var(--text-muted);margin:10px 0 0;font-size:.85rem}.portal-phase-card--review-notice{background:color-mix(in srgb, var(--text-heading) 5%, transparent);border-style:dashed;border-color:color-mix(in srgb, var(--text-heading) 14%, transparent)}.portal-review-deadline-text{color:var(--text-heading);margin:0;font-size:.92rem;line-height:1.55}.portal-review-next-list{color:var(--text-heading);flex-direction:column;gap:10px;margin:0;padding-left:1.15rem;font-size:.92rem;line-height:1.5;display:flex}.portal-review-next-list li{margin:0}.portal-review-inline-error{color:#b91c1c;margin:0 0 8px;font-size:.88rem}.portal-review-inline-success{color:#15803d;margin:0 0 8px;font-size:.88rem}.portal-review-dialog{background:var(--bg-elevated,#fff);max-width:min(440px,100vw - 2rem);color:var(--text);border:none;border-radius:16px;padding:0;box-shadow:0 22px 60px #00000047}.portal-review-dialog::backdrop{background:#18161373}.portal-review-dialog-inner{padding:22px 22px 18px}.portal-review-dialog-title{color:var(--text-heading);margin:0 0 12px;font-size:1.15rem}.portal-review-dialog-body{color:var(--text);margin:0 0 20px;font-size:.95rem;line-height:1.55}.portal-review-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.portal-review-dialog-cancel{border:1px solid var(--card-border);background:var(--surface);cursor:pointer;color:var(--text-heading);border-radius:10px;padding:10px 16px;font-weight:600}.portal-review-dialog-confirm{color:#fff;cursor:pointer;background:linear-gradient(165deg,#b45309,#c2410c);border:none;border-radius:10px;padding:10px 18px;font-weight:700}.portal-review-dialog-confirm:disabled{opacity:.5;cursor:not-allowed}.portal-review-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.portal-phase-cards--live .portal-phase-cards-grid--live{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.portal-live-site-url{margin:0 0 8px;font-size:.92rem}.portal-live-site-url a{color:var(--accent);font-weight:600}.portal-phase-card--live-status-ok{border-color:#15803d66;box-shadow:0 0 0 1px #15803d26}.portal-phase-card--live-status-ok .portal-phase-card-head{background:color-mix(in srgb, #15803d 10%, var(--bg-elevated))}.portal-phase-card--live-status-warn{border-color:#b91c1c6b;box-shadow:0 0 0 1px #b91c1c2e}.portal-phase-card--live-status-warn .portal-phase-card-head{background:color-mix(in srgb, #b91c1c 8%, var(--bg-elevated))}.portal-live-status-metrics{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.portal-live-status-metrics li{background:color-mix(in srgb, var(--text-heading) 4%, transparent);border-radius:8px;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 10px;display:flex}.portal-live-metric--ok .portal-live-metric-value{color:#15803d;font-weight:700}.portal-live-metric--bad .portal-live-metric-value{color:#b91c1c;font-weight:700}.portal-live-metric-label{color:var(--text-muted);font-size:.85rem}.portal-live-metric-value{color:var(--text-heading);text-align:right;font-size:.92rem;font-weight:600}.portal-live-metric-hint{color:var(--text-muted);margin:10px 0 0;font-size:.82rem;font-style:italic}.portal-live-traffic-chart{margin-top:8px}.portal-live-traffic-bars{align-items:flex-end;gap:6px;height:140px;margin:0;padding:0;list-style:none;display:flex}.portal-live-traffic-bar-item{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:0;height:100%;display:flex}.portal-live-traffic-bar{background:color-mix(in srgb, var(--accent) 55%, var(--text-heading));border-radius:4px 4px 0 0;width:100%;max-width:28px;min-height:4px;display:block}.portal-live-traffic-bar-label{color:var(--text-muted);writing-mode:horizontal-tb;text-align:center;margin-top:6px;font-size:.62rem;line-height:1.1}.portal-live-traffic-sources-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:16px 0 8px;font-size:.82rem;font-weight:700}.portal-live-traffic-sources{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.portal-live-traffic-sources li{justify-content:space-between;font-size:.9rem;display:flex}.portal-live-traffic-sources-pct{color:var(--text-heading);font-weight:700}.portal-live-mods-done-title{color:var(--text-muted);margin:14px 0 8px;font-size:.82rem;font-weight:700}.portal-live-mods-done-list{flex-direction:column;gap:10px;max-height:min(40vh,16rem);margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.portal-live-mods-done-list li{background:color-mix(in srgb, var(--text-heading) 4%, transparent);border-radius:8px;gap:4px;padding:10px 12px;display:grid}.portal-live-mods-done-list time{color:var(--text-muted);font-size:.78rem}.portal-live-mods-done-type{font-size:.88rem;font-weight:700}.portal-live-mods-done-desc{color:var(--text);font-size:.85rem;line-height:1.4}.portal-phase-card--live-request{border-color:color-mix(in srgb, var(--accent) 35%, transparent)}.portal-live-request-cta{text-align:center;color:#fff;background:var(--accent);border-radius:12px;margin-top:12px;padding:14px 18px;font-size:1.05rem;font-weight:800;text-decoration:none;transition:filter .2s,transform .2s;display:block}.portal-live-request-cta:hover{filter:brightness(1.08);transform:translateY(-1px)}.portal-live-last-mod-title{color:var(--text-heading);margin:0 0 6px;font-size:1.05rem;font-weight:700}.portal-live-last-mod-date{color:var(--text-muted);margin:0 0 10px;font-size:.88rem}.portal-live-plan-name{margin:0 0 8px;font-size:1.05rem;font-weight:700}.portal-live-plan-billing{margin:0 0 12px;font-size:.92rem;line-height:1.45}.portal-live-plan-actions{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.portal-live-plan-stripe-btn{background:var(--text-heading);color:var(--bg-elevated,#fff);cursor:pointer;border:none;border-radius:10px;padding:10px 16px;font-weight:700}.portal-live-plan-stripe-btn:disabled{opacity:.55;cursor:not-allowed}.portal-phase-card--design-prev .portal-dev-design-figure{border:1px solid color-mix(in srgb, var(--text-heading) 12%, transparent);border-radius:12px;margin-top:12px;display:block;overflow:hidden}.portal-dev-design-img{object-fit:contain;background:color-mix(in srgb, var(--text-heading) 5%, transparent);width:100%;height:auto;max-height:min(360px,50vh);display:block}.portal-dev-design-caption{color:var(--text);margin:10px 0 0;font-size:.88rem}.portal-dev-ring-wrap{flex-shrink:0;width:132px;height:132px;position:relative}.portal-dev-ring-wrap--compact{width:92px;height:92px}.portal-dev-ring-wrap--compact .portal-dev-ring-cluster,.portal-dev-ring-wrap--compact .portal-dev-ring-dash{font-size:1.22rem}.portal-dev-ring-svg{display:block}.portal-dev-ring-track{stroke:color-mix(in srgb, var(--text-heading) 16%, transparent)}.portal-dev-ring-progress{stroke:var(--accent);transition:stroke-dashoffset 1.2s cubic-bezier(.22,1,.36,1)}.portal-dev-ring-wrap:not(.portal-dev-ring-wrap--idle) .portal-dev-ring-progress{will-change:opacity;animation:2.8s ease-in-out infinite portal-dev-ring-breathe}@keyframes portal-dev-ring-breathe{0%,to{opacity:1;filter:drop-shadow(0 0 #0000)}50%{opacity:.92;filter:drop-shadow(0 0 5px color-mix(in srgb, var(--accent) 40%, transparent))}}.portal-dev-ring-wrap--idle .portal-dev-ring-progress{stroke:color-mix(in srgb, var(--accent) 50%, var(--text-heading));opacity:.35;animation:2.2s ease-in-out infinite portal-dev-ring-idle-pulse}@keyframes portal-dev-ring-idle-pulse{0%,to{opacity:.22}50%{opacity:.55}}.portal-dev-ring-center{pointer-events:none;font-variant-numeric:tabular-nums;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.portal-dev-ring-cluster{font-variant-numeric:tabular-nums;white-space:nowrap;transform:translateX(var(--ring-label-nudge,0px));font-size:1.65rem;line-height:1;display:inline-block}.portal-dev-ring-value{letter-spacing:-.03em;color:var(--text-heading);font-weight:700;line-height:1}.portal-dev-ring-suffix{letter-spacing:0;font-variant-numeric:normal;color:color-mix(in srgb, var(--text) 72%, transparent);vertical-align:super;margin-left:.08em;font-size:.52em;font-weight:700;line-height:0;position:relative;top:.3232em}.portal-dev-ring-dash{letter-spacing:-.03em;color:var(--text-heading);font-size:1.65rem;font-weight:700;line-height:1}@media (prefers-reduced-motion:reduce){.portal-dev-ring-progress{transition-duration:50ms!important;animation:none!important}}.portal-dev-progress-breakdown{white-space:pre-wrap;background:color-mix(in srgb, var(--text-heading) 5%, transparent);border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);color:var(--text-heading);border-radius:10px;margin:0;padding:12px 14px;font-family:inherit;font-size:.9rem;line-height:1.5}.portal-dev-weekly-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;flex-direction:column;gap:16px;max-height:min(45vh,22rem);margin:0;padding:0 4px 0 0;list-style:none;display:flex;overflow-y:auto}.portal-dev-weekly-entry{background:color-mix(in srgb, var(--text-heading) 4%, transparent);border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);border-radius:10px;margin:0;padding:12px 14px}.portal-dev-weekly-entry--latest{background:color-mix(in srgb, var(--accent,#2563eb) 12%, var(--bg-elevated,#fff));border-color:color-mix(in srgb, var(--accent,#2563eb) 35%, transparent);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent,#2563eb) 18%, transparent), 0 8px 22px color-mix(in srgb, var(--accent,#2563eb) 8%, #1816130f)}.portal-dev-weekly-entry-head{flex-wrap:wrap;align-items:baseline;gap:8px 12px;margin-bottom:8px;display:flex}.portal-dev-weekly-badge{letter-spacing:.02em;text-transform:uppercase;color:var(--accent,#2563eb);font-size:.72rem;font-weight:700}.portal-dev-weekly-entry-time{color:var(--text-muted,color-mix(in srgb, var(--text-heading) 65%, transparent));font-size:.85rem;font-weight:600}.portal-dev-weekly-entry--latest .portal-dev-weekly-entry-time{color:var(--text-heading)}.portal-dev-weekly-entry-text,.portal-dev-weekly{white-space:pre-wrap;color:var(--text-heading);margin:0;font-size:.95rem;line-height:1.55}.portal-phase-card--urgent{border-color:#c2410c73;box-shadow:0 0 0 1px #c2410c33,0 10px 28px #80300f2a}.portal-phase-card--urgent .portal-phase-card-head{background:color-mix(in srgb, #c2410c 10%, var(--bg-elevated))}.portal-dev-urgent-intro{color:var(--text-heading);margin:0 0 10px;font-weight:600}.portal-dev-blocking-list{color:var(--text-heading);flex-direction:column;gap:8px;margin:0;padding-left:1.1rem;font-size:.92rem;line-height:1.45;display:flex}.portal-phase-card-text--preserve{white-space:pre-wrap}.portal-brief-materials-client-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.portal-brief-material-client-row{background:color-mix(in srgb, var(--text-heading) 4%, transparent);border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);border-radius:12px;padding:12px}.portal-brief-material-client-row--ok{background:#1665340f;border-color:#16653447}.portal-brief-material-client-main{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 12px;margin-bottom:8px;display:flex}.portal-brief-material-client-text{flex-wrap:wrap;flex:12rem;align-items:baseline;gap:8px 10px;display:flex}.portal-brief-material-kind-tag{letter-spacing:.02em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:.72rem;font-weight:700;display:inline-block}.portal-brief-material-kind-hint{color:color-mix(in srgb, var(--text) 72%, transparent);margin:0 0 10px;font-size:.82rem;line-height:1.45}.portal-brief-inline-text{margin-bottom:12px}.portal-brief-textarea-label{color:var(--text-heading);margin-bottom:6px;font-size:.82rem;font-weight:600;display:block}.portal-brief-material-textarea{resize:vertical;width:100%;min-height:120px;font-size:.9rem;line-height:1.5}.portal-brief-inline-text-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;display:flex}.portal-brief-char-count{color:color-mix(in srgb, var(--text) 55%, transparent);font-size:.78rem}.portal-brief-or-file{color:var(--text-heading);margin:0 0 8px;font-size:.85rem;font-weight:600}.portal-brief-upload-block--after-text{border-top:1px dashed color-mix(in srgb, var(--text-heading) 12%, transparent);margin-top:8px;padding-top:10px}.portal-brief-material-client-label{color:var(--text-heading);flex:12rem;font-size:.92rem;font-weight:600}.portal-brief-material-client-status{color:color-mix(in srgb, var(--text) 75%, transparent);white-space:nowrap;font-size:.82rem;font-weight:600}.portal-brief-material-client-row--ok .portal-brief-material-client-status{color:#166534}.portal-brief-material-client-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.portal-brief-material-file-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.portal-brief-material-download{font-size:.85rem}.portal-phase-card-head{border-bottom:1px solid color-mix(in srgb, var(--text-heading) 7%, transparent);background:color-mix(in srgb, var(--accent) 5%, var(--bg-elevated));align-items:center;gap:10px;padding:14px 16px 12px;display:flex}.portal-phase-card-icon{width:28px;height:28px;color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);border-radius:8px;justify-content:center;align-items:center;font-size:.85rem;display:flex}.portal-phase-card-title{color:var(--text-heading);margin:0;font-size:.92rem;font-weight:700}.portal-phase-card-body{flex-direction:column;flex:1;gap:10px;padding:14px 16px 16px;display:flex}.portal-phase-card-lead{color:var(--text-heading);margin:0;font-size:.95rem;line-height:1.4}.portal-phase-card-text{color:var(--text);margin:0;font-size:.9rem;line-height:1.55}.portal-phase-card-muted{color:color-mix(in srgb, var(--text) 58%, transparent);margin:0;font-size:.88rem;font-style:italic;line-height:1.5}.portal-phase-card-list{color:var(--text);margin:0;padding:0 0 0 1.1rem;font-size:.88rem;line-height:1.55}.portal-phase-card-list li{margin-bottom:4px}.portal-phase-card-dl{grid-template-columns:auto 1fr;gap:4px 12px;margin:4px 0 0;font-size:.85rem;display:grid}.portal-phase-card-dl dt{color:color-mix(in srgb, var(--text) 62%, transparent);margin:0;font-weight:600}.portal-phase-card-dl dd{color:var(--text-heading);margin:0}.portal-phase-card-badge{letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 70%, transparent);background:color-mix(in srgb, var(--text-heading) 8%, transparent);border-radius:999px;align-self:flex-start;margin:0;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.portal-phase-card-badge--ok{color:#1b4332;background:#2d6a4f24}.portal-phase-card-badge--warn{color:#7c5e10;background:#b089001f}.portal-phase-card-alert{color:#7c5e10;background:#b089001a;border:1px solid #b0890038;border-radius:10px;margin:0;padding:10px 12px;font-size:.85rem;line-height:1.45}.portal-phase-card-link{color:var(--accent);align-self:flex-start;margin-top:auto;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex}.portal-phase-card-link:hover{text-decoration:underline}@media (width<=768px){.portal-phase-cards-grid{grid-template-columns:1fr}.portal-phase-card--wide{grid-column:auto}}.portal-checklist{gap:10px;margin:0;padding:0;list-style:none;display:grid}.portal-checklist-item{border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.portal-checklist-item--pending{background:#b0890014}.portal-checklist-icon{font-size:1.1rem}.portal-checklist-status{text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.portal-form{gap:4px;max-width:640px;display:grid}.portal-textarea{resize:vertical;min-height:120px}.portal-fieldset{border:none;flex-wrap:wrap;gap:16px;margin:8px 0 16px;padding:0;display:flex}.portal-radio{align-items:center;gap:8px;font-size:.92rem;display:flex}.portal-request-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.portal-request-card{border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);background:color-mix(in srgb, var(--bg) 35%, var(--bg-elevated));border-radius:14px;padding:16px 18px}.portal-request-card-head{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.portal-request-title{color:var(--text-heading);margin:0 0 6px;font-weight:700}.portal-request-desc{color:var(--text);margin:0 0 8px;font-size:.92rem;line-height:1.5}.portal-request-meta,.portal-request-history{color:color-mix(in srgb, var(--text) 65%, transparent);margin:0;font-size:.8rem}.portal-request-history{gap:4px;margin-top:10px;padding:0;list-style:none;display:grid}.portal-badge--urgent{color:#9b2226;background:#c1121f24;border:1px solid #c1121f47}.portal-badge--mod-received{color:color-mix(in srgb, var(--text-heading) 80%, transparent);background:color-mix(in srgb, var(--text-heading) 10%, transparent);border:1px solid color-mix(in srgb, var(--text-heading) 14%, transparent);font-size:.75rem}.portal-badge--mod-in_progress{color:#9b6b00;background:#e9c46a38;border:1px solid #b089004d;font-size:.75rem}.portal-badge--mod-completed{color:#1b4332;background:#2d6a4f24;border:1px solid #2d6a4f47;font-size:.75rem}.portal-mod-status-steps{flex-wrap:wrap;gap:6px 4px;margin:10px 0 12px;padding:0;list-style:none;display:flex}.portal-mod-status-step{color:color-mix(in srgb, var(--text) 50%, transparent);background:color-mix(in srgb, var(--text-heading) 5%, transparent);border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);border-radius:999px;align-items:center;gap:6px;padding:5px 10px 5px 6px;font-size:.72rem;font-weight:600;display:inline-flex}.portal-mod-status-step-dot{background:color-mix(in srgb, var(--text-heading) 18%, transparent);border-radius:999px;width:8px;height:8px}.portal-mod-status-step--done{color:color-mix(in srgb, var(--text-heading) 72%, transparent);background:#2d6a4f14;border-color:#2d6a4f38}.portal-mod-status-step--done .portal-mod-status-step-dot{background:#2d6a4f}.portal-mod-status-step--current{color:var(--text-heading);border-color:color-mix(in srgb, var(--accent) 35%, transparent);background:color-mix(in srgb, var(--accent) 12%, transparent);box-shadow:0 2px 10px color-mix(in srgb, var(--accent) 12%, transparent)}.portal-mod-status-step--current .portal-mod-status-step-dot{background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 25%, transparent)}.admin-client-mods-panel{margin-top:28px}.admin-client-mods-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.admin-client-mods-item{border:1px solid color-mix(in srgb, var(--text-heading) 10%, transparent);background:color-mix(in srgb, var(--bg) 35%, var(--bg-elevated));border-radius:12px;padding:14px 16px}.admin-client-mods-item-head{flex-wrap:wrap;align-items:baseline;gap:8px 14px;margin-bottom:8px;display:flex}.admin-client-mods-type{color:var(--text-heading);font-weight:700}.admin-client-mods-project{color:color-mix(in srgb, var(--text) 65%, transparent);font-size:.82rem}.admin-client-mods-date{color:color-mix(in srgb, var(--text) 55%, transparent);margin-left:auto;font-size:.78rem}.admin-client-mods-desc{color:var(--text);white-space:pre-wrap;margin:0 0 12px;font-size:.88rem;line-height:1.45}.admin-client-mods-status-row{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.admin-client-mods-select{min-width:11rem}.admin-client-mods-status-now{color:color-mix(in srgb, var(--text) 60%, transparent);font-size:.8rem;font-weight:600}.admin-tickets-page{flex-direction:column;gap:20px;display:flex}.admin-tickets-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.admin-tickets-head h1{margin:0 0 6px}.admin-tickets-head p{max-width:42rem;color:color-mix(in srgb, var(--text) 72%, transparent);margin:0;font-size:.92rem}.admin-tickets-filters{flex-wrap:wrap;gap:8px;display:flex}.admin-tickets-filter{border:1px solid var(--card-border);background:var(--surface);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s}.admin-tickets-filter:hover{border-color:color-mix(in srgb, var(--text) 22%, var(--card-border))}.admin-tickets-filter--active{background:var(--text-heading);color:var(--bg);border-color:var(--text-heading)}.admin-tickets-layout{grid-template-columns:minmax(260px,340px) 1fr;align-items:start;gap:20px;display:grid}@media (width<=960px){.admin-tickets-layout{grid-template-columns:1fr}}.admin-tickets-queue{flex-direction:column;gap:8px;max-height:min(70vh,640px);padding-right:4px;display:flex;overflow-y:auto}.admin-tickets-queue-item{border-radius:var(--radius);border:1px solid var(--card-border);background:var(--surface);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:6px;width:100%;padding:12px 14px;transition:border-color .15s,box-shadow .15s;display:flex}.admin-tickets-queue-item:hover{border-color:color-mix(in srgb, var(--text) 18%, var(--card-border))}.admin-tickets-queue-item--active{border-color:var(--text-heading);box-shadow:0 0 0 1px var(--text-heading)}.admin-tickets-queue-item--overdue{border-color:color-mix(in srgb, #c1121f 45%, var(--card-border))}.admin-tickets-queue-top{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.admin-tickets-queue-client{font-size:.9rem;font-weight:700}.admin-tickets-sla-badge{text-transform:uppercase;letter-spacing:.04em;background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:999px;padding:3px 8px;font-size:.72rem;font-weight:700}.admin-tickets-sla-badge--overdue{color:#9b2226;background:#c1121f2e}.admin-tickets-sla-badge--soon{color:#bc4b00;background:#e85d0429}.admin-tickets-queue-title{font-size:.88rem;font-weight:600}.admin-tickets-queue-meta{color:color-mix(in srgb, var(--text) 58%, transparent);font-size:.78rem}.admin-tickets-detail{border-radius:var(--radius);border:1px solid var(--card-border);background:var(--surface);padding:20px 22px}.admin-tickets-detail-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.admin-tickets-detail-head h2{margin:0 0 4px;font-size:1.15rem}.admin-tickets-detail-client{color:color-mix(in srgb, var(--text) 65%, transparent);margin:0;font-size:.88rem}.admin-tickets-detail-sla{text-align:right}.admin-tickets-detail-sla strong{font-size:1rem;display:block}.admin-tickets-detail-sla span{color:color-mix(in srgb, var(--text) 60%, transparent);font-size:.8rem}.admin-tickets-detail-body{flex-direction:column;gap:14px;margin-bottom:20px;display:flex}.admin-tickets-detail-body p{margin:0;line-height:1.55}.admin-tickets-detail-label{text-transform:uppercase;letter-spacing:.05em;color:color-mix(in srgb, var(--text) 55%, transparent);font-size:.78rem;font-weight:700}.admin-tickets-thread{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.admin-tickets-thread-msg{border-radius:var(--radius);background:color-mix(in srgb, var(--text) 5%, transparent);border:1px solid var(--card-border);padding:12px 14px}.admin-tickets-thread-msg p{margin:0 0 6px}.admin-tickets-thread-msg time{color:color-mix(in srgb, var(--text) 55%, transparent);font-size:.78rem}.admin-tickets-actions{border-top:1px solid var(--card-border);flex-direction:column;gap:14px;padding-top:16px;display:flex}.admin-tickets-status-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-tickets-status-row label{font-size:.88rem;font-weight:600}.admin-tickets-status-row select{min-width:12rem}.admin-tickets-reply label{margin-bottom:8px;font-size:.88rem;font-weight:600;display:block}.admin-tickets-reply textarea{resize:vertical;width:100%;min-height:100px;margin-bottom:10px}.admin-tickets-empty,.admin-tickets-loading{text-align:center;color:color-mix(in srgb, var(--text) 60%, transparent);padding:24px}.portal-mod-admin-replies{border-top:1px dashed var(--card-border);flex-direction:column;gap:8px;margin-top:10px;padding-top:10px;display:flex}.portal-mod-admin-reply{color:color-mix(in srgb, var(--text) 85%, transparent);font-size:.88rem;line-height:1.5;display:block}.portal-mod-admin-reply strong{color:var(--text-heading)}.portal-alert--ok{color:var(--text-heading);background:#2d6a4f1f;border:1px solid #2d6a4f47}.portal-nav-link--muted{opacity:.75}.portal-breadcrumb{margin:0 0 16px;font-size:.88rem}.portal-breadcrumb a{color:var(--accent);font-weight:600;text-decoration:none}.portal-doc-list,.portal-report-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.portal-doc-card{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);border-radius:16px;padding:18px 20px}.portal-doc-card-head{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:8px;display:flex}.portal-doc-title{color:var(--text-heading);margin:0;font-size:1rem}.portal-doc-type{text-transform:uppercase;letter-spacing:.06em;color:color-mix(in srgb, var(--text) 58%, transparent);font-size:.78rem;font-weight:600}.portal-doc-meta{color:color-mix(in srgb, var(--text) 62%, transparent);margin:0 0 12px;font-size:.82rem}.portal-faq{gap:14px;margin:0;display:grid}.portal-faq dt{color:var(--text-heading);margin-bottom:4px;font-weight:700}.portal-faq dd{color:var(--text);margin:0;font-size:.92rem;line-height:1.55}.portal-check-row{align-items:center;gap:10px;margin-bottom:10px;font-size:.92rem;display:flex}.portal-panel-subtitle{color:var(--text-heading);margin:20px 0 12px;font-size:.95rem;font-weight:700}.portal-link{color:var(--accent);text-decoration:underline}.portal-sla{margin-top:16px}.portal-billing-hero{grid-template-rows:auto 1fr;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:clamp(10px,1.8vw,14px) clamp(24px,4vw,40px);margin-bottom:clamp(8px,2vw,16px);display:grid}.portal-billing-hero-title--plans{grid-area:1/1;align-self:end;margin:0}.portal-billing-hero-title--stripe{grid-area:1/2;align-self:end;margin:0}.portal-billing-hero-plans{flex-direction:column;grid-area:2/1;align-self:stretch;min-width:0;display:flex}.portal-billing-hero-plans .portal-project-grid{flex:1;align-content:start;margin-bottom:0}.portal-billing-stripe-panel.portal-project-intro{flex-direction:column;grid-area:2/2;align-self:stretch;min-width:0;height:100%;min-height:0;margin:0;display:flex}.portal-billing-section-title{letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 52%, transparent);margin:0 0 clamp(12px,2vw,18px);font-size:.72rem;font-weight:700}.portal-billing-hero .portal-billing-section-title{align-items:flex-end;min-height:2.5rem;margin:0;padding-bottom:2px;display:flex}.portal-billing-plans-grid{margin:0;padding:0;list-style:none}.portal-billing-plans-grid-item{min-width:0;list-style:none}.portal-billing-plans-grid .portal-billing-plans-grid-item{display:block}.portal-billing-plan-card{border:1px solid color-mix(in srgb, var(--text-heading) 10%, transparent);background:var(--bg-elevated);border-radius:16px;flex-direction:column;gap:clamp(8px,1.5vw,12px);height:100%;min-height:100%;padding:clamp(18px,2.5vw,22px);transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s,border-color .28s;display:flex;box-shadow:0 4px 22px #1816130f}.portal-billing-plan-card:hover{border-color:color-mix(in srgb, var(--accent) 32%, transparent);box-shadow:0 12px 32px color-mix(in srgb, var(--accent) 14%, #18161314);transform:translateY(-4px)}.portal-billing-plan-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.portal-billing-plan-card-service{letter-spacing:.03em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 58%, transparent);margin:0;font-size:.78rem;font-weight:600}.portal-billing-plan-card-title{color:var(--text-heading);margin:0;font-size:clamp(1.02rem,2vw,1.15rem);font-weight:700;line-height:1.25}.portal-billing-plan-stats{border-top:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);gap:10px;margin:8px 0 0;padding:12px 0 0;list-style:none;display:grid}.portal-billing-plan-stat-label{letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 50%, transparent);margin-bottom:2px;font-size:.68rem;font-weight:700;display:block}.portal-billing-plan-stat-value{color:var(--text-heading);font-size:.92rem;font-weight:600;line-height:1.4}.portal-billing-plan-stat-value--accent{color:var(--accent)}.portal-billing-plans-empty{text-align:center;border:1px dashed color-mix(in srgb, var(--text-heading) 16%, transparent);color:color-mix(in srgb, var(--text) 65%, transparent);background:color-mix(in srgb, var(--bg) 45%, var(--bg-elevated));border-radius:16px;margin:0;padding:24px 20px}.portal-billing-stripe-panel.portal-project-intro{padding:clamp(20px,3vw,26px);position:relative;overflow:hidden}.portal-billing-stripe-label{letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb, var(--accent) 85%, var(--text-heading));margin:0 0 8px;font-size:.68rem;font-weight:700}.portal-billing-stripe-desc{color:color-mix(in srgb, var(--text) 90%, transparent);flex:1;max-width:none;min-height:0;margin:0 0 18px;font-size:.98rem;font-weight:500;line-height:1.55}.portal-billing-stripe-cta-wrap{flex-shrink:0;margin-top:auto;padding-top:4px}.portal-billing-stripe-alert{margin:0 0 14px;font-size:.88rem}.portal-billing-stripe-btn{cursor:pointer;width:100%;font:inherit;background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 96%, #1a1a22), var(--accent));box-shadow:0 4px 20px color-mix(in srgb, var(--accent) 38%, transparent), inset 0 1px 0 #ffffff38;border:none;border-radius:14px;padding:0;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s,filter .25s;display:block}.portal-billing-stripe-btn:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.25);transform:none}.portal-billing-stripe-btn:not(:disabled):hover{box-shadow:0 10px 28px color-mix(in srgb, var(--accent) 42%, transparent), inset 0 1px 0 #ffffff3d;transform:translateY(-2px)}.portal-billing-stripe-btn:not(:disabled):active{transform:translateY(0)}.portal-billing-stripe-btn-inner{color:#fff;text-align:center;padding:14px 20px;font-size:.95rem;font-weight:700;display:block}.portal-billing-stripe-footnote{color:color-mix(in srgb, var(--text) 58%, transparent);margin:14px 0 0;font-size:.82rem;line-height:1.45}.portal-billing-invoices{border:1px solid color-mix(in srgb, var(--text-heading) 9%, transparent);background:var(--bg-elevated);border-radius:18px;margin-top:clamp(8px,2vw,16px);padding:clamp(20px,3vw,26px);box-shadow:0 6px 26px #1816130e}.portal-billing-invoices-head{border-bottom:1px solid color-mix(in srgb, var(--text-heading) 8%, transparent);margin-bottom:clamp(14px,2.5vw,20px);padding-bottom:14px}.portal-billing-invoices-title{color:var(--text-heading);letter-spacing:-.02em;margin:0 0 6px;font-size:clamp(1.05rem,2vw,1.2rem);font-weight:700}.portal-billing-invoices-lead{color:color-mix(in srgb, var(--text) 68%, transparent);margin:0;font-size:.9rem;line-height:1.5}.portal-billing-invoices-empty{text-align:center;color:color-mix(in srgb, var(--text) 62%, transparent);background:color-mix(in srgb, var(--bg) 40%, transparent);border:1px dashed color-mix(in srgb, var(--text-heading) 12%, transparent);border-radius:14px;margin:0;padding:28px 16px;font-size:.92rem}.portal-invoice-list--billing{gap:clamp(10px,1.5vw,14px)}.portal-invoice-card--billing{background:color-mix(in srgb, var(--bg) 28%, var(--bg-elevated));border-radius:14px;transition:border-color .28s,box-shadow .28s cubic-bezier(.22,1,.36,1),transform .28s cubic-bezier(.22,1,.36,1)}.portal-invoice-card--billing:hover,.portal-invoice-card--billing:focus-visible{border-color:color-mix(in srgb, var(--accent) 38%, transparent);box-shadow:0 10px 28px color-mix(in srgb, var(--accent) 12%, #1816131a);transform:translateY(-3px)}.portal-page-body--project-animated .portal-invoice-list--billing>li{animation:.48s cubic-bezier(.22,1,.36,1) backwards portal-project-reveal;animation-delay:calc(var(--billing-inv-i,0) * 60ms + .42s)}.portal-subscription-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:.68rem;font-weight:700}.portal-subscription-badge--ok{color:#166534;background:#22c55e26}.portal-subscription-badge--warning{color:#92400e;background:#eab3082e}.portal-subscription-badge--info{color:#1e40af;background:#3b82f626}.portal-subscription-badge--muted{color:var(--text);background:var(--surface);border:1px solid var(--card-border)}.portal-billing-plans-grid--compact .portal-billing-plan-stats li:last-child{display:none}.portal-widget .portal-billing-plans-grid{margin-bottom:0}.btn-sm{padding:8px 16px;font-size:.88rem}@media (width<=900px){.portal-widget-grid,.portal-billing-hero{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-auto-rows:auto}.portal-billing-hero-title--plans,.portal-billing-hero-title--stripe,.portal-billing-hero-plans,.portal-billing-stripe-panel.portal-project-intro{grid-area:auto/1}.portal-billing-stripe-panel.portal-project-intro{height:auto}}@media (width<=640px){.portal-grid-2,.portal-stat-grid{grid-template-columns:1fr}.portal-invoice-card-top{flex-direction:column;align-items:flex-start}.area-personale-page--login{padding-top:calc(env(safe-area-inset-top,0px) + clamp(1.25rem, 4vh, 2rem))}}.legal-page{background:var(--bg);padding:56px 0 80px}.legal-container{max-width:820px}.legal-title{color:var(--text-heading);margin:0 0 10px;font-size:2rem;line-height:1.2}.legal-subtitle{color:var(--accent);margin:0 0 10px;font-size:1.15rem;font-weight:700}.legal-updated{color:var(--text);margin:0 0 28px}.legal-section{margin-bottom:26px}.legal-section h2{color:var(--text-heading);margin:0 0 10px;font-size:1.1rem}.legal-h3{color:var(--text-heading);margin:16px 0 8px;font-size:1rem;font-weight:700}.legal-section p,.legal-section li{color:var(--text);font-size:1rem;line-height:1.7}.legal-section ul{margin:10px 0 0;padding-left:22px}.legal-section li{margin-bottom:6px}@media (width<=640px){.legal-title{font-size:1.7rem}}.admin-page{box-sizing:border-box;background:var(--input-bg);min-height:100vh;color:var(--text-heading);font-family:var(--font-sans);padding:clamp(24px,4vw,48px)}.admin-page--fallback{justify-content:center;align-items:center;display:flex}.admin-page-header{max-width:560px;margin-bottom:40px}.admin-page-badge{letter-spacing:.06em;text-transform:uppercase;color:#fffcf7;background:linear-gradient(135deg, var(--gradient-start), var(--gradient-end));border-radius:999px;margin:0 0 12px;padding:6px 12px;font-size:.7rem;font-weight:700;display:inline-block}.admin-page-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text-heading);margin:0 0 12px;font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600}.admin-page-lead{color:var(--text);margin:0 0 24px;font-size:1rem;line-height:1.65}.admin-page-lead--error{color:#b91c1c;font-weight:600}.admin-page-code{color:var(--text-heading);background:var(--surface-2);border:1px solid var(--card-border);border-radius:6px;padding:2px 8px;font-size:.88em}.admin-page-back{color:var(--accent);align-items:center;font-size:.95rem;font-weight:600;text-decoration:none;transition:color .2s;display:inline-flex}.admin-page-back:hover{color:var(--accent-hover)}.admin-page-main{border-radius:var(--radius-xl);border:var(--surface-elevated-border);max-width:720px;box-shadow:var(--surface-elevated-shadow);background:var(--bg-elevated);padding:28px 24px}.admin-page-placeholder{color:var(--text);margin:0;font-size:.95rem}.admin-layout{background:var(--input-bg);min-height:100vh;color:var(--text-heading);font-family:var(--font-sans);grid-template-columns:min(260px,92vw) 1fr;display:grid}@media (width<=720px){.admin-layout{grid-template-rows:auto 1fr;grid-template-columns:1fr}}.admin-sidebar{border-right:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);background:var(--bg-elevated);flex-direction:column;gap:20px;padding:22px 18px;display:flex}@media (width<=720px){.admin-sidebar{border-right:none;border-bottom:var(--surface-elevated-border);flex-flow:wrap;align-items:center}}.admin-sidebar-site{font:inherit;color:var(--accent);cursor:pointer;text-align:left;background:0 0;border:none;margin:0;padding:0;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-block}.admin-sidebar-site:hover{color:var(--accent-hover)}.admin-sidebar-brand{letter-spacing:.12em;text-transform:uppercase;color:var(--text);margin:0;font-size:.72rem;font-weight:700}.admin-sidebar-nav{flex-direction:column;gap:6px;display:flex}@media (width<=720px){.admin-sidebar-nav{flex-flow:wrap;width:100%}}.admin-sidebar-link{border-radius:var(--radius);color:var(--text-heading);padding:10px 12px;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .2s,color .2s;display:block}.admin-sidebar-link:hover{background:rgba(var(--accent-rgb), .08);color:var(--accent)}.admin-sidebar-link.active{background:rgba(var(--accent-rgb), .14);color:var(--accent);box-shadow:inset 3px 0 0 0 var(--accent)}.admin-layout-main{background:var(--input-bg);padding:clamp(20px,3vw,40px);overflow-x:auto}.admin-dashboard{max-width:min(1080px,100%)}.admin-new-client,.admin-client-detail{max-width:720px}.admin-pacchetti{max-width:min(1240px,100%)}@keyframes admin-dash-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes admin-dash-stat-pop{0%{opacity:0;transform:scale(.92)translateY(8px)}70%{transform:scale(1.03)translateY(0)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes admin-dash-orb-drift{0%,to{transform:translate(0)scale(1)}50%{transform:translate(12px,-8px)scale(1.06)}}@keyframes admin-dash-shimmer{0%{background-position:0%}to{background-position:200%}}@keyframes admin-dash-skeleton{0%,to{opacity:.35}50%{opacity:.7}}.admin-dashboard-hero{border-radius:var(--radius-xl);border:var(--surface-elevated-border);background:linear-gradient(145deg, color-mix(in srgb, var(--text-heading) 92%, #1a1510) 0%, color-mix(in srgb, var(--text-heading) 78%, #2a2218) 55%, color-mix(in srgb, var(--gradient-end) 35%, #1a1510) 100%);box-shadow:var(--surface-elevated-shadow);color:#f5f0e8;margin-bottom:clamp(24px,4vw,36px);padding:clamp(24px,4vw,36px);position:relative;overflow:hidden}.admin-dashboard--ready .admin-dashboard-hero{animation:.65s cubic-bezier(.22,1,.36,1) backwards admin-dash-enter;animation-delay:calc(var(--dash-i,0) * 60ms)}.admin-dashboard-hero-orbs{pointer-events:none;position:absolute;inset:0;overflow:hidden}.admin-dashboard-orb{filter:blur(48px);opacity:.45;border-radius:50%;position:absolute}.admin-dashboard-orb--a{background:color-mix(in srgb, var(--gradient-start) 70%, transparent);width:220px;height:220px;animation:14s ease-in-out infinite admin-dash-orb-drift;top:-60px;right:-40px}.admin-dashboard-orb--b{background:color-mix(in srgb, var(--gradient-end) 55%, transparent);width:160px;height:160px;animation:18s ease-in-out infinite reverse admin-dash-orb-drift;bottom:-50px;left:10%}.admin-dashboard-hero-inner{z-index:1;max-width:36rem;position:relative}.admin-dashboard-badge{color:#f5f0e8;background:#ffffff24;border:1px solid #ffffff2e;margin-bottom:14px}.admin-dashboard-greeting{letter-spacing:.04em;text-transform:uppercase;color:#f5f0e89e;margin:0 0 4px;font-size:.92rem;font-weight:600}.admin-dashboard-title{color:#fffcf7;margin-bottom:10px}.admin-dashboard-lead{color:#f5f0e8b8;margin:0}.admin-dashboard-stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:clamp(28px,4vw,40px);display:grid}@media (width<=960px){.admin-dashboard-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=720px){.admin-dashboard-stats{grid-template-columns:1fr}}.admin-dashboard-stat{border-radius:var(--radius-xl);border:var(--surface-elevated-border);background:var(--bg-elevated);box-shadow:var(--surface-elevated-shadow);flex-direction:column;gap:6px;padding:18px 20px;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s,border-color .25s;display:flex}.admin-dashboard-stat--in{animation:.55s cubic-bezier(.22,1,.36,1) backwards admin-dash-enter;animation-delay:calc(var(--dash-i,0) * 80ms + .12s)}.admin-dashboard-stat:hover{box-shadow:var(--surface-elevated-shadow), 0 12px 28px color-mix(in srgb, var(--text-heading) 8%, transparent);transform:translateY(-3px)}.admin-dashboard-stat--accent{border-color:color-mix(in srgb, var(--accent) 28%, var(--card-border))}.admin-dashboard-stat--danger{border-color:color-mix(in srgb, #c1121f 35%, var(--card-border));background:color-mix(in srgb, #c1121f 4%, var(--bg-elevated))}.admin-dashboard-stat--ok{border-color:color-mix(in srgb, #2d6a4f 25%, var(--card-border))}.admin-dashboard-stat-label{letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 58%, transparent);font-size:.78rem;font-weight:700}.admin-dashboard-stat-value{font-family:var(--font-display);letter-spacing:-.04em;color:var(--text-heading);align-items:center;min-height:2.6rem;font-size:clamp(2rem,5vw,2.6rem);font-weight:600;line-height:1;display:flex}.admin-dashboard-stat-value--pop{animation:.5s cubic-bezier(.22,1,.36,1) backwards admin-dash-stat-pop;animation-delay:calc(var(--dash-i,0) * 80ms + .28s)}.admin-dashboard-stat--danger .admin-dashboard-stat-value{color:#9b2226}.admin-dashboard-stat-hint{color:color-mix(in srgb, var(--text) 65%, transparent);font-size:.82rem}.admin-dashboard-skeleton{background:linear-gradient(90deg, color-mix(in srgb, var(--text) 8%, transparent) 0%, color-mix(in srgb, var(--text) 16%, transparent) 50%, color-mix(in srgb, var(--text) 8%, transparent) 100%);background-size:200% 100%;border-radius:8px;width:3.5rem;height:2rem;animation:1.4s ease-in-out infinite admin-dash-shimmer;display:block}.admin-dashboard-section{margin-bottom:clamp(24px,3vw,32px)}.admin-dashboard--ready .admin-dashboard-section{animation:.55s cubic-bezier(.22,1,.36,1) backwards admin-dash-enter;animation-delay:calc(var(--dash-i,0) * 60ms + .2s)}.admin-dashboard-section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px 16px;margin-bottom:16px;display:flex}.admin-dashboard-section-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-heading);margin:0;font-size:1.25rem;font-weight:600}.admin-dashboard-section-lead{width:100%;color:color-mix(in srgb, var(--text) 68%, transparent);margin:0;font-size:.9rem}.admin-dashboard-section-link{color:var(--accent);font-size:.88rem;font-weight:600;text-decoration:none;transition:color .2s,transform .2s}.admin-dashboard-section-link:hover{color:var(--text-heading);transform:translate(3px)}.admin-dashboard-cards{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width<=640px){.admin-dashboard-cards{grid-template-columns:1fr}}.admin-dashboard-card{border-radius:var(--radius-xl);border:var(--surface-elevated-border);background:var(--bg-elevated);box-shadow:var(--surface-elevated-shadow);color:inherit;align-items:center;gap:14px;padding:16px 18px;text-decoration:none;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s,border-color .28s,background .28s;display:flex}.admin-dashboard-card--in{animation:.5s cubic-bezier(.22,1,.36,1) backwards admin-dash-enter;animation-delay:calc(var(--dash-i,0) * 70ms + .24s)}.admin-dashboard-card:hover{border-color:color-mix(in srgb, var(--accent) 22%, var(--card-border));box-shadow:var(--surface-elevated-shadow), 0 14px 32px color-mix(in srgb, var(--text-heading) 10%, transparent);transform:translateY(-4px)}.admin-dashboard-card--accent .admin-dashboard-card-icon{background:linear-gradient(135deg, var(--gradient-start), var(--gradient-end));color:#fff}.admin-dashboard-card--alert{border-color:color-mix(in srgb, #c1121f 40%, var(--card-border));animation-name:admin-dash-enter}.admin-dashboard-card--alert .admin-dashboard-card-icon{color:#9b2226;background:#c1121f24}.admin-dashboard-card-icon{background:color-mix(in srgb, var(--text-heading) 6%, transparent);width:44px;height:44px;color:var(--text-heading);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;transition:transform .25s cubic-bezier(.22,1,.36,1);display:flex}.admin-dashboard-card:hover .admin-dashboard-card-icon{transform:scale(1.06)rotate(-2deg)}.admin-dashboard-card-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.admin-dashboard-card-title{color:var(--text-heading);font-size:.95rem;font-weight:700}.admin-dashboard-card-desc{color:color-mix(in srgb, var(--text) 68%, transparent);font-size:.82rem;line-height:1.4}.admin-dashboard-card-arrow{color:color-mix(in srgb, var(--text) 40%, transparent);flex-shrink:0;font-size:1.1rem;font-weight:700;transition:transform .25s,color .25s}.admin-dashboard-card:hover .admin-dashboard-card-arrow{color:var(--accent);transform:translate(4px)}.admin-dashboard-urgent-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.admin-dashboard-urgent-item{border-radius:var(--radius);border:1px solid var(--card-border);background:var(--bg-elevated);transition:transform .22s,border-color .22s,box-shadow .22s;overflow:hidden}.admin-dashboard-urgent-item--in{animation:.45s cubic-bezier(.22,1,.36,1) backwards admin-dash-enter;animation-delay:calc(var(--dash-i,0) * 70ms + .32s)}.admin-dashboard-urgent-item:hover{border-color:color-mix(in srgb, var(--accent) 25%, var(--card-border));box-shadow:0 6px 18px color-mix(in srgb, var(--text-heading) 6%, transparent);transform:translate(4px)}.admin-dashboard-urgent-item--overdue{border-color:color-mix(in srgb, #c1121f 35%, var(--card-border))}.admin-dashboard-urgent-link{color:inherit;padding:14px 16px;text-decoration:none;display:block}.admin-dashboard-urgent-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.admin-dashboard-urgent-top strong{color:var(--text-heading);font-size:.92rem}.admin-dashboard-urgent-sla{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent);border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:700}.admin-dashboard-urgent-sla--overdue{color:#9b2226;background:#c1121f24}.admin-dashboard-urgent-meta{color:color-mix(in srgb, var(--text) 62%, transparent);font-size:.82rem}.admin-dashboard-empty-tickets{border-radius:var(--radius);text-align:center;color:color-mix(in srgb, #2d6a4f 90%, var(--text));animation:.5s cubic-bezier(.22,1,.36,1) backwards admin-dash-enter;animation-delay:calc(var(--dash-i,0) * 60ms + .35s);background:#2d6a4f14;border:1px solid #2d6a4f38;margin:0;padding:16px 18px;font-size:.9rem}@media (prefers-reduced-motion:reduce){.admin-dashboard--ready .admin-dashboard-hero,.admin-dashboard-stat--in,.admin-dashboard--ready .admin-dashboard-section,.admin-dashboard-card--in,.admin-dashboard-urgent-item--in,.admin-dashboard-stat-value--pop,.admin-dashboard-empty-tickets,.admin-dashboard-orb--a,.admin-dashboard-orb--b,.admin-dashboard-skeleton{animation:none}.admin-dashboard-stat:hover,.admin-dashboard-card:hover,.admin-dashboard-urgent-item:hover{transform:none}}.admin-pacchetti-head{max-width:720px;margin-bottom:24px}.admin-pacchetti-split{grid-template-columns:minmax(280px,1fr) minmax(360px,1.15fr);align-items:start;gap:clamp(24px,3vw,40px);display:grid}@media (width<=1024px){.admin-pacchetti-split{grid-template-columns:1fr}}.admin-pacchetti-editor{border-radius:var(--radius-xl);border:var(--surface-elevated-border);background:var(--bg-elevated);box-shadow:var(--surface-elevated-shadow);padding:22px 20px}.admin-pacchetti-editor-toolbar{border-bottom:1px solid var(--card-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;padding-bottom:16px;display:flex}.admin-pacchetti-cat-toggle{border:1px solid var(--border);background:var(--input-bg);border-radius:999px;flex-wrap:wrap;gap:4px;padding:5px;display:inline-flex}.admin-pacchetti-cat-btn{cursor:pointer;color:var(--text-heading);background:0 0;border:none;border-radius:999px;padding:9px 16px;font-family:inherit;font-size:.9rem;font-weight:600}.admin-pacchetti-cat-btn.is-active{background:var(--text-heading);color:var(--bg)}.admin-pacchetti-fields .admin-field{margin-bottom:16px}.admin-pacchetti-fields .admin-field--full{margin-bottom:18px}.admin-pacchetti-subgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}@media (width<=520px){.admin-pacchetti-subgrid{grid-template-columns:1fr}}.admin-pacchetti-plan-fieldset{border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--surface);margin:22px 0 0;padding:18px 16px}.admin-pacchetti-plan-legend{letter-spacing:.06em;text-transform:uppercase;color:var(--text);padding:0 8px;font-size:.8rem;font-weight:700}.admin-field--checkbox .admin-label--inline{cursor:pointer;align-items:center;gap:10px;margin-bottom:0;font-size:.92rem;font-weight:600;display:flex}.admin-field--checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.admin-pacchetti-preview-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text);margin:0 0 12px;font-size:.82rem;font-weight:700}.admin-pacchetti-preview-shell{border-radius:var(--radius-xl);padding:clamp(16px,2vw,28px) 0;overflow:hidden}.admin-pacchetti-preview{position:sticky;top:12px}@media (width<=1024px){.admin-pacchetti-preview{position:static}}.admin-pacchetti-fieldset{border:none;margin:0 0 22px;padding:0}.admin-pacchetti-fieldset--cats{border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--surface);margin-bottom:24px;padding:18px 16px}.admin-pacchetti-hint{color:var(--text);margin:0 0 14px;font-size:.88rem;line-height:1.55}.admin-pacchetti-cat-list{flex-direction:column;gap:12px;margin:0 0 14px;padding:0;list-style:none;display:flex}.admin-pacchetti-cat-row{border-radius:var(--radius);border:1px solid var(--card-border);background:var(--bg-elevated);flex-direction:column;gap:10px;padding:12px;display:flex}@media (width>=720px){.admin-pacchetti-cat-row{flex-flow:wrap;justify-content:space-between;align-items:center}}.admin-pacchetti-cat-row-main{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.admin-pacchetti-cat-id{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:.72rem;font-weight:600;overflow:hidden}.admin-pacchetti-cat-row-main .admin-input{flex:1;min-width:140px}.admin-pacchetti-cat-row-main .admin-select{width:auto;min-width:200px}.admin-pacchetti-inline-check{color:var(--text-heading);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;font-size:.88rem;font-weight:600;display:inline-flex}.admin-pacchetti-cat-row-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-pacchetti-plan-remove{float:right;border-radius:var(--radius);cursor:pointer;color:#991b1b;background:#b91c1c1a;border:none;margin:0 0 0 12px;padding:4px 10px;font-family:inherit;font-size:.78rem;font-weight:700}.admin-pacchetti-plan-remove:hover{background:#b91c1c2e}.admin-pacchetti-add-plan{margin-top:8px}.admin-new-client-head{margin-bottom:24px}.admin-detail-grid{border-radius:var(--radius-xl);border:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);background:var(--bg-elevated);grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px;margin:0;padding:26px 22px;display:grid}@media (width<=560px){.admin-detail-grid{grid-template-columns:1fr}}.admin-detail-field{margin:0}.admin-detail-field--full{grid-column:1/-1}.admin-detail-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text);margin:0 0 6px;font-size:.72rem;font-weight:700}.admin-detail-value{color:var(--text-heading);white-space:pre-wrap;word-break:break-word;margin:0;font-size:1rem;line-height:1.55}.admin-detail-actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.admin-projects{border-top:1px solid var(--card-border);margin-top:36px;padding-top:28px}.admin-projects-head{margin-bottom:20px}.admin-projects-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-heading);margin:0 0 10px;font-size:1.35rem;font-weight:600}.admin-projects-lead{color:var(--text);margin:0;font-size:.92rem;line-height:1.6}.admin-projects-list{flex-direction:column;gap:14px;margin:0 0 20px;padding:0;list-style:none;display:flex}.admin-projects-card{border-radius:var(--radius-lg);border:var(--surface-elevated-border);background:var(--bg-elevated);box-shadow:var(--surface-elevated-shadow);margin:0;padding:16px 18px}.admin-projects-card--link{color:inherit;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s;display:block}.admin-projects-card--link:hover{border-color:color-mix(in srgb, var(--accent) 28%, transparent);box-shadow:var(--surface-elevated-shadow), 0 6px 20px color-mix(in srgb, var(--accent) 10%, #1816130f);transform:translateY(-1px)}.admin-projects-card-cta{color:var(--accent);margin-top:10px;font-size:.82rem;font-weight:700;display:inline-block}.admin-projects-list-item{flex-direction:column;gap:8px;display:flex}.admin-projects-delete{border-radius:var(--radius-md);font:inherit;color:#b42318;cursor:pointer;background:0 0;border:none;align-self:flex-end;margin:0 4px 0 0;padding:6px 12px;font-size:.82rem;font-weight:600;transition:background .2s,color .2s}.admin-projects-delete:hover:not(:disabled){background:#b423181a}.admin-projects-delete:disabled{opacity:.55;cursor:not-allowed}.admin-btn-danger{border-radius:var(--radius-md);background:color-mix(in srgb, #b42318 8%, var(--bg-elevated));font:inherit;color:#b42318;cursor:pointer;border:1px solid #b4231859;justify-content:center;align-items:center;padding:10px 18px;font-size:.9rem;font-weight:600;transition:background .2s,border-color .2s;display:inline-flex}.admin-btn-danger:hover:not(:disabled){background:color-mix(in srgb, #b42318 14%, var(--bg-elevated));border-color:#b4231880}.admin-btn-danger:disabled{opacity:.55;cursor:not-allowed}.admin-detail-grid--compact{margin-bottom:20px}.admin-client-detail.admin-project-page{max-width:min(960px,100%)}.admin-project-page-lead{max-width:52rem}.admin-project-hero{margin:4px 0 20px}.admin-project-hero-chips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-project-chip{background:var(--surface);border:1px solid var(--card-border);color:var(--text-heading);border-radius:999px;align-items:center;padding:6px 12px;font-size:.82rem;font-weight:600;line-height:1.25;display:inline-flex}.admin-project-chip--accent{border-color:color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 10%, transparent)}.admin-project-chip--muted{color:var(--text);font-weight:500}.admin-project-subnav{z-index:2;background:linear-gradient(to bottom, var(--input-bg) 72%, color-mix(in srgb, var(--input-bg) 40%, transparent));border-bottom:1px solid var(--card-border);flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:12px 0 14px;display:flex;position:sticky;top:0}.admin-project-subnav-link{color:var(--text-heading);border:1px solid var(--card-border);background:var(--bg-elevated);box-shadow:var(--surface-elevated-shadow);border-radius:999px;padding:8px 14px;font-size:.86rem;font-weight:600;text-decoration:none;transition:border-color .15s,box-shadow .15s}.admin-project-subnav-link:hover{border-color:color-mix(in srgb, var(--accent) 55%, transparent)}.admin-project-panel{border-radius:var(--radius-xl);border:var(--surface-elevated-border);background:var(--bg-elevated);box-shadow:var(--surface-elevated-shadow);margin-bottom:28px;padding:22px 22px 24px;scroll-margin-top:96px}.admin-project-panel-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-heading);margin:0 0 8px;font-size:1.2rem;font-weight:600}.admin-project-panel-lead{color:var(--text);max-width:48rem;margin:0 0 18px;font-size:.9rem;line-height:1.55}.admin-project-panel .admin-detail-grid--compact{margin-bottom:0}.admin-project-contract{border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--surface);margin:0;padding:16px 18px}.admin-project-contract-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text);margin:0 0 10px;font-size:.72rem;font-weight:700}.admin-project-contract-body{flex-direction:column;gap:12px;display:flex}.admin-kickoff--compact,.admin-brief--compact{border-top:none;margin-top:0;padding-top:0}.admin-kickoff--compact .admin-kickoff-form,.admin-brief--compact .admin-brief-form,.admin-development{margin-top:0}.admin-development-form{margin-top:8px}.admin-dev-weekly-history{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;flex-direction:column;gap:12px;max-height:min(50vh,24rem);margin:8px 0 0;padding:0 4px 0 0;list-style:none;display:flex;overflow-y:auto}.admin-dev-weekly-history-item{border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--surface);margin:0;padding:12px 14px}.admin-dev-weekly-history-item--latest{border-color:color-mix(in srgb, var(--accent,#2563eb) 38%, var(--card-border));background:color-mix(in srgb, var(--accent,#2563eb) 8%, var(--surface))}.admin-dev-weekly-history-meta{color:var(--text-muted);margin-bottom:8px;font-size:.8rem;font-weight:600;display:block}.admin-dev-weekly-history-item--latest .admin-dev-weekly-history-meta{color:var(--text-heading)}.admin-dev-weekly-history-text{white-space:pre-wrap;color:var(--text-heading);margin:0;font-family:inherit;font-size:.88rem;line-height:1.5}.admin-field--flex{grid-template-columns:1fr auto;align-items:end;gap:12px 16px;display:grid}@media (width<=560px){.admin-field--flex{grid-template-columns:1fr}}.admin-field--action-inline{flex-direction:column;gap:6px;display:flex}.admin-label--placeholder{visibility:hidden;min-height:1.2em}.admin-development-design-block{border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--surface);margin:8px 0 16px;padding:16px 14px}.admin-development-design-block .admin-field-hint{margin-top:0}.admin-project-panel .admin-development .admin-projects-head{margin-bottom:12px}.admin-project-panel .admin-development .admin-projects-title{font-size:1.05rem}.admin-project-panel .admin-development .admin-projects-lead{font-size:.86rem}.admin-project-contract .admin-detail-value{flex-direction:column;gap:10px;display:flex}.admin-project-contract-present,.admin-project-contract-missing{margin:0;font-size:.92rem}.admin-project-contract-missing{color:var(--text-muted,#888)}.admin-project-contract-download{color:var(--accent,#5b8def);font-weight:600;text-decoration:none}.admin-project-contract-download:hover{text-decoration:underline}.admin-project-contract-actions{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.admin-project-contract-file{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.admin-project-contract-error{margin:0}.admin-btn-secondary{border:1px solid var(--border,#333);background:var(--bg-elevated,#1a1a1f);color:var(--text-heading,#f4f4f5);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:8px 14px;font-size:.88rem;font-weight:600;display:inline-flex}.admin-btn-secondary:hover:not(:disabled){border-color:var(--accent,#5b8def)}.admin-btn-secondary:disabled{opacity:.55;cursor:not-allowed}.admin-btn-secondary--compact,.admin-btn-danger--compact{padding:6px 12px;font-size:.84rem}.admin-field-hint{color:var(--text-muted,#888);margin:0;font-size:.86rem;line-height:1.45}.admin-projects-card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 16px;margin-bottom:8px;display:flex}.admin-projects-card-head-text{flex-direction:column;gap:6px;min-width:0;display:flex}.admin-projects-category{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);border-radius:999px;align-self:flex-start;padding:3px 10px;font-size:.68rem;font-weight:600;display:inline-flex}.admin-projects-category--app{color:#4a5ab8;background:#5c6bc024;border-color:#5c6bc047}.admin-projects-card-title{color:var(--text-heading);margin:0;font-size:1.05rem;font-weight:700}.admin-projects-card-date{color:var(--text);white-space:nowrap;font-size:.8rem;font-weight:600}.admin-projects-card-desc{color:var(--text-heading);white-space:pre-wrap;word-break:break-word;margin:0;font-size:.95rem;line-height:1.55}.admin-projects-card-desc--empty{color:var(--text);font-style:italic}.admin-projects-empty{border-radius:var(--radius-xl);border:1px dashed color-mix(in srgb, var(--text-heading) 22%, transparent);background:var(--surface);text-align:center;padding:22px 20px}.admin-projects-empty-text{color:var(--text);margin:0 0 18px;font-size:.95rem}.admin-projects-toolbar{margin-bottom:16px}.admin-projects-form{border-radius:var(--radius-xl);border:var(--surface-elevated-border);background:var(--bg-elevated);box-shadow:var(--surface-elevated-shadow);margin-top:8px;padding:22px 20px}.admin-projects-form-title{color:var(--text-heading);margin:0 0 16px;font-size:1rem;font-weight:700}.admin-projects-form-actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.admin-project-package{border-top:1px dashed color-mix(in srgb, var(--text-heading) 14%, transparent);margin-top:8px;padding-top:18px}.admin-project-package-hint{color:var(--text);margin:0 0 14px;font-size:.88rem;line-height:1.5}.admin-billing-period{border:none;margin:0 0 16px;padding:0}.admin-billing-period-options{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.admin-billing-period-option{border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--text-heading) 12%, transparent);background:var(--bg-elevated);cursor:pointer;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;transition:border-color .2s,box-shadow .2s;display:inline-flex}.admin-billing-period-option.is-active{border-color:color-mix(in srgb, var(--accent) 40%, transparent);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent)}.admin-billing-period-option input{opacity:0;pointer-events:none;position:absolute}.admin-billing-period-note{color:var(--accent);font-size:.75rem;font-weight:600}.admin-project-package-preview{border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent) 6%, var(--bg-elevated));border:1px solid color-mix(in srgb, var(--accent) 14%, transparent);color:var(--text-heading);margin-top:12px;padding:14px 16px;font-size:.9rem;line-height:1.55}.admin-project-package-preview p{margin:0 0 6px}.admin-project-package-preview p:last-child{margin-bottom:0}.admin-project-package-preview-note{color:var(--text);margin-top:8px;font-size:.84rem}.admin-package-linked{border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent) 5%, var(--bg-elevated));border:1px solid color-mix(in srgb, var(--accent) 12%, transparent);margin-bottom:18px;padding:14px 16px}.admin-package-linked--muted{color:var(--text);font-size:.9rem;line-height:1.5}.admin-package-linked-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text);margin:0 0 6px;font-size:.78rem;font-weight:700}.admin-package-linked-text{color:var(--text-heading);margin:0 0 10px;font-size:.95rem}.admin-kickoff-plan-override{grid-column:1/-1;margin:0}.admin-kickoff-plan-override-summary{cursor:pointer;color:var(--text-heading);margin-bottom:12px;font-size:.92rem;font-weight:700}.admin-kickoff-plan-override-body{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;display:grid}.admin-kickoff-plan-override-body .admin-field--full{grid-column:1/-1}@media (width<=720px){.admin-kickoff-plan-override-body{grid-template-columns:1fr}}.admin-subscriptions{border-top:1px solid color-mix(in srgb, var(--text-heading) 10%, transparent);margin-top:32px;padding-top:28px}.admin-addon-invite{border-radius:var(--radius-lg);border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);background:color-mix(in srgb, var(--accent) 6%, var(--bg-elevated));margin-top:24px;padding:18px 20px}.admin-subscriptions-section-title{color:var(--text-heading);margin:0 0 8px;font-size:1rem;font-weight:700}.admin-addon-invite-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-top:14px;display:grid}.admin-addon-invite-form .btn{grid-column:1/-1;justify-self:start}.admin-addon-invite-label-wide{grid-column:1/-1}.admin-addon-invite-result{margin-top:16px}.admin-addon-invite-url-row{align-items:stretch;gap:8px;margin-top:6px;display:flex}.admin-addon-invite-url{flex:1;min-width:0;font-size:.82rem}@media (width<=720px){.admin-addon-invite-form{grid-template-columns:1fr}}.admin-subscriptions-empty{border-radius:var(--radius-lg);border:1px dashed color-mix(in srgb, var(--text-heading) 18%, transparent);color:var(--text);margin:0;padding:18px 20px;font-size:.92rem}.admin-subscriptions-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.admin-subscriptions-card{border-radius:var(--radius-lg);border:var(--surface-elevated-border);background:var(--bg-elevated);box-shadow:var(--surface-elevated-shadow);padding:16px 18px}.admin-subscriptions-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:6px;display:flex}.admin-subscriptions-card-title{color:var(--text-heading);margin:0;font-size:1.02rem;font-weight:700}.admin-subscriptions-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.admin-subscriptions-badge--active{background:color-mix(in srgb, #1a7f37 14%, var(--bg-elevated));color:#1a7f37}.admin-subscriptions-badge--warning{background:color-mix(in srgb, #b45309 16%, var(--bg-elevated));color:#b45309}.admin-subscriptions-stripe-links{flex-wrap:wrap;gap:10px 14px;margin:12px 0 0;font-size:.86rem;display:flex}.admin-subscriptions-stripe-links a{color:var(--accent,#5b8def);font-weight:600;text-decoration:none}.admin-subscriptions-stripe-links a:hover{text-decoration:underline}.admin-alert-warning{background:color-mix(in srgb, #b45309 14%, var(--bg-elevated));color:var(--text-heading);border-radius:10px;margin:0 0 16px;padding:12px 14px;font-size:.92rem;line-height:1.45}.admin-subscriptions-alert{border:1px solid #b4530959}.admin-table-badge{vertical-align:middle;border-radius:999px;margin-left:8px;padding:2px 7px;font-size:.72rem;font-weight:700;display:inline-flex}.admin-table-badge--warning{background:color-mix(in srgb, #b45309 18%, var(--bg-elevated));color:#b45309}.admin-subscription-fiscozen{border-top:1px solid var(--border,#2a2a30);margin-top:16px;padding-top:14px}.admin-subscription-fiscozen-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:10px;display:flex}.admin-subscription-fiscozen-head-actions{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.admin-subscription-fiscozen-title{color:var(--text-heading);margin:0;font-size:.95rem;font-weight:700}.admin-subscription-fiscozen-alert{text-transform:uppercase;background:color-mix(in srgb, #b45309 16%, var(--bg-elevated));color:#b45309;border-radius:999px;padding:3px 9px;font-size:.72rem;font-weight:700}.admin-subscription-fiscozen-ok{color:#1a7f37;font-size:.8rem;font-weight:600}.admin-subscription-fiscozen-empty{color:var(--text-muted,#888);margin:0;font-size:.88rem}.admin-subscription-fiscozen-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.admin-subscription-fiscozen-item{background:var(--bg-elevated,#1a1a1f);border:1px solid var(--border,#2a2a30);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;padding:10px 12px;display:flex}.admin-subscription-fiscozen-item--missing{border-color:color-mix(in srgb, #b45309 45%, var(--border,#2a2a30))}.admin-subscription-fiscozen-item-label{margin:0 0 2px;font-size:.9rem;font-weight:600}.admin-subscription-fiscozen-item-meta{color:var(--text-muted,#888);margin:0;font-size:.82rem}.admin-subscription-fiscozen-item-actions{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.admin-subscription-fiscozen-download{color:var(--accent,#5b8def);font-size:.86rem;font-weight:600;text-decoration:none}.admin-subscription-fiscozen-missing-label{color:#b45309;font-size:.82rem;font-weight:600}.admin-subscription-fiscozen-lead{color:color-mix(in srgb, var(--text) 68%, transparent);max-width:40rem;margin:6px 0 0;font-size:.86rem;line-height:1.45}.admin-subscription-fiscozen-item--overdue{border-color:color-mix(in srgb, #c1121f 40%, var(--card-border));background:color-mix(in srgb, #c1121f 5%, var(--bg-elevated))}.admin-subscription-fiscozen-deadline{color:color-mix(in srgb, var(--accent) 85%, var(--text));margin:8px 0 0;font-size:.82rem;font-weight:600}.admin-subscription-fiscozen-deadline--overdue{color:#9b2226}.admin-subscription-fiscozen-deadline--ok{color:color-mix(in srgb, #2d6a4f 90%, var(--text));font-weight:500}.admin-subscription-fiscozen-error{margin-top:10px}.admin-client-invoices-panel{border-top:1px solid var(--border,#2a2a30);margin-top:28px;padding-top:20px}.admin-invoices-subscription-ref{flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 6px;display:flex}.admin-invoices-subscription-ref-badge{text-transform:uppercase;letter-spacing:.02em;background:color-mix(in srgb, var(--accent,#7c3aed) 22%, var(--bg-elevated));color:var(--accent,#a78bfa);border-radius:999px;padding:2px 10px;font-size:.72rem;font-weight:700;display:inline-block}.admin-invoices-subscription-ref-status{color:var(--text-muted,#888);font-size:.72rem;font-weight:600}.admin-invoices-subscription-ref-id{color:var(--text-muted,#666);background:0 0;padding:0;font-size:.68rem}.admin-subscriptions-card-meta{color:var(--text);margin:0 0 10px;font-size:.9rem;line-height:1.45}.admin-subscriptions-dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0;font-size:.86rem;display:grid}.admin-subscriptions-dl div{flex-direction:column;gap:2px;display:flex}.admin-subscriptions-dl dt{color:var(--text);margin:0;font-weight:600}.admin-subscriptions-dl dd{color:var(--text-heading);margin:0}.admin-subscriptions-dl-wide{grid-column:1/-1}.admin-subscriptions-dl-wide code{word-break:break-all;font-size:.78rem}.admin-subscriptions-inactive{color:var(--text);margin-top:16px;font-size:.88rem}.admin-subscriptions-list--inactive .admin-subscriptions-card{opacity:.85}@media (width<=640px){.admin-subscriptions-dl{grid-template-columns:1fr}}.admin-kickoff{border-top:1px solid color-mix(in srgb, var(--text-heading) 10%, transparent);margin-top:32px;padding-top:28px}.admin-kickoff-form{margin-top:16px}.admin-kickoff-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;display:grid}.admin-kickoff-grid .admin-field--full{grid-column:1/-1}.admin-checkbox{color:var(--text);cursor:pointer;grid-column:1/-1;align-items:flex-start;gap:10px;font-size:.9rem;line-height:1.45;display:flex}.admin-checkbox input{flex-shrink:0;margin-top:3px}@media (width<=720px){.admin-kickoff-grid{grid-template-columns:1fr}}.admin-brief{border-top:1px solid color-mix(in srgb, var(--text-heading) 10%, transparent);margin-top:32px;padding-top:28px}.admin-brief-form{margin-top:16px}.admin-brief-materials{margin-bottom:20px}.admin-brief-materials-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.admin-brief-materials-title{color:var(--text-heading);font-size:.95rem;font-weight:700}.admin-brief-empty{color:var(--text-muted,#666);margin:0;font-size:.9rem}.admin-brief-materials-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.admin-brief-material-row{grid-template-columns:1fr minmax(160px,220px) minmax(120px,140px) auto;align-items:center;gap:10px 12px;display:grid}.admin-brief-material-blocks{grid-column:1/-1}@media (width<=900px){.admin-brief-material-row{grid-template-columns:1fr 1fr}.admin-brief-material-row .admin-brief-material-label{grid-column:1/-1}}@media (width<=720px){.admin-brief-material-row{grid-template-columns:1fr}}.admin-brief-client-file{color:var(--accent);grid-column:1/-1;font-size:.85rem;font-weight:600;text-decoration:none}.admin-brief-client-file:hover{text-decoration:underline}.admin-brief-client-textnote{white-space:pre-wrap;border-left:3px solid var(--accent);background:color-mix(in srgb, var(--accent) 6%, transparent);border-radius:0 8px 8px 0;grid-column:1/-1;margin:0 0 8px;padding:10px 12px;font-size:.85rem;line-height:1.45}.admin-breadcrumb{color:var(--accent);margin-bottom:14px;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-block}.admin-breadcrumb:hover{color:var(--accent-hover)}.admin-alert-success{border-radius:var(--radius-lg);color:#166534;background:#16653414;border:1px solid #16653433;margin:0 0 20px;padding:12px 16px;font-size:.92rem;font-weight:600}.admin-alert-error{border-radius:var(--radius-lg);color:#991b1b;background:#b91c1c14;border:1px solid #b91c1c38;margin:0 0 20px;padding:12px 16px;font-size:.92rem;font-weight:600}.admin-form{border-radius:var(--radius-xl);border:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);background:var(--bg-elevated);padding:26px 22px}.admin-form-grid{grid-template-columns:1fr 1fr;gap:18px 20px;display:grid}@media (width<=600px){.admin-form-grid{grid-template-columns:1fr}}.admin-field--full{grid-column:1/-1}.admin-label{color:var(--text-heading);margin-bottom:6px;font-size:.82rem;font-weight:600;display:block}.admin-label-req{color:var(--accent)}.admin-input,.admin-select,.admin-textarea{box-sizing:border-box;width:100%;color:var(--text-heading);background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);padding:11px 12px;font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}.admin-input:focus,.admin-select:focus,.admin-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .15);outline:none}.admin-input--error{border-color:#dc2626}.admin-textarea{resize:vertical;min-height:100px}.admin-field-error{color:#b91c1c;margin:6px 0 0;font-size:.82rem;font-weight:600}.admin-form-actions{border-top:1px solid var(--card-border);flex-wrap:wrap;align-items:center;gap:12px;margin-top:26px;padding-top:20px;display:flex}.admin-btn-primary{border-radius:var(--radius);cursor:pointer;color:#fff;background:linear-gradient(135deg, var(--gradient-start), var(--gradient-end));box-shadow:0 4px 14px rgba(var(--accent-rgb), .35);border:none;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-family:inherit;font-size:.95rem;font-weight:700;text-decoration:none;transition:filter .2s,transform .2s;display:inline-flex}.admin-btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.admin-btn-ghost{border-radius:var(--radius);color:var(--text-heading);border:1px solid color-mix(in srgb, var(--text-heading) 18%, transparent);background:0 0;align-items:center;padding:12px 18px;font-size:.92rem;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.admin-btn-ghost--sm{padding:6px 12px;font-size:.82rem}.admin-btn-ghost:hover{background:var(--surface);border-color:var(--accent);color:var(--accent)}.admin-clients-head{margin-bottom:24px}.admin-clients-toolbar{margin-top:18px}.admin-empty{text-align:center;border-radius:var(--radius-xl);border:var(--surface-elevated-border);max-width:480px;box-shadow:var(--surface-elevated-shadow);background:var(--bg-elevated);margin:32px auto 0;padding:36px 28px}.admin-empty-title{color:var(--text-heading);margin:0 0 10px;font-size:1.15rem;font-weight:700}.admin-empty-text{color:var(--text);margin:0 0 22px;font-size:.95rem;line-height:1.6}.admin-table-wrap{border-radius:var(--radius-xl);border:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);background:var(--bg-elevated);margin-top:8px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.92rem}.admin-table-caption{caption-side:top;text-align:left;color:var(--text);border-bottom:1px solid var(--card-border);padding:14px 18px 10px;font-size:.82rem;font-weight:700}.admin-table thead th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--text);border-bottom:1px solid var(--card-border);background:var(--surface);padding:12px 16px;font-size:.72rem;font-weight:700}.admin-table tbody td{color:var(--text-heading);border-bottom:1px solid var(--card-border);vertical-align:top;padding:14px 16px}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table-strong{font-weight:700}.admin-table-row-clickable{cursor:pointer;transition:background .15s}.admin-table-row-clickable:hover{background:rgba(var(--accent-rgb), .06)}.admin-table-row-clickable:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (width<=720px){.admin-table thead{display:none}.admin-table tbody tr{border-bottom:1px solid var(--card-border);padding:14px 0;display:block}.admin-table tbody tr:last-child{border-bottom:none}.admin-table tbody td{border:none;grid-template-columns:minmax(88px,34%) 1fr;gap:4px 12px;padding:8px 16px;display:grid}.admin-table tbody td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.04em;color:var(--text);font-size:.72rem;font-weight:700}}.admin-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.admin-links-head{margin-bottom:24px}.admin-links-badge{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);background:rgba(var(--accent-rgb), .12);border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-block}.admin-links-url-cell{max-width:min(320px,40vw)}.admin-links-url{color:var(--text);word-break:break-all;white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;display:block;overflow:hidden}.admin-links-actions-cell{white-space:nowrap}.admin-links-copy-btn,.admin-links-open-btn{margin-bottom:4px;margin-right:8px;padding:8px 14px;font-size:.82rem;display:inline-flex}.admin-links-section{margin-bottom:40px}.admin-links-section-title{color:var(--text-heading);margin:0 0 8px;font-size:1.15rem;font-weight:700}.admin-links-section-lead{color:var(--text);margin:0 0 18px;font-size:.92rem;line-height:1.6}.admin-links-stripe-form{margin-top:8px}.admin-links-stripe-list{flex-direction:column;gap:20px;margin:0 0 24px;padding:0;list-style:none;display:flex}.admin-links-stripe-card{border-radius:var(--radius-xl);border:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);background:var(--bg-elevated);padding:20px 18px}.admin-links-stripe-card-head{margin-bottom:16px}.admin-links-stripe-card-title{color:var(--text-heading);margin:0 0 4px;font-size:1rem;font-weight:700}.admin-links-stripe-card-meta{color:var(--text);margin:0;font-size:.82rem}.admin-links-stripe-card-meta code{background:var(--surface);border-radius:4px;padding:2px 6px;font-size:.85em}.admin-links-stripe-grid-wrap{overflow-x:auto}.admin-links-stripe-grid{border-collapse:collapse;width:100%;min-width:520px;font-size:.88rem}.admin-links-stripe-grid thead th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text);border-bottom:1px solid var(--card-border);padding:8px 10px;font-size:.72rem;font-weight:700}.admin-links-stripe-grid tbody th[scope=row]{text-align:left;color:var(--text-heading);white-space:nowrap;vertical-align:middle;padding:10px 12px 10px 0;font-weight:600}.admin-links-stripe-grid tbody td{vertical-align:middle;padding:8px 6px}.admin-links-stripe-input{width:100%;min-width:0;font-size:.82rem}.admin-links-stripe-warn{color:#b91c1c;text-transform:none;letter-spacing:normal;font-weight:600}.admin-links-stripe-save{flex-wrap:wrap;gap:12px;display:flex}.admin-links-stripe-periods{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.admin-links-stripe-period-row{grid-template-columns:minmax(100px,28%) 1fr;align-items:center;gap:10px 16px;display:grid}@media (width<=560px){.admin-links-stripe-period-row{grid-template-columns:1fr}}.onboarding-page{background:var(--bg);padding:clamp(48px,8vw,96px) 0 clamp(64px,10vw,120px)}.onboarding-inner{max-width:640px}.onboarding-placeholder{text-align:center;color:var(--text);margin:0}.onboarding-header{margin-bottom:32px}.onboarding-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 8px;font-size:.8rem;font-weight:700}.onboarding-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text-heading);margin:0 0 12px;font-size:clamp(1.75rem,4vw,2.35rem);font-weight:600}.onboarding-title-em{color:var(--accent)}.onboarding-lead{color:var(--text);margin:0;font-size:1rem;line-height:1.65}.onboarding-progress{margin-bottom:28px}.onboarding-progress-list{flex-wrap:wrap;gap:8px 12px;margin:0;padding:0;list-style:none;display:flex}.onboarding-progress-item{border-radius:var(--radius);color:var(--text);background:var(--surface);border:1px solid var(--card-border);align-items:center;gap:8px;padding:8px 12px;font-size:.82rem;font-weight:600;display:flex}.onboarding-progress-item.is-current{color:var(--accent);border-color:rgba(var(--accent-rgb), .35);background:rgba(var(--accent-rgb), .08)}.onboarding-progress-item.is-done{color:var(--text-heading)}.onboarding-progress-num{background:var(--surface-2);border-radius:50%;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;font-weight:700;display:inline-flex}.onboarding-progress-item.is-current .onboarding-progress-num{background:var(--accent);color:#fff}.onboarding-progress-item.is-done .onboarding-progress-num{background:rgba(var(--accent-rgb), .2);color:var(--accent)}.onboarding-card{border-radius:var(--radius-xl);border:var(--surface-elevated-border);box-shadow:var(--surface-elevated-shadow);background:var(--bg-elevated);padding:clamp(24px,4vw,36px)}.onboarding-step-title{color:var(--text-heading);margin:0 0 10px;font-size:1.25rem;font-weight:700}.onboarding-step-text{color:var(--text);margin:0 0 20px;font-size:.95rem;line-height:1.6}.onboarding-step-subtitle{letter-spacing:.04em;text-transform:uppercase;color:var(--text-heading);margin:24px 0 12px;font-size:.88rem;font-weight:700}.onboarding-step-subtitle:first-of-type{margin-top:0}.onboarding-payment-hint{color:var(--text);margin:16px 0 0;font-size:.85rem;line-height:1.5}.onboarding-plan-price{color:var(--text-heading);margin:0 0 12px;font-size:1.1rem}.onboarding-plan-ideal{color:var(--text);margin:0 0 16px;font-size:.9rem}.onboarding-features{color:var(--text-heading);margin:0 0 20px;padding-left:1.2rem;font-size:.92rem;line-height:1.65}.onboarding-setup-box{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--card-border);margin-top:20px;padding:16px 18px}.onboarding-setup-title{color:var(--text-heading);margin:0 0 6px;font-weight:700}.onboarding-setup-desc{color:var(--text);margin:0;font-size:.9rem;line-height:1.55}.onboarding-form .contact-form-row{margin-bottom:16px}.onboarding-form .contact-input--error{border-color:#dc2626}.onboarding-field-error{color:#dc2626;margin:.35rem 0 0;font-size:.875rem;line-height:1.4}.onboarding-period-toggle{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.onboarding-period-option{border-radius:var(--radius-lg);border:1px solid var(--card-border);cursor:pointer;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:14px 16px;transition:border-color .2s,background .2s;display:flex}.onboarding-period-option.is-active{border-color:rgba(var(--accent-rgb), .45);background:rgba(var(--accent-rgb), .08)}.onboarding-period-option input{accent-color:var(--accent)}.onboarding-period-label{color:var(--text-heading);font-weight:700}.onboarding-period-note{color:var(--accent);font-size:.85rem;font-weight:600}.onboarding-price-summary,.onboarding-setup-fee{color:var(--text-heading);margin:0;font-size:.95rem}.onboarding-price-footer{color:var(--text);font-size:.88rem}.onboarding-contract-box{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--card-border);margin-bottom:20px;padding:16px 18px}.onboarding-contract-meta,.onboarding-contract-months{color:var(--text-heading);margin:0 0 8px;font-size:.92rem;line-height:1.6}.onboarding-contract-months:last-child{margin-bottom:0}.onboarding-terms{color:var(--text-heading);cursor:pointer;align-items:flex-start;gap:12px;font-size:.9rem;line-height:1.55;display:flex}.onboarding-terms input{accent-color:var(--accent);margin-top:4px}.onboarding-prelim-wrap{border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--surface);max-height:min(52vh,520px);margin:0 0 20px;overflow:auto}.onboarding-prelim-wrap--step{max-height:min(62vh,640px)}.onboarding-contract-gate{border-radius:var(--radius);color:var(--text-heading);background:#eab3081f;border:1px solid #eab30859;margin:14px 0 0;padding:10px 14px;font-size:.88rem}.onboarding-nav .btn-primary:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.onboarding-prelim-contract{color:var(--text-heading);padding:20px 22px 24px;font-size:.88rem;line-height:1.65}.onboarding-prelim-contract-header{border-bottom:1px solid var(--card-border);margin-bottom:18px;padding-bottom:14px}.onboarding-prelim-contract-brand{letter-spacing:.02em;text-transform:uppercase;color:var(--text);margin:0 0 10px;font-size:.72rem}.onboarding-prelim-contract-title{margin:0 0 6px;font-size:1.15rem;font-weight:700}.onboarding-prelim-contract-sub,.onboarding-prelim-contract-doc-link{margin:10px 0 0;font-size:.85rem}.onboarding-prelim-contract-doc-link a{font-weight:600}.onboarding-prelim-contract-meta-line{color:var(--text);margin:0 0 4px;font-size:.84rem}.onboarding-prelim-contract-parties h4,.onboarding-prelim-contract-body h4,.onboarding-prelim-contract-clauses h4,.onboarding-prelim-contract-accept h4{margin:0 0 8px;font-size:.92rem;font-weight:700}.onboarding-prelim-contract-dl{margin:0 0 10px}.onboarding-prelim-contract-dl>div{border-bottom:1px solid var(--card-border);grid-template-columns:120px 1fr;gap:4px 12px;padding:6px 0;display:grid}.onboarding-prelim-contract-dl dt{text-transform:uppercase;color:var(--text);margin:0;font-size:.75rem;font-weight:700}.onboarding-prelim-contract-dl dd{margin:0}.onboarding-prelim-contract-note{color:var(--text);margin:0 0 16px;font-size:.82rem}.onboarding-prelim-contract-body section{margin-bottom:14px}.onboarding-prelim-contract-body p{margin:0 0 8px}.onboarding-prelim-contract-clauses{border-top:1px solid var(--card-border);margin:18px 0;padding-top:14px}.onboarding-prelim-contract-clauses-lead{margin:0 0 12px;font-size:.86rem}.onboarding-prelim-clause-list{margin:0;padding:0;list-style:none}.onboarding-prelim-clause-list li+li{margin-top:10px}.onboarding-prelim-clause{border-radius:var(--radius);border:1px solid var(--card-border);background:#7c3aed0f;padding:10px 12px}.onboarding-prelim-contract-accept{border-top:1px solid var(--card-border);margin-top:16px;padding-top:14px}.onboarding-prelim-contract-signatures{margin:12px 0 16px}.onboarding-prelim-contract-signatures>div{grid-template-columns:100px 1fr;gap:4px 12px;padding:6px 0;display:grid}.onboarding-prelim-contract-signatures dt{text-transform:uppercase;color:var(--text);margin:0;font-size:.75rem;font-weight:700}.onboarding-prelim-contract-signatures dd{margin:0}.onboarding-prelim-main-accept{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--accent);padding:12px 14px}.onboarding-summary{margin:0 0 20px}.onboarding-summary>div{border-bottom:1px solid var(--card-border);grid-template-columns:minmax(100px,34%) 1fr;gap:4px 16px;padding:10px 0;display:grid}.onboarding-summary dt{text-transform:uppercase;letter-spacing:.04em;color:var(--text);margin:0;font-size:.78rem;font-weight:700}.onboarding-summary dd{color:var(--text-heading);margin:0;font-size:.95rem}.onboarding-payment-note{border-radius:var(--radius);color:var(--text);background:var(--surface);border:1px dashed var(--card-border);margin:0 0 20px;padding:12px 14px;font-size:.88rem;line-height:1.55}.onboarding-submit{width:100%}.onboarding-nav{border-top:1px solid var(--card-border);justify-content:space-between;align-items:center;gap:16px;margin-top:28px;padding-top:24px;display:flex}.onboarding-back{flex-shrink:0}.onboarding-success{text-align:center}.onboarding-success .onboarding-step-title{margin-bottom:12px}.onboarding-success .btn{margin-top:8px}.onboarding-payment-status{text-align:center;padding:8px 0 4px}.onboarding-payment-spinner{border:3px solid var(--card-border);border-top-color:var(--accent);border-radius:50%;width:48px;height:48px;margin:0 auto 20px;animation:.85s linear infinite onboarding-spin}@keyframes onboarding-spin{to{transform:rotate(360deg)}}.onboarding-payment-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px;display:flex}.onboarding-popup-blocked{border-radius:var(--radius);text-align:center;color:#92400e;background:#f59e0b1f;border:1px solid #f59e0b59;margin:0 0 16px;padding:12px 14px;font-size:.9rem;line-height:1.55}.onboarding-payment-actions .btn-primary{text-decoration:none}.onboarding-payment-home-link{margin-top:12px;margin-left:8px;display:inline-flex}@media (width<=480px){.onboarding-payment-actions{flex-direction:column;align-items:stretch}.onboarding-payment-home-link{margin-left:0}}@media (prefers-reduced-motion:reduce){.onboarding-payment-spinner{border-top-color:var(--accent);opacity:.85;animation:none}.portal-sidebar:before,.portal-sidebar:after,.portal-sidebar-brand,.portal-nav-link,.portal-nav-link--active .portal-nav-link-icon{animation:none}.portal-nav-link:hover,.portal-nav-link:focus-visible,.portal-nav-link--active,.portal-sidebar-logo:hover{transform:none}.portal-page-body--project-animated .portal-page-header--charcoal,.portal-page-body--project-animated .portal-page-header--charcoal .portal-page-lead,.portal-page-body--project-animated .portal-project-block,.portal-page-body--project-animated .portal-project-intro,.portal-page-body--project-animated .portal-timeline-step,.portal-page-body--project-animated .portal-timeline-step--current .portal-timeline-dot,.portal-page-body--project-animated .portal-checklist-item,.portal-page-body--project-animated .portal-feed-list--full li,.portal-page-body--project-animated .portal-invoice-list--billing>li,.portal-page-body--project-animated .portal-mod-request-list>li,.portal-page-body--project-animated .portal-mod-selected-strip,.portal-page-body--project-animated .portal-phase-current,.portal-page-body--project-animated .portal-phase-current-dot,.portal-phase-card:hover{animation:none;transform:none}.portal-page-body--project-animated .portal-timeline-step:hover,.portal-page-body--project-animated .portal-checklist-item:hover,.portal-page-body--project-animated .portal-project-cta:hover,.portal-page-body--project-animated .portal-mod-project-card:hover,.portal-page-body--project-animated .portal-mod-request-list>li:hover .portal-mod-request-card,.portal-page-body--project-animated .portal-mod-history-filter:hover,.portal-page-body--project-animated .portal-mod-submit-btn:not(:disabled):hover{transform:none}.portal-page-body--dashboard-ready .portal-dash-hero,.portal-page-body--dashboard-ready .portal-dash-stat,.portal-page-body--dashboard-ready .portal-dash-section,.portal-page-body--dashboard-ready .portal-dash-card,.portal-page-body--dashboard-ready .portal-dash-block,.portal-page-body--dashboard-ready .portal-dash-open-item,.portal-page-body--dashboard-ready .portal-dash-widgets .portal-dash-widget,.portal-page-body--dashboard-ready .portal-dash-feed,.portal-page-body--dashboard-ready .portal-dash-stat-value,.portal-dash-orb--a,.portal-dash-orb--b{animation:none}.portal-dash-stat:hover,.portal-dash-card:hover,.portal-dash-open-item:hover,.portal-dash-widget:hover{transform:none}}
