.navbar{padding:1.5rem 0;background-color:var(--color-bg);position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(0,0,0,.05)}.nav-content{display:flex;justify-content:space-between;align-items:center;max-width:95%!important}.nav-logo{font-family:var(--font-heading);font-size:1.5rem;font-weight:600;letter-spacing:1px}.nav-links{display:flex;gap:2rem;align-items:center}.nav-links a{font-size:.95rem;font-weight:500;transition:opacity .2s}.nav-links a:hover{opacity:.7}.nav-btn{padding:.5rem 1rem}:root{--admin-sidebar-bg: #343a40;--admin-sidebar-hover: #495057;--admin-sidebar-active: #007bff;--admin-header-bg: #ffffff;--admin-content-bg: #f4f6f9;--admin-text-dark: #343a40;--admin-text-muted: #6c757d;--admin-border-color: #dee2e6;--admin-sidebar-text: #c2c7d0}body{margin:0;font-family:Source Sans Pro,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--admin-content-bg)}.admin-layout-container{display:flex;min-height:100vh}.admin-sidebar{width:250px;background-color:var(--admin-sidebar-bg);color:var(--admin-sidebar-text);display:flex;flex-direction:column;box-shadow:0 14px 28px #00000040,0 10px 10px #00000038;transition:all .3s ease;z-index:1030}.admin-sidebar-header{height:57px;display:flex;align-items:center;padding:0 1rem;border-bottom:1px solid #4b545c;background-color:transparent}.admin-sidebar-title{color:#fff;font-size:1.25rem;font-weight:300;display:flex;align-items:center;gap:.75rem;margin:0}.admin-sidebar-title strong{font-weight:600}.admin-sidebar-nav{flex:1;padding:.75rem .5rem;overflow-y:auto}.admin-nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:var(--admin-sidebar-text);text-decoration:none;border-radius:.25rem;margin-bottom:.25rem;transition:background-color .2s,color .2s;font-size:.9rem}.admin-nav-item:hover{background-color:var(--admin-sidebar-hover);color:#fff}.admin-nav-item.active{background-color:var(--admin-sidebar-active);color:#fff}.admin-sidebar-footer{padding:1rem;border-top:1px solid #4b545c}.admin-logout-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background-color:#dc3545;border:none;border-radius:.25rem;color:#fff;font-weight:600;cursor:pointer;transition:background-color .2s}.admin-logout-btn:hover{background-color:#c82333}.admin-main-content{flex:1;display:flex;flex-direction:column;min-width:0}.admin-header{height:57px;background-color:var(--admin-header-bg);border-bottom:1px solid var(--admin-border-color);display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;position:sticky;top:0;z-index:1020}.admin-header-title{font-size:1.1rem;font-weight:400;color:var(--admin-text-dark);margin:0}.admin-header-actions{display:flex;align-items:center;gap:1.5rem}.admin-user-greeting{font-size:.9rem;color:var(--admin-text-muted)}.admin-settings-btn{background:none;border:none;color:var(--admin-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:.5rem;border-radius:50%;transition:background-color .2s}.admin-settings-btn:hover{background-color:#f8f9fa;color:var(--admin-text-dark)}.admin-content-area{padding:1.5rem;flex:1}.admin-card{background:#fff;border-radius:.25rem;border:1px solid rgba(0,0,0,.125);box-shadow:0 0 1px #00000020,0 1px 3px #0003;margin-bottom:1.5rem;display:flex;flex-direction:column}.admin-card-header{padding:.75rem 1.25rem;border-bottom:1px solid rgba(0,0,0,.125);display:flex;align-items:center;justify-content:space-between}.admin-card-title{margin:0;font-size:1.1rem;font-weight:400}.admin-card-body{padding:1.25rem}.stats-box{padding:1rem;border-radius:.25rem;color:#fff;position:relative;overflow:hidden;margin-bottom:1rem;box-shadow:0 0 1px #00000020,0 1px 3px #0003}.stats-box.bg-info{background-color:#17a2b8}.stats-box.bg-success{background-color:#28a745}.stats-box.bg-warning{background-color:#ffc107;color:#343a40}.stats-box.bg-danger{background-color:#dc3545}.stats-box .stats-label{font-size:.9rem;margin-bottom:.5rem;opacity:.8}.stats-box .stats-value{font-size:2rem;font-weight:700;margin:0}.admin-form-group{margin-bottom:1rem}.admin-input,.admin-select{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;line-height:1.5;color:#495057;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.admin-input:focus,.admin-select:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem #007bff40}.admin-btn-primary{color:#fff;background-color:#007bff;border-color:#007bff;padding:.375rem .75rem;border-radius:.25rem;cursor:pointer;font-weight:600;transition:background-color .15s}.admin-btn-primary:hover{background-color:#0069d9}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.bg-primary{background-color:#007bff!important;color:#fff}.bg-success{background-color:#28a745!important;color:#fff}.bg-info{background-color:#17a2b8!important;color:#fff}.bg-warning{background-color:#ffc107!important;color:#1f2d3d}.bg-danger{background-color:#dc3545!important;color:#fff}.text-muted{color:#6c757d!important}.text-danger{color:#dc3545!important}.border-bottom{border-bottom:1px solid #dee2e6!important}@media(max-width:768px){.admin-sidebar{width:0;overflow:hidden}.admin-sidebar.open{width:250px}}.photo-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,110px);justify-content:flex-start}.photo-grid-item{position:relative;width:110px;background:#fff;border-radius:8px;overflow:hidden;border:1px solid #f1f1f1;box-shadow:0 1px 3px #0000001a;transition:all .3s ease}.photo-grid-item:hover{box-shadow:0 4px 6px #0000001a}.photo-grid-item .image-wrapper{aspect-ratio:1 / 1;width:100%;overflow:hidden;background-color:#f3f4f6;position:relative}.photo-grid-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.photo-grid-item:hover img{transform:scale(1.1)}.photo-grid-item .overlay{position:absolute;inset:0;background-color:#0006;opacity:0;transition:opacity .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;pointer-events:none}.photo-grid-item:hover .overlay{opacity:1;pointer-events:auto}.photo-grid-item .photo-info{padding:.5rem}.photo-grid-item .photo-name{font-size:10px;color:#9ca3af;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0}.photo-grid-item .overlay button{padding:.5rem;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .2s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.photo-grid-item .overlay .view-btn{background-color:#fff3}.photo-grid-item .overlay .view-btn:hover{background-color:#fff6}.photo-grid-item .overlay .delete-btn{background-color:#dc3545cc}.photo-grid-item .overlay .delete-btn:hover{background-color:#dc3545}.hero-split{display:flex;height:calc(100vh - 80px);width:100%}.hero-half{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;background-size:cover;background-position:center;transition:all .5s cubic-bezier(.16,1,.3,1);overflow:hidden}.hero-half:hover{flex:1.2}.hero-half:before{content:"";position:absolute;inset:0;background:#f7f5f066;z-index:1;transition:background .3s ease}.hero-half:hover:before{background:#f7f5f033}.hero-content{position:relative;z-index:2;text-align:center}.hero-content h1{font-size:3rem;margin-bottom:1rem}.hero-content p{font-size:1rem;margin-bottom:2rem;font-weight:500;opacity:.9}.hero-family{background-color:#efebe0}.hero-baby{background-color:#f7f5f0;background-image:url(/photography-uu/assets/newborn-hero-CVfJXCCB.png);background-position:40% center}.hero-professional{background-color:#e0e0e0}.about-preview{padding:8rem 0;background-color:#fafafa}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.about-text-content{text-align:left}.subtitle{color:var(--color-accent);font-weight:700;font-size:.9rem;letter-spacing:3px;margin-bottom:2rem;text-transform:uppercase}.about-text-content h2{font-size:2.2rem;line-height:1.5;margin-bottom:2rem;color:var(--color-text)}.about-description{font-size:1.05rem;color:#666;line-height:1.9;font-weight:300}.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.contact-card{display:flex;flex-direction:column;align-items:flex-start;gap:1.2rem;padding:2rem;background:#fff;border-radius:16px;text-decoration:none;color:inherit;box-shadow:0 10px 40px #00000008;transition:all .4s cubic-bezier(.16,1,.3,1);border:1px solid rgba(155,140,122,.05)}.contact-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #9b8c7a1f;border-color:#9b8c7a33}.contact-icon{width:52px;height:52px;border-radius:12px;background-color:#9b8c7a14;display:flex;align-items:center;justify-content:center;color:var(--color-accent);transition:all .4s ease}.contact-card:hover .contact-icon{background-color:var(--color-accent);color:#fff;transform:scale(1.05)}.contact-info h3{font-size:.85rem;color:#999;margin-bottom:.4rem;text-transform:uppercase;letter-spacing:1px;font-weight:600}.contact-info p{font-size:1.05rem;color:var(--color-text);margin:0;font-weight:500}@media(max-width:1024px){.hero-split{flex-direction:column;height:auto}.hero-half{min-height:400px;padding:4rem 2rem}.hero-half:hover{flex:1}}@media(max-width:992px){.about-grid{grid-template-columns:1fr;gap:3.5rem;padding:0 2rem}.about-text-content{text-align:center}}@media(max-width:576px){.contact-cards{grid-template-columns:1fr;gap:1rem}.hero-content h1{font-size:2.2rem}}.booking-page{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;padding:4rem 2rem}.booking-card{background-color:#fff;width:100%;max-width:600px;border-radius:12px;box-shadow:0 20px 40px #0000000a;overflow:hidden}.progress-bar{height:4px;background-color:#f0f0f0;width:100%}.progress{height:100%;background-color:var(--color-accent);transition:width .4s cubic-bezier(.4,0,.2,1)}.booking-content{padding:3rem 4rem}.step{display:flex;flex-direction:column}.fade-in{animation:fadeIn .5s ease-out forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.step h2{font-size:1.8rem;margin-bottom:.5rem;color:var(--color-text)}.step-desc{color:#666;margin-bottom:2rem;font-size:.95rem}.service-options{display:flex;flex-direction:column;gap:1rem}.option-card{background:transparent;border:1px solid #E0E0E0;border-radius:8px;padding:1.5rem;text-align:left;transition:all .2s ease;cursor:pointer}.option-card h3{margin-bottom:.25rem;font-size:1.2rem;font-family:var(--font-body)}.option-card p{color:#888;font-size:.9rem;margin:0}.option-card:hover{border-color:var(--color-accent);background-color:#9b8c7a05}.option-card.selected{border-color:var(--color-accent);background-color:#9b8c7a0d;box-shadow:0 0 0 1px var(--color-accent)}.date-options{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.date-btn{background:transparent;border:1px solid #E0E0E0;border-radius:30px;padding:.75rem 1.5rem;color:#444;transition:all .2s ease}.date-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.date-btn.selected{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff}.input-group{margin-bottom:1.5rem}input[type=text],textarea{width:100%;padding:1rem;border:none;border-bottom:1px solid #E0E0E0;background:transparent;font-family:inherit;font-size:1rem;transition:border-color .2s ease}input[type=text]:focus,textarea:focus{outline:none;border-bottom-color:var(--color-accent)}textarea{resize:vertical;min-height:80px}.step-actions{display:flex;justify-content:space-between;margin-top:1rem}.btn.outline{background-color:transparent;color:#666;padding-left:0}.btn.outline:hover{color:var(--color-text);transform:none}button:disabled{opacity:.5;cursor:not-allowed;background-color:#ccc}button:disabled:hover{transform:none;background-color:#ccc}.submit-btn{background-color:#2a2a2a}.submit-btn:hover:not(:disabled){background-color:#111}@media(max-width:768px){.booking-content{padding:2rem}}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999}.modal-content{background:#fff;padding:2.5rem;border-radius:16px;width:90%;max-width:400px;text-align:center;box-shadow:0 10px 30px #00000026}.modal-details{background:#f8f9fa;padding:1rem;border-radius:8px;margin:1.5rem 0;text-align:left}.modal-details p{margin:.5rem 0;color:#444}.admin-login-container{display:flex;min-height:100vh;background-color:#18181b;font-family:Inter,sans-serif;overflow:hidden}.admin-login-visual{display:none;position:relative;background-color:#18181b;overflow:hidden}@media(min-width:1024px){.admin-login-visual{display:flex;flex-direction:column;justify-content:flex-end;width:55%;padding:4rem}}.admin-login-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.05);transition:transform 20s ease-out}.admin-login-bg:hover{transform:scale(1)}.admin-login-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9),rgba(0,0,0,.2),transparent);z-index:10}.admin-login-overlay-side{position:absolute;inset:0;background:linear-gradient(to right,transparent,transparent,#18181b);z-index:10;opacity:.8}.admin-visual-content{position:relative;z-index:20}.admin-icon-container{display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;border-radius:1rem;background:#ffffff1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2);margin-bottom:1.5rem;box-shadow:0 25px 50px -12px #00000040}.admin-visual-title{font-size:2.25rem;color:#fff;font-weight:700;margin-bottom:1rem;line-height:1.25;letter-spacing:-.025em}@media(min-width:640px){.admin-visual-title{font-size:3rem}}.admin-visual-title-sub{color:#a1a1aa}.admin-visual-text{color:#a1a1aa;font-size:1.125rem;max-width:28rem;line-height:1.625}.admin-login-form-container{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;position:relative}@media(min-width:1024px){.admin-login-form-container{width:45%;padding:3rem}}.glow-blue{position:absolute;top:10%;right:-10%;width:30vh;height:30vh;border-radius:50%;background-color:#2563eb1a;filter:blur(100px);pointer-events:none;z-index:1}.glow-purple{position:absolute;bottom:10%;left:-10%;width:30vh;height:30vh;border-radius:50%;background-color:#4f46e51a;filter:blur(100px);pointer-events:none;z-index:1}.admin-form-wrapper{width:100%;max-width:380px;position:relative;z-index:10}.admin-mobile-icon{display:inline-flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:1rem;background:linear-gradient(to bottom right,#27272a,#18181b);border:1px solid rgba(255,255,255,.05);margin-bottom:1.5rem;box-shadow:inset 0 2px 4px #0000000f;position:relative;overflow:hidden}@media(min-width:1024px){.admin-mobile-icon{display:none}}.admin-form-title{font-size:1.875rem;font-weight:700;color:#fff;letter-spacing:-.025em;margin-bottom:.5rem}.admin-form-subtitle{color:#71717a;font-size:.875rem;font-weight:500;margin-bottom:2.5rem}.admin-error-box{margin-bottom:2rem;padding:1rem;border-radius:.75rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#f87171;font-size:.875rem;display:flex;align-items:center;gap:.75rem}.admin-error-icon-bg{background-color:#ef444433;padding:.375rem;border-radius:.5rem;flex-shrink:0}.admin-form{display:flex;flex-direction:column;gap:1.5rem}.admin-input-group{display:flex;flex-direction:column;gap:.5rem}.admin-input-label{font-size:.75rem;font-weight:600;color:#a1a1aa;text-transform:uppercase;letter-spacing:.05em;margin-left:.25rem}.admin-input-wrapper{position:relative;display:flex;align-items:center}.admin-input-icon{position:absolute;top:0;bottom:0;left:0;padding-left:1rem;display:flex;align-items:center;pointer-events:none;color:#71717a;transition:color .2s}.admin-input-wrapper:focus-within .admin-input-icon{color:#fff}.admin-input{display:block;width:100%;padding:1rem 1rem 1rem 3.5rem;background-color:#18181b66;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;color:#f4f4f5;font-size:.875rem;transition:all .2s;outline:none;box-shadow:inset 0 2px 4px #0000000f}.admin-input::placeholder{color:#52525b}.admin-input:focus{border-color:#71717a;background-color:#27272a99;box-shadow:0 0 0 1px #a1a1aa}.admin-captcha-wrapper{display:flex;gap:.75rem;height:56px}.admin-captcha-input{flex:1;text-align:center;letter-spacing:.1em;text-transform:uppercase;padding:1rem;background-color:#18181b66;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;color:#f4f4f5;font-size:.875rem;transition:all .2s;outline:none;box-shadow:inset 0 2px 4px #0000000f}.admin-captcha-input:focus{border-color:#71717a;background-color:#27272a99;box-shadow:0 0 0 1px #a1a1aa}.admin-captcha-box{cursor:pointer;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;overflow:hidden;flex-shrink:0;background-color:#18181b99;transition:background-color .2s;width:140px;height:100%;position:relative;box-shadow:inset 0 2px 4px #0000000f}.admin-captcha-box:hover{background-color:#27272a}.admin-captcha-hover-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;background-color:#0009;transition:opacity .2s;z-index:10;font-size:.75rem;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-weight:500}.admin-captcha-box:hover .admin-captcha-hover-text{opacity:1}.admin-captcha-canvas{width:100%;height:100%;mix-blend-mode:screen;opacity:.9}.admin-submit-btn{width:100%;margin-top:1rem;padding:1rem;border-radius:.75rem;font-size:.875rem;font-weight:700;color:#000;background-color:#fff;border:none;cursor:pointer;transition:all .2s;box-shadow:0 0 20px #ffffff1a}.admin-submit-btn:hover{background-color:#e4e4e7;box-shadow:0 0 30px #fff3}.admin-submit-btn:active{background-color:#d4d4d8;transform:scale(.98)}.admin-footer{margin-top:3rem;text-align:center}.admin-footer p{color:#52525b;font-size:.75rem;font-weight:500}:root{--color-bg: #F7F5F0;--color-text: #2A2A2A;--color-accent: #9B8C7A;--color-accent-hover: #8A7B6A;--font-heading: "Cormorant Garamond", "Noto Serif TC", serif;--font-body: "Inter", "Noto Sans TC", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;margin-bottom:1rem}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:var(--font-body)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;border:none;background-color:var(--color-accent);color:#fff;transition:background-color .2s ease,transform .1s ease;border-radius:4px}.btn:hover{background-color:var(--color-accent-hover);transform:translateY(-1px)}.container{max-width:1200px;margin:0 auto;padding:0 2rem}
