@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Playfair+Display:wght@500;600&family=JetBrains+Mono:wght@400;500&display=swap";:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-serif: "Playfair Display", Georgia, serif;--font-mono: "JetBrains Mono", monospace;--error: #ef4444;--success: #22c55e;--accent: #6ee7b7;--accent-muted: rgba(110, 231, 183, .12)}:root,[data-theme=dark]{--bg: #0a0a0b;--bg-card: #111113;--bg-card-hover: #18181b;--bg-console: #0a0a0c;--text: #fafafa;--text-light: #fafafa;--text-secondary: #a1a1aa;--text-muted: #71717a;--border: #27272a;--border-light: #3f3f46;--accent: #3f3f46}[data-theme=light]{--bg: #fafafa;--bg-card: #ffffff;--bg-card-hover: #f4f4f5;--bg-console: #f4f4f5;--bg-dark-card: #1a1a1d;--text: #18181b;--text-light: #18181b;--text-secondary: #52525b;--text-muted: #71717a;--border: #e4e4e7;--border-light: #d4d4d8;--accent: #16a34a;--accent-muted: rgba(22, 163, 74, .1)}[data-theme=light] .dark-card{background:#fff;border-color:#e4e4e7;box-shadow:0 1px 3px #00000014}[data-theme=light] .dark-card:hover{border-color:#d4d4d8}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body.no-scroll{overflow:hidden}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.7;-webkit-font-smoothing:antialiased;font-size:17px}a{color:inherit;text-decoration:none}.loader{position:fixed;inset:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:9999}.loader-content{text-align:center;animation:intro 2.2s cubic-bezier(.16,1,.3,1) forwards}@keyframes intro{0%{opacity:0;transform:translateY(6px)}18%{opacity:1;transform:translateY(0)}62%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}.loader-name{font-family:var(--font-serif);font-size:28px;font-weight:500;color:var(--text);letter-spacing:.02em}.app{opacity:0;transform:translateY(6px);transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1)}.app.ready{opacity:1;transform:translateY(0)}.sticky-header{opacity:0;pointer-events:none}.sticky-header.visible{opacity:1;pointer-events:auto}.sticky-header{position:fixed;top:0;left:0;right:0;background:#0a0a0bd9;backdrop-filter:blur(16px);padding:20px 48px;transform:translateY(-100%);opacity:0;transition:transform .4s ease,opacity .4s ease;z-index:1000;border-bottom:1px solid rgba(39,39,42,.5);box-shadow:0 1px 8px #00000026}[data-theme=light] .sticky-header{background:#fafafae6;border-bottom:1px solid rgba(228,228,231,.8);box-shadow:0 1px 6px #0000000f}.sticky-header.visible{transform:translateY(0);opacity:1}.sticky-header-content{max-width:1000px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.sticky-header-name{font-size:12px;font-weight:600;color:var(--text-muted);letter-spacing:.15em}.sticky-header-links{display:flex;align-items:center;gap:20px}.sticky-header-links a{color:var(--text-light);opacity:.65;transition:opacity .3s ease;display:flex;padding:8px;border-radius:6px}.sticky-header-links a:hover{opacity:1;background:#ffffff14}[data-theme=light] .sticky-header-links a:hover{background:#0000000d}.app{max-width:1000px;margin:0 auto;padding:80px 40px 100px}.header{display:flex;align-items:center;justify-content:space-between;margin-bottom:80px}.header-logo{font-family:var(--font-serif);font-size:18px;font-weight:500;transition:opacity .3s ease}.header-logo:hover{opacity:.7}.lang-btn{padding:10px 18px;font-size:12px;font-weight:600;font-family:var(--font-sans);background:transparent;color:var(--text);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all .3s ease;letter-spacing:.05em}.lang-btn:hover{background:var(--text);color:var(--bg)}.header-controls{display:flex;align-items:center;gap:12px}.theme-toggle{width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:50%;cursor:pointer;transition:all .3s ease;color:var(--text)}.theme-toggle svg{width:18px;height:18px}.theme-toggle:hover{background:var(--text);color:var(--bg);transform:rotate(15deg)}.hero{margin-bottom:56px}.hero-label{font-size:14px;font-weight:600;color:var(--text-secondary);letter-spacing:.05em;margin-bottom:20px}.hero-title{font-family:var(--font-serif);font-size:48px;font-weight:500;line-height:1.15;margin-bottom:28px;letter-spacing:-.02em}.hero-subtitle{font-size:18px;color:var(--text-secondary);line-height:1.75;max-width:800px}.divider{height:1px;margin:48px 0;background:linear-gradient(90deg,transparent 0%,rgba(113,113,122,.3) 20%,rgba(113,113,122,.5) 50%,rgba(113,113,122,.3) 80%,transparent 100%);position:relative}.divider:after{content:"";position:absolute;inset:-4px 0;background:linear-gradient(90deg,transparent 0%,rgba(113,113,122,.05) 50%,transparent 100%);filter:blur(8px)}.dark-card{background:var(--bg-card);border-radius:16px;padding:32px;margin-bottom:8px;border:1px solid var(--border);transition:border-color .3s ease}.dark-card:hover{border-color:var(--border-light)}.card-header{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:24px}.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding:8px 0}.info-item{display:flex;flex-direction:column;gap:6px;transition:opacity .3s ease}.info-item.featured .info-value{color:var(--text);font-size:24px}.info-item.featured .info-sub{color:var(--text-secondary)}.info-label{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em}.info-value{font-family:var(--font-serif);font-size:22px;font-weight:500}.info-sub{font-size:14px;color:var(--text-muted)}.pipeline{margin-top:8px;overflow:hidden;position:relative;padding-top:18px;min-height:190px}.pipeline-track{position:absolute;top:37px;left:19px;right:19px;height:3px;z-index:0}.track-bg{position:absolute;inset:0;background:var(--border);border-radius:2px}.track-fill{position:absolute;top:0;left:0;height:100%;background:var(--text-muted);border-radius:2px;transition:width .5s ease}.track-fill.error{background:var(--error)}.track-glow{position:absolute;top:50%;width:80px;height:24px;background:radial-gradient(ellipse,rgba(82,82,91,.4) 0%,transparent 70%);transform:translate(-50%,-50%);transition:left .5s ease;pointer-events:none}.pipeline-nodes{display:flex;justify-content:space-between;position:relative;z-index:1}.pipeline-node{display:flex;flex-direction:column;align-items:center;gap:10px;transition:opacity .3s ease,filter .3s ease}.pipeline-node:hover{opacity:1!important;filter:brightness(1.2)}.node-circle{width:38px;height:38px;border-radius:50%;background:var(--bg-card);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;transition:all .3s ease}.node-num{font-size:12px;font-weight:600;color:var(--text-muted);font-family:var(--font-mono)}.node-check,.node-x{width:14px;height:14px}.node-label{font-size:11px;font-weight:600;color:#52525b;text-transform:uppercase;letter-spacing:.08em;transition:color .3s ease}.label-full{display:inline}.label-short{display:none}.pipeline-node.done .node-circle{background:var(--text-muted);border-color:var(--text-muted);color:var(--bg)}.pipeline-node.done .node-label{color:var(--text-secondary)}.pipeline-node.active .node-circle{border-color:var(--text-muted)}.pipeline-node.active .node-label{color:var(--text-secondary)}.pipeline-node.error .node-circle{background:var(--error);border-color:var(--error);color:#fff;animation:shake .4s ease}.pipeline-node.error .node-label{color:var(--error)}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}.pipeline-node.complete .node-circle{background:var(--success);border-color:var(--success);color:#fff;box-shadow:0 0 12px #22c55e4d;transition:all .2s ease-out}.pipeline-node.complete .node-label{color:var(--success);transition:color .2s ease-out}.node-spinner{width:12px;height:12px;border:2px solid var(--border);border-top-color:var(--text-muted);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pipeline-console{margin-top:20px;background:transparent;border-radius:10px;padding:14px 18px;min-height:56px;opacity:0;transition:opacity .25s ease,background .25s ease,border-color .25s ease;border:1px solid transparent}.pipeline-console.visible{opacity:1;background:var(--bg-console);border-color:var(--border)}.console-line{display:flex;align-items:flex-start;gap:12px;font-family:var(--font-mono);font-size:13px;width:100%}.console-prefix{font-weight:600;flex-shrink:0;line-height:1.5}.console-content{display:flex;flex-direction:column;gap:2px;flex:1}.console-text{color:var(--text-muted)}.console-subtext{font-size:11px;color:#52525b}.console-action{color:var(--text-muted);font-size:12px;flex-shrink:0;margin-left:auto;white-space:nowrap}.console-line.error .console-prefix{color:var(--error)}.console-line.error .console-subtext{color:#f59e0b}.console-line.passed .console-prefix,.console-line.build .console-prefix,.console-line.deploy .console-prefix,.console-line.complete .console-prefix{color:var(--success)}.pipeline-proof{margin-top:24px;padding-top:20px;border-top:1px solid var(--border);font-size:14px;color:var(--text-muted);font-style:italic}.section{margin-bottom:8px}.section-title{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.15em;margin-bottom:24px}.approach-intro{font-size:17px;color:var(--text-secondary);line-height:1.8;margin-bottom:32px}.quality-principles{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.principle-card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:24px;transition:all .3s ease;position:relative;overflow:hidden}.principle-card:before{content:"";position:absolute;top:0;left:0;width:2px;height:100%;background:var(--text-muted);opacity:0;transition:opacity .3s ease}.principle-card:hover{border-color:var(--border-light);background:var(--bg-card-hover)}.principle-card:hover:before{opacity:1}.principle-title{font-size:16px;font-weight:600;color:var(--text);margin-bottom:10px;display:flex;align-items:center;gap:8px}.principle-title:before{content:"";width:6px;height:6px;background:var(--text-muted);border-radius:50%;flex-shrink:0}.principle-desc{font-size:14px;color:var(--text-muted);line-height:1.7}.experience-list{display:flex;flex-direction:column}.experience-item{border-bottom:1px solid var(--border);cursor:pointer;transition:all .3s ease;margin:0 -32px;padding:0 32px}.experience-item:last-child{border-bottom:none}.experience-item:hover{background:var(--bg-card-hover)}.experience-item.muted{opacity:.7}.experience-item.muted:hover,.experience-item.featured{opacity:1}.experience-item.featured .exp-company{color:var(--text)}.exp-header{display:flex;justify-content:space-between;align-items:center;padding:20px 0}.exp-main{display:flex;flex-direction:column;gap:4px}.exp-company{font-family:var(--font-sans);font-size:16px;font-weight:700;letter-spacing:.08em;color:var(--text-secondary)}.exp-role{font-size:14px;color:var(--text-muted)}.exp-right{display:flex;align-items:center;gap:16px}.exp-period{font-size:13px;color:var(--text-muted);font-weight:500}.exp-toggle{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--text-muted);background:var(--bg);border-radius:6px;transition:all .3s ease}.experience-item:hover .exp-toggle{background:var(--border)}.exp-details{max-height:0;overflow:hidden;opacity:0;transition:max-height .4s ease,padding .4s ease,opacity .3s ease}.experience-item.expanded .exp-details{max-height:500px;padding-bottom:24px;opacity:1}.exp-highlights{animation:fadeInUp .4s ease forwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.exp-highlights{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding-top:8px}.highlight-item{background:var(--bg);border-radius:10px;padding:16px;border:1px solid var(--border);transition:all .3s ease}.highlight-item:hover{border-color:var(--border-light);background:var(--bg-card-hover)}.highlight-title{display:block;font-size:13px;font-weight:600;color:var(--text);margin-bottom:4px}.highlight-desc{font-size:13px;color:var(--text-muted);line-height:1.5}.tags-list{display:flex;flex-wrap:wrap;gap:10px}.tag{padding:10px 20px;font-size:14px;font-weight:500;color:var(--bg);background:var(--text);border-radius:100px;transition:all .3s ease;position:relative}.tag:hover{box-shadow:0 0 20px #fafafa26}.tag.outline{color:var(--text);background:transparent;border:1px solid var(--border);display:inline-flex;align-items:center;gap:8px}.tag.outline:hover{border-color:var(--text-muted);box-shadow:0 0 15px #71717a33,inset 0 0 10px #71717a0d}.tag-level{font-size:10px;font-weight:600;color:var(--text-muted);background:var(--bg-card);padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.05em}.tools-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.tool-item{display:flex;flex-direction:column;gap:4px;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;transition:all .3s ease}.tool-item:hover{border-color:var(--border-light);background:var(--bg-card-hover)}.tool-name{font-size:15px;font-weight:600;color:var(--text)}.tool-desc{font-size:13px;color:var(--text-muted)}.contact-text{font-size:17px;color:var(--text-secondary);margin-bottom:24px;line-height:1.7}.contact-links{display:flex;flex-wrap:wrap;gap:12px}.contact-link{padding:14px 28px;font-size:14px;font-weight:600;color:var(--text);background:transparent;border:1px solid var(--border);border-radius:10px;transition:all .3s ease}.contact-link:hover{background:var(--bg-card-hover);box-shadow:0 0 20px #71717a1a}.contact-link.primary{background:var(--text);color:var(--bg);border-color:var(--text);font-weight:600}.contact-link.primary:hover{box-shadow:0 0 20px #fafafa26}.footer{text-align:center;padding-top:48px;margin-top:32px}.footer span{font-size:12px;color:var(--text-muted)}@media (max-width: 768px){.app{padding:48px 20px 80px}.info-grid{grid-template-columns:repeat(2,1fr);gap:24px}.exp-highlights{grid-template-columns:1fr}.hero-title{font-size:32px}.dark-card{padding:24px;border-radius:12px}.experience-item{margin:0 -24px;padding:0 24px}.node-circle{width:32px;height:32px}.pipeline{padding-top:16px;min-height:175px}.pipeline-track{left:20px;right:20px;top:32px}.pipeline-nodes{gap:4px}.pipeline-node{min-width:0;flex:1}.node-label{font-size:9px;text-align:center}.label-full{display:none}.label-short{display:inline}.quality-principles,.tools-grid{grid-template-columns:1fr}.experience-item.expanded .exp-details{max-height:none}.exp-highlights{gap:10px}.highlight-item{padding:14px}}@media (max-width: 480px){.pipeline-track{left:18px;right:18px;top:29px}.node-circle{width:26px;height:26px}.node-label{font-size:8px}.pipeline{min-height:170px}.pipeline-console{padding:10px 12px;min-height:58px}.console-main{font-size:12px}.console-sub{font-size:10px}.header{margin-bottom:48px}.hero-title{font-size:28px}.info-grid{grid-template-columns:1fr 1fr}.exp-header{flex-direction:column;align-items:flex-start;gap:8px}.exp-right{width:100%;justify-content:space-between}.contact-links{flex-direction:column}.contact-link{text-align:center}.highlight-item{padding:12px}.highlight-title,.highlight-desc{font-size:12px}}.not-found{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;background:var(--bg)}.not-found-content{text-align:center;max-width:480px}.not-found-code{font-family:var(--font-mono);font-size:120px;font-weight:700;color:var(--text);line-height:1;margin-bottom:16px;opacity:.1}.not-found-mascot{width:240px;height:auto;margin:0 auto 32px}.not-found-mascot img{width:100%;height:auto;filter:drop-shadow(0 0 30px rgba(59,130,246,.3))}.not-found-title{font-family:var(--font-serif);font-size:32px;font-weight:500;color:var(--text);margin-bottom:8px}.not-found-subtitle{font-size:18px;color:var(--text-muted);margin-bottom:32px}.not-found-details{margin-bottom:32px}.not-found-log{display:block;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px 20px;font-family:var(--font-mono);font-size:13px;color:var(--text-muted);text-align:left;line-height:2}.log-prefix{color:var(--text-secondary)}.log-success{color:var(--success)}.log-info{color:#60a5fa}.not-found-btn{display:inline-block;padding:14px 32px;font-size:14px;font-weight:600;color:var(--bg);background:var(--text);border-radius:10px;transition:all .3s ease}.not-found-btn:hover{box-shadow:0 0 20px #fafafa26;transform:translateY(-2px)}.about-page{max-width:1000px;margin:0 auto;padding:80px 40px 100px}.about-hero{margin-bottom:48px}.about-title{font-family:var(--font-serif);font-size:48px;font-weight:500;color:var(--text);margin-bottom:12px}.about-role{font-size:18px;color:var(--text-muted)}.about-section{margin-bottom:8px}.about-text{font-size:17px;color:var(--text-secondary);line-height:1.8;margin-bottom:16px}.about-text:last-child{margin-bottom:0}.fun-facts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.fun-fact-item{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;transition:all .3s ease}.fun-fact-item:hover{border-color:var(--border-light)}.fun-fact-icon{font-size:20px;flex-shrink:0}.fun-fact-text{font-size:14px;color:var(--text-secondary);line-height:1.5}@media (max-width: 768px){.about-page{padding:48px 20px 80px}.about-title{font-size:32px}.fun-facts-grid{grid-template-columns:1fr}.not-found-code{font-size:80px}.not-found-title{font-size:24px}}.schedule-page,.admin-page,.admin-login-page{--sch-bg: #0a0a0b;--sch-surface: rgba(17, 17, 19, .95);--sch-border: rgba(255, 255, 255, .1);--sch-border-light: rgba(255, 255, 255, .18);--sch-text: #fafafa;--sch-text-secondary: #a1a1aa;--sch-text-muted: #71717a;--sch-accent: #10b981;--sch-card-bg: rgba(20, 20, 22, .95);--sch-slot-bg: rgba(10, 10, 11, .8);--sch-btn-bg: #fafafa;--sch-btn-text: #0a0a0b}[data-theme=light] .schedule-page,[data-theme=light] .admin-page,[data-theme=light] .admin-login-page{--sch-bg: #fafafa;--sch-surface: #ffffff;--sch-border: rgba(0, 0, 0, .1);--sch-border-light: rgba(0, 0, 0, .15);--sch-text: #18181b;--sch-text-secondary: #52525b;--sch-text-muted: #71717a;--sch-accent: #10b981;--sch-card-bg: #ffffff;--sch-slot-bg: #f4f4f5;--sch-btn-bg: #18181b;--sch-btn-text: #fafafa}.schedule-page{min-height:100vh;background:var(--sch-bg);padding:16px;color:var(--sch-text)}@media (min-width: 768px){.schedule-page{padding:32px}}.schedule-header{max-width:1200px;margin:0 auto 32px;display:flex;align-items:center;justify-content:space-between}.schedule-header-left{display:flex;align-items:center;gap:12px}.schedule-logo{width:40px;height:40px;border-radius:10px;background:var(--sch-surface);border:1px solid var(--sch-border);display:flex;align-items:center;justify-content:center;color:var(--sch-text-secondary)}.schedule-title{font-size:20px;font-weight:600;color:var(--sch-text)}.schedule-subtitle{font-size:14px;color:var(--sch-text-muted)}.schedule-header-right{display:flex;align-items:center;gap:12px}.theme-toggle-btn,.lang-toggle-btn{height:36px;border-radius:10px;background:var(--sch-slot-bg);border:1px solid var(--sch-border);color:var(--sch-text-secondary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.theme-toggle-btn{width:36px}.lang-toggle-btn{padding:0 14px;font-size:13px;font-weight:600}.theme-toggle-btn:hover,.lang-toggle-btn:hover{background:var(--sch-surface);border-color:var(--sch-border-light);color:var(--sch-text)}.schedule-back-link{display:flex;align-items:center;gap:8px;height:36px;padding:0 14px;border-radius:10px;background:transparent;border:1px solid var(--sch-border);color:var(--sch-text-secondary);font-size:13px;font-weight:500;text-decoration:none;transition:all .2s ease}.schedule-back-link:hover{background:var(--sch-surface);border-color:var(--sch-border-light);color:var(--sch-text)}.schedule-main{max-width:1200px;margin:0 auto}.schedule-desktop{display:none}@media (min-width: 1024px){.schedule-desktop{display:grid;grid-template-columns:1fr 1fr;gap:32px}.schedule-mobile{display:none}}.schedule-card{background:var(--sch-surface);border:1px solid var(--sch-border);border-radius:16px;padding:24px}.schedule-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.schedule-month{font-size:24px;font-weight:600;color:var(--sch-text)}.schedule-nav{display:flex;align-items:center;gap:8px}.schedule-today-btn{padding:8px 16px;border-radius:8px;background:var(--sch-slot-bg);border:1px solid var(--sch-border);color:var(--sch-text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.schedule-today-btn:hover{background:var(--sch-surface);color:var(--sch-text)}.schedule-nav-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--sch-slot-bg);border:1px solid var(--sch-border);color:var(--sch-text-secondary);cursor:pointer;transition:all .2s ease}.schedule-nav-btn:hover{background:var(--sch-surface);color:var(--sch-text)}.schedule-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px}.schedule-weekday{text-align:center;font-size:13px;font-weight:600;color:var(--sch-text-muted);padding:8px}.schedule-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.schedule-day{aspect-ratio:1;border-radius:10px;background:transparent;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:4px;transition:all .2s ease;position:relative}.schedule-day:hover:not(.past):not(.other-month){background:var(--sch-surface)}.schedule-day.other-month{opacity:.3}.schedule-day.past{opacity:.4;cursor:not-allowed}.schedule-day.today .day-number{position:relative}.schedule-day.today .day-number:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--sch-accent);border-radius:50%}.schedule-day.selected{background:#10b98126;box-shadow:0 0 0 2px var(--sch-accent)}.schedule-day.selected .day-number{color:var(--sch-accent);font-weight:700}[data-theme=light] .schedule-day.selected{background:#10b9811a}[data-theme=light] .schedule-card{box-shadow:0 1px 3px #0000000f;border-color:#00000014}[data-theme=light] .slot-item{border-color:#00000014}[data-theme=light] .slot-item.clickable:hover{border-color:#00000026}[data-theme=light] .schedule-legend{border-color:#00000014}[data-theme=light] .slots-list.scrollable::-webkit-scrollbar{width:6px}[data-theme=light] .slots-list.scrollable::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}[data-theme=light] .slots-list.scrollable::-webkit-scrollbar-track{background:transparent}.day-number{font-size:14px;font-weight:600;color:var(--sch-text)}.day-indicators{display:flex;gap:3px}.indicator{width:5px;height:5px;border-radius:50%}.indicator.pending{background:#fbbf24}.indicator.booked{background:#6fcf97e6}.schedule-legend{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:24px;padding-top:16px;border-top:1px solid var(--sch-border)}.legend-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.legend-dot{width:8px;height:8px;border-radius:50%}.legend-dot.pending{background:#fbbf24}.legend-dot.booked{background:#6fcf97e6}.schedule-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;color:var(--text-muted)}.schedule-empty svg{margin-bottom:16px;opacity:.5}.empty-title{font-size:18px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.empty-sub{font-size:14px}.dayview-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.dayview-date{font-size:24px;font-weight:600;color:var(--sch-text)}.dayview-day{font-size:14px;color:var(--sch-text-secondary);margin-top:4px;display:flex;align-items:center;gap:8px}.today-badge{padding:2px 8px;border-radius:4px;background:var(--sch-accent);color:#fff;font-size:12px;font-weight:600}.dayview-close{padding:8px;border-radius:8px;background:transparent;border:none;color:var(--text-muted);cursor:pointer}.slots-list{display:flex;flex-direction:column;gap:12px}.slots-list.scrollable{max-height:500px;overflow-y:auto;padding-right:8px}.slot-item{display:flex;align-items:center;justify-content:space-between;padding:16px;border-radius:12px;background:var(--sch-slot-bg);border:1px solid var(--sch-border);transition:all .2s ease}.slot-item.clickable{cursor:pointer}.slot-item.clickable:hover{border-color:var(--border-light)}.slot-item.available{background:#6fcf9714;border-color:#6fcf9740}.slot-item.pending{background:#fbbf241a;border-color:#fbbf24}.slot-item.booked,.slot-item.past{opacity:.6;cursor:not-allowed}.slot-left{display:flex;align-items:center;gap:12px}.slot-time{font-size:15px;font-weight:600;color:var(--sch-text)}.slot-status{font-size:12px;font-weight:600;padding:4px 10px;border-radius:6px}.slot-status.available{background:#6fcf9726;color:#6ee7b7}.slot-status.pending{background:#fbbf2426;color:#fcd34d}.slot-status.booked{background:var(--sch-surface);color:var(--sch-text-secondary)}.slot-book-btn{padding:10px 20px;border-radius:8px;background:var(--sch-accent);color:#fff;font-size:14px;font-weight:600;border:none;cursor:pointer;transition:all .2s ease}.slot-book-btn:hover{opacity:.9}.slot-pending-indicator{display:flex;align-items:center;gap:6px;font-size:13px;color:#fcd34d}.pending-dot{width:8px;height:8px;border-radius:50%;background:#fbbf24;animation:pulse 2s ease-in-out infinite}.schedule-mobile-modal{position:fixed;inset:0;z-index:50;background:var(--bg);display:flex;flex-direction:column}.mobile-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--border);background:var(--surface)}.mobile-modal-header h2{font-size:18px;font-weight:600;color:var(--text)}.mobile-modal-close{padding:8px;border-radius:8px;background:var(--bg);border:none;color:var(--text-secondary);cursor:pointer}.mobile-modal-content{flex:1;overflow-y:auto;padding:16px}.modal-overlay{position:fixed;inset:0;z-index:100;background:#00000073;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:16px}.modal-content{background:#0f0f0feb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:24px;width:100%;max-width:420px;animation:fadeIn .3s ease;box-shadow:0 25px 50px -12px #00000080;color:#fafafa}[data-theme=light] .modal-content{background:#fffffff2;border:1px solid rgba(0,0,0,.08);color:#000000d9;box-shadow:0 25px 50px -12px #00000026}[data-theme=light] .modal-header h3{color:#18181b}[data-theme=light] .modal-datetime{color:#52525b}[data-theme=light] .form-group label{color:#18181b}[data-theme=light] .form-group input,[data-theme=light] .form-group textarea{background:#00000008;border-color:#0000001a;color:#18181b}[data-theme=light] .form-group input:focus,[data-theme=light] .form-group textarea:focus{border-color:#00000040;background:#00000005}[data-theme=light] .form-group input::placeholder,[data-theme=light] .form-group textarea::placeholder{color:#71717a}[data-theme=light] .btn-secondary{background:#f4f4f5;border-color:#e4e4e7;color:#18181b}[data-theme=light] .btn-secondary:hover{background:#e4e4e7}[data-theme=light] .checkbox-label span:last-child{color:#52525b}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.modal-header h3{font-size:20px;font-weight:600;color:var(--text)}.modal-datetime{font-size:14px;color:var(--text-secondary);margin-top:4px}.modal-close{padding:8px;border-radius:8px;background:transparent;border:none;color:var(--text-muted);cursor:pointer}.modal-error{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);margin-bottom:24px}.modal-error svg{color:#fca5a5;flex-shrink:0}.modal-error p{font-size:14px;color:#fca5a5}.modal-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:600;color:var(--text)}.form-group .required{color:#ef4444}.form-group input,.form-group textarea{padding:12px 16px;border-radius:10px;background:#ffffff08;border:1px solid rgba(255,255,255,.1);color:var(--text);font-size:15px;transition:all .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#ffffff40;background:#ffffff0d}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-hint{display:block;margin-top:6px;font-size:12px;color:var(--sch-text-muted);opacity:.7}.char-count{float:right;font-size:12px;font-weight:400;color:var(--sch-text-muted);opacity:.7}.form-group input.error{border-color:#ef4444}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:14px;color:var(--text-secondary);padding-top:8px}.checkbox-label input{display:none}.checkbox-label .checkmark{width:20px;height:20px;border-radius:6px;border:2px solid var(--border);background:var(--bg);display:flex;align-items:center;justify-content:center;transition:all .2s ease}.checkbox-label input:checked+.checkmark{background:var(--text);border-color:var(--text)}.checkbox-label input:checked+.checkmark:after{content:"✓";color:var(--bg);font-size:12px;font-weight:700}.modal-actions{display:flex;gap:12px;margin-top:8px}.modal-actions .btn-secondary{flex:1;padding:14px;border-radius:10px;background:var(--bg);border:1px solid var(--border);color:var(--text);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-actions .btn-secondary:hover{background:var(--surface)}.modal-actions .btn-primary{flex:1;padding:14px;border-radius:10px;background:var(--text);border:none;color:var(--bg);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed}.modal-success{text-align:center;padding:32px 0}.success-icon{width:64px;height:64px;border-radius:50%;background:#6fcf9726;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.success-icon svg{color:#6ee7b7}.modal-success h3{font-size:20px;font-weight:600;color:var(--text);margin-bottom:8px}.modal-success p{font-size:14px;color:var(--text-secondary)}.schedule-footer{max-width:1200px;margin:48px auto 0;padding-top:24px;border-top:1px solid var(--sch-border);text-align:center}.schedule-footer p{font-size:14px;color:var(--sch-text-muted)}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.admin-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--sch-bg);padding:20px;color:var(--sch-text)}.admin-login-card{width:100%;max-width:400px;background:var(--card-bg);border:1px solid var(--border);border-radius:16px;padding:40px}.admin-login-header{text-align:center;margin-bottom:32px}.admin-login-icon{width:56px;height:56px;background:var(--accent);border-radius:14px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:#fff}.admin-login-header h1{font-size:24px;font-weight:600;color:var(--text);margin-bottom:4px}.admin-login-header p{font-size:14px;color:var(--text-muted)}.admin-login-form{display:flex;flex-direction:column;gap:20px}.admin-login-error{background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:8px;padding:12px}.admin-login-error p{color:#dc2626;font-size:14px;text-align:center}.admin-login-btn{width:100%;padding:14px;background:var(--accent);color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s}.admin-login-btn:hover:not(:disabled){opacity:.9}.admin-login-btn:disabled{opacity:.5;cursor:not-allowed}.admin-login-note{text-align:center;font-size:12px;color:var(--text-muted);margin-top:24px}.admin-page{min-height:100vh;background:var(--sch-bg);padding:20px;color:var(--sch-text)}.admin-header{max-width:1400px;margin:0 auto 24px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;background:#0003;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:16px;border:1px solid var(--sch-border)}[data-theme=light] .admin-header{background:#ffffffb3}.admin-header-left{display:flex;align-items:center;gap:12px}.admin-logo{width:40px;height:40px;background:var(--accent);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff}.admin-header-left h1{font-size:20px;font-weight:600;color:var(--text)}.admin-header-left p{font-size:13px;color:var(--text-muted)}.admin-header-right{display:flex;align-items:center;gap:12px}.admin-link{padding:8px 16px;color:var(--text-secondary);font-size:14px;text-decoration:none;border-radius:8px;transition:all .2s}.admin-link:hover{background:var(--card-bg);color:var(--text)}.toolbar-btn{height:36px;padding:0 14px;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:10px;background:var(--sch-slot-bg);border:1px solid var(--sch-border);color:var(--sch-text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none}.toolbar-btn.icon-only{width:36px;padding:0}.toolbar-btn:hover{background:var(--sch-surface);border-color:var(--sch-border-light);color:var(--sch-text)}.toolbar-btn.danger:hover{background:#dc26261a;border-color:#dc26264d;color:#dc2626}.admin-stats{max-width:1400px;margin:0 auto 24px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 768px){.admin-stats{grid-template-columns:repeat(2,1fr)}}.stat-card{background:var(--sch-card-bg);border:1px solid var(--sch-border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:4px;position:relative;cursor:pointer;transition:all .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.stat-indicator{position:absolute;top:12px;left:12px;width:8px;height:8px;border-radius:50%}.stat-indicator.pending{background:#f59e0b}.stat-indicator.success{background:#10b981}.stat-indicator.info{background:#3b82f6}.stat-indicator.danger{background:#ef4444}.stat-value{font-size:36px;font-weight:700;color:var(--sch-text);line-height:1;margin-top:8px}.stat-label{font-size:13px;color:var(--sch-text-muted);text-transform:none;letter-spacing:0}.stat-card.pending .stat-value{color:#f59e0b}.stat-card.success .stat-value{color:#10b981}.stat-card.info .stat-value{color:#3b82f6}.stat-card.danger .stat-value{color:#ef4444}.admin-tabs-container{max-width:1400px;margin:0 auto 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--sch-border);padding-bottom:0;position:relative}.admin-tabs{display:flex;gap:4px}.admin-tab{display:flex;align-items:center;gap:8px;padding:10px 16px;background:transparent;border:none;border-radius:8px;color:var(--sch-text-muted);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:-1px}.admin-tab:hover{background:var(--sch-slot-bg);color:var(--sch-text)}.admin-tab.active{background:var(--sch-surface);color:var(--accent)}.tab-badge{background:var(--accent);color:#fff;font-size:11px;font-weight:600;padding:2px 7px;border-radius:10px}.duration-dropdown{display:flex;align-items:center;gap:6px;height:36px;padding:0 12px;background:var(--sch-slot-bg);border:1px solid var(--sch-border);border-radius:10px;color:var(--sch-text-secondary);font-size:13px;cursor:pointer;transition:all .2s;margin-bottom:8px}.duration-dropdown:hover{background:var(--sch-surface);border-color:var(--sch-border-light)}.duration-label{color:var(--sch-text-muted)}.duration-value{font-weight:600;color:var(--accent)}.admin-content{max-width:1400px;margin:0 auto}.admin-card{background:var(--sch-card-bg);border:1px solid var(--sch-border);border-radius:14px;padding:24px;margin-bottom:24px}.admin-card-title{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:var(--text);margin-bottom:20px}.pulse-dot{width:8px;height:8px;background:#f59e0b;border-radius:50%;animation:pulse 2s infinite}.success-dot{width:8px;height:8px;background:#10b981;border-radius:50%}.info-dot{width:8px;height:8px;background:#3b82f6;border-radius:50%}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.title-badge{background:var(--bg);color:var(--text-muted);font-size:12px;font-weight:500;padding:4px 10px;border-radius:6px;margin-left:auto}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px;gap:12px}.empty-state-icon{color:var(--sch-text-muted);opacity:.5;margin-bottom:8px}.empty-state-title{font-size:16px;font-weight:600;color:var(--sch-text);margin:0}.empty-state-desc{font-size:14px;color:var(--sch-text-muted);margin:0;max-width:280px}.empty-state-btn{margin-top:16px;padding:10px 20px;background:var(--sch-slot-bg);border:1px solid var(--sch-border);border-radius:10px;color:var(--sch-text);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.empty-state-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}.admin-empty{text-align:center;padding:40px;color:var(--sch-text-muted);font-size:14px}.requests-list{display:flex;flex-direction:column;gap:12px}.request-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--bg);border:1px solid var(--border);border-radius:10px;gap:16px}.request-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.request-number{width:28px;height:28px;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--text-muted);flex-shrink:0}.request-avatar{width:40px;height:40px;background:var(--accent);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:16px;flex-shrink:0}.request-details{min-width:0}.request-details h4{font-size:15px;font-weight:600;color:var(--text);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.request-details p{font-size:13px;color:var(--text-secondary);margin-bottom:4px}.request-meta{display:flex;gap:8px;flex-wrap:wrap}.request-meta span{font-size:12px;color:var(--text-muted);background:var(--card-bg);padding:2px 8px;border-radius:4px}.request-actions{display:flex;gap:8px;flex-shrink:0}.btn-reject,.btn-approve{width:40px;height:40px;border:none;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.btn-reject{background:#ef44441a;color:#ef4444}.btn-reject:hover{background:#ef444433}.btn-approve{background:#10b9811a;color:#10b981}.btn-approve:hover{background:#10b98133}.admin-calendar-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 1024px){.admin-calendar-grid{grid-template-columns:1fr}}.admin-appointments{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 1024px){.admin-appointments{grid-template-columns:1fr}}.appointments-grid{display:grid;gap:12px}.appointment-card{padding:16px;background:var(--bg);border:1px solid var(--border);border-radius:10px}.appointment-card.today{border-left:3px solid #10b981}.apt-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.apt-avatar{width:36px;height:36px;background:var(--accent);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:14px;flex-shrink:0}.apt-info{flex:1;min-width:0}.apt-info h4{font-size:14px;font-weight:600;color:var(--text)}.apt-info p{font-size:12px;color:var(--text-muted)}.apt-cancel{width:32px;height:32px;background:transparent;border:1px solid var(--border);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;transition:all .2s}.apt-cancel:hover{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.apt-footer{display:flex;justify-content:space-between;align-items:center}.apt-time{font-size:14px;font-weight:600;color:var(--text)}.apt-status{font-size:12px;color:#10b981;background:#10b9811a;padding:4px 10px;border-radius:6px}.future-list{display:flex;flex-direction:column;gap:8px}.future-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:14px 16px;background:var(--sch-slot-bg);border:1px solid var(--sch-border);border-radius:10px;transition:all .2s}.future-item:hover{background:var(--sch-surface)}.future-item:hover .future-cancel{opacity:1}.future-info{display:flex;align-items:center;gap:10px}.future-name{font-size:14px;font-weight:600;color:var(--sch-text)}.future-chip{font-size:11px;font-weight:500;padding:3px 8px;border-radius:6px;background:#3b82f626;color:#3b82f6}.future-meta{display:flex;align-items:center}.future-date{font-size:13px;color:var(--sch-text-muted)}.future-cancel{width:32px;height:32px;background:transparent;border:1px solid transparent;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--sch-text-muted);cursor:pointer;transition:all .2s;opacity:0}.future-cancel:hover{background:#ef44441a;color:#ef4444}.history-list{display:flex;flex-direction:column;gap:12px}.history-item{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--sch-card-bg);border:1px solid var(--sch-border);border-radius:12px;transition:all .2s}.history-item:hover{border-color:var(--sch-border-light)}.history-item-header{display:flex;align-items:center;gap:12px}.history-avatar{width:44px;height:44px;border-radius:12px;background:#10b9811a;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:18px;color:#10b981;flex-shrink:0}.history-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.history-name{font-size:15px;font-weight:600;color:var(--sch-text)}.history-contact{font-size:13px;color:var(--sch-text-muted)}.history-item-footer{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--sch-border)}.history-datetime{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--sch-text-secondary)}.history-datetime svg{width:14px;height:14px;opacity:.5}.history-date{font-weight:500}.history-time{color:var(--sch-text-muted)}.history-status{display:flex;align-items:center}.status-chip{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:500;padding:4px 10px;border-radius:6px}.status-chip.completed{background:#10b9811a;color:#10b981}.pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:24px;padding-top:16px;border-top:1px solid var(--sch-border)}.pagination-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--sch-slot-bg);border:1px solid var(--sch-border);border-radius:8px;color:var(--sch-text-secondary);cursor:pointer;transition:all .2s}.pagination-btn:hover:not(:disabled){background:var(--sch-surface);color:var(--sch-text)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-pages{display:flex;align-items:center;gap:4px}.pagination-page{min-width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--sch-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.pagination-page:hover{background:var(--sch-slot-bg);color:var(--sch-text)}.pagination-page.active{background:var(--accent);border-color:var(--accent);color:#fff}.pagination-ellipsis{padding:0 4px;color:var(--sch-text-muted)}.pagination-info{margin-left:12px;font-size:13px;color:var(--sch-text-muted)}.stat-indicator.muted{background:var(--sch-text-muted);opacity:.5}.tab-badge.muted,.title-badge.muted{background:var(--sch-text-muted);opacity:.7}@media (max-width: 768px){.admin-page{padding:12px}.admin-header{padding:12px;margin-bottom:12px;border-radius:12px;gap:12px}.admin-header-left{gap:10px}.admin-header-left h1{font-size:15px}.admin-header-left p{font-size:11px}.admin-logo{width:32px;height:32px}.admin-logo svg{width:16px;height:16px}.admin-header-right{gap:8px}.toolbar-btn .btn-text{display:none}.toolbar-btn{padding:0;width:36px;height:36px}.admin-stats{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:12px}.stat-card{padding:16px}.stat-value{font-size:28px}.stat-label{font-size:12px}.admin-tabs-container{margin-bottom:16px;flex-direction:column;align-items:stretch;gap:12px;border-bottom:none}.admin-tabs{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;gap:6px;padding:4px;background:var(--sch-slot-bg);border-radius:10px;border:1px solid var(--sch-border)}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab{flex:1;justify-content:center;white-space:nowrap;padding:10px 12px;font-size:12px;border-radius:8px;margin-bottom:0}.admin-tab.active{background:var(--sch-card-bg);box-shadow:0 1px 3px #0000001a}.admin-tab svg{display:none}.tab-badge{font-size:10px;padding:1px 5px}.duration-dropdown{position:static;transform:none;width:100%;justify-content:center;padding:10px 16px;height:auto;font-size:13px}.duration-label{display:inline}.history-item{padding:14px}.history-item-footer{flex-direction:column;align-items:flex-start;gap:10px}.history-datetime{font-size:12px}.pagination{flex-wrap:wrap;gap:6px}.pagination-info{width:100%;text-align:center;margin:8px 0 0}.pagination-btn,.pagination-page{min-width:32px;height:32px}.request-item{flex-direction:column;gap:12px}.request-actions{width:100%;justify-content:flex-end}.future-item{grid-template-columns:1fr auto}.future-meta{grid-column:1;grid-row:2}.future-cancel{opacity:1;grid-row:1 / 3}.future-chip{display:none}.admin-card{padding:16px;border-radius:12px;margin-bottom:16px}.admin-card-title{font-size:14px;margin-bottom:12px}.admin-calendar-grid{grid-template-columns:1fr;gap:16px}.schedule-card{padding:16px}.schedule-month{font-size:18px}.schedule-nav{gap:8px}.schedule-nav-btn{width:40px;height:40px}.schedule-today-btn{padding:6px 12px;font-size:12px}.schedule-day{height:44px;font-size:13px}.admin-appointments{display:flex;flex-direction:column;gap:16px}.appointments-grid{grid-template-columns:1fr}}.dayview-timezone{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--sch-text-muted);padding:8px 0;border-bottom:1px solid var(--sch-border);margin-bottom:12px}.past-slots-toggle{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;margin-bottom:12px;background:var(--sch-slot-bg);border:1px dashed var(--sch-border);border-radius:8px;color:var(--sch-text-muted);font-size:13px;cursor:pointer;transition:all .2s}.past-slots-toggle:hover{background:var(--sch-surface);border-style:solid;color:var(--sch-text)}.dayview-close{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--sch-slot-bg);border:1px solid var(--sch-border);border-radius:10px;color:var(--sch-text-secondary);cursor:pointer;transition:all .2s}.dayview-close:hover{background:var(--sch-surface);color:var(--sch-text)}.modal-warning{font-size:13px!important;color:#f59e0b!important;margin-top:4px}.cancel-info{display:flex;align-items:center;gap:16px;padding:16px;background:var(--bg);border:1px solid var(--border);border-radius:10px;margin-bottom:20px}.cancel-avatar{width:48px;height:48px;background:var(--accent);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:18px;flex-shrink:0}.cancel-details h4{font-size:16px;font-weight:600;color:var(--text);margin-bottom:2px}.cancel-details p{font-size:14px;color:var(--text-secondary);margin-bottom:4px}.cancel-details span{font-size:13px;color:var(--text-muted)}.modal-actions{display:flex;gap:12px;margin-top:20px}.btn-secondary{flex:1;padding:12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:var(--card-bg)}.btn-danger{flex:1;padding:12px;background:#ef4444;border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.settings-modal{max-width:480px}.settings-content{display:flex;flex-direction:column;gap:24px;margin-bottom:24px}.settings-group{display:flex;flex-direction:column;gap:12px}.settings-group label{font-size:15px;font-weight:600;color:var(--text)}.settings-hint{font-size:13px;color:var(--text-muted);margin-top:-8px}.duration-options{display:flex;gap:12px}.duration-btn{flex:1;padding:16px 24px;border-radius:12px;background:#ffffff08;border:2px solid var(--border);color:var(--text-secondary);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.duration-btn:hover{background:#ffffff0d;border-color:#ffffff26}.duration-btn.active{background:#10b9811a;border-color:#10b981;color:#10b981}.settings-preview{padding:16px;border-radius:10px;background:#ffffff05;border:1px solid var(--border)}.settings-preview h4{font-size:13px;font-weight:600;color:var(--text-muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.settings-preview p{font-size:14px;color:var(--text-secondary)}.settings-badge{background:#ffffff14;color:var(--text-muted);font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px;margin-left:8px}
