:root{--pink-50:#fff7f9;--pink-100:#fbe6ec;--pink-200:#f7cad6;--pink-300:#efadc0;--pink-500:#e9849f;--orange:#e84f8a;--orange-dark:#c93170;--ink:#4b3038;--muted:#765f67;--line:rgba(123,73,88,0.16);--dark:#202020;--white:#fff;--shadow:0 18px 50px rgba(131,72,88,0.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--ink);font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,system-ui,sans-serif;background:linear-gradient(180deg,var(--pink-50) 0,#f7d2dc 56%,#f3adc0 100%)}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;min-height:67px;padding:0 12vw;background:rgba(247,202,214,.94);border-bottom:1px solid rgba(146,89,104,.28);box-shadow:0 5px 18px rgba(148,69,92,.16);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:116px;height:55px;padding:0;border:0;outline:none;color:#1f171b;background:transparent;box-shadow:none;cursor:pointer;transition:transform .18s ease,filter .18s ease}.brand img{width:auto;height:50px;object-fit:contain}.brand:hover{transform:translateY(-1px);filter:drop-shadow(0 6px 12px rgba(130,74,88,.18))}.brand:active{transform:translateY(1px) scale(.98)}.main-nav{display:flex;align-items:center;gap:12px}.main-nav a,.main-nav button{min-height:40px;display:inline-flex;align-items:center;padding:0 14px;border:0;border-radius:14px;color:#5b4048;background:transparent;cursor:pointer;font-weight:700;transition:transform .18s ease,color .18s ease,background .18s ease,box-shadow .18s ease}.main-nav a:hover,.main-nav button:hover{color:var(--orange);background:rgba(255,255,255,.36);transform:translateY(-1px)}.main-nav a.is-active,.main-nav button.is-active{color:var(--orange);background:rgba(255,255,255,.45)}.main-nav a:active,.main-nav button:active,.nav-toggle:active{transform:translateY(1px) scale(.98)}.nav-toggle{display:none;width:42px;height:42px;border:0;border-radius:10px;color:var(--ink);background:rgba(255,255,255,.42);transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.nav-toggle:hover{background:rgba(255,255,255,.7);box-shadow:0 8px 20px rgba(131,72,88,.14)}body[data-route=attendance]{background:linear-gradient(180deg,var(--pink-50) 0,#f7d2dc 56%,#f3adc0 100%)}.page{display:none;min-height:calc(100vh - 67px);padding:70px clamp(20px,8vw,150px) 100px}.page.is-active{display:block}.hero{display:grid;justify-items:center;grid-gap:28px;gap:28px;text-align:center}.hero-logo{width:min(580px,90vw);aspect-ratio:16/9;object-fit:cover;border-radius:14px;box-shadow:var(--shadow)}.eyebrow,.notice-strong{color:var(--orange);font-weight:800}.notice-strong{margin:28px 0 0;font-size:20px;line-height:1.42}.support-copy{margin:0;color:var(--muted);font-size:18.7px;line-height:1.55}.ghost-btn,.outline-btn,.primary-btn,.secondary-btn,.text-btn{border:0;cursor:pointer}.primary-btn,.secondary-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;border-radius:7px;color:#fff;background:var(--orange);box-shadow:0 10px 24px rgba(174,50,105,.24);font-weight:800;transition:transform .16s ease,background .18s ease,box-shadow .18s ease,filter .18s ease}.icon-btn{gap:9px}.icon-btn img{width:24px;height:24px;flex:0 0 auto;object-fit:contain}.primary-btn.icon-btn img,.secondary-btn.icon-btn img{width:22px;height:22px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.16))}.outline-btn.icon-btn{padding-left:12px}.primary-btn:hover,.secondary-btn:hover{background:var(--orange-dark);box-shadow:0 14px 30px rgba(174,50,105,.3);transform:translateY(-2px)}.primary-btn.small,.secondary-btn.small{min-height:42px;padding:0 18px;font-size:14px}.secondary-btn{background:var(--ink);box-shadow:0 10px 24px rgba(42,30,36,.18)}.ghost-btn,.outline-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:1px solid rgba(232,79,138,.34);border-radius:7px;color:var(--orange);background:rgba(255,255,255,.54);font-weight:800;transition:transform .16s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.ghost-btn:hover,.outline-btn:hover{border-color:rgba(232,79,138,.58);background:rgba(255,255,255,.84);box-shadow:0 10px 24px rgba(174,50,105,.13);transform:translateY(-2px)}.text-btn{color:#ffd6df;background:transparent;font-weight:700;transition:transform .16s ease,color .18s ease}.text-btn:hover{color:#fff;transform:translateY(-1px)}.floating-call:active,.ghost-btn:active,.outline-btn:active,.page-number:active,.primary-btn:active,.secondary-btn:active,.text-btn:active{transform:translateY(1px) scale(.98);filter:saturate(.96)}.floating-call:focus-visible,.ghost-btn:focus-visible,.main-nav a:focus-visible,.main-nav button:focus-visible,.nav-toggle:focus-visible,.outline-btn:focus-visible,.page-number:focus-visible,.primary-btn:focus-visible,.secondary-btn:focus-visible,.text-btn:focus-visible{outline:3px solid rgba(232,79,138,.34);outline-offset:3px}.brand:focus-visible{outline:none;filter:drop-shadow(0 6px 12px rgba(130,74,88,.18))}.split-section{display:grid;grid-template-columns:minmax(280px,720px);justify-content:start;grid-gap:28px;gap:28px;margin-top:100px}.split-section h1{margin:0 0 18px;max-width:560px;color:var(--ink);font-size:clamp(30px,4vw,54px);line-height:1.12}.split-section p{max-width:520px;color:var(--muted);font-size:18px;line-height:1.65}.button-row,.center-stack,.contact-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.center-stack{justify-content:center;margin-top:36px}.page-title{margin:0 auto 42px;text-align:center}.page-title h1{margin:6px 0 8px;font-size:clamp(34px,5vw,58px)}.page-title p:last-child{margin:0;color:var(--muted)}.status-filter{width:min(980px,100%);margin:-18px auto 30px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.filter-chip{min-height:42px;border:1px solid rgba(232,79,138,.3);border-radius:999px;padding:0 18px;color:var(--orange);background:rgba(255,255,255,.68);cursor:pointer;font-weight:900;box-shadow:0 8px 22px rgba(131,72,88,.08);transition:transform .16s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.filter-chip:focus-visible,.filter-chip:hover{background:rgba(255,255,255,.9);box-shadow:0 12px 28px rgba(131,72,88,.14);transform:translateY(-2px)}.filter-chip.is-active,.filter-chip:active{color:#fff;background:var(--orange);box-shadow:0 14px 30px rgba(232,79,138,.24);transform:translateY(1px)}.profile-grid{width:min(980px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:28px;gap:28px}.profile-empty{grid-column:1/-1;margin:0;padding:46px 20px;border:1px solid rgba(232,79,138,.22);border-radius:8px;color:var(--muted);background:rgba(255,255,255,.58);text-align:center;font-weight:900}.profile-grid.compact{margin-top:28px}.profile-card{position:relative;min-height:410px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;padding:24px;border:1px solid rgba(255,255,255,.8);border-radius:18px;background:linear-gradient(180deg,rgba(255,249,251,.94),rgba(244,174,194,.84));box-shadow:0 18px 42px rgba(125,75,88,.18);cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.profile-card:hover{border-color:rgba(255,255,255,.96);box-shadow:0 24px 54px rgba(125,75,88,.24);transform:translateY(-5px)}.profile-card:focus-visible{outline:3px solid rgba(232,79,138,.42);outline-offset:4px}.profile-card.has-image{color:#fff;background:#231d21}.profile-card.has-image:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.74))}.profile-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.profile-content{position:relative;z-index:1;display:grid;grid-gap:8px;gap:8px}.status-pill{width:-moz-fit-content;width:fit-content;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;color:var(--orange);background:rgba(255,255,255,.82);font-size:12px;font-weight:800}.status-pill span{width:8px;height:8px;flex:0 0 8px;border-radius:999px;background:#9a8f96;box-shadow:0 0 0 2px rgba(255,255,255,.84)}.status-working span{background:#24b65a}.status-available span{background:#228be6}.status-off span{background:#111111}.status-closed span{background:#ef2f36}.profile-card h2{margin:0;font-size:20px}.profile-card p{margin:0;color:inherit;line-height:1.5}.profile-meta-line{font-weight:900}.profile-board{width:min(980px,100%);margin:0 auto}.board-post{overflow:hidden;border:1px solid rgba(117,77,89,.2);border-radius:8px;background:rgba(255,255,255,.92);box-shadow:0 22px 60px rgba(125,75,88,.16)}.board-head{padding:clamp(24px,4vw,46px);border-bottom:1px solid rgba(117,77,89,.15);background:linear-gradient(180deg,rgba(255,247,249,.96),rgba(255,255,255,.86))}.board-category{margin:0 0 8px;color:var(--orange);font-size:13px;font-weight:900}.board-head h1{margin:0;color:#2a1d22;font-size:clamp(28px,4.8vw,48px);line-height:1.18}.board-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:16px;color:var(--muted);font-size:14px;font-weight:800}.board-meta span:not(:last-child):after{content:"";display:inline-block;width:1px;height:12px;margin-left:18px;background:rgba(117,77,89,.22);vertical-align:-1px}.board-info{margin:0;display:grid;border-bottom:1px solid rgba(117,77,89,.15)}.board-info div{display:grid;grid-template-columns:160px 1fr;min-height:58px;border-top:1px solid rgba(117,77,89,.1)}.board-info div:first-child{border-top:0}.board-info dd,.board-info dt{margin:0;display:flex;align-items:center;padding:14px 18px;line-height:1.5}.board-info dt{color:#4a333b;background:rgba(247,202,214,.34);font-weight:900}.board-info dd{color:var(--muted);font-weight:800}.board-image{margin:0;padding:clamp(20px,3vw,34px);border-bottom:1px solid rgba(117,77,89,.15)}.board-image img{width:min(720px,100%);max-height:860px;margin:0 auto;object-fit:contain;border-radius:8px;background:#1f1b1e;box-shadow:0 16px 44px rgba(42,30,36,.18)}.board-body{min-height:220px;padding:clamp(28px,4vw,46px);color:#3d2a31;font-size:clamp(17px,1.9vw,21px);line-height:1.8;font-weight:700}.board-body p{margin:0 0 12px}.board-body p:last-child{margin-bottom:0}.board-actions,.board-contact{display:flex;flex-wrap:wrap;gap:10px;padding:0 clamp(28px,4vw,46px) clamp(24px,4vw,42px)}.board-actions{justify-content:space-between;border-top:1px solid rgba(117,77,89,.12);padding-top:22px}.empty-post{padding-bottom:30px}.pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;min-height:42px;margin:28px auto 0}.pagination:empty{display:none}.page-number{width:38px;height:38px;border:1px solid rgba(232,79,138,.28);border-radius:999px;color:var(--orange);background:rgba(255,255,255,.58);cursor:pointer;font-weight:900;transition:transform .16s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.page-number:hover{color:#fff;background:var(--orange);box-shadow:0 8px 18px rgba(174,50,105,.18)}.page-number.is-active{color:#fff;background:var(--orange);box-shadow:0 8px 18px rgba(174,50,105,.22)}.page-attendance{position:relative;overflow:hidden;min-height:calc(100vh - 67px);padding:0;color:var(--ink);background:linear-gradient(124deg,transparent 0 64%,rgba(255,255,255,.22) 64.2% 72%,transparent 72.2% 100%),radial-gradient(circle at 66% 42%,rgba(255,255,255,.38),transparent 34%),linear-gradient(180deg,var(--pink-50) 0,#f7d2dc 56%,#f3adc0 100%)}.page-attendance:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0 26%,rgba(232,79,138,.12) 26% 26.1%,transparent 26.1% 100%),linear-gradient(55deg,transparent 0 58%,rgba(255,255,255,.24) 58% 59%,transparent 59% 100%);opacity:.55;pointer-events:none}.attendance-shell{position:relative;z-index:1;display:grid;grid-template-columns:minmax(330px,22.8vw) 1fr;min-height:calc(100vh - 67px)}.attendance-aside{display:flex;flex-direction:column;justify-content:center;gap:clamp(34px,5.6vw,112px);padding:clamp(42px,6vw,110px) clamp(18px,2.2vw,48px);border-right:2px solid rgba(232,79,138,.18);background:rgba(255,255,255,.16)}.attendance-mark{position:absolute;top:clamp(22px,2.2vw,38px);left:clamp(18px,2.2vw,42px);font-size:clamp(26px,2.6vw,42px);font-style:italic;letter-spacing:0}.attendance-aside h1,.attendance-mark{margin:0;color:var(--ink);font-weight:900}.attendance-aside h1{font-size:clamp(36px,4.1vw,60px);line-height:1.12}.attendance-aside h1 span:first-child{display:block;color:#ffe21d}.attendance-aside h1 small{display:block;margin:14px 0 4px;color:var(--muted);font-size:clamp(14px,1.25vw,20px);font-weight:800;letter-spacing:0}.attendance-rule{width:min(100%,360px);border-top:1px dotted rgba(232,79,138,.42)}.attendance-help{margin:0;color:var(--orange);font-size:clamp(19px,1.55vw,29px);line-height:1.4;font-weight:900}.attendance-board{display:grid;align-content:start;grid-gap:clamp(24px,2.4vw,34px);gap:clamp(24px,2.4vw,34px);padding:clamp(12px,1.15vw,22px) clamp(34px,7.5vw,154px) 56px}.attendance-list{display:grid;grid-gap:clamp(24px,2.35vw,34px);gap:clamp(24px,2.35vw,34px)}.attendance-row{display:grid;grid-template-columns:minmax(170px,.72fr) minmax(320px,1fr) minmax(160px,.48fr);align-items:center;min-height:clamp(74px,4.5vw,94px);padding:14px clamp(22px,2vw,38px);color:var(--ink);background:rgba(255,255,255,.5);border:2px solid rgba(232,79,138,.12);box-shadow:0 18px 42px rgba(131,72,88,.14);cursor:pointer;transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease}.attendance-row:hover{border-color:rgba(232,79,138,.28);background:rgba(255,255,255,.72);box-shadow:0 24px 54px rgba(131,72,88,.18);transform:translateY(-3px)}.attendance-row:active{transform:translateY(1px) scale(.995)}.attendance-row:focus-visible{outline:3px solid rgba(232,79,138,.38);outline-offset:4px}.attendance-name,.attendance-status,.attendance-time{min-width:0;overflow-wrap:anywhere}.attendance-name{font-size:clamp(20px,2.25vw,36px);font-weight:800}.attendance-time{justify-self:center;font-size:clamp(22px,2.4vw,40px);letter-spacing:0}.attendance-status,.attendance-time{color:var(--ink);font-weight:900;white-space:nowrap}.attendance-status{justify-self:end;display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:0 16px;border:1px solid rgba(232,79,138,.18);border-radius:999px;background:rgba(255,255,255,.74);box-shadow:0 10px 24px rgba(131,72,88,.1);font-size:clamp(14px,1.1vw,21px)}.attendance-status:before{content:"";width:10px;height:10px;flex:0 0 10px;border-radius:999px;background:#228be6;box-shadow:0 0 0 3px rgba(34,139,230,.14)}.attendance-status.status-working-text:before{background:#24b65a;box-shadow:0 0 0 3px rgba(36,182,90,.14)}.attendance-status.status-available-text:before{background:#228be6;box-shadow:0 0 0 3px rgba(34,139,230,.14)}.attendance-status.status-closed-text{color:var(--ink)}.attendance-status.status-closed-text:before{background:#ef2f36;box-shadow:0 0 0 3px rgba(239,47,54,.14)}.attendance-status.status-off-text{color:var(--ink)}.attendance-status.status-off-text:before{background:#111111;box-shadow:0 0 0 3px rgba(17,17,17,.12)}.attendance-empty{margin:0;padding:28px;color:var(--muted);background:rgba(255,255,255,.56);border:1px solid rgba(232,79,138,.14);font-size:20px;font-weight:800}.notice-board{width:min(880px,100%);margin:0 auto;padding:24px;border-radius:8px;color:var(--ink);background:rgba(255,255,255,.58);border:1px solid var(--line)}.lock-panel{width:min(560px,100%);min-height:440px;margin:60px auto;display:grid;place-items:center;align-content:center;grid-gap:16px;gap:16px;padding:42px;border-radius:10px;color:#fff;background:#202020;box-shadow:0 22px 70px rgba(0,0,0,.2)}.lock-icon{color:var(--pink-200);font-size:56px}.lock-panel h1,.lock-panel p{margin:0}.password-form{display:flex;gap:10px;width:min(330px,100%)}input,select,textarea{width:100%;border:1px solid rgba(117,77,89,.18);border-radius:9px;padding:13px 14px;color:var(--ink);background:rgba(255,255,255,.9);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(232,79,138,.13)}.checkbox-row{display:flex;align-items:center;gap:10px;width:-moz-fit-content;width:fit-content;color:var(--ink);font-weight:900}.checkbox-row input{width:18px;height:18px;accent-color:var(--orange)}#adminPanel .time-select-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;grid-gap:10px;gap:10px}#adminPanel .time-select-row span{color:var(--orange);font-weight:900}#adminPanel .file-upload-row{display:flex;align-items:center;gap:12px;min-height:50px;padding:8px;border:1px solid rgba(117,77,89,.18);border-radius:9px;background:rgba(255,255,255,.9)}#adminPanel .file-upload-btn{min-height:36px;padding:0 14px;white-space:nowrap}#adminPanel #profileImageInlineName{min-width:0;color:var(--ink);font-size:14px;font-weight:800;overflow-wrap:anywhere}#adminPanel .sr-only-file{position:fixed;left:-100vw;top:0;width:1px;height:1px;opacity:0;pointer-events:none}.sr-only-file{position:fixed!important;left:-100vw!important;top:0!important;width:1px!important;height:1px!important;padding:0!important;border:0!important;opacity:0!important;pointer-events:none!important}#adminPanel .admin-file-name{margin:-6px 0 0;color:var(--muted);font-size:14px;font-weight:900;overflow-wrap:anywhere}#adminPanel .image-preview{display:grid;grid-gap:8px;gap:8px;margin:0;padding:10px;border:1px solid rgba(232,79,138,.24);border-radius:8px;background:rgba(255,255,255,.58)}#adminPanel .image-preview[hidden]{display:none}#adminPanel .image-preview img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:7px;background:rgba(255,255,255,.62)}#adminPanel .image-preview figcaption{color:var(--muted);font-size:13px;font-weight:900}.form-message{min-height:20px;color:#ffd6df;font-size:14px}.guide-list,.info-grid{width:min(980px,100%);margin:0 auto;display:grid;grid-gap:18px;gap:18px}.info-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-list,.editor-card,.guide-list article,.info-card,.map-card{padding:26px;border-radius:8px;background:rgba(255,255,255,.58);border:1px solid var(--line);box-shadow:0 14px 40px rgba(131,72,88,.1);transition:transform .22s ease,box-shadow .22s ease,background .22s ease}.admin-list:hover,.editor-card:hover,.guide-list article:hover,.info-card:hover,.map-card:hover{background:rgba(255,255,255,.68);box-shadow:0 18px 46px rgba(131,72,88,.15);transform:translateY(-3px)}.guide-list article{display:grid;grid-template-columns:1fr;justify-items:start;grid-gap:8px;gap:8px;align-items:start}.map-card{width:min(980px,100%);margin:20px auto 0}.map-copy{margin-bottom:18px}.map-copy h2,.map-copy p{margin:0}.map-copy h2{margin-bottom:8px;font-size:28px}.map-copy p:last-child{color:var(--muted)}.map-card iframe{width:100%;height:clamp(300px,44vw,440px);border:0;border-radius:8px;box-shadow:inset 0 0 0 1px var(--line)}.map-actions{display:flex;justify-content:flex-end;margin-top:14px}.guide-list span{color:var(--orange);font-size:13px;font-weight:900}.editor-card h2,.guide-list h2,.info-card h2{margin:0 0 8px}.guide-list h2{margin:0}.guide-list p,.info-card p{margin:0;color:var(--muted);line-height:1.6}.guide-list p{max-width:760px}.guide-list .primary-btn{margin-top:12px}.admin-shell{width:min(1120px,100%);margin:0 auto}.admin-login{width:min(440px,100%);margin:30px auto;padding:30px;border-radius:10px;background:rgba(255,255,255,.65);box-shadow:var(--shadow)}.admin-login form,.editor-card{display:grid;grid-gap:12px;gap:12px}#adminPanel .editor-card>*{position:relative;z-index:1}.admin-login[hidden],.admin-panel[hidden]{display:none}.admin-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.admin-heading h1{margin:0}.sync-status{margin:8px 0 0;color:var(--muted);font-size:.9rem;font-weight:800}.admin-layout{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,.8fr);grid-gap:20px;gap:20px}.admin-list{margin-top:22px;display:grid;grid-gap:12px;gap:12px}.admin-item{display:grid;grid-template-columns:1fr auto;grid-gap:14px;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.54);transition:transform .18s ease,border-color .18s ease,background .18s ease}.admin-item:hover{border-color:rgba(232,79,138,.3);background:rgba(255,255,255,.76);transform:translateY(-2px)}.admin-actions{display:flex;gap:8px}.ticker{overflow:hidden;white-space:nowrap;padding:0;color:var(--orange);background:rgba(255,248,250,.8);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:800}.ticker-track{width:max-content;animation:ticker-left 28s linear infinite;will-change:transform}.ticker-segment,.ticker-track{display:flex;align-items:center}.ticker-segment{flex:0 0 auto;gap:28px;min-width:max-content;padding-right:28px}.ticker-segment span{display:inline-flex;align-items:center;min-height:48px;color:var(--orange);font-size:clamp(16px,1.6vw,22px);line-height:1;white-space:nowrap}@keyframes ticker-left{0%{transform:translateZ(0)}to{transform:translate3d(-50%,0,0)}}.site-footer{display:grid;justify-items:center;grid-gap:8px;gap:8px;padding:55px 20px 70px;text-align:center;color:var(--muted);background:linear-gradient(180deg,rgba(255,247,249,.75),rgba(244,174,194,.9))}.site-footer strong{color:var(--orange);font-size:22px}.site-footer p{margin:0}.footer-contact-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}.floating-call{position:fixed;right:28px;bottom:28px;z-index:25;display:inline-flex;align-items:center;justify-content:center;min-width:118px;min-height:54px;padding:0 20px;border-radius:999px;color:var(--orange);background:rgba(255,255,255,.94);box-shadow:0 12px 30px rgba(95,54,68,.22);font-weight:900;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.floating-call:hover{background:#fff;box-shadow:0 16px 38px rgba(95,54,68,.28);transform:translateY(-3px)}.toast{position:fixed;left:50%;bottom:28px;z-index:40;transform:translateX(-50%) translateY(20px);opacity:0;pointer-events:none;padding:12px 16px;border-radius:999px;color:#fff;background:var(--ink);transition:.18s ease}.toast.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}.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-item{opacity:0;transform:translateY(18px);transition:opacity .52s ease,transform .52s cubic-bezier(.2,.8,.2,1);will-change:opacity,transform}.reveal-item.is-visible{opacity:1;transform:translateY(0)}.reveal-item.is-visible.profile-card:hover{transform:translateY(-5px)}.guide-list article.reveal-item.is-visible:hover,.reveal-item.is-visible.admin-list:hover,.reveal-item.is-visible.attendance-row:hover,.reveal-item.is-visible.editor-card:hover,.reveal-item.is-visible.info-card:hover,.reveal-item.is-visible.map-card:hover{transform:translateY(-3px)}.floating-call:hover:active,.ghost-btn:hover:active,.outline-btn:hover:active,.page-number:hover:active,.primary-btn:hover:active,.secondary-btn:hover:active,.text-btn:hover:active{transform:translateY(1px) scale(.98)}@media (max-width:900px){.site-header{padding:0 18px}.nav-toggle{display:inline-flex;align-items:center;justify-content:center}.main-nav{position:absolute;top:67px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;padding:14px 18px 18px;background:rgba(247,202,214,.98);border-bottom:1px solid var(--line)}.site-header.is-open .main-nav{display:flex}.page{padding:46px 18px 80px}.page-attendance{padding:0}.admin-layout,.attendance-shell,.info-grid,.split-section{grid-template-columns:1fr}.attendance-shell{min-height:auto}.attendance-aside{min-height:460px;border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}.attendance-board{padding:32px 18px 70px}.attendance-row{grid-template-columns:1fr;gap:10px;min-height:auto;padding:20px}.attendance-status,.attendance-time{justify-self:start;white-space:normal}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.board-info div{grid-template-columns:120px 1fr}.guide-list article{grid-template-columns:1fr}}@media (max-width:620px){.brand{width:96px;height:48px}.brand img{height:42px}.board-info div,.profile-grid{grid-template-columns:1fr}.board-info dt{padding-bottom:6px}.board-info dd{padding-top:0}.board-meta span:not(:last-child):after{display:none}.board-actions{justify-content:flex-start}.password-form{flex-direction:column}.floating-call{right:18px;bottom:18px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.reveal-item{opacity:1;transform:none}}