:root{--bg: #eeeff1;--surface: #ffffff;--panel: #dfe1e6;--line: #d2d7de;--text: #2f3848;--muted: #555f70;--accent: #97193c;--accent-press: #7d1632;--container: 1420px;font-family:Lato,Noto Sans SC,Segoe UI,sans-serif;color:var(--text);line-height:1.45;font-weight:400}*,*:before,*:after{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}body{background:radial-gradient(circle at 10% 0%,#f4f6f9 0%,transparent 30%),radial-gradient(circle at 95% 10%,#f7f2f4 0%,transparent 35%),var(--bg)}a{color:inherit;text-decoration:none}.page{min-height:100vh}.container{width:min(var(--container),100% - 48px);margin-inline:auto}.site-header{background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 2px 8px #141c2d14}.header-inner{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr);align-items:center;gap:24px;min-height:134px}.brand{font-size:clamp(1.25rem,1.8vw,2rem);font-weight:500}.brand-link{color:inherit}.tagline{margin:0;justify-self:center;color:var(--muted);font-size:clamp(1.15rem,1.3vw,2rem);letter-spacing:.01em;white-space:nowrap}.tagline strong{color:#101723}.login-button{display:inline-flex;align-items:center;justify-content:center;justify-self:end;text-decoration:none;white-space:nowrap;border:0;border-radius:7px;background:var(--accent);color:#fff;font-size:clamp(1.05rem,1.15vw,1.85rem);font-weight:700;padding:14px 28px;cursor:pointer;transition:background-color .2s ease,transform .2s ease}.login-button:hover{background:var(--accent-press);transform:translateY(-1px)}.header-auth-actions{justify-self:end;display:flex;align-items:center;flex-wrap:wrap;gap:10px;justify-content:flex-end}.logout-button{min-height:48px;border-radius:7px;border:1px solid #c9ced8;background:#f7f8fb;color:#3e4758;font-weight:700;padding:0 14px;cursor:pointer;transition:border-color .2s ease,color .2s ease,background-color .2s ease}.logout-button:hover{border-color:#97193c59;color:var(--accent);background:#fff}.search-strip{position:relative;background:linear-gradient(180deg,#eef1f6,#eceff4);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0 28px}.search-strip:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(560px 120px at 18% 0%,rgba(255,255,255,.7),transparent 70%),radial-gradient(420px 120px at 84% 0%,rgba(151,25,60,.08),transparent 76%)}.search-shell{position:relative;overflow:hidden;border:1px solid #d8dde5;border-radius:18px;padding:16px;background:linear-gradient(130deg,#fff,#fafbfd 62%,#f6f8fb);box-shadow:0 14px 28px #19212e14,0 2px 6px #19212e0f;animation:shell-float 7s ease-in-out infinite}.search-shell:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;pointer-events:none;border-radius:inherit;background:linear-gradient(120deg,transparent 30%,rgba(151,25,60,.07),transparent 70%);transform:translate(-135%);animation:sheen 3.6s ease-in-out infinite}.search-grid{display:grid;grid-template-columns:minmax(160px,1.1fr) minmax(160px,1.1fr) minmax(220px,1.8fr) minmax(240px,2.2fr) minmax(140px,.9fr);gap:14px;align-items:end}.search-grid>*{opacity:0;transform:translateY(10px);animation:item-rise .55s cubic-bezier(.2,.7,.2,1) forwards}.search-grid>*:nth-child(1){animation-delay:.08s}.search-grid>*:nth-child(2){animation-delay:.14s}.search-grid>*:nth-child(3){animation-delay:.2s}.search-grid>*:nth-child(4){animation-delay:.26s}.search-grid>*:nth-child(5){animation-delay:.32s}.search-field{display:flex;flex-direction:column;gap:8px;min-width:0}.field-label{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#626e81;font-weight:700;padding-left:2px}.control{width:100%;height:56px;border:1px solid #c5ccd7;border-radius:12px;font-size:clamp(1rem,1.05vw,1.2rem);color:#2f3848;padding:0 15px;background:#fff;box-shadow:inset 0 1px #ffffffd9;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.control::placeholder{color:#9aa4b3}.search-field select.control{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='m1 1 5 5 5-5' stroke='%23626E81' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:12px 8px}.control:focus{outline:none;border-color:#9a2343;box-shadow:0 0 0 3px #9a234329,inset 0 1px #ffffffd9}.search-action{display:flex;align-items:flex-end}.search-button{width:100%;min-height:56px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;background:var(--accent);color:#fff;font-size:clamp(1rem,1.05vw,1.1rem);font-weight:700;letter-spacing:.02em;cursor:pointer;box-shadow:0 8px 20px #97193c52;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}.search-button-icon{font-size:1.2rem;line-height:1}.search-button:hover{background:var(--accent-press);box-shadow:0 12px 26px #7d16325c;transform:translateY(-2px)}.search-button:active{transform:translateY(0)}.search-button:focus-visible{outline:3px solid rgba(151,25,60,.28);outline-offset:2px}.main-content{padding-block:56px 42px}.section{margin-bottom:62px}.section-title{margin:0 0 24px;font-size:clamp(2rem,3vw,3.35rem);font-weight:500;letter-spacing:.01em}.second-title{font-size:clamp(1.9rem,2.4vw,3rem)}.region-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.region-stack{display:grid;gap:8px;align-content:start}.region-card{background:transparent;overflow:hidden;transition:transform .24s ease,filter .24s ease}.region-card:hover{transform:translateY(-2px);filter:drop-shadow(0 8px 14px rgba(35,41,52,.07))}.region-heading{margin:0;background:var(--panel);padding:14px 20px;font-size:clamp(1.55rem,2vw,2.2rem);font-weight:500}.region-heading--toggle{padding:0}.region-toggle{width:100%;border:0;background:transparent;color:inherit;font:inherit;text-align:left;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;min-height:76px;cursor:pointer;transition:background-color .2s ease}.region-toggle:hover{background:#fff6}.region-toggle:focus-visible{outline:3px solid rgba(151,25,60,.2);outline-offset:-3px}.region-indicator{color:#6d7686;font-size:1.25rem;font-weight:700;line-height:1;transition:transform .24s ease,color .24s ease}.region-card.expanded .region-heading{box-shadow:inset 0 -1px #d2d7dee6}.region-card.expanded .region-indicator{color:var(--accent);transform:scale(1.16)}.accordion-panel{display:grid;grid-template-rows:1fr;background:#fff;border:1px solid #e9edf3;border-top:0}.accordion-panel>*{overflow:hidden}.accordion-enter-from,.accordion-leave-to{grid-template-rows:0fr;opacity:0;transform:translateY(-8px)}.accordion-enter-to,.accordion-leave-from{grid-template-rows:1fr;opacity:1;transform:translateY(0)}.accordion-enter-active,.accordion-leave-active{transition:grid-template-rows .28s ease,opacity .2s ease,transform .28s ease}.links-two-columns{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:8px 16px;padding:18px 14px 12px 20px}.plain-list{margin:0;padding:0;list-style:none}.link-list li,.article-list li{margin-bottom:10px}.link-list a,.article-list a,.post-list a,.city-list a,.article-side-list a,.article-crumb a{color:var(--accent);transition:color .2s ease}.link-list a:hover,.article-list a:hover,.post-list a:hover,.city-list a:hover,.footer-links a:hover{color:var(--accent-press)}.cities-header{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.cities-showcase{position:relative;overflow:hidden;border:1px solid #d8dee8;border-radius:20px;padding:24px 24px 20px;background:linear-gradient(160deg,#fffffffa,#f7fafff2),radial-gradient(460px 140px at 92% 4%,rgba(151,25,60,.08),transparent 72%);box-shadow:0 14px 30px #181f2c17,0 2px 6px #181f2c0d}.cities-showcase:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(220px 90px at 8% 12%,rgba(255,255,255,.8),transparent 70%),linear-gradient(90deg,transparent,rgba(151,25,60,.04),transparent)}.cities-header .section-title{margin:0}.chip{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;border:1px solid #e2c8d0;background:linear-gradient(120deg,#fff,#fff6f8);color:#6c1d37;font-size:clamp(.92rem,1vw,1rem);font-weight:700;letter-spacing:.03em;text-transform:uppercase;box-shadow:0 4px 10px #97193c1f}.cities-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:14px;margin-top:20px}.city-list{margin:0;padding:14px 14px 10px;list-style:none;border:1px solid #dde4ee;border-radius:14px;background:linear-gradient(170deg,#fff,#f8fafd);box-shadow:0 8px 18px #1c23300f;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.city-list:hover{transform:translateY(-2px);border-color:#97193c59;box-shadow:0 14px 24px #97193c1f}.city-list li{margin:0 0 6px}.city-list li:before{content:"•";color:#901b3c;margin-right:8px;font-size:1rem}.city-list a{display:inline-block;color:var(--accent);font-size:clamp(1.08rem,1.2vw,1.45rem);font-weight:600;letter-spacing:.01em;transition:transform .2s ease,color .2s ease}.city-list a:hover{transform:translate(3px)}.providers{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:46px 48px}.tabs{display:inline-flex;overflow:hidden;margin-bottom:28px}.tab{border:0;background:#e5e7eb;color:#3b4250;text-transform:uppercase;font-size:1.98rem;font-weight:700;padding:14px 24px;cursor:pointer}.tab.active{background:var(--accent);color:#fff}.provider-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px}.sub-title{margin:0 0 20px;font-size:clamp(1.9rem,2.2vw,2.7rem);font-weight:500}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:12px}.photo-grid.photo-grid--single{grid-template-columns:minmax(220px,360px);justify-content:start}.photo-card{position:relative;display:block;aspect-ratio:3 / 4;overflow:hidden;border:1px solid #dbe2ec;border-radius:12px;background:linear-gradient(160deg,#f6f8fc,#e9edf4);color:#2f3848;text-decoration:none;box-shadow:0 6px 16px #19212e14;transition:transform .25s ease,box-shadow .25s ease}.photo-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #1a202a2b}.photo-card--single{width:min(100%,360px);max-height:480px}.photo-card-image{width:100%;height:100%;object-fit:cover;display:block}.photo-card-placeholder{width:100%;height:100%;display:grid;place-items:center;color:#5d6779;font-weight:700;font-size:.98rem;text-transform:uppercase;letter-spacing:.06em}.photo-card-overlay{position:absolute;inset:auto 0 0 0;padding:10px 10px 9px;display:grid;gap:2px;background:linear-gradient(180deg,#0d152200,#0d1522d4)}.photo-card-name{margin:0;color:#fff;font-size:1rem;font-weight:700;line-height:1.25}.photo-card-meta{margin:0;color:#ffffffe0;font-size:.84rem;line-height:1.2}.post-list{margin:0;padding:0;list-style:none;display:grid;gap:12px}.post-list li{margin:0}.post-list a,.featured-provider-post a{display:grid;gap:4px;padding:12px 14px;border:1px solid #ead5dc;border-radius:12px;background:#ffffffe6;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.post-list a:hover,.featured-provider-post a:hover{border-color:#97193c73;transform:translateY(-1px);box-shadow:0 8px 14px #97193c21}.post-title{color:#7d1b3a;font-size:clamp(1.02rem,1.16vw,1.22rem);font-weight:700;line-height:1.35}.post-meta{color:#3f4a5c;font-size:.9rem;font-weight:700}.post-desc{color:#4e596c;font-size:.94rem;line-height:1.5}.articles{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:44px 34px}.article-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.article-list{font-size:clamp(1.08rem,1.4vw,1.9rem)}.article-hero{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(180deg,#ffffffb3,#f0f3f8e6),radial-gradient(420px 130px at 84% 10%,rgba(151,25,60,.12),transparent 70%)}.article-hero-inner{padding:18px 0;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.article-crumb{margin:0;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;color:#6b7280;font-size:.95rem}.article-crumb strong{color:#202838}.article-back-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid #cfb2bc;background:#fffffff2;color:var(--accent);font-weight:700;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.article-back-link:hover{border-color:#97193c80;transform:translateY(-1px);box-shadow:0 8px 14px #97193c26}.article-page-wrap{padding-block:30px 52px}.article-layout{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(260px,.85fr);gap:26px;align-items:start}.article-card{border:1px solid #dbe0e8;border-radius:18px;padding:30px 30px 26px;background:linear-gradient(145deg,#fffffffa,#f7f9fdfa);box-shadow:0 14px 28px #151d2b14,0 2px 5px #151d2b0d}.article-kicker{margin:0;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:#8a1f3d;font-weight:700}.article-title{margin:10px 0 0;font-size:clamp(1.7rem,2.45vw,2.6rem);line-height:1.2;color:#1c2432}.article-meta{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px}.article-meta span{border:1px solid #e3e7ee;border-radius:999px;padding:6px 11px;background:#f5f7fb;color:#586174;font-size:.84rem}.article-lead{margin:16px 0 0;color:#495265;font-size:1.08rem;line-height:1.7}.article-body{margin-top:20px;display:grid;gap:20px}.article-section h2{margin:0;font-size:clamp(1.2rem,1.5vw,1.5rem);color:#212938}.article-section p{margin:12px 0 0;color:#4a5568;line-height:1.75}.article-bullets{margin:12px 0 0;padding-left:1.2rem}.article-bullets li{margin:0 0 8px;color:#4a5568}.article-aside{position:sticky;top:16px;border:1px solid #dbe0e8;border-radius:16px;padding:20px 18px;background:linear-gradient(160deg,#fffffffa,#f8fafef7);box-shadow:0 10px 20px #151d2b12}.article-aside-title{margin:0;font-size:1.05rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280}.article-side-list{margin-top:14px}.article-side-list li{margin-bottom:10px}.article-side-list a{display:block;border:1px solid #e8d7de;border-radius:12px;padding:10px 12px;background:#fffffff5;line-height:1.45;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease,color .2s ease}.article-side-list a:hover{border-color:#97193c80;color:var(--accent-press);transform:translateY(-1px);box-shadow:0 7px 14px #97193c24}.article-not-found{max-width:760px;margin:0 auto;border:1px solid #dbe0e8;border-radius:18px;padding:30px 26px;text-align:center;background:linear-gradient(145deg,#fffffffa,#f7f9fdfa)}.article-not-found h1{margin:0;color:#202838}.article-not-found p{margin:10px 0 18px;color:#5c6576}.provider-search-page{padding-block:28px 52px}.provider-search-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:12px}.provider-search-title{margin-bottom:0}.provider-search-summary{margin:0;color:#5f697b;font-size:clamp(.98rem,1.1vw,1.2rem)}.provider-grid-list{margin-top:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.provider-search-card{border:1px solid #dbe0e8;border-radius:16px;overflow:hidden;background:linear-gradient(140deg,#fffffffa,#f7f9fdfa);box-shadow:0 10px 20px #151d2b12,0 1px 3px #151d2b0d;transition:transform .22s ease,box-shadow .22s ease}.provider-search-card:hover{transform:translateY(-2px);box-shadow:0 14px 26px #151d2b1a,0 1px 3px #151d2b0f}.provider-photo-box{height:240px;background:#dce0e7}.provider-photo-box img{width:100%;height:100%;object-fit:cover}.provider-photo-placeholder{width:100%;height:100%;display:grid;place-items:center;color:#5f697b;font-weight:700}.provider-photo-placeholder--large{min-height:320px}.provider-search-content{padding:16px 16px 14px}.provider-search-name{margin:0;font-size:clamp(1.24rem,1.35vw,1.5rem);color:#1f2735}.provider-search-location{margin:6px 0 0;color:#596273}.provider-search-category{margin:8px 0 0;color:var(--accent);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.82rem}.provider-search-description{margin:10px 0 0;color:#4b5568;line-height:1.6;min-height:52px}.provider-search-actions{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.provider-search-contact{font-weight:700;color:#3f4859}.provider-detail-link{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border-radius:999px;border:1px solid #d4b8c2;color:var(--accent);background:#fffffff2;font-weight:700;text-decoration:none;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.provider-detail-link:hover{border-color:#97193c8c;transform:translateY(-1px);box-shadow:0 7px 12px #97193c26}.provider-detail-link--inline{margin-top:8px}.provider-empty-card{margin-top:8px;border:1px solid #dbe0e8;border-radius:14px;background:linear-gradient(140deg,#fffffffa,#f7f9fdfa);padding:18px 16px;color:#5f697b}.provider-empty-card--error{border-color:#e7c3cf;color:#8d1f3f}.provider-detail-page{padding-block:26px 52px}.provider-detail-card{border:1px solid #dbe0e8;border-radius:18px;padding:26px;background:linear-gradient(145deg,#fffffffa,#f7f9fdfa);box-shadow:0 14px 28px #151d2b14,0 2px 5px #151d2b0d}.provider-detail-kicker{margin:0;color:#8a1f3d;text-transform:uppercase;letter-spacing:.1em;font-weight:700;font-size:.82rem}.provider-detail-title{margin:10px 0 0;font-size:clamp(1.8rem,2.2vw,2.45rem);color:#1e2634}.provider-detail-location{margin:8px 0 0;color:#5d6678}.provider-detail-layout{margin-top:18px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:22px;align-items:start}.provider-gallery{display:grid;gap:12px}.provider-gallery-main-frame{width:100%;height:420px;overflow:hidden;border-radius:14px;border:1px solid #e0e5ed;background:#dce0e7}.provider-gallery-main{display:block;width:100%;height:100%;object-fit:cover}.provider-gallery-grid{display:flex;flex-wrap:wrap;gap:10px}.provider-gallery-thumb{width:110px;height:110px;flex:0 0 110px;border:0;padding:0;margin:0;background:transparent;border-radius:10px;overflow:hidden;cursor:pointer;transition:transform .2s ease}.provider-gallery-thumb:hover{transform:translateY(-1px)}.provider-gallery-thumb:focus-visible{outline:3px solid rgba(151,25,60,.28);outline-offset:2px}.provider-gallery-thumb.active{box-shadow:0 0 0 2px #97193c73}.provider-gallery-thumb img{display:block;width:100%;height:100%;object-fit:cover;border:1px solid #e0e5ed;border-radius:10px;opacity:.86;transition:opacity .2s ease,filter .2s ease}.provider-gallery-thumb:hover img,.provider-gallery-thumb.active img{opacity:1;filter:saturate(1.05)}.provider-gallery-thumb.active img{border-color:#97193c75}.provider-gallery-main-frame .provider-photo-placeholder--large{min-height:100%;height:100%}.provider-detail-content{display:grid;gap:10px}.provider-detail-content h2,.provider-detail-content h3{margin:0;color:#202838}.provider-detail-content p{margin:0;color:#4d586a;line-height:1.7}.provider-detail-contact{font-weight:700}.auth-page{padding-block:34px 56px}.auth-card{margin:0 auto;width:min(620px,100%);border:1px solid #dbe0e8;border-radius:18px;padding:26px;background:linear-gradient(145deg,#fffffffa,#f7f9fdfa);box-shadow:0 14px 28px #151d2b14,0 2px 5px #151d2b0d}.auth-title{margin:0;color:#1e2634}.auth-subtitle{margin:10px 0 0;color:#5b6576;line-height:1.6}.auth-tabs{margin-top:16px;display:inline-flex;border-radius:10px;overflow:hidden}.auth-tab{border:0;min-height:40px;padding:0 18px;background:#e5e7eb;color:#3f4758;font-weight:700;cursor:pointer}.auth-tab.active{background:var(--accent);color:#fff}.auth-form-grid{margin-top:18px;display:grid;gap:12px}.auth-field{display:grid;gap:7px}.auth-field span{color:#5f697b;font-size:.92rem;font-weight:700}.auth-error{margin:0;color:#9e2045;font-weight:700}.auth-submit-button{min-height:48px;border:0;border-radius:10px;background:var(--accent);color:#fff;font-weight:700;cursor:pointer;transition:background-color .2s ease,transform .2s ease}.auth-submit-button:hover{background:var(--accent-press);transform:translateY(-1px)}.auth-submit-button:disabled{opacity:.7;cursor:not-allowed}.dashboard-page{padding-block:34px 56px}.dashboard-card{border:1px solid #dbe0e8;border-radius:18px;padding:26px;background:linear-gradient(145deg,#fffffffa,#f7f9fdfa);box-shadow:0 14px 28px #151d2b14,0 2px 5px #151d2b0d}.dashboard-title{margin:0;color:#1f2735}.dashboard-subtitle{margin:10px 0 0;color:#5b6576}.dashboard-info,.dashboard-success,.dashboard-error{margin:12px 0 0;font-weight:700}.dashboard-info{color:#5f697b}.dashboard-success{color:#0f6b43}.dashboard-error{color:#9e2045}.dashboard-form-grid{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dashboard-profile-view{margin-top:18px;display:grid;gap:16px}.dashboard-profile-head{display:grid;gap:4px}.dashboard-profile-name{margin:0;color:#1f2735;font-size:clamp(1.5rem,2.2vw,2rem)}.dashboard-profile-location{margin:0;color:#667185;font-size:1.02rem}.dashboard-view-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dashboard-view-card{margin:0;border:1px solid #dce2eb;border-radius:12px;background:linear-gradient(155deg,#fff,#f8fafd);padding:14px 14px 12px}.dashboard-view-card h3{margin:0;color:#606a7d;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase}.dashboard-view-card p{margin:8px 0 0;color:#2f3848;white-space:pre-wrap}.dashboard-view-card--full{grid-column:1 / -1}.dashboard-field{display:grid;gap:7px}.dashboard-field span{color:#5f697b;font-size:.92rem;font-weight:700}.dashboard-field--full{grid-column:1 / -1}.dashboard-field-hint{margin:0;color:#6b7280;font-size:.88rem}.dashboard-upload-panel{border:1px solid #d8dee8;border-radius:14px;padding:14px;background:linear-gradient(170deg,#fcfdff,#f5f8fc);display:grid;gap:12px}.dashboard-upload-drop{position:relative;overflow:hidden;border:1px dashed #b8c1cf;border-radius:12px;padding:18px 16px;background:#fff;display:grid;gap:5px;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,transform .2s ease}.dashboard-upload-drop:hover{border-color:#97193c73;background:#fff9fb;transform:translateY(-1px)}.dashboard-file-input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.dashboard-upload-kicker{color:#7a8394;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.dashboard-upload-title{color:#202d40;font-size:1.04rem;line-height:1.3}.dashboard-upload-subtitle{color:#697386;font-size:.9rem}.dashboard-upload-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.dashboard-file-list{margin:2px 0 0;padding-left:1.2rem;color:#3e4758}.dashboard-file-list li{margin-bottom:4px;font-size:.93rem}.dashboard-clear-button{width:fit-content;min-height:34px;border:1px solid #d6dce6;border-radius:8px;background:#fff;color:#495365;font-weight:700;padding:0 12px;cursor:pointer;transition:border-color .2s ease,color .2s ease,transform .2s ease}.dashboard-clear-button:hover{border-color:#97193c59;color:var(--accent);transform:translateY(-1px)}.dashboard-photo-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.dashboard-photo-preview-item{margin:0;border:1px solid #dbe0e8;border-radius:12px;overflow:hidden;background:#fff;display:grid;grid-template-rows:150px auto auto;box-shadow:0 4px 12px #19212e0f}.dashboard-photo-preview-item img{display:block;width:100%;height:100%;object-fit:cover}.dashboard-photo-caption{margin:0;padding:8px 10px;color:#626d80;font-size:.8rem;line-height:1.25;border-top:1px solid #e8edf4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-photo-remove{width:100%;min-height:34px;border:0;border-top:1px solid #e5e9ef;background:#fafbfc;color:#4a5466;font-weight:700;cursor:pointer;transition:color .2s ease,background-color .2s ease}.dashboard-photo-remove:hover{color:var(--accent);background:#fff6f8}.dashboard-textarea{width:100%;border:1px solid #c5ccd7;border-radius:12px;padding:12px 14px;font-family:inherit;font-size:1rem;color:#2f3848;background:#fff;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease}.dashboard-textarea:focus{outline:none;border-color:#9a2343;box-shadow:0 0 0 3px #9a234329}.dashboard-actions{grid-column:1 / -1;margin-top:4px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dashboard-submit-button{min-height:46px;padding:0 16px;border:0;border-radius:10px;background:var(--accent);color:#fff;font-weight:700;cursor:pointer;transition:background-color .2s ease,transform .2s ease}.dashboard-submit-button:hover{background:var(--accent-press);transform:translateY(-1px)}.dashboard-submit-button:disabled{opacity:.7;cursor:not-allowed}.task-hall-page{padding-block:34px 56px;display:grid;gap:18px}.task-hall-hero{display:grid;gap:18px}.task-hall-tabs{display:flex;flex-wrap:wrap;gap:10px}.employee-daily-reminder{display:grid;gap:10px;margin-top:16px;padding:16px 18px;border:1px solid #dce2eb;border-radius:16px;background:linear-gradient(155deg,#fff,#f8fafd)}.employee-daily-reminder__header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.employee-daily-reminder__header h2,.employee-daily-reminder__header p,.employee-daily-reminder__note,.employee-daily-reminder__error{margin:0}.employee-daily-reminder__header h2{color:#1f2735;font-size:1.02rem}.employee-daily-reminder__header p,.employee-daily-reminder__note{color:#5b6576;line-height:1.6}.employee-daily-reminder__stats{display:flex;flex-wrap:wrap;gap:10px}.employee-daily-reminder__stats span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;background:#eef1f6;color:#394355;font-size:.82rem;font-weight:700}.employee-daily-reminder__error{color:#9e2045;font-weight:700}.task-hall-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.task-hall-header .dashboard-clear-button,.task-hall-header .dashboard-submit-button,.task-hall-actions .dashboard-clear-button,.task-hall-actions .dashboard-submit-button{min-height:46px;padding:0 16px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;line-height:1;white-space:nowrap}.task-hall-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.85fr);gap:18px;align-items:start}.task-hall-home-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.95fr);gap:18px}.task-hall-panel{display:grid;gap:14px}.task-hall-filter{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:center}.task-hall-filter .dashboard-clear-button{min-height:44px;border-radius:10px;white-space:nowrap}.task-hall-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.task-hall-quick-card{display:grid;gap:10px;border:1px solid #dce2eb;border-radius:14px;padding:14px;background:#fbfcff}.task-hall-quick-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.task-hall-quick-head h3{margin:0;font-size:1rem;color:#1f2735}.task-hall-mini-list{display:grid;gap:10px}.task-hall-mini-item{display:grid;gap:4px;padding:10px 12px;border-radius:12px;background:#f4f7fb;border:1px solid #e2e8f1}.task-hall-mini-item strong,.task-hall-mini-item p{margin:0}.task-hall-mini-item p{color:#5b6576;line-height:1.5}.task-hall-mini-item--card{border:1px solid #dce2eb;background:#fbfcff;padding:14px}.task-hall-attendance{display:grid;gap:10px}.attendance-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.attendance-calendar-weekday{text-align:center;font-size:.82rem;color:#677389;font-weight:700}.attendance-day{min-height:72px;border:1px solid #dce2eb;border-radius:12px;background:#f8fafc;display:grid;align-content:center;justify-items:center;gap:4px;padding:8px 4px;color:#394355}.attendance-day strong,.attendance-day span{margin:0}.attendance-day span{font-size:.76rem}.attendance-day--today{border-color:#8e2341}.attendance-day--selected{box-shadow:0 0 0 2px #8e234129}.attendance-day--present{background:#f8fafc}.attendance-day--rest_pending{background:#f2b52833}.attendance-day--unmarked{background:#fff;color:#677389}.attendance-day--absent{background:#9e20451f;color:#8b1e42}.attendance-day--rest{background:#f2b52824}.attendance-day--swap_rest{background:#4977c924}.attendance-day--swap_rest_pending{background:#4977c938}.attendance-day--empty{border-style:dashed;background:transparent}.task-hall-calendar-panel{display:grid;gap:10px;border:1px solid #dce2eb;border-radius:14px;padding:14px;background:#fbfcff}.task-hall-standard-copy,.task-hall-standard-subcopy{margin:0}.task-hall-metrics{margin-top:0}.task-hall-section-title{margin:0 0 16px;color:#1f2735}.task-card-list{display:grid;gap:14px}.task-card{display:grid;gap:12px;border:1px solid #dce2eb;border-radius:16px;padding:18px;background:linear-gradient(155deg,#fff,#f8fafd);box-shadow:0 6px 16px #19212e0f}.task-card.task-card--clickable{cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.task-card.task-card--clickable:hover{transform:translateY(-2px);border-color:#c6d2e6;box-shadow:0 14px 30px #19212e1a}.task-card.task-card--clickable:focus-within{border-color:#8e2341;box-shadow:0 0 0 3px #8e23411f,0 14px 30px #19212e1a}.task-card.task-card--clickable .dashboard-submit-button,.task-card.task-card--clickable .dashboard-clear-button{pointer-events:auto}.task-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.task-card-meta{display:grid;gap:4px}.task-card-meta h3,.task-card p{margin:0}.task-card-subtitle{color:#5b6576;line-height:1.6}.task-card-status,.task-hall-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.task-pill{display:inline-flex;align-items:center;min-height:30px;border-radius:999px;padding:0 12px;background:#eef1f6;color:#394355;font-size:.8rem;font-weight:700;letter-spacing:.02em}.task-pill--urgent{background:#97193c1f;color:var(--accent)}.task-hall-form{display:grid;gap:12px}.backup-link-table{display:grid;gap:10px}.backup-link-table--sheet{gap:12px}.backup-link-table__header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.table-wrap{overflow:auto;border:1px solid #dbe0e8;border-radius:12px;background:#fff}.table-wrap table{width:100%;min-width:620px;border-collapse:collapse}.table-wrap th,.table-wrap td{padding:10px;border-bottom:1px solid #edf1f6;text-align:left;vertical-align:top}.table-wrap th{color:#556071;font-size:.84rem;text-transform:uppercase;letter-spacing:.06em}.table-wrap tbody tr:last-child td{border-bottom:0}.backup-link-table__input{min-width:180px;height:44px}.backup-link-table__actions{white-space:nowrap}.backup-sheet-stack{display:grid;gap:16px}.backup-sheet-card{display:grid;gap:14px;border:1px solid #dce2eb;border-radius:8px;padding:16px;background:#fff;box-shadow:0 8px 20px #19212e0f}.backup-sheet-card__header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}.backup-sheet-card__title{display:grid;gap:4px}.backup-sheet-card__title h3{margin:0;color:#1f2735;font-size:1.05rem}.backup-sheet-card__pills,.backup-sheet-card__footer{display:flex;gap:8px;flex-wrap:wrap}.backup-sheet-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.backup-sheet-summary__cell{display:grid;gap:6px;min-height:78px;padding:12px 14px;border:1px solid #d9e0eb;border-radius:8px}.backup-sheet-summary__cell span{color:#576981;font-size:.76rem;font-weight:700}.backup-sheet-summary__cell strong{color:#223047;font-size:.9rem;line-height:1.5;word-break:break-word}.backup-sheet-summary__cell--rose{background:linear-gradient(180deg,#fff5f6,#ffe8eb)}.backup-sheet-summary__cell--green{background:linear-gradient(180deg,#eff9ea,#dff0d0)}.backup-sheet-summary__cell--yellow{background:linear-gradient(180deg,#fffce8,#fff2b8)}.backup-sheet-table-wrap{border-radius:8px}.backup-sheet-table{width:100%;min-width:1080px;border-collapse:collapse}.backup-sheet-table--compact{min-width:980px}.backup-sheet-table__group-row th,.backup-sheet-table__head-row th{position:sticky;z-index:2}.backup-sheet-table__group-row th{top:0;padding:10px 12px;color:#fff;font-size:.76rem;font-weight:700;text-transform:none;letter-spacing:0;border-bottom:1px solid rgba(255,255,255,.16)}.backup-sheet-table__head-row th{top:39px;z-index:3;padding:10px 12px;background:#f4f7fb;color:#47586f;font-size:.76rem;text-transform:none;letter-spacing:0}.backup-sheet-table__group--rose{background:#cf232c}.backup-sheet-table__group--green{background:#3c7d1f}.backup-sheet-table__group--yellow{background:#efd400;color:#374151!important}.backup-sheet-table__body-row:nth-child(6n+1) .backup-sheet-cell{background:#eee5ff}.backup-sheet-table__body-row:nth-child(6n+2) .backup-sheet-cell{background:#f2eaff}.backup-sheet-table__body-row:nth-child(6n+3) .backup-sheet-cell{background:#fde8c8}.backup-sheet-table__body-row:nth-child(6n+4) .backup-sheet-cell{background:#dcefff}.backup-sheet-table__body-row:nth-child(6n+5) .backup-sheet-cell{background:#e0f1d2}.backup-sheet-table__body-row:nth-child(6n) .backup-sheet-cell{background:#f7ebba}.backup-sheet-cell{padding:10px 12px;border-bottom:1px solid rgba(222,228,238,.95);vertical-align:top}.backup-sheet-cell--index,.backup-sheet-cell--meta{white-space:nowrap}.backup-sheet-cell--task strong,.backup-sheet-cell--task span{display:block}.backup-sheet-cell--task span,.backup-sheet-cell--meta,.backup-sheet-cell--result span{color:#52647d;font-size:.83rem;line-height:1.5}.backup-sheet-cell--result a{color:#275ca8;text-decoration:none;word-break:break-all}.backup-sheet-cell--result a:hover{text-decoration:underline}.backup-sheet-input{min-width:180px;min-height:40px;border-radius:6px;background:#ffffffe6}.backup-sheet-action{min-height:38px}.task-alert,.notice{margin:0;border-radius:12px;border:1px solid #d7dde6;padding:10px 12px;background:#f8fafc;color:#445063}.notice.success{border-color:#0f6b433d;background:#0f6b4314;color:#0f6b43}.notice.error,.task-alert{border-color:#9e204538;background:#9e204514;color:#9e2045}.review-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.review-photo{display:block;width:100%;min-height:120px;max-height:180px;object-fit:cover;border-radius:12px;border:1px solid #dde3eb;background:#fff;box-shadow:0 4px 12px #19212e0f}.result-box{display:grid;gap:8px;border:1px solid #dce2eb;border-radius:14px;padding:14px;background:#ffffffe6}.task-link{word-break:break-all;color:var(--accent);font-weight:700}.task-draft-editor-page{display:grid;gap:18px}.task-draft-editor-card{gap:18px}.task-draft-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.task-draft-field{display:grid;gap:8px}.task-draft-field span{color:#4d586a;font-size:.92rem;font-weight:700}.task-draft-toolbar{display:flex;flex-wrap:wrap;gap:8px}.task-draft-tool{min-width:72px}.task-draft-editor-surface{min-height:280px;padding:14px;border:1px solid #dce2eb;border-radius:14px;background:#fff;color:#394355;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.task-draft-editor-surface:focus{outline:2px solid rgba(142,35,65,.16);border-color:#8e2341}.admin-page{padding-block:34px 56px}.admin-card{border:1px solid #dbe0e8;border-radius:18px;padding:26px;background:linear-gradient(145deg,#fffffffa,#f7f9fdfa);box-shadow:0 14px 28px #151d2b14,0 2px 5px #151d2b0d}.admin-title{margin:0;color:#1f2735}.admin-subtitle{margin:10px 0 0;color:#5b6576}.admin-tabs{margin-top:16px;display:inline-flex;border-radius:10px;overflow:hidden}.admin-tab{border:0;min-height:40px;padding:0 16px;background:#e5e7eb;color:#3f4758;font-weight:700;cursor:pointer}.admin-tab.active{background:var(--accent);color:#fff}.admin-section{margin-top:18px;display:grid;gap:14px}.admin-error,.admin-success{margin:12px 0 0;font-weight:700}.admin-error{color:#9e2045}.admin-success{color:#0f766e}.admin-inline-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-panel{border:1px solid #dbe0e8;border-radius:14px;padding:14px;background:#ffffffdb}.admin-panel h3{margin:0 0 10px;color:#2d3748}.admin-panel-head{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.admin-actions-inline{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-table-wrap{overflow:auto;border:1px solid #dbe0e8;border-radius:12px;background:#fff}.admin-table{width:100%;border-collapse:collapse;min-width:860px}.admin-table th,.admin-table td{text-align:left;padding:10px;border-bottom:1px solid #edf1f6;vertical-align:top}.admin-table th{color:#556071;font-size:.84rem;text-transform:uppercase;letter-spacing:.06em}.admin-table td p{margin:6px 0 0}.admin-muted{color:#6b7280;font-size:.86rem}.admin-location-list,.admin-article-list{display:grid;gap:10px}.admin-city-list{margin:0;padding:0;display:grid;gap:8px}.admin-city-list li,.admin-article-list li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 10px;border:1px solid #e8edf4;border-radius:10px;background:#fff}.admin-form-grid{display:grid;gap:10px}.admin-sections-input{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.ai-assistant{position:fixed;right:22px;bottom:22px;z-index:80;display:grid;justify-items:end;gap:12px;pointer-events:none}.ai-assistant-toggle,.ai-assistant-panel{pointer-events:auto}.ai-assistant-toggle{width:58px;height:58px;border:0;border-radius:50%;background:var(--accent);color:#fff;font-weight:800;letter-spacing:.02em;cursor:pointer;box-shadow:0 12px 26px #5f183147;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}.ai-assistant-toggle:hover{background:var(--accent-press);transform:translateY(-2px);box-shadow:0 16px 30px #5f183157}.ai-assistant-panel{width:min(390px,calc(100vw - 32px));max-height:min(660px,calc(100vh - 110px));display:grid;grid-template-rows:auto auto minmax(180px,1fr) auto auto;overflow:hidden;border:1px solid #d4dae5;border-radius:16px;background:#fff;box-shadow:0 22px 42px #161e2d2e,0 4px 10px #161e2d14}.ai-assistant-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 16px 14px;border-bottom:1px solid #e3e8ef;background:linear-gradient(145deg,#fff,#f7f9fc)}.ai-assistant-head h2,.ai-assistant-kicker{margin:0}.ai-assistant-head h2{color:#202838;font-size:1.18rem}.ai-assistant-kicker{color:var(--accent);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.ai-assistant-close{width:34px;height:34px;border:1px solid #d6dce6;border-radius:8px;background:#fff;color:#526073;font-size:1.05rem;font-weight:800;cursor:pointer}.ai-assistant-context{display:grid;gap:3px;padding:10px 14px;border-bottom:1px solid #e3e8ef;background:#fff}.ai-assistant-context strong{color:#5a6476;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase}.ai-assistant-context span{color:#202838;font-size:.9rem;font-weight:700;line-height:1.35}.ai-assistant-messages{display:grid;align-content:start;gap:10px;overflow:auto;padding:14px;background:#f5f7fa}.ai-message{width:min(92%,310px);display:grid;gap:8px;border:1px solid #dfe5ee;border-radius:14px;padding:10px 12px;background:#fff}.ai-message--user{justify-self:end;border-color:#97193c38;background:#fff7fa}.ai-message p{margin:0;color:#3f495a;line-height:1.5;font-size:.94rem}.ai-suggestion-list{display:grid;gap:7px}.ai-suggestion-card{display:flex;align-items:center;justify-content:space-between;gap:9px;border:1px solid #e2e7ef;border-radius:10px;padding:8px;background:#f8fafc}.ai-suggestion-copy{min-width:0}.ai-suggestion-copy h3{margin:0;color:#202838;font-size:.94rem;line-height:1.25}.ai-suggestion-copy p{margin:2px 0 0;color:#5d687a;font-size:.8rem;line-height:1.2}.ai-suggestion-link{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:30px;border:1px solid #d2b3be;border-radius:999px;background:#fff;color:var(--accent);font-size:.82rem;font-weight:800;padding:0 10px}.ai-action-button{width:fit-content;min-height:34px;border:1px solid #caa9b5;border-radius:999px;background:#fff;color:var(--accent);font-weight:800;padding:0 12px;cursor:pointer;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.ai-action-button:hover{border-color:#97193c8c;transform:translateY(-1px);box-shadow:0 8px 14px #97193c24}.ai-quick-prompts{display:flex;gap:8px;overflow-x:auto;padding:10px 14px;border-top:1px solid #e3e8ef;background:#fff}.ai-quick-prompts button{flex:0 0 auto;min-height:32px;border:1px solid #dce2eb;border-radius:999px;background:#f8fafc;color:#4b5668;font-weight:700;padding:0 11px;cursor:pointer}.ai-assistant-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px 14px 14px;border-top:1px solid #e3e8ef;background:#fff}.ai-assistant-form input{min-width:0;height:42px;border:1px solid #c9d1dd;border-radius:10px;color:#2f3848;font:inherit;padding:0 12px}.ai-assistant-form input:focus{outline:none;border-color:#9a2343;box-shadow:0 0 0 3px #9a234324}.ai-assistant-form button{min-height:42px;border:0;border-radius:10px;background:var(--accent);color:#fff;font-weight:800;padding:0 14px;cursor:pointer}.ai-assistant-form button:disabled{opacity:.58;cursor:not-allowed}.dashboard-actions .dashboard-action-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border-width:1px;border-style:solid;border-radius:12px;font-weight:700;font-size:1.02rem;letter-spacing:.01em;text-decoration:none;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}.dashboard-actions .dashboard-action-button:disabled{opacity:.72;cursor:not-allowed;transform:none;box-shadow:none}.dashboard-actions .dashboard-action-button--primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 8px 18px #97193c38}.dashboard-actions .dashboard-action-button--primary:hover:not(:disabled){background:var(--accent-press);border-color:var(--accent-press);transform:translateY(-1px);box-shadow:0 10px 20px #7d163242}.dashboard-actions .dashboard-action-button--cancel{background:#eef2f7;border-color:#c8d2e0;color:#515d70}.dashboard-actions .dashboard-action-button--cancel:hover{background:#e6ecf4;border-color:#b8c6d8;color:#394355;transform:translateY(-1px)}.dashboard-actions .dashboard-action-button--view{background:#fff7fa;border-color:#cfadba;color:var(--accent)}.dashboard-actions .dashboard-action-button--view:hover{background:#fff;border-color:#b98e9f;color:#7f1a39;transform:translateY(-1px)}.site-footer{position:relative;padding-block:28px 40px;background:linear-gradient(180deg,#ffffff59,#edf0f5cc),radial-gradient(500px 120px at 20% 100%,rgba(151,25,60,.08),transparent 70%)}.footer-shell{position:relative;display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(360px,1fr);align-items:center;gap:20px;padding:20px 24px;border-radius:16px;border:1px solid #dbe0e8;background:linear-gradient(110deg,#fffffffa,#f7f9fdf5);box-shadow:0 10px 24px #161e2d1a,0 1px 3px #161e2d12}.footer-shell:before{content:"";position:absolute;left:18px;right:18px;top:0;height:3px;border-radius:999px;background:linear-gradient(90deg,#97193cb3,#97193c14)}.footer-brand-block{display:grid;gap:4px;color:#555f70;min-width:0}.footer-mark{color:#374151;font-weight:700;letter-spacing:.01em}.footer-copy{font-size:.88rem;color:#6b7280}.footer-tagline{justify-self:center;display:inline-flex;align-items:center;gap:.4ch;color:#556071;font-size:clamp(1rem,1.15vw,1.35rem);white-space:nowrap;padding:8px 14px;border-radius:999px;background:#f5f7fbf2;border:1px solid #e1e5ec}.footer-tagline em{font-style:italic}.footer-tagline strong{color:#121926}.footer-links{justify-self:end;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.footer-links a{color:var(--accent);font-weight:600;padding:8px 12px;border-radius:999px;border:1px solid #ead4dc;background:#fffffff2;transition:color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}.footer-links a:hover{border-color:#97193c73;transform:translateY(-1px);box-shadow:0 6px 12px #97193c24}.footer-links a:focus-visible{outline:3px solid rgba(151,25,60,.25);outline-offset:1px}.site-footer .reveal{justify-self:center;animation-delay:.5s}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reveal{opacity:0;animation:reveal-up .5s cubic-bezier(.2,.7,.2,1) forwards}.main-content>.section.reveal:nth-of-type(1){animation-delay:.1s}.main-content>.section.reveal:nth-of-type(2){animation-delay:.2s}.main-content>.section.reveal:nth-of-type(3){animation-delay:.3s}.main-content>.section.reveal:nth-of-type(4){animation-delay:.4s}@keyframes reveal-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes item-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes shell-float{0%{transform:translateY(0)}50%{transform:translateY(-2px)}to{transform:translateY(0)}}@keyframes sheen{0%{transform:translate(-135%)}45%{transform:translate(110%)}to{transform:translate(110%)}}@media (prefers-reduced-motion: reduce){.reveal,.search-grid>*,.search-shell,.search-shell:after,.accordion-enter-active,.accordion-leave-active{animation:none!important;transition:none!important}}@media (max-width: 1400px){:root{--container: 1220px}.tab{font-size:1.45rem}}@media (max-width: 1120px){.search-shell{padding:14px}.search-grid{grid-template-columns:repeat(2,minmax(260px,1fr))}.search-action{grid-column:1 / -1}.article-grid{gap:32px}.article-layout{grid-template-columns:1fr}.article-aside{position:static}.provider-grid-list,.provider-detail-layout{grid-template-columns:1fr}}@media (max-width: 960px){.container{width:min(var(--container),100% - 28px)}.header-inner{grid-template-columns:1fr;gap:12px;padding:18px 0;text-align:center}.brand,.tagline{justify-self:center}.header-auth-actions{justify-self:center;justify-content:center;width:min(420px,100%)}.login-button,.logout-button{width:min(300px,100%)}.main-content{padding-top:36px}.article-page-wrap{padding-top:20px}.region-grid,.provider-grid,.article-grid{grid-template-columns:1fr}.cities-showcase{padding:20px 16px 16px;border-radius:16px}.cities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.section{margin-bottom:44px}.cities-header{align-items:center;gap:12px}.links-two-columns{grid-template-columns:1fr}.photo-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}.article-card{padding:22px 18px 20px;border-radius:14px}.provider-detail-card{padding:20px 16px;border-radius:14px}.dashboard-form-grid,.dashboard-view-grid,.task-hall-home-grid,.task-hall-layout,.task-hall-quick-grid,.task-draft-editor-grid{grid-template-columns:1fr}.employee-daily-reminder__header{flex-direction:column}.attendance-calendar-grid{gap:6px}.attendance-day{min-height:64px}.footer-shell{grid-template-columns:1fr;gap:12px;text-align:center;padding:18px 14px}.footer-tagline,.footer-links{justify-self:center}.footer-links{justify-content:center}}@media (max-width: 760px){.task-hall-tabs{gap:8px}.task-hall-tabs .tab{width:100%;justify-content:center}.task-hall-filter{grid-template-columns:1fr}.task-hall-filter .dashboard-clear-button{width:100%}.backup-sheet-card{padding:14px}.backup-sheet-card__header,.backup-sheet-card__footer{align-items:stretch}.backup-sheet-summary{grid-template-columns:1fr}.backup-sheet-table__group-row th,.backup-sheet-table__head-row th{position:static}.search-shell{padding:12px;border-radius:14px}.search-grid{grid-template-columns:1fr;gap:12px}.cities-grid{grid-template-columns:1fr}.chip{min-height:32px;padding:0 12px;font-size:.8rem}.search-action{grid-column:auto}.article-hero-inner{padding:14px 0}.article-back-link{width:100%}.article-meta{gap:7px}.provider-photo-box{height:220px}.provider-gallery-main-frame{height:320px}.provider-gallery-thumb{width:90px;height:90px;flex:0 0 90px}.auth-card,.dashboard-card{padding:20px 16px;border-radius:14px}.dashboard-upload-drop{padding:15px 12px}.dashboard-upload-meta{align-items:flex-start}.dashboard-photo-preview-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}.ai-assistant{right:14px;bottom:14px}.ai-assistant-panel{width:calc(100vw - 28px);max-height:calc(100vh - 92px)}.ai-assistant-toggle{width:52px;height:52px}.footer-tagline{white-space:normal}}@media (max-width: 520px){.photo-grid,.dashboard-photo-preview-grid{grid-template-columns:1fr}}
